mirror of
https://github.com/PAMGuard/PAMGuard.git
synced 2024-11-21 22:52:22 +00:00
Merge branch 'main' of https://github.com/PAMGuard/PAMGuard.git into main
This commit is contained in:
commit
4a75afc414
31
README.html
31
README.html
@ -368,8 +368,8 @@ should be something like:</p>
|
||||
-Xms384m -Xmx4096m -Djava.library.path=lib64 -jar Pamguard_xxxxxx.jar</span></em></p>
|
||||
|
||||
<p class=MsoNormal>The -Xms384m -Xmx4096m specify the initial and maximum heap
|
||||
size for the JVM being used to run Pamguard i.e. how much memory it gets to
|
||||
use. The default max size usually being too low.</p>
|
||||
size for the JVM being used to run Pamguard i.e. how much memory it gets to use.
|
||||
The default max size usually being too low.</p>
|
||||
|
||||
<p class=MsoNormal>The -Djava.library.path=lib64 tells the JVM that it should
|
||||
look in the folder called "lib64" for the required shared libraries (change
|
||||
@ -381,8 +381,8 @@ a "-m" or "-v" to the list of java arguments. On Windows
|
||||
just run the appropriately named executable (e.g. PamguardBeta_MixedMode.exe or
|
||||
PamguardBeta_ViewerMode.exe):</p>
|
||||
|
||||
<p class=MsoNormal><em><span style='font-family:"Calibri",sans-serif'>java -Xms384m
|
||||
-Xmx4096m -Djava.library.path=lib64 -jar PamguardBeta_xxxxxx.jar -v</span></em></p>
|
||||
<p class=MsoNormal><em><span style='font-family:"Calibri",sans-serif'>java
|
||||
-Xms384m -Xmx4096m -Djava.library.path=lib64 -jar PamguardBeta_xxxxxx.jar -v</span></em></p>
|
||||
|
||||
<p class=MsoNormal><em><span style='font-family:"Calibri",sans-serif'> </span></em></p>
|
||||
|
||||
@ -452,9 +452,8 @@ lang=EN-US>Latest Version 2.02.05 October 2022</span></h1>
|
||||
|
||||
<p class=MsoNormal><span lang=EN-US>Changes to GUI to make dialog shorter for
|
||||
low DPI screens. </span></p>
|
||||
|
||||
<p class=MsoNormal><span lang=EN-US>Complete rewrite of the classification system
|
||||
to have nested classifiers which can be enabled or disabled. </span></p>
|
||||
<p class=MsoNormal><span lang=EN-US>Complete rewrite of the classification
|
||||
system to have nested classifiers which can be enabled or disabled. </span></p>
|
||||
|
||||
<p class=MsoNormal><span lang=EN-US>Changes to classification GUI to
|
||||
accommodate the new classification system.</span></p>
|
||||
@ -535,7 +534,7 @@ running in real time. Added template names based on file names. </p>
|
||||
<p class=MsoNormal>#13 Merging files when offline processing file folders: Had
|
||||
an error introduced in last release which caused it to fail to recognise gaps
|
||||
between files, meaning that some output data (i.e. after a gap) would have an
|
||||
incorrect time stamp. This did not affect data if the merge contiguous files
|
||||
incorrect time stamp. This did not affect data if the Âmerge contiguous filesÂ
|
||||
option was not selected. </p>
|
||||
|
||||
<p class=MsoNormal>#14 Logger forms data were not plotting correctly. This was
|
||||
@ -609,7 +608,7 @@ href="http://www.pamguard.org/downloads.php?cat_id=3">here</a>.</p>
|
||||
<p class=MsoNormal><b><span lang=EN-US>Detection Group Localiser</span></b><span
|
||||
lang=EN-US> </span></p>
|
||||
|
||||
<p class=MsoNormal>This module has been renamed Detection Grouper, so as to
|
||||
<p class=MsoNormal>This module has been renamed ÂDetection GrouperÂ, so as to
|
||||
avoid confusion with the Group 3D localizer. This is because the Detection
|
||||
Grouper is more for organizing data into groups to be localized than it is for
|
||||
doing localization.</p>
|
||||
@ -730,9 +729,9 @@ included in a future release. </p>
|
||||
<p class=MsoListParagraph style='text-indent:-18.0pt'><span lang=EN-US>17. </span><span
|
||||
lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> </span>
|
||||
An implementation of the Generalized Power Law Detector, developed by Tyler
|
||||
Helble ([Helble et al., A generalized power-law detection algorithm for humpback
|
||||
whale vocalizations, The Journal of the Acoustical Society of America, vol.
|
||||
131, no. 4, pp. 26822699, 2012) is now available. For details, see the online
|
||||
Helble ([Helble et al., ÂA generalized power-law detection algorithm for humpback
|
||||
whale vocalizationsÂ, The Journal of the Acoustical Society of America, vol.
|
||||
131, no. 4, pp. 2682Â2699, 2012) is now available. For details, see the online
|
||||
help </p>
|
||||
|
||||
<p class=MsoListParagraph style='text-indent:-18.0pt'><span lang=EN-US>18. </span><span
|
||||
@ -1996,7 +1995,7 @@ file format is the addition of a Unique Data Identifier (UID) to each unit of
|
||||
data. This is intended to aid in offline analysis by making it easier for the
|
||||
user to link what they are seeing on different PAMGuard displays and also to
|
||||
link with any data post processed in Matlab or other custom analysis software.
|
||||
UIDs are also added to PAMGuard database tables. </span></p>
|
||||
UIDÂs are also added to PAMGuard database tables. </span></p>
|
||||
|
||||
<h4><span lang=EN-US>Converting Old Data</span></h4>
|
||||
|
||||
@ -2004,13 +2003,13 @@ UIDs are also added to PAMGuard database tables. </span></p>
|
||||
viewer they will automatically be converted. For safety, the original binary
|
||||
files will not be overwritten and the new data will be placed in a new folder
|
||||
on your computer with the same path as the old data, but suffixed with
|
||||
_WithUID, e.g. if your binary data were previously stored in the folder
|
||||
Â_WithUIDÂ, e.g. if your binary data were previously stored in the folder
|
||||
C:\MySurvey\binarydata the new data will be written to
|
||||
C:\MySurvey\binarydata_WithUID. </span></p>
|
||||
|
||||
<p class=MsoNormal><span lang=EN-US>The additional UID column will be added to
|
||||
all database tables and populated with unique values. For data which are stored
|
||||
in both the binary files and in database tables, the same UIDs will be used in
|
||||
in both the binary files and in database tables, the same UIDÂs will be used in
|
||||
both data stores. </span></p>
|
||||
|
||||
<h3><span lang=EN-US>New Displays</span></h3>
|
||||
@ -2245,7 +2244,7 @@ November 2016</span></h1>
|
||||
<p class=MsoListParagraph style='text-indent:-18.0pt'><span lang=EN-US>1.
|
||||
Bug 303. Some ASIO sound cards not working with either ASIO system in PAMGuard.
|
||||
For the PAMGuard ASIO system, this was due to a data format used by some sound
|
||||
cards never being properly implemented. For the New ASIO system which is
|
||||
cards never being properly implemented. For the ÂNew ASIO system which is
|
||||
based on jAsioHost, the unpacking of that format contained a bug which returned
|
||||
incorrect numbers, so data were swamped with noise. Both systems are now fixed.
|
||||
By preference, users should use the PAMGuard ASIO system since the JAsioHost
|
||||
|
@ -17,6 +17,7 @@ import javax.swing.Timer;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import Acquisition.FolderInputSystem;
|
||||
import PamController.PamControlledUnit;
|
||||
import PamController.PamControlledUnitSettings;
|
||||
import PamController.PamController;
|
||||
@ -24,6 +25,7 @@ import PamController.PamControllerInterface;
|
||||
import PamController.PamSettingManager;
|
||||
import PamController.PamSettings;
|
||||
import PamController.command.CommandManager;
|
||||
import PamUtils.FileFunctions;
|
||||
import PamUtils.PamCalendar;
|
||||
import PamUtils.PamUtils;
|
||||
import PamView.MenuItemEnabler;
|
||||
@ -35,6 +37,7 @@ import SoundRecorder.trigger.RecorderTrigger;
|
||||
import SoundRecorder.trigger.RecorderTriggerData;
|
||||
import SoundRecorder.trigger.TriggerDecisionMaker;
|
||||
import backupmanager.BackupInformation;
|
||||
import pamguard.GlobalArguments;
|
||||
|
||||
/**
|
||||
* Control a sound file recorder. The sound file recorder has two
|
||||
@ -434,9 +437,51 @@ public class RecorderControl extends PamControlledUnit implements PamSettings {
|
||||
public boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings) {
|
||||
recorderSettings = ((RecorderSettings) pamControlledUnitSettings.getSettings()).clone();
|
||||
newParams();
|
||||
/*
|
||||
* Then check to see if there is a command line override of the currently stored folder name.
|
||||
*/
|
||||
String globFolder = GlobalArguments.getParam(FolderInputSystem.GlobalWavFolderArg);
|
||||
if (globFolder != null) {
|
||||
boolean ok = checkGlobFolder(globFolder);
|
||||
if (ok) {
|
||||
recorderSettings.setOutputFolder(globFolder); // remember it.
|
||||
}
|
||||
else {
|
||||
System.err.println("Unable to set recording storage folder " + globFolder);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set and create if necessary the global folder.
|
||||
* @param globFolder
|
||||
*/
|
||||
private boolean checkGlobFolder(String globFolder) {
|
||||
File outFold = new File(globFolder);
|
||||
if (outFold.exists()) {
|
||||
if (outFold.isDirectory()) {
|
||||
return true; // all OK
|
||||
}
|
||||
else {
|
||||
return false; // it must be a file - that's bad !
|
||||
}
|
||||
}
|
||||
// try to create it.
|
||||
try {
|
||||
if (outFold.mkdirs()) {
|
||||
FileFunctions.setNonIndexingBit(outFold);
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
return false; // unable to make the folder.
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.err.println("Can't set recording store folder: " + e.getLocalizedMessage());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a recorder trigger to this recorderControl. This can either be called
|
||||
|
@ -64,6 +64,10 @@ public class RecorderSettings implements Serializable, Cloneable, ManagedParamet
|
||||
*/
|
||||
public String outputFolder;
|
||||
|
||||
public void setOutputFolder(String outputFolder) {
|
||||
this.outputFolder = outputFolder;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initials to add to the start of a file name, the rest
|
||||
* of which is made up from the date.
|
||||
|
@ -17,6 +17,7 @@ import Acquisition.DaqSystem;
|
||||
import Acquisition.AudioDataQueue;
|
||||
import PamController.PamControlledUnitSettings;
|
||||
import PamController.PamController;
|
||||
import PamController.PamGUIManager;
|
||||
import PamController.PamSettingManager;
|
||||
import PamController.PamSettings;
|
||||
import PamDetection.RawDataUnit;
|
||||
@ -192,7 +193,12 @@ public class SmruDaqSystem extends DaqSystem implements PamSettings {
|
||||
+ " in another instance of PAMGuard. \n"
|
||||
+ "Check that no other instances of PAMGuard are open and try again. \nIf no other instances of PAMGuard are open "
|
||||
+ "then you should cycle the power on the card(s) and restart PAMGuard");
|
||||
if (PamGUIManager.getGUIType() == PamGUIManager.NOGUI) {
|
||||
System.out.println(msg);
|
||||
}
|
||||
else {
|
||||
JOptionPane.showMessageDialog(daqControl.getGuiFrame(), msg, daqControl.getUnitName() + " Error", JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
PamController.getInstance().stopLater();
|
||||
return false;
|
||||
}
|
||||
|
@ -278,7 +278,7 @@ public class WhistleBinaryDataSource extends BinaryDataSource {
|
||||
* If we're n network receive mode, we can't do this until
|
||||
* channel numbers have been reassigned.
|
||||
*/
|
||||
if (runMode == PamController.RUN_PAMVIEW && delays != null) {
|
||||
if ((runMode == PamController.RUN_PAMVIEW || runMode == PamController.RUN_NOTHING) && delays != null) {
|
||||
ShapeConnector shapeConnector = wmDetector.findShapeConnector(channelMap);
|
||||
if (shapeConnector != null) {
|
||||
BearingLocaliser bl = shapeConnector.getBearingLocaliser();
|
||||
|
Loading…
Reference in New Issue
Block a user