From 793ac9657630528ca8934865463722bf735ef554 Mon Sep 17 00:00:00 2001
From: Jamie Mac
Date: Thu, 17 Nov 2022 16:46:39 +0000
Subject: [PATCH] Squashed commit of the following:
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
commit 5b1cc760d8b3cab15213d6ada075d26e19eb1cb1
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Nov 16 09:12:55 2022 +0000
Quick fix of calibration data for ST Click detector.
Was getting a 5V input from it's bespoke acquisition, whereas needs 2.
commit 3f5e4e4a7988c5ab588ec9f905a7db6a787667ab
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 21:08:40 2022 +0000
Final final 2.02.06
Don't believe it until you see that tag
commit 890230a6ffe3059314222d0a933054696a1b98e6
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 17:49:06 2022 +0000
Final final readme 2.02.06
commit 05268d810d8f6c98ae244026e002049db87be536
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 17:40:44 2022 +0000
Version 2.02.06 (#87)
(hopefully)
commit 7d7ecb95452486cd621b758f1adeb02ddb5b93ad
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 17:39:37 2022 +0000
Version 2.02.06 (#86)
(hopefully)
commit 76e84672016fada5c3733bdb3d00f0d5088a1c82
Merge: d2f74f60 ac280e1b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 17:37:14 2022 +0000
Merge branch 'main' of https://github.com/PAMGuard/PAMGuard.git into main
commit d2f74f606e8c0757d471af27318c35b22fef47ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 15 17:36:49 2022 +0000
readme for 2.02.06
commit ac280e1b6fefe68ef94ce9fd75ed90e014b4ee35
Author: m2oswald <45486636+m2oswald@users.noreply.github.com>
Date: Tue Nov 15 15:41:43 2022 +0000
updates to Rocca module (#85)
* allow Rocca to run without classifiers
Fixed bug that threw an error if no classifier files were specified in Rocca Params dialog
* add rocca switch to enable dev mode
currently only shows/hides extra buttons in the Params dialog, but will
extend to more options in the future
* Fix memory issue with RoccaContourDataBlocks not being released for
garbage collection
Set RoccaContourDataBlock objects to null and stop PamObserver Timer to
force release
commit 655a54676413b353b76fea5fc28b48cd8942801c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 15:56:00 2022 +0000
Update X3 Jar
commit 96cd32034fb2afaa5a33987a372cb03fd0c792f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 15:55:37 2022 +0000
Delete x3-2.2.0.pom
commit bf90443b1b9dc8491249b16c2fd93ec2a825aa8a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 15:55:28 2022 +0000
Delete x3-2.2.0.jar
commit 22d32b46822e8a68b7310bfdb8e5f99235aa054c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 15:54:15 2022 +0000
Update x3 jar file
commit 14c5cf5afe94b42cbb72a71ee01b2697a54270a2
Merge: ccd0fc79 376a9f0f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 15:49:36 2022 +0000
Merge branch 'main' into main
commit 376a9f0f0ebdff8347ead8349112db6c30b69c34
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 14:30:04 2022 +0000
Reinstate x3 jar
commit 93193638b1053370a230c5154de57e98a96e765a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 14 14:29:37 2022 +0000
Last changes to x3
commit ccd0fc796537e54f0ba8fc61f07f85adb800e41d
Author: m2oswald <45486636+m2oswald@users.noreply.github.com>
Date: Mon Nov 14 11:00:15 2022 +0000
small updates to Rocca (#84)
* allow Rocca to run without classifiers
Fixed bug that threw an error if no classifier files were specified in Rocca Params dialog
* add rocca switch to enable dev mode
currently only shows/hides extra buttons in the Params dialog, but will
extend to more options in the future
commit ea32c5cdcb3ca85b3c912c57a66ea74ab53d31db
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sun Nov 13 17:41:13 2022 +0000
SUD Files (#83)
* Adding comments to table definitions.
Update tabledefs so tableitems can have descriptions. Useful to the
coder, but can also export formal xms schema for each table.
* Writing xml schema
Writing xml schema for PAMGuard database with annotations as complex
types
* Working SUD click extractor
Seems to be mostly working and can generate PAMGuard click files
automatically when processing SUD files using the soundtrap click
detector
* Small changes to SUD in PAMGuard
* Better SUD timing
Using latest microsecond time extraction from SUD unpack
* SUD Processing
Extraction of SUD file clicks with SoundTrap Click Detector. Timing now
correct. Added some help pages.
* Functional SUD Reader and SUD Click Extractor
All seems working. Seems to throw the odd exception at end of file, but
works OK.
commit f08cf4ffd711a5f991050fbb47335eba08c22b87
Merge: d3277be3 4a75afc4
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sun Nov 13 17:38:59 2022 +0000
Merge pull request #29 from PAMGuard/main
Memory leak fix
commit d3277be3b1f8ab142fcb21ee36c91ddd597ff83d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sun Nov 13 17:37:53 2022 +0000
Functional SUD Reader and SUD Click Extractor
All seems working. Seems to throw the odd exception at end of file, but
works OK.
commit d1af0000400e44da789e361567d9ec49f9b75970
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat Nov 12 19:21:57 2022 +0000
SUD Processing
Extraction of SUD file clicks with SoundTrap Click Detector. Timing now
correct. Added some help pages.
commit 4a75afc41451594b451f3915d6d15347c4fbfe64
Merge: 3b053ff3 fe0fe11f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Nov 11 20:59:10 2022 +0000
Merge branch 'main' of https://github.com/PAMGuard/PAMGuard.git into main
commit 3b053ff342eccb8a698fa36415119a62a1e9e2e1
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Nov 11 20:58:42 2022 +0000
Memory leak
Fix viewer memory leak whereby background measurements weren't being
cleared between data loads, so eventually ran out of memory.
commit 068a8b1a273e014fce12ecb66579ee4a20927ba8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Nov 11 08:56:03 2022 +0000
Better SUD timing
Using latest microsecond time extraction from SUD unpack
commit ee24c0ab6b128d0c9eb7947f823c2fe7dbb0d5ca
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Nov 10 17:21:37 2022 +0000
Small changes to SUD in PAMGuard
commit 87cd2cd41f3883aa7dfbbd56efccbe97dcd6f02e
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Nov 10 15:20:15 2022 +0000
Working SUD click extractor
Seems to be mostly working and can generate PAMGuard click files
automatically when processing SUD files using the soundtrap click
detector
commit 61dd6ef4d1f4701972c1ed93985075129f299df7
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 8 16:42:57 2022 +0000
Writing xml schema
Writing xml schema for PAMGuard database with annotations as complex
types
commit fcdb64e46705b94430c9542aed13ba71231c9ff6
Merge: a72e68c2 fe0fe11f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Nov 8 10:44:01 2022 +0000
Merge pull request #28 from PAMGuard/main
Fix to issue #80 (#81)
commit fe0fe11faf47e95ec3d3c92841a5a066e5f27a7f
Author: stabbutt <100229685+stabbutt@users.noreply.github.com>
Date: Tue Nov 8 01:02:52 2022 -0800
Fix to issue #80 (#81)
* Fix network sender since it was hopelessly out of date and did not send
data in the correct format. OK now, though only tested on NARW.
* Fix network sender since it was hopelessly out of date and did not send
data in the correct format. OK now, though only tested on NARW.
* Mods to support command line and Network control of PAMGuard and to
retrieve summary information from some modules.
* Fix issue #80: recording path command line override
* Allow RUNNOTHING bearing calculations
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit a72e68c26a1d4c673f4c04bf48549e244ff98199
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Nov 7 17:15:04 2022 +0000
Adding comments to table definitions.
Update tabledefs so tableitems can have descriptions. Useful to the
coder, but can also export formal xms schema for each table.
commit 3e717bd20748ededf4c43029af5e5bb2a32e1177
Merge: aa7f18ea d2e69c50
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Nov 4 15:09:47 2022 +0000
Merge pull request #27 from PAMGuard/main
Merge SUD changes from main
commit d2e69c507ee3d848700fbb368f29765fe372115d
Merge: 4f734b77 aa7f18ea
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Nov 4 15:09:40 2022 +0000
Merge branch 'main' into main
commit aa7f18eaa2ad85b248e52f06ff7d2fbe6a773f11
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Nov 2 10:09:30 2022 +0000
SAIL CArd warnings
Don't display in dialog when in nogui mode. Write to terminal
commit 4f734b7775c405fa05b4d8e4ae2f3aa2beb06dd1
Author: Jamie Mac
Date: Mon Oct 31 13:43:15 2022 +0000
Added sud file capability (#78)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
* Update DLModelWorker.java
* Create matched_click_classifer_help.md
* Update help files for matched click classifier
* Update matched_click_classifer_help.md
* Update matched_click_classifer_help.md
* New screenshots got help files
* New screenshot
* Update matched_click_classifer_help.md
New help file for the matched click classified.
* Update matched_click_classifer_help.md
* Squashed commit of the following:
commit 6b15b3d536f2334aa9769e10c268659a254e19c8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Aug 23 15:21:28 2022 +0100
Change min java version to 11 which should be ok on some embedded
systems.
commit 4b3a37636b2081323c39dcbb133c1474ad2a9daa
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Aug 23 14:30:46 2022 +0100
CTD Fixes
Couple more fixes to menus and datablock selection
commit c641c58e4f524f0c8beb3967c9fec8b34c412121
Author: Jamie Mac
Date: Tue Aug 23 14:19:28 2022 +0100
Bug fixes to click train detector (#51)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised …
* Bug fixes to the matched click classifier
The matched click classifier was not working when an in built click classifier was used. This was caused by an index out of bounds exception in the alarm system.
Added new features;
* The Time base display now exports sample rate to .mat files.
* Bug fix file separator on time base display so it works on mac and Linux
* Matched click classifier imports the first click in a list of click structures as a template.
* Changed default length for restricted bins to 2048.
* Add picture for help file
* Update matched_click_classifer_help.md
* Update matched_click_classifer_help.md
* Squashed commit of the following:
commit b01cb4d10020aba4b46ba17c6e16fa02c6350e46
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 13 11:19:31 2022 +0100
Fix bug in 3DOffline task
Problems with making catalogue of offline tasks. not important for now,
but needs revisiting.
commit ae6e2f947b886810a5ebf35f8b2e2e6e9cd822cc
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 13 09:12:34 2022 +0100
Merge Dougs fork (#53)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
* Daylight saving problem
Fix daylight saving problem in generation of timestamps in SQLTypes. See long explanation in SQLTypes.java. Only occurred in the hour after daylight saving starts.
commit cd89c65d7c32338ea445ae4eec5bd31e5bc3d59a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 13 09:07:11 2022 +0100
Fix synchronization problem in RawDataTransfroms
commit 6b15b3d536f2334aa9769e10c268659a254e19c8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Aug 23 15:21:28 2022 +0100
Change min java version to 11 which should be ok on some embedded
systems.
commit 4b3a37636b2081323c39dcbb133c1474ad2a9daa
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Aug 23 14:30:46 2022 +0100
CTD Fixes
Couple more fixes to menus and datablock selection
commit c641c58e4f524f0c8beb3967c9fec8b34c412121
Author: Jamie Mac
Date: Tue Aug 23 14:19:28 2022 +0100
Bug fixes to click train detector (#51)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+…
* Fixes to click train detector and deep learning
* Squashed commit of the following:
commit 313ce0c46f44f9a4ceda657ef2831eae78352ed5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Sep 21 15:55:12 2022 +0100
Help update (#60)
* Plugin Help
Small change to Help system so that plugins under development can more
easily display their help
* PamModel update
Notes on how to add a plugin to the model during the plugin development
phase.
* Click Train Detector Help
* Help for backup manager
commit 290f2fbb953088864a380f692d203d0680daa762
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Sep 21 15:54:01 2022 +0100
Click Train Detector help (#59)
* Plugin Help
Small change to Help system so that plugins under development can more
easily display their help
* PamModel update
Notes on how to add a plugin to the model during the plugin development
phase.
* Click Train Detector Help
* Help for backup manager
commit 6aefbc124b249ed507f95411680e19bc4fd78e78
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 20 17:34:30 2022 +0100
Merge from DG fork (#58)
* Plugin Help
Small change to Help system so that plugins under development can more
easily display their help
* PamModel update
Notes on how to add a plugin to the model during the plugin development
phase.
commit eb176a4568c5b72010e9557a28a991544ec231f7
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 17:10:09 2022 +0100
Merge from dg (#57)
commit dee7e1d52e7d7bc2f94d81bbedb71664243754b9
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 17:08:32 2022 +0100
Merge pull request #13 from PAMGuard/main (#56)
commit 1ed74bebe3d50a4f739a4ff8b4af223b3d535c16
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 17:06:22 2022 +0100
Merge pull request #13 from PAMGuard/main (#55)
commit fbe39a7416decfd3a6c73774b65407d6f120c201
Merge: 0114c80 425dd21
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 17:05:16 2022 +0100
Merge branch 'main' into main
commit 425dd21d9f9a404e9e5410e018df20681703139a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 17:01:45 2022 +0100
Data selector for whistle classifier
Added standard data selection options to whistle classifier output, and
also made it a 'Detector' type for down stream data connections
commit 0114c80d61f2f3bf04a2fc3fe7e85839f0642d7f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 15 16:59:37 2022 +0100
Work on click train detector help
commit c8e271734f1277ec8391356c4dfc9c8ddaea8476
Author: Jamie Mac
Date: Thu Sep 15 09:18:48 2022 +0100
Bug fixes to matched click classifier (#54)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher t…
* fix bug in TDOA
* Squashed commit of the following:
commit 149dfab2813bc7e4e83e12b5827f59655050449f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 09:56:13 2022 +0100
Work on bug fixes in CTD classifier (#72)
commit 91a704b07a015b4992ba60288f1a3cb8168a348c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 09:54:33 2022 +0100
Work on bug fixes in CTD classifier (#71)
commit d01576c8550dd18d9fce0bb9af00a69aa560b614
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 09:53:51 2022 +0100
Work on bug fixes in CTD classifier (#70)
commit 11bed6ffbad76d0af707783243743ca41a5abc3d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 29 14:56:29 2022 +0100
Work on bug fixes in CTD classifier (#69)
commit fccc0a715d55d096e9530b1d62ed8853e526db40
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 29 14:54:30 2022 +0100
Work on bug fixes in CTD classifier
commit 5983f30ded7bdda7147668a9ed9eca79ff9d7ccd
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 27 16:44:12 2022 +0100
Delete C:\temp\PamGuardTesting 2_02_04f\PAMBinary directory
Get rid of a folder of pgdf files that Jamie had added to the repo
commit 075aceb4aabe1485f82d2001be3a575bd02c0b13
Author: Jamie Mac
Date: Tue Sep 27 16:41:05 2022 +0100
Click train detector bug fix (#68)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
…
* Click train fixes
* Fixes to click train detector
* Squashed commit of the following:
commit 3a452936c047e1d941c846aefb40c0929291b1cd
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 14:50:33 2022 +0100
Fixes from DG (#74)
* Work on bug fixes in CTD classifier
* couple of final neatenings up of CTD
commit 4015461fbc6ce0b110ef87bcf94379fb3b6a19f1
Author: Jamie Mac
Date: Fri Sep 30 14:23:17 2022 +0100
Fixes to click train detector (#73)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
…
* Fix to click train detector
NO_SPECIES flag was not being in standard classifier so beaked whales were being classified.
* Getting sud files working
* .sud decompression implemented
Sud decompression implemented in real time and viewer mode. .sudx files hold a file map which is reloaded allowing rapid scrolling of sud files in viewer mode.
* Rewrite how PAMGuard manages Audio Files
PAMGuard audio file management is a mess (sorry Doug) requiring changes to code in at least 3 separate classes to make a new type of audio file work in real time and viewer mode.
Have consolidated all audio file stuff into a PamAudioFileManager class which has a static getInstance() function. Any new type of audio file added in future (e.g. next is probably AudioMoth triggered recordings) then all that is needed is the Interface PamAudioFileloader to be satisfied and added to PamAudioFileManager list of audio file loaders.
* Bug fix for sud in viewer mode and FX updates
Fixed bug in sud file where IO exception occurred at the end of a file in viewer mode.
Updates to click detector dialog in FX GUI.
Updates to example sound factory.
* Some more work on FX GUI
* Added some validators in FX GUI
ValidatorFX is awesome
* Updates to FX GUI
* Squashed commit of the following:
commit 67060016c2eda322189b1b6f5a203757a1632d1b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 12:26:42 2022 +0100
REsolve issues in binayUIDFunctions
commit 61c3d80f30f14c8621d9b6284ffa5c50bc2ef60a
Merge: 1de5ec6 4473d1b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 12:23:08 2022 +0100
Merge branch 'main' of https://github.com/PAMGuard/PAMGuard.git into main
commit 1de5ec6e11a31989c5663894e71628cc63b18179
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 12:22:09 2022 +0100
Change error reporting in Binary UID functions
Message on screen rather than stack trace since it's normal when a psfx
moves to a different pc
commit 4473d1b1bf8bc25c19db105d2b44fa1040194c63
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 11:12:04 2022 +0100
Merge from DG (#77)
* Work on bug fixes in CTD classifier
* couple of final neatenings up of CTD
* DWV Import
Fixed DWV importer so that a binary file is still created if a DWV file
doesn't exist. this is totally normal in quiet conditions, so the
correct thing to do is to generate a binary file with no data so that
effort is correctly recorded.
* Error reporting in -nogui
A lot of warnings were being issued and trying to use the default window
which caused a null pointer when running -nogui. This is fixed by a) not
trying to access frames which are null and b) changing the PAMWarning
system to write messages to terminal rather than open a dialog.
commit 63cc66a4b197ce86087f57edc38095161896b79f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Oct 18 17:04:16 2022 +0100
Merge from DG (#76)
* Work on bug fixes in CTD classifier
* couple of final neatenings up of CTD
* DWV Import
Fixed DWV importer so that a binary file is still created if a DWV file
doesn't exist. this is totally normal in quiet conditions, so the
correct thing to do is to generate a binary file with no data so that
effort is correctly recorded.
commit e4faed5cfc50ca647ec98c8e17d312fae316a3d8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Oct 4 11:18:37 2022 +0100
Add exitnosave command
Add command for UDP or terminal control which will exit PAMGuard without
first saving the settings
commit f4f7cc59b63c8d31af559575075a20d4ab16128b
Author: Jamie Mac
Date: Mon Oct 3 14:30:22 2022 +0100
Fix to click trian detector (#75)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
* Bug fixes to the click train detector
Bearing classifier section now updates properly when dialog reopened
Fixed rare bug when garbage bot attempts to find the last data unit in a list of zero units.
* Squashed commit of the following:
commit 5a37bfe915925ea2307dd09928538c7e639ca52c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Aug 19 08:17:06 2022 +0100
Changes from DG branch (#50)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
* Java version
Changes unpacker to deal with non numeric characters on Linux
* Fix to getVersion()
So new version of this command should now work on Linux and Windows.
* Multiport test
Quick tester for multiport comms
* Spectrogram display
Stop spectrogram display continually recreating panels since it was
unsubscribing discarded ones and sometimes causing crash in observable
notifications.
* Backup manager bug
Error if no database. Fixed.
commit b08e86e330c5ca2de4b6902eb7ec514f47278a7c
Author: Jamie Mac
Date: Wed Aug 17 09:16:52 2022 +0100
Bug fix for click train detector (#49)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 9a9f542d95b6cbc571d60a2250a2d4accf8dc4b3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:42:45 2022 +0100
Merge DG to Main (#46)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 49cd547aee3e4366e1aaa51b8fe7418199c2ad73
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:40:29 2022 +0100
Merge DG branch (#45)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
* UDP Control
Added multiport functionality
commit 016cfd0da54021dcbe787f0a20856604b81bf7af
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:35:06 2022 +0100
Dialog positioning
New functions to better positions dialogs on screen
commit c9f2ab3e97ec289ee8c1bcfe4531c84f77ee7fa8
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 11:13:24 2022 +0100
puch to main (#44)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
* Work on batch processing, after testing of options to autostart,
autoexit and set wav file folder, database and binary store.
* Update MHTClickTrainAlgorithm.java
Fix unsynchronised access to a datablock in click train detector which was causing index errors.
* Revamp of offline process messaging and control
Includes some databsae logging of completed tasks
* Offline task logging
Bit more work, including notes and database storage of task
reprocessing. Guess this could all become 'proper' PAMGuard data and be
shown in a table on the display but that not priority enough.
* Dialog packing
Fix a couple of dialogs which don't back well on HDPI monitors
commit 55f5a3fcf12c6c8a727318a17f9dece401adc9f3
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon Aug 1 10:59:36 2022 +0100
Group detections menu
Small changes to limit the number of menu items in "Add to existing
group" to a maximum of 25 entries.
commit b3f6c0e6657de91a7e015a48f5f218f60f23c5f5
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 29 10:50:45 2022 +0100
Handle -nogui option in PamWorker
PamWorker used to catalog files at startup (if a file folder input
system is used). This creates a progress dialog. Stop it appearing in
-nogui operations.
commit 8569b6b579659cba8229596e91c35355bc5ed61b
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Jul 22 08:30:47 2022 +0100
Click display fixes (#41)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
2. Component sizes in display dialog on hres monitors
commit 128a512ff60c26b5acedd76de96c0905c6bf27ae
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 16:37:57 2022 +0100
Another attempt at stopping it crashing on a headless system
Dealing with displays that get created for clickangle vetos and a call
to the gui in the click train detector.
commit 6eaa6e4978b2483e5828ca4a3914c58d7a9cfe2d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 19 08:20:07 2022 +0100
nogoi fix for headless systems. (#40)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
commit 9fdd30556bf391428e1d3f2f9e91dbbdf771fa84
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Jul 12 15:53:07 2022 +0100
Variable sound output level (#39)
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Bug fixes to click train detector
Fixed bug with number of coasts in the MHT Kernel
Added an option for amplitude to have a maximum
Removed print statements.
* Bug fix for click train logging
The size of the string classifers field was dynamically set - this was a bug.
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit ef0330173b5a9683fb79c9cb027b207a768ae30c
Author: Jamie Mac
Date: Mon Aug 8 10:32:19 2022 +0100
Click trian detector fixes (#48)
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* More screenshots
* Add screenshots
* Update click_train_help.md
* Add classifier screenshot
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update POM with latest jdl4pam
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Update pom.xml
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Update click_train_help.md
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Screenshots
* Update click_train_help.md
* More screenshots
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots
* Add classifier screenshot
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Add screenshots for click train detector help
* Screenshots
* Update click_train_help.md
* Defult option for CPOD and porpoise to click train detector.
Also a minor
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Create click_train_help.md
* Update click_train_help.md
* Update click_train_help.md
* Updates and bug fixes to click train detector and CPOD importer
* Bug fix for raw spectrogram in TDDisplayFX
* Update KetosClassifier.java
* Fix standard classifier JSON logging
* Fixed bug in sweep classifier when using SoundTrap click detections
* Added some colour averaging in the TFDisplayFX spectrgoram
* Bug fix for rainbow click bearings
Bug fix when rainbow clicks are imported mean bearings cannot be calculated - was an array size issue in DelayGroup
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Updated the prediction plots on time display
Deep learning prediciton plots on the time display have now been updated to have some colour options and also act as a legend.
* Updates to TDisplayFX
yFIshmael now owrks with TDisplayFX
TDisplayFX UI changes to make simpler.
Some abstraction for drawing lines on TDisplayFX
* Merge fixes to click train detector
* Bug fix to UI
* Updates to FX GUI
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Merge fixes to click train detector
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Updates to click train detector
New GUI for click train classification - more intuitive and allows users to build more powerful classifiers.
CPOD data can now build average waveforms.
CPOD click trains can be viewed in TDisplayFX pop up menu displays
Fixed Peak Frequency symbol chooser so it saves the colour box settings
* Screenshots
* Updates and bug fixes to click train detector and CPOD importer
* Fix standard classifier JSON logging
* Google humpback whale deep learning classifier
Google's humpback whale deep learning classifier can now be imported.
Updated TDisplayFX to make the data selection panes cleaner and clearer.
Updated the TDisplayFX so that predicitons from deep learning models now have some display options e.g. changing colour.
* Bug fix to UI
* Bug fixes to FX GUI
* Updates to click train detector
* Squashed commit of the following:
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updates to click train detector
* Squashed commit of the following:
commit 62b020b3204aa56189b1c2da88bcbb9f49140936
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Sat May 14 06:52:20 2022 +0100
Add a new offlinefileslist function
commit 3a9a5311aa529b66340f6ae322f88905b911947a
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Wed Apr 27 09:43:31 2022 +0100
Update .gitignore
commit 9f998165ee95dbb16acaf420876f3aeab75c2158
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Mon May 2 19:40:24 2022 +0100
Updates to support ContactCollator plugin (#33)
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* fix problem in SummaryComand
* Update command line options
* Change synchronization on RawDataTransforms soit uses the owner data
holder, not itself for synchronization. Otherwise you get thread locks.
* Update command line options
* Update DecimatorParams.java
* couple of updates to support new contact collator plugin
* Sorting out sample rate info in clip display to support Contact Collator
plugin
* FLAC Speed
Improve flac speed
* Update .gitignore
* Update .gitignore
* Updates to support new features in Contact Collator
* Small update to RawDatautils to handle null data
* Updated data selector for click train detector
* Click train detector updates and bug fixes
Fixed very annoying bug which meant templates did not show properly when the dialog was first opened in swing.
Added feature to simple classifier were % of clicks of one click classification (or other data selector paramter) can be used to classify.
* Bug fix and improvements for Ketos
Ketos models now automatically set the correct sample length when loaded.
Bug fix for the TDisplayFX - null pointer exception if no class names loaded and sorted recently introduced bug in drawing predictions.
* Updates to deep learning and FX GUI
Added some more example sounds to deep learning UI.
Updated click detector in the FX GUI.
* PAMGuard FX sound output update
* Updates to FX GUI
* Updates to FX GUI
* Update RawDataTransforms.java
* Fixes to FX UI
* Squashed commit of the following:
commit 11ba8bf91e1cd55e4305c4060a379f9ff0c58c4d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Aug 4 11:45:47 2022 +0100
MErge from DG Branch (#47)
* Variable sound output level
Mods to SoundPlayback module to allow additional parameters. Implemented
system for NI cards to allow changes to selected output voltage range
meaning output can be boosted to level higher than current default.
* Code to support nogui operations when no screens present on headless
system
* Fix problem of nogui headless operation trying to access screen size.
* Click detector display fixes
1. ICI not displaying correctly
…
Co-authored-by: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
commit 30793b55b0aa96a360b8ab4c00f79747e659f0dc
Merge: abc33adb 63cc66a4
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 11:11:03 2022 +0100
Merge pull request #26 from PAMGuard/main
Merge from DG (#76)
commit abc33adbfda66c950fc0da6cb9d226e4c8aba298
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Oct 21 11:09:35 2022 +0100
Error reporting in -nogui
A lot of warnings were being issued and trying to use the default window
which caused a null pointer when running -nogui. This is fixed by a) not
trying to access frames which are null and b) changing the PAMWarning
system to write messages to terminal rather than open a dialog.
commit 0029fbb1c1dd86d66a743307e45e2930c0584c72
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Oct 18 17:02:49 2022 +0100
DWV Import
Fixed DWV importer so that a binary file is still created if a DWV file
doesn't exist. this is totally normal in quiet conditions, so the
correct thing to do is to generate a binary file with no data so that
effort is correctly recorded.
commit 15d4468a0e18fc3367a44b23ae0a64c3cb794c22
Merge: 68271501 e4faed5c
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Oct 4 11:19:37 2022 +0100
Merge pull request #25 from PAMGuard/main
Merge changes from main
commit 682715018f230a07545c6d332efc15a98f622eb9
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 14:49:33 2022 +0100
couple of final neatenings up of CTD
commit de809b657296da153f2ee47e420aeda10e1e26f8
Merge: cc003c16 4015461f
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 14:24:34 2022 +0100
Merge pull request #24 from PAMGuard/main
Fixes to click train detector (#73)
commit cc003c167a9a0cc66a27ec2b8c82f327dcca0a65
Merge: 55cd735e 149dfab2
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 14:10:59 2022 +0100
Merge pull request #23 from PAMGuard/main
Work on bug fixes in CTD classifier (#72)
commit 55cd735ec34f0da8fc37b8d9e28c041584d543b3
Merge: f899d01a 91a704b0
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 30 09:55:32 2022 +0100
Merge pull request #22 from PAMGuard/main
merge main
commit f899d01a410e31228005b99ba6991190b0cb0713
Merge: 83f1343b fccc0a71
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 29 14:55:24 2022 +0100
Merge pull request #21 from PAMGuard/main
Work on bug fixes in CTD classifier
commit 83f1343b02a77e9cc1a372111ae9b682aaa5a572
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Thu Sep 29 14:54:52 2022 +0100
Work on bug fixes in CTD classifier
commit 481315187fba6a745a9eaa65a5bdac7160253a17
Merge: 570479ef 5983f30d
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Tue Sep 27 16:57:54 2022 +0100
Merge pull request #20 from PAMGuard/main
Get CTD bug fix
commit 570479efcfd9d3e296336e4e11ce5f517611ddb1
Merge: ec4082eb cf4c97a2
Author: Douglas Gillespie <50671166+douggillespie@users.noreply.github.com>
Date: Fri Sep 23 11:47:13 2022 +0100
Merge pull request #19 from PAMGuard/main
CTD Data Selector fixes (#66)
---
.gitignore | 1 -
README.html | 495 ++++++++++--------
dependency-reduced-pom.xml | 2 +-
pom.xml | 6 +-
.../org/x3/2.1.0/_remote.repositories | 2 +-
src/Acquisition/AcquisitionControl.java | 35 +-
src/Acquisition/AcquisitionLogging.java | 34 +-
src/Acquisition/AcquisitionProcess.java | 8 +-
src/Acquisition/FileInputSystem.java | 136 +++--
src/Acquisition/FolderInputSystem.java | 5 +
.../filedate/StandardFileDate.java | 7 +
src/Acquisition/filetypes/SUDFileType.java | 29 +
src/Acquisition/filetypes/SoundFileType.java | 65 +++
src/Acquisition/filetypes/SoundFileTypes.java | 74 +++
.../pamAudio/PamAudioFileManager.java | 2 +-
src/Acquisition/sud/SUDFileTime.java | 86 +++
.../sud/SUDNotificationHandler.java | 36 ++
.../sud/SUDNotificationManager.java | 66 +++
src/Array/ThreadingHydrophoneLocator.java | 3 +
src/Filters/IIRFilterMethod.java | 3 +
src/PamController/PamguardVersionInfo.java | 4 +-
src/PamController/command/SummaryCommand.java | 4 +-
src/PamModel/PamModel.java | 10 +-
src/PamUtils/PamAudioFileFilter.java | 2 +-
src/PamUtils/XMLUtils.java | 46 ++
src/PamguardMVC/PamDataBlock.java | 7 +
src/PamguardMVC/PamObservable.java | 12 +-
src/SoundRecorder/RecorderControl.java | 45 ++
src/SoundRecorder/RecorderSettings.java | 4 +
src/annotation/calcs/snr/SnrSqlAddon.java | 2 +-
src/annotation/calcs/spl/SPLSqlAddon.java | 8 +-
src/annotation/string/StringSQLLogging.java | 2 +-
.../annotation/BearingAnnotationSQL.java | 20 +-
.../BinaryStorageDialogPanel.java | 24 +-
src/clickDetector/ClickDetector.java | 2 +-
src/generalDatabase/DBControl.java | 15 +
src/generalDatabase/DBProcess.java | 42 ++
src/generalDatabase/DBSchemaWriter.java | 263 ++++++++++
src/generalDatabase/DatabaseFetchSpeed.java | 33 ++
src/generalDatabase/EmptyTableDefinition.java | 2 +-
src/generalDatabase/PamTableDefinition.java | 16 +-
src/generalDatabase/PamTableItem.java | 66 ++-
src/generalDatabase/SQLLogging.java | 7 +
src/help/JavaHelpSearch/DOCS | Bin 77567 -> 77805 bytes
src/help/JavaHelpSearch/DOCS.TAB | Bin 5914 -> 5938 bytes
src/help/JavaHelpSearch/OFFSETS | Bin 1663 -> 1670 bytes
src/help/JavaHelpSearch/POSITIONS | Bin 536904 -> 538162 bytes
src/help/JavaHelpSearch/SCHEMA | 2 +-
src/help/JavaHelpSearch/TMAP | Bin 73728 -> 73728 bytes
src/help/Map.jhm | 4 +
src/help/PAMGUARD.hs | 192 ++++++-
src/help/PAMGUARDIndex.xml | 12 +
src/help/PAMGUARDTOC.xml | 6 +-
.../docs/SoundTrapClickDetector.html | 82 +++
.../AcquisitionHelp/docs/AcquisitionFile.html | 4 +-
.../AcquisitionHelp/docs/sudfiles.html | 45 ++
src/hfDaqCard/SmruDaqSystem.java | 8 +-
.../receive/BuoyStatusData.java | 5 +
.../receive/BuoyStatusDataUnit.java | 5 +
.../receive/NetworkReceiver.java | 2 +-
src/pamguard/Pamguard.java | 8 +-
src/rocca/RoccaClassifier.java | 251 ++++-----
src/rocca/RoccaDev.java | 27 +
src/rocca/RoccaParametersDialog.java | 18 +-
src/rocca/RoccaProcess.java | 26 +-
src/soundtrap/STAcquisitionControl.java | 75 +--
src/soundtrap/STClickControl.java | 49 +-
src/soundtrap/STDaqSystem.java | 107 ++++
src/soundtrap/STToolsControl.java | 9 +
src/soundtrap/sud/BCLDetectionChunk.java | 59 +++
src/soundtrap/sud/SudFileDWVHandler.java | 268 ++++++++++
.../WhistleBinaryDataSource.java | 2 +-
src/whistlesAndMoans/WhistleMoanControl.java | 10 +-
.../WhistleToneConnectProcess.java | 27 +-
74 files changed, 2463 insertions(+), 571 deletions(-)
create mode 100644 src/Acquisition/filetypes/SUDFileType.java
create mode 100644 src/Acquisition/filetypes/SoundFileType.java
create mode 100644 src/Acquisition/filetypes/SoundFileTypes.java
create mode 100644 src/Acquisition/sud/SUDFileTime.java
create mode 100644 src/Acquisition/sud/SUDNotificationHandler.java
create mode 100644 src/Acquisition/sud/SUDNotificationManager.java
create mode 100644 src/generalDatabase/DBSchemaWriter.java
create mode 100644 src/generalDatabase/DatabaseFetchSpeed.java
create mode 100644 src/help/detectors/clickDetectorHelp/docs/SoundTrapClickDetector.html
create mode 100644 src/help/sound_processing/AcquisitionHelp/docs/sudfiles.html
create mode 100644 src/rocca/RoccaDev.java
create mode 100644 src/soundtrap/STDaqSystem.java
create mode 100644 src/soundtrap/sud/BCLDetectionChunk.java
create mode 100644 src/soundtrap/sud/SudFileDWVHandler.java
diff --git a/.gitignore b/.gitignore
index 96d49f76..c9419840 100644
--- a/.gitignore
+++ b/.gitignore
@@ -40,4 +40,3 @@ settings.xml
.classpath
.classpath
.classpath
-.project
diff --git a/README.html b/README.html
index 477cee62..2ad17f31 100644
--- a/README.html
+++ b/README.html
@@ -15,12 +15,12 @@
@font-face
{font-family:"Calibri Light";
panose-1:2 15 3 2 2 2 4 3 2 4;}
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:Cambria;
panose-1:2 4 5 3 5 4 6 3 2 4;}
+@font-face
+ {font-family:Tahoma;
+ panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin-top:0cm;
@@ -388,7 +388,10 @@ PamguardBeta_ViewerMode.exe):
+href="#_Latest_Version_2.02.06">LATEST VERSION 2.02.06 November 2022
+
+
@@ -443,8 +446,34 @@ Version 2.00.10 June 2017
-Latest Version 2.02.05 October 2022
+Latest Version 2.02.06
+November 2022
+
+Bug Fixes
+
+Two memory leaks:
+
+A memory leak has been found which seems to
+mostly occur in Viewer mode. Some data on background noise measurements are not
+being cleared from memory, so memory will eventually run out. This could happen
+after browsing a lot of data, but was most likely when reprocessing files
+offline, for example running click classifiers. This is now fixed.
+
+Also fixed a memory leak in the ROCCA
+whistle classification module.
+
+New Features
+
+SoundTrap SUD file reading. If you’re using
+SoundTrap autonomous recorders from Ocean Instruments, you no longer need to
+decompress the SoundTrap files prior to processing. This will save time and a
+lot of disk space. Extraction of clicks from the inbuilt SoundTrap Click
+detector can also happen while processing SUD file data with other detectors,
+thereby streamlining the whole processing chain. Read the online Help for
+details.
+
+Version 2.02.05 October 2022
Click Train Detector Features and Bug Fixes
@@ -453,16 +482,16 @@ lang=EN-US>Latest Version 2.02.05 October 2022
Changes to GUI to make dialog shorter for
low DPI screens.
-Complete rewrite of the classification system
-to have nested classifiers which can be enabled or disabled.
+Complete rewrite of the classification
+system to have nested classifiers which can be enabled or disabled.
Changes to classification GUI to
accommodate the new classification system.
-Addition of data selectors to the minimum
-number of clicks accepted by the classifier. This allows the click-by-click
-classifier and the click train detector to be used to together to improve
-classification accuracy.
+Addition of data selectors to the minimum number
+of clicks accepted by the classifier. This allows the click-by-click classifier
+and the click train detector to be used to together to improve classification
+accuracy.
Bug fixes
@@ -499,9 +528,9 @@ audio files.
Bug Fixes
-Soundtrap DWV import. Will now generate binary
-files even if DWV file doesnÂ’t exist (which is correct behavior in quiet
-conditions when no clicks were detected).
+Soundtrap DWV import. Will now generate
+binary files even if DWV file doesnÂ’t exist (which is correct behavior in
+quiet conditions when no clicks were detected).
Spectrogram. Changes to stop occasional
crashing when restarting processing of wav files.
@@ -535,8 +564,8 @@ running in real time. Added template names based on file names.
#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’
-option was not selected.
+incorrect time stamp. This did not affect data if the ‘merge contiguous
+files’ option was not selected.
#14 Logger forms data were not plotting correctly. This was
due to the required data selection functions not being fully implemented. This
@@ -609,10 +638,10 @@ href="http://www.pamguard.org/downloads.php?cat_id=3">here.
Detection Group Localiser
-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.
+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.
Minor Bug Fixes
@@ -672,13 +701,13 @@ Implemented a Backup Manager for backing up multiple types of data to multiple
locations]
6.
-Upgrades to how PAMGuard lets the user enter custom date formats in the Sound
-Acquisition dialog
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Upgrades to how PAMGuard lets the user enter custom date
+formats in the Sound Acquisition dialog
7.
-Extended XML-output support to all of the modules
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Extended XML-output support to all of the modules
8.
@@ -690,8 +719,8 @@ lang=EN-US> Upgrades to the Symbol Manager framework, to give more
control over colours and symbols
10.
-Added an option to hide the ship on the map
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Added an option to hide the ship on the map
11.
@@ -720,9 +749,9 @@ decimating/upsampling by a non-integer amount
16.
Noise Level Outputs - as an aid to performance diagnosis, some detectors
-(currently the GPL, Click Detector and Whistle and Moan Detector) are outputting
-additional noise metrics to their binary output files. These can be read with
-the PAMGuard
+(currently the GPL, Click Detector and Whistle and Moan Detector) are
+outputting additional noise metrics to their binary output files. These can be
+read with the PAMGuard
Matlab library and used to diagnose system performance in varying noise
conditions. Improved displays within PAMGuard for these noise metrics will be
included in a future release.
@@ -730,10 +759,10 @@ included in a future release.
17.
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. 2682–2699, 2012) is now available. For details, see the online
-help
+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
18.
@@ -755,10 +784,10 @@ Version 2.00.10 before proceeding with installation and use of this
version.
This version of PAMGuard has been bundled with Java 13
-(release 13.0.1). PSFX files generated in previous beta releases (2.xx.xx) should
-be compatible with this version, and vice-versa. PSF files generated in core
-releases (1.15.xx) can be loaded in this version, but will be converted to PSFX
-files when PAMGuard exits.
+(release 13.0.1). PSFX files generated in previous beta releases (2.xx.xx)
+should be compatible with this version, and vice-versa. PSF files generated in
+core releases (1.15.xx) can be loaded in this version, but will be converted to
+PSFX files when PAMGuard exits.
Bug Fixes
@@ -841,8 +870,8 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Added logger form annotation to Spectrogram Annotation module.
6.
-Better auto-scaling in Ishmael Detector graphics window.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Better auto-scaling in Ishmael Detector graphics window.
7.
@@ -969,8 +998,8 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Upgrades
1.
-Add functionality for bluetooth headsets.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Add functionality for bluetooth headsets.
2.
Version 2.01.03
February 2020
-If you are upgrading from a PAMGuard core release
-(1.15.xx), PAMGuard Version 2 contains major updates. You should read and
-understand the notes listed for Beta
-Version 2.00.10 before proceeding with installation and use of this
-version.
+If you are upgrading from a PAMGuard core release (1.15.xx),
+PAMGuard Version 2 contains major updates. You should read and understand the
+notes listed for Beta Version 2.00.10
+before proceeding with installation and use of this version.
This version of PAMGuard has been bundled with Java 13
(release 13.0.1). PSFX files generated in previous beta releases (2.xx.xx)
@@ -1068,9 +1096,9 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Bug 435. Logger forms subtabs not working.
4.
-Bug 436. Bug in Serial Port interface was occassionally causing PAMGuard to
-crash without error message.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Bug 436. Bug in Serial Port interface was occassionally
+causing PAMGuard to crash without error message.
5.
@@ -1094,13 +1122,14 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Bug 441. Plot coordinate calculations incorrect in PamAxis.
10.
-Bug 442. BT Display does not change click symbol color when Colour By
-Superdetection is selected.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Bug 442. BT Display does not change click symbol color when
+Colour By Superdetection is selected.
11.
-Bug 443. NI playback crashing immediately if a device is not present.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Bug 443. NI playback crashing immediately if a device is not
+present.
12.
@@ -1149,13 +1178,13 @@ Added option in Sound Acquisition settings dialog to override filename time
stamp and use PC local time instead.
3.
-Add option to Whistle & Moan Detector data selector to only display
-whistles that have super-detections.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Add option to Whistle & Moan Detector data selector to
+only display whistles that have super-detections.
4.
-Functionality to clone hydrophone streamers.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Functionality to clone hydrophone streamers.
5.
@@ -1183,9 +1212,9 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Added a few new options to the Click Detector Sweep Classifier.
10.
-Add option to the Map module's Plot Overlay Options dialog, to show events
-occuring in the future (look
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Add option to the Map module's Plot Overlay Options dialog,
+to show events occuring in the future (look
ahead) instead of the default display of events which have already
occurred. Can make it easier to match up the map with clicks seen in the Click
Detector display.
@@ -1235,8 +1264,9 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Bug 429. Click Bearings at 180 degrees
4.
-Bug 430. Rocca calculates inflection point parameters incorrectly
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Bug 430. Rocca calculates inflection point parameters
+incorrectly
5.
Upgrades
1.
-New display for Gebco Netcdf bathymetry maps.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> New display for Gebco Netcdf bathymetry maps.
2. Difar enhancements based on recent field testing.
3.
-Click Train Detector upgrades, including localisation capabilities.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Click Train Detector upgrades, including localisation
+capabilities.
4.
-Updates to the Ishmael detectors.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Updates to the Ishmael detectors.
@@ -1347,9 +1378,9 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Upgrades to the Group Localiser, including better error estimation.
2.
-Click Train Detector upgrades, including ability to import time chunks from csv
-file for batch processing.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Click Train Detector upgrades, including ability to import
+time chunks from csv file for batch processing.
3. Added adaptive noise filter to Ishmael Detectors.
5. Many upgrades to the Sound Playback module, including a
-high-pass filter, gain control, and the ability to mix wavefrom and envelope
-data together to listen to high-frequency clicks and dolphin whistles at the
-same time.
+high-pass filter, gain control, and the ability to mix wavefrom and envelope data
+together to listen to high-frequency clicks and dolphin whistles at the same
+time.
6.
@@ -1476,14 +1507,14 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Updates to the Ishmael module.
9.
-Added option to the WarnOnce dialog to hide a warning for the current PAMGuard
-session, but not forever.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Added option to the WarnOnce dialog to hide a warning for
+the current PAMGuard session, but not forever.
-Beta Version 2.00.14c
-October 2018
+Beta Version
+2.00.14c October 2018
PAMGuard Version 2 contains major updates.
You should read and understand the notes listed for &nb
lang=EN-US> Added decimal degrees option to latitude/longitude dialog.
2.
-Added option in the Click Delay parameters to restrict the number of initial
-samples used in the calculation. This can be useful for cleaning up delays in
-the presence of echoes and small time delays.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Added option in the Click Delay parameters to restrict the
+number of initial samples used in the calculation. This can be useful for
+cleaning up delays in the presence of echoes and small time delays.
3.
@@ -1590,7 +1621,8 @@ Annotation module which has now been given two text type annotations.
9.
-Bug 391. Click Detector not registering change in multi-threading option.
+Bug 391. Click Detector not registering change in multi-threading
+option.
10.
@@ -1633,11 +1665,11 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
lang=EN-US> Added ability to read differential GPS data.
5.
-Added check for duplicate settings in the psf file when exiting Pamguard. If
-duplicate settings are found, user is given the option to leave them in the psf
-or get rid of them. Duplicate settings are ignored by Pamguard, but can cause
-the psf file to grow large over time.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Added check for duplicate settings in the psf file when
+exiting Pamguard. If duplicate settings are found, user is given the option to
+leave them in the psf or get rid of them. Duplicate settings are ignored by
+Pamguard, but can cause the psf file to grow large over time.
6.
@@ -1705,8 +1737,8 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
10.
-Bug 376. Error when using a serialised data map which spans a period of time
-in which Pamguard modules have changed.
+Bug 376. Error when using a serialised data map which spans a period of
+time in which Pamguard modules have changed.
11.
@@ -1745,8 +1777,9 @@ used in older versions. Older psf files can be loaded with this version, but
will be converted.
4.
-Many updates to the Video Range module. Will currently only work with landmarks.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Many updates to the Video Range module. Will currently only
+work with landmarks.
@@ -1809,8 +1842,8 @@ Beta versions
11.
-Bug 366. Rocca manual whistle contour extraction throws error when trying
-to classify a boxed whistle
+Bug 366. Rocca manual whistle contour extraction throws error when
+trying to classify a boxed whistle
Upgrades
@@ -1879,8 +1912,8 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
10.
-Bug 354. Whistle Classifier was crashing if user accidentally entered invalid
-parameters. Have added diagnostics to prevent this.
+Bug 354. Whistle Classifier was crashing if user accidentally entered
+invalid parameters. Have added diagnostics to prevent this.
Upgrades
@@ -1946,8 +1979,8 @@ lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> &nb
Added sound playback and other useful information to bar on FX display
2.
-Updates/bug fixes to the landmark module.
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Updates/bug fixes to the landmark module.
3. Added a simulated white noise source which can be moved
around in the same way as other sources.
4.
-Reworked annotation system, and added annotations to binary storage
+lang=EN-US style='font-size:7.0pt;font-family:"Times New Roman",serif'> Reworked annotation system, and added annotations to binary
+storage
5.
+UID’s are also added to PAMGuard database tables.
Converting Old Data
@@ -2004,14 +2038,14 @@ UIDÂ’s are also added to PAMGuard database tables.
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.
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 UIDÂ’s will be used in
-both data stores.
+in both the binary files and in database tables, the same UID’s will be used
+in both data stores.
New Displays
@@ -2025,11 +2059,11 @@ Note that this display is only available if you are running Java 8 or later. Event Marking and the Detection Group Localiser
-A new system of event marking which can be used
-both online and offline has been added to PAMGuard. Details are in the PAMGuard
-help file (Displays/Display Marking). Data can be selected on the Map, the
-Spectrogram Display and the new Time Display FX in a similar way and sent to
-other PAMGuard modules. The new marking and data selection system works with
+A new system of event marking which can be
+used both online and offline has been added to PAMGuard. Details are in the
+PAMGuard help file (Displays/Display Marking). Data can be selected on the Map,
+the Spectrogram Display and the new Time Display FX in a similar way and sent
+to other PAMGuard modules. The new marking and data selection system works with
the new Detection Group Localiser. The Detection Group Localiser extends the
functionality which always existed in the click detector to other types of data
(e.g. Whistles) so that they can be grouped and tracked using target motion
@@ -2074,8 +2108,8 @@ lang=EN-US>
1.
-Bug 317. Rocca Module Data Purging. The ROCCA
-module was not performing data purging when using classifiers developed for
+
Bug 317. Rocca Module Data Purging. The ROCCA module
+was not performing data purging when using classifiers developed for
Hawaii/Temperate Pacific/North Atlantic datasets. This has been corrected.
2.
Bug 315. code searched for file in working folder, which is the
installation folder when starting PAMGuard using a shortcut link. But when
-double-clicking on a psf, the working folder is the location of the psf. This has
-been fixed.
+double-clicking on a psf, the working folder is the location of the psf. This
+has been fixed.
7. Module code development remains largely
unchanged, in most cases simply requiring the addition of an interface class.
- Instructions for the development of new modules utilizing the plug-in scheme
-can be found here. Plug-in modules can be downloaded from the
PAMGuard website here, but developers are encouraged to host and maintain their
own modules.
@@ -2193,8 +2227,8 @@ own modules.
Modules of interest to the general PAM
community will remain as part of the core PAMGuard installation. However,
specialized modules which are useful to only a small number of users have been
-removed and are available as a separate download. The following modules have been
-removed:
+removed and are available as a separate download. The following modules have
+been removed:
1.
@@ -2245,19 +2279,19 @@ November 2016
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
-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
-based system seems to drop samples when many channels are running at high
-sample rate.
+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 based system seems to drop samples when many channels are running at
+high sample rate.
2.
Bug 305. Date and Time not being correctly
extracted from wav files created using SoundTrap recorders. Fixed by correctly
-finding and unpacking information in the accompanying xml log files that come with
-SoundTrap files.
+finding and unpacking information in the accompanying xml log files that come
+with SoundTrap files.
Version 1.15.06
November 2016
@@ -2376,9 +2410,9 @@ the database.
2.
-The number of data streams associated with the click detector
-has been tidied up so that there are a) All Click, b) Tracked Clicks (those
-which are part of an event) and c) Events.
+The number of data streams associated with the click
+detector has been tidied up so that there are a) All Click, b) Tracked Clicks
+(those which are part of an event) and c) Events.
3.
@@ -2394,9 +2428,9 @@ automatic click train identification and tracking.
5.
-The automatic click train identification is now using the
-same internal structures as the manual tracking, so it's possible to combine
-automatic and manual tracking.
+The automatic click train identification is now using
+the same internal structures as the manual tracking, so it's possible to
+combine automatic and manual tracking.
6.
@@ -2428,15 +2462,15 @@ memory that needed to be cleaned up). In some circumstances, these pauses were
making data acquisition systems unstable. We have therefore entirely rewritten
the way in which PAMGuard handles arrays of spectrogram data (complex numbers)
so that instead of large numbers of small Java objects there are now fewer,
-larger, simpler java objects. These reduce processing delays for garbage
-collection and give an overall speed improvement, but will otherwise not be
-noticed by users.
+larger, simpler java objects. These reduce processing delays for garbage collection
+and give an overall speed improvement, but will otherwise not be noticed by
+users.
Click Detector RainbowClick file output
This feature has been removed since it has
-been obsolete for several years. Users should use the PAMGuard binary storage
-system for Click Detector data.
+been obsolete for several years. Users should use the PAMGuard binary storage system
+for Click Detector data.
Version 1.15.04 July
2016
@@ -2476,8 +2510,9 @@ today.
5.
-Bug 277. Text fields in classifier dialog were not large enough to display
-times greater than 10ms. We have increased length of text fields in the dialog.
+Bug 277. Text fields in classifier dialog were not large enough to
+display times greater than 10ms. We have increased length of text fields in the
+dialog.
6.
@@ -2495,8 +2530,8 @@ style='font-size:7.0pt;font-family:"Times New Roman",serif'> &n
Bug 279. GUI Resizing: The whole PAMGuard GUI would suddenly resize to
something very small when a dialog is opened. This has been traced to improper
use of a common dialog component SourcePanel which tries to repack its parent
-Window. Some programmers had inadvertently set it to repack the main PAMGuard GUI
-instead. This has been Fixed.
+Window. Some programmers had inadvertently set it to repack the main PAMGuard
+GUI instead. This has been Fixed.
8.
@@ -2639,12 +2674,12 @@ boundaries when file durations are set to a maximum fixed value.
5.
-Bug 262. Access to SQLite database conversion. This would fail when tables
-were present which were not created by PAMGuard. Fixes have been put in
-place for spaces in the table name or for not having an 'Id' column. Fixes have
-not been implemented for spaces in a column name or use of a reserved word as a
-column name, however if either of these problems do exist it will no longer
-crash but issue a clear warning and carry onto the next table.
+Bug 262. Access to SQLite database conversion. This would fail when
+tables were present which were not created by PAMGuard. Fixes have been
+put in place for spaces in the table name or for not having an 'Id' column.
+Fixes have not been implemented for spaces in a column name or use of a
+reserved word as a column name, however if either of these problems do exist it
+will no longer crash but issue a clear warning and carry onto the next table.
@@ -2653,8 +2688,8 @@ name="_Toc312065299">Version 1.14.00 Beta, September 2015
The format of configuration files has changed for version
-1.14.00. Older configurations will load with this new version, but
-configurations saved with 1.14.00 may not open correctly with earlier versions.
+1.14.00. Older configurations will load with this new version, but configurations
+saved with 1.14.00 may not open correctly with earlier versions.
PAMGuard Versions 1.14.00 and above will work with Java 8.
PAMGuard will continue to work with Java 7, but support for Java 7 will be
@@ -2732,8 +2767,8 @@ events.
5.
-Bug 250. DIFAR module was crashing if it attempted to
-triangulate between more than two simultaneous bearings. Fixed.
+Bug 250. DIFAR module was crashing if it attempted to triangulate
+between more than two simultaneous bearings. Fixed.
6.
@@ -2834,11 +2869,11 @@ which is useful when using PAMGuard for demonstration purposes.
4.
-The sound File and Folder audio input systems now have an optional time
-zone setting. Note that PAMGuard analysis should still all be taking place in
-UTC and that this option is intended to allow the conversion of file times
-which were not recorded as UTC into UTC and not the other way around. Use the
-option with caution !
+The sound File and Folder audio input systems now have an optional time zone
+setting. Note that PAMGuard analysis should still all be taking place in UTC
+and that this option is intended to allow the conversion of file times which
+were not recorded as UTC into UTC and not the other way around. Use the option
+with caution !
5.
@@ -2879,8 +2914,8 @@ minutes and seconds. Now correctly displays the number of remaining days.
4.
-Bug 226. Spectrogram Mark Observer list doesn't refresh when modules added
-or removed.
+Bug 226. Spectrogram Mark Observer list doesn't refresh when modules
+added or removed.
5.
@@ -2953,9 +2988,8 @@ total loss of the PAMGuard configuration in viewer mode and has been rectified.
7.0pt;font-family:"Times New Roman",serif'> Bug
218. SAIL Acquisition card would hang the system. This has also been fixed.
-7. Bug
-219. Problems displaying Offline Click Events in the Viewer map have been
-fixed.
+7. Bug 219.
+Problems displaying Offline Click Events in the Viewer map have been fixed.
@@ -3053,9 +3087,9 @@ sonobuoys. See online help for details.
This module, developed by Jamie Macaulay of St Andrews
University estimates the 3D localisation of clicks using a variety of
algorithms. It's primarily been developed to track harbour porpoise in three
-dimensions over scales of 10's of metres. While currently only working with
-output from the click detector, we hope eventually to extend its use to
-whistles as well.
+dimensions over scales of 10's of metres. While currently only working with output
+from the click detector, we hope eventually to extend its use to whistles as
+well.
Accelerometer Readout (Sensors group)
@@ -3073,12 +3107,12 @@ marine mammal survey package. See online help for details.
Alarms (Utilities Group)
-This is a general system of visual and audio alarms developed
-by Doug Gillespie for use on a variety of projects. The alarms can be coupled
-to any module or detector in PAMGuard. Where appropriate, modules can control
-which of their data will cause an alarm action (e.g. in the Click detector you
-can set which types of classified click will fire the alarm). See online help
-for details.
+This is a general system of visual and audio alarms
+developed by Doug Gillespie for use on a variety of projects. The alarms can be
+coupled to any module or detector in PAMGuard. Where appropriate, modules can
+control which of their data will cause an alarm action (e.g. in the Click
+detector you can set which types of classified click will fire the alarm). See
+online help for details.
Noise Band Monitor (Sound Processing Group)
@@ -3125,11 +3159,10 @@ different. Details are available in the online help.
FLAC File Support
Can now read raw audio data direct from FLAC files. FLAC is a lossless compression
-algorithm for audio data. Files, or folders of files are accessed in the same
-way as WAV and AIFF files in the Sound Acquisition module. In a future release
-we also hope to provide support for writing FLAC files from the sound recorder
-module.
+href="http://en.wikipedia.org/wiki/FLAC">FLAC is a lossless compression algorithm
+for audio data. Files, or folders of files are accessed in the same way as WAV
+and AIFF files in the Sound Acquisition module. In a future release we also
+hope to provide support for writing FLAC files from the sound recorder module.
Sound Recorder Module
@@ -3195,8 +3228,8 @@ whistle.
longer possible to change configurations once PAMGuard has been launched
and pressing 'Cancel' on the select dialog causes PAMGuard to exit.
Airgun display. If this was
- included in the PAMGuard model before the GPS module it would hang
- PAMGuard. This has been rectified.
+ included in the PAMGuard model before the GPS module it would hang PAMGuard.
+ This has been rectified.
Fixed occasional exceptions in
the sound output modules when playing back from files.
Fixed exceptions in spectrogram
@@ -3276,9 +3309,9 @@ other data sources for the PAMGuard viewer.
Database
-Can now copy data from binary storage
-to the database offline for any module having both binary and database storage.
-
+Can now copy data from binary
+storage to the database offline for any module having both binary and database
+storage.
Can create a blank MS Access
database (2007 and later *.accdb formats only).
@@ -3470,9 +3503,9 @@ Symbol'>''
Offline event marking. Offline event marking similar to functionality in
-RainbowClick is now available in the PAMGUARD viewer. Event summary data is stored
-in the database and can also be exported to text files (e.g. for importing into
-the Distance software).
+RainbowClick is now available in the PAMGUARD viewer. Event summary data is
+stored in the database and can also be exported to text files (e.g. for
+importing into the Distance software).
'
@@ -3579,8 +3612,8 @@ the correct data stream. This has been fixed.
'
Whistle classifier has some new features in the classifier training
-panel. It is also now possible to export training data files directly from binary
-data files.
+panel. It is also now possible to export training data files directly from
+binary data files.
'
@@ -3600,10 +3633,10 @@ source, even if that data source is loaded after the FFT module is created.
1. Binary storage module.
-Performs a parallel role to the PAMGAURD database but uses
-binary files in a proprietary format which is considerably more efficient for
-data of unknown length such as whistle contours or small clips of click
-waveform. This feature is currently implemented in the following modules:
+Performs a parallel role to the PAMGAURD database but uses binary
+files in a proprietary format which is considerably more efficient for data of
+unknown length such as whistle contours or small clips of click waveform. This
+feature is currently implemented in the following modules:
'
@@ -3720,9 +3753,9 @@ re-label those channels 0,1,2,3.
numbering scheme. For instance, if you had a configuration which worked in real
time using channels 7 and 8 of a sound card, you could not use that same
configuration to analyse wav files, which would always read their data as
-channels 0 and 1. Similarly if you switched sound cards, you may have to
-reconfigure every detector and several of the displays to handle the changes in
-channel numbering.
+channels 0 and 1. Similarly if you switched sound cards, you may have to reconfigure
+every detector and several of the displays to handle the changes in channel
+numbering.
I have spent a considerable amount of time trying to work
out a better system for handling channel numbering in PAMGUARD and have decided
@@ -3833,10 +3866,10 @@ port is closed. Might prevent a few problems when using a GPS.
Crashes caused in real time or Mixed Mode if the number of
software channels exceeds the number of hydrophones configured in the array
manager. It is of course illogical to have software channels which are not
-assigned to a hydrophone, so rather than entirely prevent PAMGUARD from crashing
-I have inserted additional checks into the hydrophone array dialog which will
-prevent the user from closing that dialog unless all software channels are
-assigned to a hydrophone.
+assigned to a hydrophone, so rather than entirely prevent PAMGUARD from
+crashing I have inserted additional checks into the hydrophone array dialog
+which will prevent the user from closing that dialog unless all software
+channels are assigned to a hydrophone.
Version 1.8.01 Beta February 2010
@@ -3854,8 +3887,8 @@ frequency versions of the click detector.
'
-Note that this does not (yet) permit simultaneous acquisition and
-playback through
+Note that this does not (yet) permit simultaneous acquisition and playback
+through
'
@@ -3933,15 +3966,15 @@ classifier is still available).
Symbol'>'
Bearing ambiguity resolution for planar and volumetric arrays. New
features in array dialog for estimations of errors on array location. These
-feed into to a maximum likelihood estimate of angles from small 2D or 3D sub arrays
-to give two polar angle coordinates. this can be used to resolve left right
-ambiguity and is implemented for both the click and the whistle/moan detectors.
-As a result, the click detector bearing time display can now be set to go from
--180 to 180 degrees rather than 0 - 180 degrees. In this case, clicks in the
-upper half of the bearing display will be to port and clicks in the right half
-will be to starboard. As you pass a whale which is to port, the clicks will
-move UP the display. In the long term, I hope to turn this display around so
-that time is up the screen rather than across.
+feed into to a maximum likelihood estimate of angles from small 2D or 3D sub
+arrays to give two polar angle coordinates. this can be used to resolve left
+right ambiguity and is implemented for both the click and the whistle/moan
+detectors. As a result, the click detector bearing time display can now be set
+to go from -180 to 180 degrees rather than 0 - 180 degrees. In this case,
+clicks in the upper half of the bearing display will be to port and clicks in
+the right half will be to starboard. As you pass a whale which is to port, the
+clicks will move UP the display. In the long term, I hope to turn this display
+around so that time is up the screen rather than across.
Small features and bug fixes
@@ -4050,10 +4083,10 @@ Symbol'>''
New menu functionality by right clicking on any of the tabs of the main
-tab control will allow the user to copy the tab contents to the system
-clipboard from where it can be copied into other programs (e.g. Word,
-Powerpoint, etc.).Some modules, such as the map, have this implemented in other
-menus (right click) and also allow printing.
+tab control will allow the user to copy the tab contents to the system clipboard
+from where it can be copied into other programs (e.g. Word, Powerpoint,
+etc.).Some modules, such as the map, have this implemented in other menus
+(right click) and also allow printing.
'
@@ -4136,10 +4169,10 @@ help pages
Bug Fixes
-Memory leak caused by Night / Day colour manager now fixed. This
-would cause memory leaks when multiple files were being analysed off-line and
-would eventually crash PAMGUARD. The way that colours are managed in PAMGUARD
-has been rewritten.
+Memory leak caused by Night / Day colour manager now fixed.
+This would cause memory leaks when multiple files were being analysed off-line
+and would eventually crash PAMGUARD. The way that colours are managed in
+PAMGUARD has been rewritten.
Some issues with Swing fixed that might have been causing
hang ups on startup especially on Macs/Linux machines
@@ -4210,8 +4243,8 @@ file)
Changes
-The User Input module (for text entry of information by the user)
-has been moved from the Displays sub menu of the Add Modules menu, to
+
The User Input module (for text entry of information by the
+user) has been moved from the Displays sub menu of the Add Modules menu, to
Utilities. This will not affect how existing settings files are loaded.
Multi-screen environments.
@@ -4230,8 +4263,8 @@ acquisition.
Bug fixes
-Speed up of graphics, particularly regarding large quantities
-of gps track data
+Speed up of graphics, particularly regarding large
+quantities of gps track data
National Instruments cards with names > 20 characters
long are now correctly recognised.
@@ -4382,8 +4415,8 @@ channels or textual content change.
'
-Model viewer. Have stopped it from jumping on top of the main PAMGUARD display
-when dialogs are closed.
+Model viewer. Have stopped it from jumping on top of the main PAMGUARD
+ display when dialogs are closed.
'
@@ -4714,12 +4747,12 @@ and Ishmael-type detectors and localisers.
Information from above modules can be displayed on
configurable user displays which support real time scrolling spectrograms and
radar displays. Detection and localisation information can be optionally
-displayed on the map display.Map enhancements include improved scrolling whereby
-the user can click and drag to pan the area. PamGuard can now interface with
-MySQL database servers and users can easily select which information is logged.
-(This replaces the previous 'flat-file' logging feature). A simulation module
-allows virtual vocalising animals to be placed on the map to assist in training
-and development. Extensive online user help has been added to PamGuard
+displayed on the map display.Map enhancements include improved scrolling
+whereby the user can click and drag to pan the area. PamGuard can now interface
+with MySQL database servers and users can easily select which information is
+logged. (This replaces the previous 'flat-file' logging feature). A simulation
+module allows virtual vocalising animals to be placed on the map to assist in
+training and development. Extensive online user help has been added to PamGuard
Application
0.03b - first version used in a real 'at sea' environment.18/08/06
diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml
index b88e86ad..28b56066 100644
--- a/dependency-reduced-pom.xml
+++ b/dependency-reduced-pom.xml
@@ -4,7 +4,7 @@
org.pamguard
Pamguard
Pamguard Java12+
- 2.02.04ae
+ 2.02.06
Pamguard for Java 12+, using Maven to control dependcies
www.pamguard.org
diff --git a/pom.xml b/pom.xml
index 20248009..4a00c145 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
4.0.0
org.pamguard
Pamguard
- 2.02.05
+ 2.02.06
Pamguard Java12+
Pamguard for Java 12+, using Maven to control dependcies
www.pamguard.org
@@ -780,12 +780,12 @@
-->
-
+
pamguard.org
x3
2.2.0
-
+
diff --git a/repo/pamguard/org/x3/2.1.0/_remote.repositories b/repo/pamguard/org/x3/2.1.0/_remote.repositories
index 6231ea26..7415b7b8 100644
--- a/repo/pamguard/org/x3/2.1.0/_remote.repositories
+++ b/repo/pamguard/org/x3/2.1.0/_remote.repositories
@@ -1,4 +1,4 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
-#Tue Nov 01 15:41:45 GMT 2022
+#Tue Oct 11 15:59:57 BST 2022
x3-2.1.0.jar>=
x3-2.1.0.pom>=
diff --git a/src/Acquisition/AcquisitionControl.java b/src/Acquisition/AcquisitionControl.java
index 8fdd0826..150fc411 100644
--- a/src/Acquisition/AcquisitionControl.java
+++ b/src/Acquisition/AcquisitionControl.java
@@ -38,6 +38,9 @@ import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.SwingConstants;
+import org.pamguard.x3.sud.Chunk;
+import org.pamguard.x3.sud.SudFileListener;
+
import dataGram.DatagramManager;
import dataMap.OfflineDataMapPoint;
import dataMap.filemaps.OfflineFileServer;
@@ -49,12 +52,13 @@ import simulatedAcquisition.SimProcess;
import asiojni.ASIOSoundSystem;
import asiojni.NewAsioSoundSystem;
import nidaqdev.NIDAQProcess;
-import nidaqdev.networkdaq.NINetworkDaq;
import Acquisition.filedate.FileDate;
import Acquisition.filedate.StandardFileDate;
+import Acquisition.filetypes.SoundFileTypes;
import Acquisition.layoutFX.AquisitionGUIFX;
import Acquisition.offlineFuncs.OfflineWavFileServer;
import Acquisition.rona.RonaOfflineFileServer;
+import Acquisition.sud.SUDNotificationManager;
import Array.ArrayManager;
import Array.PamArray;
import Array.Preamplifier;
@@ -132,7 +136,10 @@ public class AcquisitionControl extends PamControlledUnit implements PamSettings
* The JavaFX GUI for the sound acquisition module.
*/
private AquisitionGUIFX aquisitionGUIFX;
-
+
+ private SUDNotificationManager sudNotificationManager;
+
+ protected SoundFileTypes soundFileTypes;
/**
* Main control unit for audio data acquisition.
@@ -158,6 +165,8 @@ public class AcquisitionControl extends PamControlledUnit implements PamSettings
pamController = PamController.getInstance();
+ soundFileTypes = new SoundFileTypes(this);
+
registerDaqSystem(new SoundCardSystem(this));
if (PlatformInfo.calculateOS() == OSType.WINDOWS) {
registerDaqSystem(new ASIOSoundSystem(this));
@@ -201,14 +210,8 @@ public class AcquisitionControl extends PamControlledUnit implements PamSettings
else {
PamStatusBar statusBar = PamStatusBar.getStatusBar();
- if (statusBar != null) {
- // statusBar.getToolBar().add(statusBarText = new JLabel());
- // fillStatusBarText();
- // statusBar.getToolBar().add(levelBar = new JProgressBar(-60, 0));
- // levelBar.setValue(-60);
- // levelBar.setOrientation(JProgressBar.HORIZONTAL);
+ if (statusBar != null && statusBarComponent != null) {
statusBar.add(statusBarComponent);
-// statusBar.getToolBar().addSeparator();
setupStatusBar();
}
}
@@ -239,6 +242,7 @@ public class AcquisitionControl extends PamControlledUnit implements PamSettings
private PamPanel systemPanel;
+
protected Component getStatusBarComponent() {
PamPanel p = new PamPanel();
p.add(statusBarText = new PamLabel());
@@ -833,5 +837,16 @@ public class AcquisitionControl extends PamControlledUnit implements PamSettings
public String getModuleSummary(boolean clear) {
return getDaqProcess().getRawDataBlock().getSummaryString(clear);
}
-
+
+ /**
+ * Get the SUD processing notification manager.
+ * @return SUD processing notification manager.
+ */
+ public SUDNotificationManager getSUDNotificationManager() {
+ if (sudNotificationManager == null) {
+ sudNotificationManager = new SUDNotificationManager();
+ }
+ return sudNotificationManager;
+ }
+
}
diff --git a/src/Acquisition/AcquisitionLogging.java b/src/Acquisition/AcquisitionLogging.java
index 398f7843..447ab78a 100644
--- a/src/Acquisition/AcquisitionLogging.java
+++ b/src/Acquisition/AcquisitionLogging.java
@@ -33,23 +33,23 @@ public class AcquisitionLogging extends SQLLogging {
this.acquisitionControl = acquisitionControl;
tableDef = new PamTableDefinition(pamDataBlock.getDataName(), UPDATE_POLICY_OVERWRITE);
- tableDef.addTableItem(adcClockTime = new PamTableItem("ADC Clock", Types.TIMESTAMP));
- tableDef.addTableItem(adcClockMillis = new PamTableItem("ADC Clock millis", Types.INTEGER));
- tableDef.addTableItem(rawADCTime = new PamTableItem("RAW ADC Clock", Types.TIMESTAMP));
- tableDef.addTableItem(gSamples = new PamTableItem("GigaSamples", Types.INTEGER));
- tableDef.addTableItem(samples = new PamTableItem("Samples", Types.INTEGER));
- tableDef.addTableItem(GPSPPSTime = new PamTableItem("GPSPPSTime", Types.TIMESTAMP));
- tableDef.addTableItem(status = new PamTableItem("Status", Types.CHAR, 20));
- tableDef.addTableItem(reason = new PamTableItem("Reason", Types.CHAR, 50));
- tableDef.addTableItem(daqSystemType = new PamTableItem("SystemType", Types.CHAR, 50));
- tableDef.addTableItem(daqSystemName = new PamTableItem("SystemName", Types.CHAR, 50));
- tableDef.addTableItem(sampleRate = new PamTableItem("sampleRate", Types.INTEGER));
- tableDef.addTableItem(nChannels = new PamTableItem("nChannels", Types.INTEGER));
- tableDef.addTableItem(voltsPeak2Peak = new PamTableItem("voltsPeak2Peak", Types.DOUBLE));
- tableDef.addTableItem(gain = new PamTableItem("gain", Types.REAL));
- tableDef.addTableItem(duration = new PamTableItem("duration", Types.DOUBLE));
- tableDef.addTableItem(clockError = new PamTableItem("clockError", Types.DOUBLE));
- tableDef.addTableItem(serverTime = new PamTableItem("Server Time", Types.TIMESTAMP));
+ tableDef.addTableItem(adcClockTime = new PamTableItem("ADC Clock", Types.TIMESTAMP, "Time based on PC clock and samples since last PC clock read"));
+ tableDef.addTableItem(adcClockMillis = new PamTableItem("ADC Clock millis", Types.INTEGER, "Millis for adcClockTime if not supported by database"));
+ tableDef.addTableItem(rawADCTime = new PamTableItem("RAW ADC Clock", Types.TIMESTAMP, "Time based on start time and number of samples acquired"));
+ tableDef.addTableItem(gSamples = new PamTableItem("GigaSamples", Types.INTEGER, "Billions of samples. Add this*1e9 to samples"));
+ tableDef.addTableItem(samples = new PamTableItem("Samples", Types.INTEGER, "Samples. Add this to GigaSamples*1e9"));
+ tableDef.addTableItem(GPSPPSTime = new PamTableItem("GPSPPSTime", Types.TIMESTAMP, "Time derived from a GPS with PPS output"));
+ tableDef.addTableItem(status = new PamTableItem("Status", Types.CHAR, 20, "Acquisition Status: 'Start', 'Stop', 'Continue'"));
+ tableDef.addTableItem(reason = new PamTableItem("Reason", Types.CHAR, 50, "Reason for status change"));
+ tableDef.addTableItem(daqSystemType = new PamTableItem("SystemType", Types.CHAR, 50, "Type of acquisition system"));
+ tableDef.addTableItem(daqSystemName = new PamTableItem("SystemName", Types.CHAR, 50, "Specific acquistision system"));
+ tableDef.addTableItem(sampleRate = new PamTableItem("sampleRate", Types.INTEGER, "Sample rate (samples per second)"));
+ tableDef.addTableItem(nChannels = new PamTableItem("nChannels", Types.INTEGER, "Total number of channels"));
+ tableDef.addTableItem(voltsPeak2Peak = new PamTableItem("voltsPeak2Peak", Types.DOUBLE, "Peak to peak input voltage of ADC"));
+ tableDef.addTableItem(gain = new PamTableItem("gain", Types.REAL, "Additional amplifier gain"));
+ tableDef.addTableItem(duration = new PamTableItem("duration", Types.DOUBLE, "Time since start in seconds"));
+ tableDef.addTableItem(clockError = new PamTableItem("clockError", Types.DOUBLE, "Clock error in milliseconds"));
+ tableDef.addTableItem(serverTime = new PamTableItem("Server Time", Types.TIMESTAMP, "Time taken from an Internet time server"));
setTableDefinition(tableDef);
}
diff --git a/src/Acquisition/AcquisitionProcess.java b/src/Acquisition/AcquisitionProcess.java
index fe889516..1798e119 100644
--- a/src/Acquisition/AcquisitionProcess.java
+++ b/src/Acquisition/AcquisitionProcess.java
@@ -254,9 +254,11 @@ public class AcquisitionProcess extends PamProcess {
bufferOverflow = false;
// daqCheckTime = PamCalendar.getTimeInMillis();
- Timer t = new Timer(1, new ReallyStart());
- t.setRepeats(false);
- t.start();
+ if (!netRX) {
+ Timer t = new Timer(1, new ReallyStart());
+ t.setRepeats(false);
+ t.start();
+ }
}
private boolean addServerTime(DaqStatusDataUnit daqStatusDataUnit) {
diff --git a/src/Acquisition/FileInputSystem.java b/src/Acquisition/FileInputSystem.java
index 771af349..31af5a84 100644
--- a/src/Acquisition/FileInputSystem.java
+++ b/src/Acquisition/FileInputSystem.java
@@ -7,6 +7,8 @@ import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.io.ByteArrayInputStream;
+import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
@@ -14,6 +16,8 @@ import java.io.IOException;
import java.io.Serializable;
import java.text.DateFormat;
import java.util.Calendar;
+import java.util.List;
+
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.UnsupportedAudioFileException;
@@ -31,6 +35,10 @@ import javax.swing.border.TitledBorder;
import org.jflac.FLACDecoder;
import org.jflac.frame.Frame;
import org.jflac.util.ByteData;
+import org.pamguard.x3.sud.Chunk;
+import org.pamguard.x3.sud.SudAudioInputStream;
+import org.pamguard.x3.sud.SudFileListener;
+import org.pamguard.x3.sud.SudParams;
import org.jflac.PCMProcessor;
import org.jflac.metadata.StreamInfo;
import org.jflac.sound.spi.FlacEncoding;
@@ -47,15 +55,14 @@ import wavFiles.ByteConverter;
import Acquisition.filedate.FileDate;
import Acquisition.filedate.FileDateDialogStrip;
import Acquisition.filedate.FileDateObserver;
+import Acquisition.filetypes.SoundFileType;
import Acquisition.pamAudio.PamAudioFileManager;
import Acquisition.pamAudio.PamAudioFileFilter;
-import Acquisition.pamAudio.PamAudioSystem;
import PamController.PamControlledUnitSettings;
import PamController.PamController;
import PamController.PamSettingManager;
import PamController.PamSettings;
import PamDetection.RawDataUnit;
-import PamModel.SMRUEnable;
import PamUtils.PamCalendar;
import PamUtils.PamFileChooser;
import PamView.dialog.PamLabel;
@@ -140,6 +147,11 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
protected ByteConverter byteConverter;
protected FileDateDialogStrip fileDateStrip;
+
+ /**
+ * Sound file types present in the current selections.
+ */
+ private List selectedFileTypes;
/**
* Text field for skipping initial few seconds of a file.
@@ -151,6 +163,9 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
*/
private PamWarning fileWarning;
+ private SudAudioInputStream sudAudioInputStream;
+
+ private SudListener sudListener;
public FileInputSystem(AcquisitionControl acquisitionControl) {
this.acquisitionControl = acquisitionControl;
@@ -177,7 +192,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
}
return daqDialog;
}
-
+
protected JPanel createDaqDialogPanel() {
JPanel p = new JPanel();
@@ -216,18 +231,18 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
fileDateStrip.addObserver(this);
p.add(fileDateStrip.getDialogComponent(), constraints);
-// if (SMRUEnable.isEnable()) {
+ // if (SMRUEnable.isEnable()) {
// no reason to hide this option from users.
- constraints.gridy++;
- constraints.gridx = 0;
- constraints.gridwidth = 1;
- addComponent(p, new JLabel("Skip initial"), constraints);
- constraints.gridx++;
- addComponent(p, skipSecondsField = new JTextField(4), constraints);
- constraints.gridx++;
- addComponent(p, new JLabel("seconds"), constraints);
- constraints.anchor = GridBagConstraints.EAST;
-// }
+ constraints.gridy++;
+ constraints.gridx = 0;
+ constraints.gridwidth = 1;
+ addComponent(p, new JLabel("Skip initial"), constraints);
+ constraints.gridx++;
+ addComponent(p, skipSecondsField = new JTextField(4), constraints);
+ constraints.gridx++;
+ addComponent(p, new JLabel("seconds"), constraints);
+ constraints.anchor = GridBagConstraints.EAST;
+ // }
// addComponent(p, new JLabel("File date :"), constraints);
// constraints.gridx++;
@@ -251,7 +266,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
// would hold a null. The system type is used by the getParameterSet method to decide
// whether or not to include the parameters in the XML output
if (fileInputParameters.systemType==null) fileInputParameters.systemType=getSystemType();
-
+
fillFileList();
if (repeat != null) {
@@ -289,7 +304,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
fileInputParameters.recentFiles.trimToSize();
}
}
-
+
if (repeat == null) {
fileInputParameters.repeatLoop = false;
}
@@ -306,7 +321,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
return false;
}
}
-
+
return true;
}
@@ -337,7 +352,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
protected void selectFile() {
//IshmaelDetector.MatchFiltParamsDialog copies a bunch of this. If you
//modifiy this, please check that too.
-
+
String currFile = (String) fileNameCombo.getSelectedItem();
// seems to just support aif and wav files at the moment
// Type[] audioTypes = AudioSystem.getAudioFileTypes();
@@ -393,6 +408,9 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
if (newFile.length() == 0) return;
File file = new File(newFile);
+
+ setSelectedFileTypes(acquisitionControl.soundFileTypes.getUsedTypes(file));
+
if (file == null) return;
// try to work out the date of the file
@@ -421,6 +439,10 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
// }
// }
+ if (audioStream instanceof SudAudioInputStream) {
+ acquisitionControl.getSUDNotificationManager().interpretNewFile(newFile, (SudAudioInputStream) audioStream);
+ }
+
AudioFormat audioFormat = audioStream.getFormat();
// fileLength = file.length();
fileSamples = audioStream.getFrameLength();
@@ -477,7 +499,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
public long getSkipStartFileTime() {
return fileInputParameters.skipStartFileTime;
}
-
+
@Override
public boolean canPlayBack(float sampleRate) {
// TODO Auto-generated method stub
@@ -538,7 +560,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
}
public File getCurrentFile() {
- System.out.println("fileInputParameters: " + fileInputParameters);
+// System.out.println("fileInputParameters: " + fileInputParameters);
if (fileInputParameters.recentFiles == null) return null;
if (fileInputParameters.recentFiles.size() < 1) return null;
String fileName = fileInputParameters.recentFiles.get(0);
@@ -565,7 +587,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
System.out.println("The current file was null");
return false;
}
- System.out.printf("*********************************** Opening file %s\n", currentFile.getName());
+// System.out.printf("*********************************** Opening file %s\n", currentFile.getName());
try {
@@ -575,12 +597,25 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
audioStream = PamAudioFileManager.getInstance().getAudioInputStream(currentFile);
+ if (audioStream instanceof SudAudioInputStream) {
+ sudAudioInputStream = (SudAudioInputStream) audioStream;
+ if (sudListener == null) {
+ sudListener = new SudListener();
+ }
+ sudAudioInputStream.addSudFileListener(sudListener);
+// sudAudioInputStream.ad
+ acquisitionControl.getSUDNotificationManager().newSudInputStream(sudAudioInputStream);
+ }
+ else {
+ sudAudioInputStream = null;
+ }
+
if (audioStream == null) {
return false;
}
audioFormat = audioStream.getFormat();
-
+
if (audioFormat==null) {
System.err.println("AudioFormat was null: " + currentFile.getAbsolutePath());
return false;
@@ -592,7 +627,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
acquisitionControl.getAcquisitionProcess().setSampleRate(audioFormat.getSampleRate(), true);
fileInputParameters.bitDepth = audioFormat.getSampleSizeInBits();
-
+
loadByteConverter(audioFormat);
} catch (UnsupportedAudioFileException ex) {
@@ -608,18 +643,27 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
return true;
}
+ private class SudListener implements SudFileListener {
+
+ @Override
+ public void chunkProcessed(int chunkID, Chunk sudChunk) {
+ acquisitionControl.getSUDNotificationManager().chunkProcessed(chunkID, sudChunk);
+ }
+
+ }
+
public boolean runFileAnalysis() {
// keep a reference to where data will be put.
this.newDataUnits = acquisitionControl.getDaqProcess().getNewDataQueue();
-
-// if (this.newDataUnits == null) {
-// System.err.println("newDataUnits: == null: ");
-// return false;
-// }
+
+ // if (this.newDataUnits == null) {
+ // System.err.println("newDataUnits: == null: ");
+ // return false;
+ // }
if (!prepareInputFile() && getCurrentFile()!=null) {
-
+
String audioFileStr = getCurrentFile()==null? "Null File": getCurrentFile().getAbsolutePath();
String title = "Error loading audio file";
String msg = "There was an error trying to access the audio file
" +
@@ -647,14 +691,14 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
this.startTimeMS = PamCalendar.getTimeInMillis();
if (audioFormat==null) {
-
+
String audioFileStr = getCurrentFile()==null? "Null File": getCurrentFile().getAbsolutePath();
System.err.println("FileInputSystem: runFileAnalysis: AudioFile format is null: " + audioFileStr);
-
+
return false;
}
-
+
nChannels = audioFormat.getChannels();
acquisitionControl.getDaqProcess().setSampleRate(sampleRate = audioFormat.getSampleRate(), true);
@@ -997,6 +1041,9 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
}
}
if (audioStream != null) {
+ if (audioStream instanceof SudAudioInputStream) {
+ acquisitionControl.getSUDNotificationManager().sudStreamClosed();
+ }
try {
audioStream.close();
audioStream = null;
@@ -1124,7 +1171,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
}
public void sayEta(long timeMs) {
-
+
if (etaLabel==null) return;
if (timeMs < 0) {
@@ -1186,4 +1233,27 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
getDialogPanel();
}
}
+
+ /**
+ * @return the selectedFileTypes
+ */
+ public List getSelectedFileTypes() {
+ return selectedFileTypes;
+ }
+
+ /**
+ * Called when the file or file list selection is changes and finds a list of all
+ * sound file types included in the selection. this is only implemented for SUD files
+ * at the moment, the idea being to offer some additional functionality.
+ * @param selectedFileTypes the selectedFileTypes to set
+ */
+ public void setSelectedFileTypes(List selectedFileTypes) {
+ this.selectedFileTypes = selectedFileTypes;
+ if (selectedFileTypes == null) {
+ return;
+ }
+ for (SoundFileType aType : selectedFileTypes) {
+ aType.selected(this);
+ }
+ }
}
\ No newline at end of file
diff --git a/src/Acquisition/FolderInputSystem.java b/src/Acquisition/FolderInputSystem.java
index 86fab5ad..589b6c45 100644
--- a/src/Acquisition/FolderInputSystem.java
+++ b/src/Acquisition/FolderInputSystem.java
@@ -10,6 +10,8 @@ import java.awt.event.ActionListener;
import java.io.File;
import java.io.Serializable;
import java.util.ArrayList;
+import java.util.List;
+
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.swing.BoxLayout;
@@ -494,6 +496,9 @@ public class FolderInputSystem extends FileInputSystem implements PamSettings{
// System.out.printf("Wav list recieved with %d files after %d millis\n",
// fileListData.getFileCount(), System.currentTimeMillis() - wavListStart);
allFiles = fileListData.getListCopy();
+
+ List asList = allFiles;
+ setSelectedFileTypes(acquisitionControl.soundFileTypes.getUsedTypes(allFiles));
setFileDateText();
// also open up the first file and get the sample rate and number of channels from it
diff --git a/src/Acquisition/filedate/StandardFileDate.java b/src/Acquisition/filedate/StandardFileDate.java
index 8fa56de6..aa87e973 100644
--- a/src/Acquisition/filedate/StandardFileDate.java
+++ b/src/Acquisition/filedate/StandardFileDate.java
@@ -13,6 +13,7 @@ import java.util.TimeZone;
import Acquisition.KETime;
import Acquisition.layoutFX.FileDatePane;
import Acquisition.layoutFX.StandardFileDatePane;
+import Acquisition.sud.SUDFileTime;
import PamController.PamControlledUnitSettings;
import PamController.PamSettingManager;
import PamController.PamSettings;
@@ -157,6 +158,11 @@ public class StandardFileDate implements FileDate, PamSettings {
if (settings.isUseBespokeFormat() && settings.getForcedDateFormat() != null) {
return forcedDataFormat(file, settings.getForcedDateFormat());
}
+
+ long sudTime = SUDFileTime.getSUDFileTime(file);
+ if (sudTime != Long.MIN_VALUE) {
+ return sudTime;
+ }
/*
* Dtag files have an accompanying XML file which
@@ -168,6 +174,7 @@ public class StandardFileDate implements FileDate, PamSettings {
setLastFormat("D3 time from xml file");
return dTagTime;
}
+
long stTime = SoundTrapTime.getSoundTrapTime(file, settings.getDateTimeFormatToUse());
if (stTime != Long.MIN_VALUE) {
diff --git a/src/Acquisition/filetypes/SUDFileType.java b/src/Acquisition/filetypes/SUDFileType.java
new file mode 100644
index 00000000..80fd0a36
--- /dev/null
+++ b/src/Acquisition/filetypes/SUDFileType.java
@@ -0,0 +1,29 @@
+package Acquisition.filetypes;
+
+import Acquisition.FileInputSystem;
+import PamView.dialog.warn.WarnOnce;
+
+public class SUDFileType extends SoundFileType {
+
+ private boolean isShown = false;
+
+ private String sudInfoText = "There are SoundTrap SUD files in your selection. PAMGuard can now process data from these " +
+ "directly with no need to unpack them into WAV files. " +
+ "If the SoundTrap was running with the click detector, then you should add a SoundTrap Click Detector module" +
+ " and detected clicks will automatically be extracted to binary files while processing the wav data." +
+ "
See the Click Detector help for further details";
+
+ public SUDFileType() {
+ super(".sud");
+ }
+
+ @Override
+ public void selected(FileInputSystem fileInputSystem) {
+ if (isShown) {
+ return;
+ }
+ WarnOnce.showWarning("SoundTrap SUD Files", sudInfoText, WarnOnce.OK_OPTION);
+ isShown = true;
+ }
+
+}
diff --git a/src/Acquisition/filetypes/SoundFileType.java b/src/Acquisition/filetypes/SoundFileType.java
new file mode 100644
index 00000000..3ed778d3
--- /dev/null
+++ b/src/Acquisition/filetypes/SoundFileType.java
@@ -0,0 +1,65 @@
+package Acquisition.filetypes;
+
+import java.io.File;
+import java.util.List;
+
+import Acquisition.FileInputSystem;
+import Acquisition.pamAudio.PamAudioFileFilter;
+import PamUtils.worker.filelist.WavFileType;
+
+/**
+ * Some functions for the File and Folder input systems to give a bit of
+ * extra functionality / help for different file types. Primarily introduced
+ * to give a couple of extras for sud files.
+ * @author dg50
+ *
+ */
+public abstract class SoundFileType {
+
+ private String fileType;
+
+ private PamAudioFileFilter fileFilter = new PamAudioFileFilter();
+
+ public SoundFileType(String fileType) {
+ this.fileType = fileType.toLowerCase();
+ }
+
+ /**
+ * Work out if any files of this type are included in the current selection.
+ * @param fileOrFolder this for a single file.
+ * @param includeSubfolders used with folders.
+ * @return true if any exist.
+ */
+ public boolean isFileType(File oneFile) {
+ if (oneFile == null) {
+ return false;
+ }
+ if (oneFile.isFile()) {
+ return oneFile.getName().toLowerCase().endsWith(fileType);
+ }
+
+ return false;
+ }
+
+ /**
+ * Work out if any files of this type are included in the current selection.
+ * @param fileOrFolder this for a single file.
+ * @param includeSubfolders used with folders.
+ * @return true if any exist.
+ */
+ public boolean hasFileType(List files) {
+ if (files == null) {
+ return false;
+ }
+ for (File aFile : files) {
+ if (isFileType(aFile)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ public abstract void selected(FileInputSystem fileInputSystem);
+
+}
diff --git a/src/Acquisition/filetypes/SoundFileTypes.java b/src/Acquisition/filetypes/SoundFileTypes.java
new file mode 100644
index 00000000..383077c7
--- /dev/null
+++ b/src/Acquisition/filetypes/SoundFileTypes.java
@@ -0,0 +1,74 @@
+package Acquisition.filetypes;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import Acquisition.AcquisitionControl;
+import PamUtils.worker.filelist.WavFileType;
+
+/**
+ * List of SoundFileType objects.
+ * @author dg50
+ *
+ */
+public class SoundFileTypes {
+
+ private AcquisitionControl acquisitionControl;
+
+ private ArrayList availableTypes = new ArrayList<>();
+
+ public SoundFileTypes(AcquisitionControl acquisitionControl) {
+ this.acquisitionControl = acquisitionControl;
+ availableTypes.add(new SUDFileType());
+ }
+
+ /**
+ * Get a list of used file types. Reaslistically this
+ * can only return one value.
+ * @param aFile
+ * @return
+ */
+ public SoundFileType getFileType(File aFile) {
+ ArrayList usedTypes = new ArrayList<>();
+ for (SoundFileType aType : availableTypes) {
+ if (aType.isFileType(aFile)) {
+ return aType;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Get a list of used file types. Realistically this
+ * can only return one value but possibly it's useful to have it in the same
+ * format as the multiple file version. .
+ * @param aFile
+ * @return
+ */
+ public List getUsedTypes(File aFile) {
+ ArrayList usedTypes = new ArrayList<>();
+ for (SoundFileType aType : availableTypes) {
+ if (aType.isFileType(aFile)) {
+ usedTypes.add(aType);
+ }
+ }
+ return usedTypes;
+ }
+
+ /**
+ * Get a list of used file types for the folder Input System.
+ * @param aFile
+ * @return
+ */
+ public List getUsedTypes(List aFile) {
+ ArrayList usedTypes = new ArrayList<>();
+ for (SoundFileType aType : availableTypes) {
+ if (aType.hasFileType(aFile)) {
+ usedTypes.add(aType);
+ }
+ }
+ return usedTypes;
+ }
+
+}
diff --git a/src/Acquisition/pamAudio/PamAudioFileManager.java b/src/Acquisition/pamAudio/PamAudioFileManager.java
index 18188b9e..6774ee63 100644
--- a/src/Acquisition/pamAudio/PamAudioFileManager.java
+++ b/src/Acquisition/pamAudio/PamAudioFileManager.java
@@ -109,7 +109,7 @@ public class PamAudioFileManager {
AudioInputStream stream = null;
for (int i = 0; i < pamAudioFileTypes.size(); i++) {
- System.out.println(file.getName() + " " + pamAudioFileTypes.get(i).getName());
+// System.out.println(file.getName() + " " + pamAudioFileTypes.get(i).getName());
if (isExtension(file, pamAudioFileTypes.get(i))) {
//System.out.println("Get stream for: " +pamAudioFileTypes.get(i).getName());
stream = pamAudioFileTypes.get(i).getAudioStream(file);
diff --git a/src/Acquisition/sud/SUDFileTime.java b/src/Acquisition/sud/SUDFileTime.java
new file mode 100644
index 00000000..1cc3ef52
--- /dev/null
+++ b/src/Acquisition/sud/SUDFileTime.java
@@ -0,0 +1,86 @@
+package Acquisition.sud;
+
+import java.io.File;
+
+import org.pamguard.x3.sud.ChunkHeader;
+import org.pamguard.x3.sud.SudAudioInputStream;
+import org.pamguard.x3.sud.SudFileMap;
+import org.pamguard.x3.sud.SudParams;
+
+import PamUtils.PamCalendar;
+
+public class SUDFileTime {
+
+ private static long sudTime;
+
+ private static String lastFilePath = "";
+ /**
+ * Temp measure to get the time from the first available sud record.
+ * @param file
+ * @return
+ */
+ public static long getSUDFileTime(File file) {
+ if (file == null || file.exists() == false) {
+ return Long.MIN_VALUE;
+ }
+ if (file.getName().toLowerCase().endsWith(".sud") == false) {
+ return Long.MIN_VALUE;
+ }
+ String filePath = file.getAbsolutePath();
+ if (filePath.equals(lastFilePath)) {
+ return sudTime;
+ }
+ /**
+ * Open the sud file and read it until the first chunk arrive, get the time
+ * from there and close it again. I don't really see another way.
+ */
+// long t1 = System.currentTimeMillis();
+ sudTime = Long.MIN_VALUE;
+ SudParams sudParams = new SudParams();
+ sudParams.saveMeta = false;
+ sudParams.saveWav = false;
+ try {
+ SudAudioInputStream sudAudioInputStream = SudAudioInputStream.openInputStream(file, sudParams, false);
+ if (sudAudioInputStream == null) {
+ return Long.MIN_VALUE;
+ }
+ SudFileMap sudMap = sudAudioInputStream.getSudMap();
+ if (sudMap == null) {
+ return Long.MIN_VALUE;
+ }
+ long t = sudMap.getFirstChunkTimeMillis();
+ if (t != 0) {
+ sudTime = t;
+ }
+// sudAudioInputStream.addSudFileListener((chunkID, sudChunk)->{
+// ChunkHeader chunkHead = sudChunk.chunkHeader;
+// if (chunkHead == null || sudTime != Long.MIN_VALUE) {
+// return;
+// }
+// long millis = (long) chunkHead.TimeS*1000 + (long) chunkHead.TimeOffsetUs/1000;
+// if (millis > 0) {
+// sudTime = millis;
+// lastFilePath = filePath;
+// }
+// });
+//
+// while (sudAudioInputStream.available() > 0 && sudTime == Long.MIN_VALUE) {
+//
+// //note this is reading bytes of uncompressed continuous recordings only.
+// sudAudioInputStream.read();
+// }
+//
+ sudAudioInputStream.close();
+// long t2 = System.currentTimeMillis();
+// System.out.printf("SUD file time %s extracted in %d milliseconds\n", PamCalendar.formatDBDateTime(sudTime), t2-t1);
+
+ } catch (Exception e) {
+ System.err.println("Error getting time from SUD file: " + e.getMessage());
+ }
+
+ return sudTime;
+ }
+
+
+
+}
diff --git a/src/Acquisition/sud/SUDNotificationHandler.java b/src/Acquisition/sud/SUDNotificationHandler.java
new file mode 100644
index 00000000..ed5ed429
--- /dev/null
+++ b/src/Acquisition/sud/SUDNotificationHandler.java
@@ -0,0 +1,36 @@
+package Acquisition.sud;
+
+import org.pamguard.x3.sud.Chunk;
+import org.pamguard.x3.sud.SudAudioInputStream;
+import org.pamguard.x3.sud.SudFileListener;
+import org.pamguard.x3.sud.SudProgressListener;
+
+public interface SUDNotificationHandler extends SudFileListener, SudProgressListener {
+
+ /**
+ * A new SUD file input stream has been opened.
+ * @param sudAudioInputStream
+ */
+ public void newSudInputStream(SudAudioInputStream sudAudioInputStream);
+
+ /**
+ * SUD stream has closed.
+ */
+ public void sudStreamClosed();
+
+ @Override
+ public void progress(double arg0, int arg1, int arg2);
+
+ @Override
+ public void chunkProcessed(int chunkId, Chunk sudChunk);
+
+ /**
+ * Notification that a new file or folder is selected. This is called when a file
+ * or folder is selected in the dialog, NOT when acquisition starts, so is a good
+ * opportunity for the SUD Click Detector to work out channel maps and sample rates.
+ * @param newFile
+ * @param sudAudioStream
+ */
+ public void interpretNewFile(String newFile, SudAudioInputStream sudAudioStream);
+
+}
diff --git a/src/Acquisition/sud/SUDNotificationManager.java b/src/Acquisition/sud/SUDNotificationManager.java
new file mode 100644
index 00000000..28bed217
--- /dev/null
+++ b/src/Acquisition/sud/SUDNotificationManager.java
@@ -0,0 +1,66 @@
+package Acquisition.sud;
+
+import java.util.ArrayList;
+
+import org.pamguard.x3.sud.Chunk;
+import org.pamguard.x3.sud.SudAudioInputStream;
+import org.pamguard.x3.sud.SudFileListener;
+import org.pamguard.x3.sud.SudProgressListener;
+
+/**
+ * Class to handle appropriate notifications for SUD files, which go a bit
+ * beyond what's handled in the chunk notifications.
+ * @author dg50
+ *
+ */
+public class SUDNotificationManager implements SUDNotificationHandler {
+
+ private ArrayList handlers = new ArrayList();
+
+ public void addNotificationHandler(SUDNotificationHandler sudNotificationHandler) {
+ if (handlers.contains(sudNotificationHandler)) {
+ return;
+ }
+ handlers.add(sudNotificationHandler);
+ }
+
+ public boolean removeNotificationHandler(SUDNotificationHandler sudNotificationHandler) {
+ return handlers.remove(sudNotificationHandler);
+ }
+
+ @Override
+ public void newSudInputStream(SudAudioInputStream sudAudioInputStream) {
+ for (SUDNotificationHandler handler : handlers) {
+ handler.newSudInputStream(sudAudioInputStream);
+ }
+ }
+
+ @Override
+ public void sudStreamClosed() {
+ for (SUDNotificationHandler handler : handlers) {
+ handler.sudStreamClosed();
+ }
+ }
+
+ @Override
+ public void progress(double arg0, int arg1, int arg2) {
+ for (SUDNotificationHandler handler : handlers) {
+ handler.progress(arg0, arg1, arg2);
+ }
+ }
+
+ @Override
+ public void chunkProcessed(int chunkId, Chunk sudChunk) {
+ for (SUDNotificationHandler handler : handlers) {
+ handler.chunkProcessed(chunkId, sudChunk);
+ }
+ }
+
+ @Override
+ public void interpretNewFile(String newFile, SudAudioInputStream sudAudioStream) {
+ for (SUDNotificationHandler handler : handlers) {
+ handler.interpretNewFile(newFile, sudAudioStream);
+ }
+ }
+
+}
diff --git a/src/Array/ThreadingHydrophoneLocator.java b/src/Array/ThreadingHydrophoneLocator.java
index 05480d7c..f372306c 100644
--- a/src/Array/ThreadingHydrophoneLocator.java
+++ b/src/Array/ThreadingHydrophoneLocator.java
@@ -77,6 +77,9 @@ public class ThreadingHydrophoneLocator extends StraightHydrophoneLocator implem
*/
while (gpsIt.hasPrevious()) {
gpsUnit = gpsIt.previous();
+ if (gpsUnit == null) {
+ continue;
+ }
gpsData = gpsUnit;
if (gpsUnit.getTimeInMillis() < timeMilliseconds) {
break;
diff --git a/src/Filters/IIRFilterMethod.java b/src/Filters/IIRFilterMethod.java
index 44dd4c2f..bd902e69 100644
--- a/src/Filters/IIRFilterMethod.java
+++ b/src/Filters/IIRFilterMethod.java
@@ -313,6 +313,9 @@ public abstract class IIRFilterMethod extends FilterMethod {
// if (nOddOnes != 0) {
pole1 = pzPairs[i].getPole();
zero1 = pzPairs[i].getZero();
+ if (pole1 == null || zero1 == null) {
+ continue;
+ }
a1 = -zero1.real;
b1 = pole1.real;
doubleCoefficients[j+0] = a1;
diff --git a/src/PamController/PamguardVersionInfo.java b/src/PamController/PamguardVersionInfo.java
index 01258c63..68b68f42 100644
--- a/src/PamController/PamguardVersionInfo.java
+++ b/src/PamController/PamguardVersionInfo.java
@@ -31,12 +31,12 @@ public class PamguardVersionInfo {
* Version number, major version.minorversion.sub-release.
* Note: can't go higher than sub-release 'f'
*/
- static public final String version = "2.02.05";
+ static public final String version = "2.02.06";
/**
* Release date
*/
- static public final String date = "21 October 2022";
+ static public final String date = "15 November 2022";
// /**
// * Release type - Beta or Core
diff --git a/src/PamController/command/SummaryCommand.java b/src/PamController/command/SummaryCommand.java
index 91185b8b..c2628909 100644
--- a/src/PamController/command/SummaryCommand.java
+++ b/src/PamController/command/SummaryCommand.java
@@ -1,6 +1,5 @@
package PamController.command;
-import Map.GetMapFile;
import PamController.PamControlledUnit;
import PamController.PamController;
import PamUtils.PamCalendar;
@@ -56,6 +55,9 @@ public class SummaryCommand extends ExtCommand {
totalString += String.format("\n<%s>%s:%s<\\%s>", aModule.getShortUnitType(),
aModule.getUnitName(), aString, aModule.getShortUnitType());
}
+ if (clear) {
+ lastCallTime = nowTime;
+ }
return totalString;
}
diff --git a/src/PamModel/PamModel.java b/src/PamModel/PamModel.java
index 153fa2eb..00be884a 100644
--- a/src/PamModel/PamModel.java
+++ b/src/PamModel/PamModel.java
@@ -673,11 +673,6 @@ final public class PamModel implements PamModelInterface, PamSettings {
+ "bearings to source, group into click trains, etc.");
mi.setModulesMenuGroup(detectorsGroup);
mi.addGUICompatabilityFlag(PamGUIManager.FX);
-
- mi = PamModuleInfo.registerControlledUnit("soundtrap.STClickControl", "SoundTrap Click Detector");
- mi.setModulesMenuGroup(detectorsGroup);
- mi.setToolTipText("Click Detector module for Soundtrap detector data");
- mi.setHidden(isViewer == false);
mi = PamModuleInfo.registerControlledUnit("clickTrainDetector.ClickTrainControl", "Click Train Detector");
mi.addDependency(new PamDependency(RawDataUnit.class, "clickDetector.ClickControl"));
@@ -729,6 +724,11 @@ final public class PamModel implements PamModelInterface, PamSettings {
mi.setToolTipText("Generalised Power Law Detector for tonal sounds");
mi.setModulesMenuGroup(detectorsGroup);
+ mi = PamModuleInfo.registerControlledUnit("soundtrap.STClickControl", "SoundTrap Click Detector");
+ mi.setModulesMenuGroup(detectorsGroup);
+ mi.setToolTipText("Click Detector module for Soundtrap detector data only");
+// mi.setHidden(isViewer == false);
+
// mi = PamModuleInfo.registerControlledUnit("WorkshopDemo.WorkshopController", "Workshop Demo Detector");
// mi.addDependency(new PamDependency(FFTDataUnit.class, "fftManager.PamFFTControl"));
// mi.setToolTipText("Simple demo detector for programmers");
diff --git a/src/PamUtils/PamAudioFileFilter.java b/src/PamUtils/PamAudioFileFilter.java
index b903cbf7..e1f20a95 100644
--- a/src/PamUtils/PamAudioFileFilter.java
+++ b/src/PamUtils/PamAudioFileFilter.java
@@ -17,7 +17,7 @@ public class PamAudioFileFilter extends PamFileFilter {
// addFileType(".AIFF");
// addFileType(".FLAC");
addFileType(".flac");
-// addFileType(".sud");
+ addFileType(".sud");
}
}
diff --git a/src/PamUtils/XMLUtils.java b/src/PamUtils/XMLUtils.java
index 66f487ac..acccde94 100644
--- a/src/PamUtils/XMLUtils.java
+++ b/src/PamUtils/XMLUtils.java
@@ -1,7 +1,9 @@
package PamUtils;
+import java.io.BufferedWriter;
import java.io.ByteArrayInputStream;
import java.io.File;
+import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringWriter;
@@ -9,6 +11,7 @@ import java.io.StringWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
@@ -183,4 +186,47 @@ public class XMLUtils {
}
return doc;
}
+ /**
+ * Write to the given file.
+ * @param doc xml document
+ * @param outFile file
+ * @throws IOException
+ */
+ public static void writeToFile(Document doc, File outFile) throws IOException {
+ String asString = getAsString(doc);
+ if (asString!=null) {
+ try {
+ BufferedWriter out = new BufferedWriter(new FileWriter(outFile, false));
+ out.write(asString);
+ out.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ /**
+ * Get the xml document as a String.
+ * @param doc xml document
+ * @return xml content as a a string.
+ */
+ public static String getAsString(Document doc) {
+ try {
+ DOMSource domSource = new DOMSource(doc);
+ StringWriter writer = new StringWriter();
+ StreamResult result = new StreamResult(writer);
+ TransformerFactory tf = TransformerFactory.newInstance();
+ Transformer transformer = tf.newTransformer();
+ transformer.setOutputProperty(OutputKeys.METHOD, "xml");
+ transformer.setOutputProperty(OutputKeys.ENCODING, "ISO-8859-1");
+// transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
+ transformer.setOutputProperty(OutputKeys.INDENT, "yes");
+ transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
+ transformer.transform(domSource, result);
+ return writer.toString();
+ } catch (TransformerException e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
}
diff --git a/src/PamguardMVC/PamDataBlock.java b/src/PamguardMVC/PamDataBlock.java
index 20d6aedb..e0c3b9f7 100644
--- a/src/PamguardMVC/PamDataBlock.java
+++ b/src/PamguardMVC/PamDataBlock.java
@@ -65,6 +65,7 @@ import PamDetection.LocalisationInfo;
import PamUtils.PamCalendar;
import PamUtils.PamUtils;
import PamView.symbol.PamSymbolManager;
+import PamguardMVC.background.BackgroundDataBlock;
import PamguardMVC.background.BackgroundManager;
import PamguardMVC.dataOffline.OfflineDataLoadInfo;
import PamguardMVC.dataOffline.OfflineDataLoading;
@@ -944,6 +945,12 @@ public class PamDataBlock extends PamObservable {
recycledUnits.clear();
}
}
+ if (backgroundManager != null) {
+ BackgroundDataBlock bdb = backgroundManager.getBackgroundDataBlock();
+ if (bdb != null) {
+ bdb.clearAll();
+ }
+ }
}
/**
diff --git a/src/PamguardMVC/PamObservable.java b/src/PamguardMVC/PamObservable.java
index 73897998..da6a540b 100644
--- a/src/PamguardMVC/PamObservable.java
+++ b/src/PamguardMVC/PamObservable.java
@@ -400,7 +400,7 @@ public class PamObservable {//extends PanelOverlayDraw {
}
}
- private Timer t = new Timer(1000, new ActionListener() {
+ private Timer t = new Timer(4321, new ActionListener() {
public void actionPerformed(ActionEvent evt) {
long now = System.currentTimeMillis();
if (cpuUsage == null) return;
@@ -412,6 +412,16 @@ public class PamObservable {//extends PanelOverlayDraw {
lastCPUCheckTime = now;
}
});
+
+
+ /**
+ * Had some issues with the Timer holding a reference to the underlying PamDataBlock
+ * (RoccaContourDataBlock, in this case) and not releasing it for garbage collection.
+ * Added in this method to force the timer to stop and release it's hold.
+ */
+ public void stopTimer() {
+ t.stop();
+ }
public double getCPUPercent(int objectIndex) {
if (objectIndex < 0 || objectIndex >= cpuPercent.length) return -1;
diff --git a/src/SoundRecorder/RecorderControl.java b/src/SoundRecorder/RecorderControl.java
index c2a4a270..eaa28546 100644
--- a/src/SoundRecorder/RecorderControl.java
+++ b/src/SoundRecorder/RecorderControl.java
@@ -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
diff --git a/src/SoundRecorder/RecorderSettings.java b/src/SoundRecorder/RecorderSettings.java
index c690e97f..72c9576d 100644
--- a/src/SoundRecorder/RecorderSettings.java
+++ b/src/SoundRecorder/RecorderSettings.java
@@ -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.
diff --git a/src/annotation/calcs/snr/SnrSqlAddon.java b/src/annotation/calcs/snr/SnrSqlAddon.java
index 0132aaa5..e04c98e1 100644
--- a/src/annotation/calcs/snr/SnrSqlAddon.java
+++ b/src/annotation/calcs/snr/SnrSqlAddon.java
@@ -17,7 +17,7 @@ public class SnrSqlAddon implements SQLLoggingAddon {
public SnrSqlAddon(SNRAnnotationType snrAnnotationType) {
super();
this.snrAnnotationType = snrAnnotationType;
- snr = new PamTableItem("snr", Types.DOUBLE);
+ snr = new PamTableItem("snr", Types.DOUBLE, "Signal to Noise ratio");
}
@Override
diff --git a/src/annotation/calcs/spl/SPLSqlAddon.java b/src/annotation/calcs/spl/SPLSqlAddon.java
index 44027082..adc301fd 100644
--- a/src/annotation/calcs/spl/SPLSqlAddon.java
+++ b/src/annotation/calcs/spl/SPLSqlAddon.java
@@ -18,10 +18,10 @@ public class SPLSqlAddon implements SQLLoggingAddon {
public SPLSqlAddon(SPLAnnotationType splAnnotationType) {
super();
this.splAnnotationType = splAnnotationType;
- rms = new PamTableItem("RMS", Types.DOUBLE);
- zeroPeak = new PamTableItem("ZeroPeak", Types.DOUBLE);
- peakPeak = new PamTableItem("PeakPeak", Types.DOUBLE);
- sel = new PamTableItem("SEL", Types.DOUBLE);
+ rms = new PamTableItem("RMS", Types.DOUBLE, "RMS Level");
+ zeroPeak = new PamTableItem("ZeroPeak", Types.DOUBLE, "Zero to Peak Level");
+ peakPeak = new PamTableItem("PeakPeak", Types.DOUBLE, "Peak to Peak Level");
+ sel = new PamTableItem("SEL", Types.DOUBLE, "Sound Exposure Level");
}
@Override
diff --git a/src/annotation/string/StringSQLLogging.java b/src/annotation/string/StringSQLLogging.java
index 07cfc66e..849328b0 100644
--- a/src/annotation/string/StringSQLLogging.java
+++ b/src/annotation/string/StringSQLLogging.java
@@ -20,7 +20,7 @@ public class StringSQLLogging implements SQLLoggingAddon {
super();
this.stringAnnotationType = stringAnnotationType;
notes = new PamTableItem(stringAnnotationType.getAnnotationName(),
- Types.CHAR, stringAnnotationType.getMaxLength());
+ Types.CHAR, stringAnnotationType.getMaxLength(), "Notes");
}
@Override
diff --git a/src/bearinglocaliser/annotation/BearingAnnotationSQL.java b/src/bearinglocaliser/annotation/BearingAnnotationSQL.java
index e2272d86..bc4b88bb 100644
--- a/src/bearinglocaliser/annotation/BearingAnnotationSQL.java
+++ b/src/bearinglocaliser/annotation/BearingAnnotationSQL.java
@@ -21,16 +21,16 @@ public class BearingAnnotationSQL implements SQLLoggingAddon {
public BearingAnnotationSQL(BearingAnnotationType bearingAnnotationType) {
super();
this.bearingAnnotationType = bearingAnnotationType;
- algoName = new PamTableItem("BearingAlgorithm", Types.CHAR, 30);
- angle[0] = new PamTableItem("BearingAngle1", Types.REAL);
- angle[1] = new PamTableItem("BearingAngle2", Types.REAL);
- angleError[0] = new PamTableItem("BearingError1", Types.REAL);
- angleError[1] = new PamTableItem("BearingError2", Types.REAL);
- refAngles[0] = new PamTableItem("ReferenceAngle1", Types.REAL);
- refAngles[1] = new PamTableItem("ReferenceAngle2", Types.REAL);
- bfPhones = new PamTableItem("BearingPhones", Types.INTEGER);
- bfArrayType = new PamTableItem("BearingArrayType", Types.SMALLINT);
- bfContents = new PamTableItem("BearingLocContents", Types.INTEGER);
+ algoName = new PamTableItem("BearingAlgorithm", Types.CHAR, 30, "Algorithm Name");
+ angle[0] = new PamTableItem("BearingAngle1", Types.REAL, "Horizontal angle (radians)");
+ angle[1] = new PamTableItem("BearingAngle2", Types.REAL, "Vertical angle (radians)");
+ angleError[0] = new PamTableItem("BearingError1", Types.REAL, "Horizontal angle error (radians)");
+ angleError[1] = new PamTableItem("BearingError2", Types.REAL, "Vertical angle error (radians)");
+ refAngles[0] = new PamTableItem("ReferenceAngle1", Types.REAL, "Horizontal angle reference");
+ refAngles[1] = new PamTableItem("ReferenceAngle2", Types.REAL, "Vertical angle reference");
+ bfPhones = new PamTableItem("BearingPhones", Types.INTEGER, "Used hydrophones bitmap");
+ bfArrayType = new PamTableItem("BearingArrayType", Types.SMALLINT, "Array Type 1=point;2=line;3=plane;4=volume");
+ bfContents = new PamTableItem("BearingLocContents", Types.INTEGER, "Bitmap of localisation information types");
}
@Override
diff --git a/src/binaryFileStorage/BinaryStorageDialogPanel.java b/src/binaryFileStorage/BinaryStorageDialogPanel.java
index 1fdbbcc6..7c053fa1 100644
--- a/src/binaryFileStorage/BinaryStorageDialogPanel.java
+++ b/src/binaryFileStorage/BinaryStorageDialogPanel.java
@@ -130,7 +130,18 @@ public class BinaryStorageDialogPanel {
binaryStoreSettings.autoNewFiles = autoNewFiles.isSelected();
binaryStoreSettings.datedSubFolders = dateSubFolders.isSelected();
binaryStoreSettings.limitFileSize = limitfileSize.isSelected();
-
+
+ if (allowChannelOffsets) {
+ try {
+ binaryStoreSettings.channelShift = Integer.valueOf(channelOffset.getText());
+ }
+ catch (NumberFormatException e) {
+ return PamDialog.showWarning(owner, errorTitle, "Invalid channel offset number format");
+ }
+ if (binaryStoreSettings.channelShift < 0 || binaryStoreSettings.channelShift > 31) {
+ return PamDialog.showWarning(owner, errorTitle, "Channel offset bust be between 0 and 31");
+ }
+ }
if (PamController.getInstance().getRunMode() == PamController.RUN_PAMVIEW) {
return true;
}
@@ -157,17 +168,6 @@ public class BinaryStorageDialogPanel {
return PamDialog.showWarning(owner, errorTitle, "Invalid file size data");
}
}
- if (allowChannelOffsets) {
- try {
- binaryStoreSettings.channelShift = Integer.valueOf(channelOffset.getText());
- }
- catch (NumberFormatException e) {
- return PamDialog.showWarning(owner, errorTitle, "Invalid channel offset number format");
- }
- if (binaryStoreSettings.channelShift < 0 || binaryStoreSettings.channelShift > 31) {
- return PamDialog.showWarning(owner, errorTitle, "Channel offset bust be between 0 and 31");
- }
- }
NoiseStoreType nst = (NoiseStoreType) noiseStoreType.getSelectedItem();
if (nst == null) {
return PamDialog.showWarning(owner, errorTitle, "You must select a noise storage type");
diff --git a/src/clickDetector/ClickDetector.java b/src/clickDetector/ClickDetector.java
index 074138d7..db602360 100644
--- a/src/clickDetector/ClickDetector.java
+++ b/src/clickDetector/ClickDetector.java
@@ -1096,7 +1096,7 @@ public class ClickDetector extends PamProcess {
* @return true if the tasks complete successfully and the click is to be kept.
* false otherwise.
*/
- private boolean completeClick(ClickDetection newClick) {
+ public boolean completeClick(ClickDetection newClick) {
if (newClick.dataType == ClickDetection.CLICK_CLICK) {
int nChannels = PamUtils.getNumChannels(newClick.getChannelBitmap());
diff --git a/src/generalDatabase/DBControl.java b/src/generalDatabase/DBControl.java
index 96adf97f..eb2697d5 100644
--- a/src/generalDatabase/DBControl.java
+++ b/src/generalDatabase/DBControl.java
@@ -428,11 +428,26 @@ PamSettingsSource {
JMenuItem speedMenu = new JMenuItem("Test database speed");
speedMenu.addActionListener(new SpeedMenu(parentFrame));
menu.add(speedMenu);
+
+ JMenuItem exSchema = new JMenuItem("Export database schema");
+ exSchema.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ exportDatabaseSchema(parentFrame);
+ }
+ });
+ menu.add(exSchema);
}
return menu;
}
+ protected void exportDatabaseSchema(JFrame parentFrame) {
+ dbProcess.exportDatabaseSchema(parentFrame);
+ }
+
+
class DatabaseFileMenuAction implements ActionListener {
private Frame frame;
diff --git a/src/generalDatabase/DBProcess.java b/src/generalDatabase/DBProcess.java
index 75b9b027..9e3bf699 100644
--- a/src/generalDatabase/DBProcess.java
+++ b/src/generalDatabase/DBProcess.java
@@ -22,6 +22,8 @@ import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
+import javax.swing.JFileChooser;
+import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.Timer;
@@ -36,7 +38,9 @@ import loggerForms.UDFTableDefinition;
import loggerForms.formdesign.FormEditor;
import PamController.PamControlledUnit;
import PamController.PamController;
+import PamController.PamFolders;
import PamUtils.PamCalendar;
+import PamUtils.PamFileChooser;
import PamView.dialog.warn.WarnOnce;
import PamguardMVC.PamDataBlock;
import PamguardMVC.PamDataUnit;
@@ -1393,4 +1397,42 @@ public class DBProcess extends PamProcess {
return logViewerSettings;
}
+ /**
+ * Export all available database schema, converting PamTableDefinitions into
+ * valid xsd documents.
+ * @param parentFrame
+ */
+ public void exportDatabaseSchema(JFrame parentFrame) {
+ File startLoc = PamFolders.getFileChooserPath(PamFolders.getDefaultProjectFolder());
+ PamFileChooser fc = new PamFileChooser();
+ fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+ startLoc = PamFolders.getFileChooserPath(startLoc);
+ fc.setCurrentDirectory(startLoc);
+
+ int ans = fc.showDialog(parentFrame, "Select storage folder");
+
+ if (ans == JFileChooser.APPROVE_OPTION) {
+ startLoc = fc.getSelectedFile();
+ exportDatabaseSchema(parentFrame, startLoc);
+ }
+
+ }
+
+ /**
+ * Export all table definitions to xsd files in given folder.
+ * @param parentFrame
+ * @param folder
+ */
+ private void exportDatabaseSchema(JFrame parentFrame, File folder) {
+ ArrayList allDataBlocks = PamController.getInstance().getDataBlocks();
+ DBSchemaWriter schemaWriter = new DBSchemaWriter();
+ for (PamDataBlock aBlock : allDataBlocks) {
+ SQLLogging logging = aBlock.getLogging();
+ if (logging == null) {
+ continue;
+ }
+ schemaWriter.writeSchema(folder, aBlock);
+ }
+ }
+
}
diff --git a/src/generalDatabase/DBSchemaWriter.java b/src/generalDatabase/DBSchemaWriter.java
new file mode 100644
index 00000000..746516b4
--- /dev/null
+++ b/src/generalDatabase/DBSchemaWriter.java
@@ -0,0 +1,263 @@
+package generalDatabase;
+
+import java.io.File;
+import java.io.IOException;
+import java.sql.Types;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.parsers.DocumentBuilderFactory;
+
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+import PamUtils.XMLUtils;
+import PamguardMVC.PamDataBlock;
+
+/**
+ * Functions for writing database table schema in a format
+ * compatible with the Tethys schemas.
+ * @author dg50
+ *
+ */
+public class DBSchemaWriter {
+
+ private PamTableDefinition baseTableDefinition = new PamTableDefinition("PamTableDefinition");
+
+ private PamTableDefinition parentTable;
+
+ public DBSchemaWriter() {
+ // TODO Auto-generated constructor stub
+ }
+
+
+ public boolean writeStandardTableDef(File outputFolder, PamDataBlock dataBlock) {
+ PamTableDefinition aTable = new PamTableDefinition("PamStandardTable");
+ parentTable = null;
+ exportDatabaseSchema(outputFolder, dataBlock, null, aTable);
+ parentTable = aTable;
+
+ return true;
+ }
+
+ public boolean writeSchema(File outputFolder, PamDataBlock dataBlock) {
+ if (dataBlock == null) {
+ return false;
+ }
+ SQLLogging logging = dataBlock.getLogging();
+ if (logging == null) {
+ return false;
+ }
+
+
+ PamTableDefinition tableDef = logging.getTableDefinition();
+ tableDef = logging.getBaseTableDefinition();
+
+ if (tableDef instanceof PamTableDefinition) {
+ writeStandardTableDef(outputFolder, dataBlock);
+ }
+ else {
+ parentTable = null;
+ }
+
+ exportDatabaseSchema(outputFolder, dataBlock, logging, tableDef);
+
+ return true;
+ }
+
+ private void exportDatabaseSchema(File outputFolder, PamDataBlock dataBlock, SQLLogging logging, PamTableDefinition tableDef) {
+
+ /**
+ * write a parent item, e.g. if tableDef is a sub class of PamTableDefinition
+ */
+ // String parentName = writeParentTableSchema(outputFolder, dataBlock, tableDef);
+
+ String tableName = tableDef.getTableName();
+ Document doc = PamUtils.XMLUtils.createBlankDoc();
+ Element schemaEl = doc.createElement("xs:schema");
+ schemaEl.setAttribute("xmlns:xs","http://www.w3.org/2001/XMLSchema");
+ schemaEl.setAttribute("targetNamespace", "http://tethys.sdsu.edu/schema/1.0");
+ doc.appendChild(schemaEl);
+ if (parentTable != null) {
+ Element parentEl = doc.createElement("xs:include");
+ parentEl.setAttribute("schemaLocation", parentTable.getTableName()+".xsd");
+ schemaEl.appendChild(parentEl);
+ }
+
+ fillItemElement(doc, schemaEl, tableDef.pamTableItems);
+
+ if (logging != null) {
+ ArrayList annots = logging.getLoggingAddOns();
+ if (annots != null) {
+ for (SQLLoggingAddon addon : annots) {
+ Element compEl = addAddonElement(doc, schemaEl, addon);
+ if (compEl != null) {
+ schemaEl.appendChild(compEl);
+ }
+ }
+ }
+ }
+
+ try {
+ File outputFile = new File(outputFolder, tableName+".xsd");
+ XMLUtils.writeToFile(doc, outputFile);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Add a complex element for a SQLLogging addon.
+ * @param doc
+ * @param schemaEl
+ * @param addon
+ */
+ private Element addAddonElement(Document doc, Element schemaEl, SQLLoggingAddon addon) {
+ Element compEl = doc.createElement("xs:complexType");
+
+ Element oEl = doc.createElement("xs:element");
+ oEl.setAttribute("name", addon.getName());
+
+ Element seqEl = doc.createElement("xs:sequence");
+
+
+ PamTableDefinition mtTable = new PamTableDefinition(addon.getName());
+ addon.addTableItems(mtTable);
+ // this is a mess ! must avoid the standard items.
+ fillItemElement(doc, seqEl, mtTable.pamTableItems);
+
+
+ compEl.appendChild(seqEl);
+
+ oEl.appendChild(compEl);
+ return oEl;
+ }
+
+
+ /**
+ * Fills information on items in a list into the given element
+ * This may be the schema element or may be a complex element.
+ * @param doc
+ * @param schemaEl
+ * @param tableItems
+ */
+ private void fillItemElement(Document doc, Element schemaEl, List tableItems) {
+ for (PamTableItem tableItem : tableItems) {
+ if (shouldSkip(tableItem, parentTable)) {
+ // element is included in parent table, so skip it.
+ continue;
+ }
+
+ Element itemEl = doc.createElement("xs:element");
+ itemEl.setAttribute("name", tableItem.getName());
+ itemEl.setAttribute("type", sqlTypeToString(tableItem.getSqlType(), tableItem.getLength()));
+ String documentation = tableItem.getDescription();
+ if (documentation != null) {
+ Element annotation = doc.createElement("xs:annotation");
+ itemEl.appendChild(annotation);
+ Element docEl = doc.createElement("xs:documentation");
+ docEl.setTextContent(documentation);
+ annotation.appendChild(docEl);
+ }
+ schemaEl.appendChild(itemEl);
+ }
+ }
+
+ private boolean shouldSkip(PamTableItem tableItem, PamTableDefinition parentTable) {
+ if (parentTable == null) {
+ return false;
+ }
+ if (parentTable.findTableItem(tableItem.getName()) != null) {
+ return true;
+ }
+ return false;
+ }
+
+
+ // private String writeParentTableSchema(File outputFolder, PamDataBlock dataBlock, PamTableDefinition tableDef) {
+ // /**
+ // * Write a schema of everything that is in the parent table, then include a reference to that
+ // * schema. To do this, we need to a) establish if there is a table def parent, then go through
+ // * all the fields in THIS tableDef, see if the field exists in the parent. IF it exists in the
+ // * parent, write it in the parent doc, if it's only in this, write it in this doc. So far so good, but
+ // * we need to also make this recursive so it can build layer on layer ?
+ // * Reaslistically, this is all too complicated ! Just write out the schema for the PamTableDefinition
+ // * at the start of everything, and skip those fields in everything else. This will be a bit ad-hoc, but
+ // * it will otherwise be a nightmare since we don't know which table items are in which class at this point.
+ // */
+ // Class tableClass = tableDef.getClass();
+ // Class parentClass = tableClass.getSuperclass();
+ // if (parentClass.isAssignableFrom(tableClass) == false) {
+ // return null;
+ // }
+ //
+ //
+ // return null;
+ // }
+
+ private String sqlTypeToString(int sqlType, int length) {
+ switch (sqlType) {
+ case Types.ARRAY:
+ return "ARRAY";
+ case Types.BIGINT:
+ return "xs:long";
+ case Types.BINARY:
+ return "BINARY";
+ case Types.BIT:
+ return "BIT";
+ case Types.BLOB:
+ return "BLOB";
+ case Types.BOOLEAN:
+ return "xs:boolean";
+ case Types.CHAR:
+ return "xs:string";
+ case Types.CLOB:
+ return "CLOB";
+ case Types.DATALINK:
+ return "DATALINK";
+ case Types.DATE:
+ return "xs:dateTime";
+ case Types.DECIMAL:
+ return "DECIMAL";
+ case Types.DISTINCT:
+ return "DISTINCT";
+ case Types.DOUBLE:
+ return "xs:double";
+ case Types.FLOAT:
+ return "xs:float";
+ case Types.INTEGER:
+ return "xs:int";
+ case Types.JAVA_OBJECT:
+ return "JAVA_OBJECT";
+ case Types.LONGVARBINARY:
+ return "LONGVARBINARY(" + length + ")";
+ case Types.LONGVARCHAR:
+ return "LONGVARCHAR(" + length + ")";
+ case Types.NULL:
+ return "NULL";
+ case Types.NUMERIC:
+ return "NUMERIC";
+ case Types.OTHER:
+ return "OTHER";
+ case Types.REAL:
+ return "xs:float";
+ case Types.REF:
+ return "REF";
+ case Types.SMALLINT:
+ return "xs:short";
+ case Types.STRUCT:
+ return "STRUCT";
+ case Types.TIME:
+ return "TIME";
+ case Types.TIMESTAMP:
+ return "xs:dateTime";
+ case Types.TINYINT:
+ return "TINYINT";
+ case Types.VARBINARY:
+ return "VARBINARY(" + length + ")";
+ case Types.VARCHAR:
+ return "VARCHAR(" + length + ")";
+ }
+ return null;
+ }
+}
diff --git a/src/generalDatabase/DatabaseFetchSpeed.java b/src/generalDatabase/DatabaseFetchSpeed.java
new file mode 100644
index 00000000..e9748300
--- /dev/null
+++ b/src/generalDatabase/DatabaseFetchSpeed.java
@@ -0,0 +1,33 @@
+package generalDatabase;
+
+/**
+ * Run some tests to try to work out why it's so much slower to load
+ * data when the query is based on a non indexed column compared
+ * to an index one, even though the actual query execution time
+ * is a small fraction of the total time.
+ * @author dg50
+ *
+ */
+public class DatabaseFetchSpeed {
+
+ String dbName = "C:\\ProjectData\\meyGenMayData\\Database\\MeygenTritechDetectHDD_03_24.06.2022.sqlite3";
+ long[] idRange = {9906111, 9906977};
+ long[] uidRange = {8030630, 8031496};
+ String[] utcRange = {"2022-05-24 09:27:34", "2022-05-24 09:27:52"};
+
+ public static void main(String[] args) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public DatabaseFetchSpeed() {
+//
+// qStr{1} = sprintf('SELECT Id FROM Gemini_Threshold_Detector_Targets WHERE Id BETWEEN %d and %d', ...
+// idRange(1), idRange(2));
+// qStr{2} = sprintf('SELECT Id FROM Gemini_Threshold_Detector_Targets WHERE UID BETWEEN %d and %d', ...
+// uidRange(1), uidRange(2));
+// qStr{3} = sprintf('SELECT Id FROM Gemini_Threshold_Detector_Targets WHERE UTC BETWEEN ''%s'' and ''%s''', ...
+// utcRange{1}, utcRange{2});
+
+ }
+}
diff --git a/src/generalDatabase/EmptyTableDefinition.java b/src/generalDatabase/EmptyTableDefinition.java
index 71c129e0..9e10753e 100644
--- a/src/generalDatabase/EmptyTableDefinition.java
+++ b/src/generalDatabase/EmptyTableDefinition.java
@@ -43,7 +43,7 @@ public class EmptyTableDefinition implements Cloneable {
this.tableName = tableName;
this.setUpdatePolicy(updatePolicy);
pamTableItems = new ArrayList();
- pamTableItems.add(indexItem = new PamTableItem(indexColName, Types.INTEGER));
+ pamTableItems.add(indexItem = new PamTableItem(indexColName, Types.INTEGER, "Primary key"));
indexItem.setPrimaryKey(true);
indexItem.setCounter(true);
}
diff --git a/src/generalDatabase/PamTableDefinition.java b/src/generalDatabase/PamTableDefinition.java
index ccb58a92..6456671d 100644
--- a/src/generalDatabase/PamTableDefinition.java
+++ b/src/generalDatabase/PamTableDefinition.java
@@ -55,15 +55,15 @@ public class PamTableDefinition extends EmptyTableDefinition implements Cloneabl
*/
public PamTableDefinition(String tableName, int updatePolicy) {
super(tableName, updatePolicy);
- pamTableItems.add(uid = new PamTableItem("UID", Types.BIGINT));
- pamTableItems.add(timeStampItem = new PamTableItem(utcColName, Types.TIMESTAMP));
- pamTableItems.add(timeStampMillis = new PamTableItem("UTCMilliseconds", Types.SMALLINT));
- pamTableItems.add(localTime = new PamTableItem("PCLocalTime", Types.TIMESTAMP));
- pamTableItems.add(pcTime = new PamTableItem("PCTime", Types.TIMESTAMP));
- pamTableItems.add(channelBitmap = new PamTableItem("ChannelBitmap", Types.INTEGER));
- pamTableItems.add(sequenceBitmap = new PamTableItem("SequenceBitmap", Types.INTEGER));
+ pamTableItems.add(uid = new PamTableItem("UID", Types.BIGINT, "Unique Identifier"));
+ pamTableItems.add(timeStampItem = new PamTableItem(utcColName, Types.TIMESTAMP, "Timestamp UTC"));
+ pamTableItems.add(timeStampMillis = new PamTableItem("UTCMilliseconds", Types.SMALLINT, "Time milliseconds (for databases which do not support millis)"));
+ pamTableItems.add(localTime = new PamTableItem("PCLocalTime", Types.TIMESTAMP, "Local time on PC"));
+ pamTableItems.add(pcTime = new PamTableItem("PCTime", Types.TIMESTAMP, "Time data written, UTC. Same as UTC for real time data, current time for offline file analysis"));
+ pamTableItems.add(channelBitmap = new PamTableItem("ChannelBitmap", Types.INTEGER, "Bitmap of input channels used"));
+ pamTableItems.add(sequenceBitmap = new PamTableItem("SequenceBitmap", Types.INTEGER, "Bitmap of beam or channel outputs used"));
if (updatePolicy == SQLLogging.UPDATE_POLICY_WRITENEW) {
- addTableItem(updateReference = new PamTableItem("UpdateOf", Types.INTEGER));
+ addTableItem(updateReference = new PamTableItem("UpdateOf", Types.INTEGER, "Reference to previous value"));
}
}
diff --git a/src/generalDatabase/PamTableItem.java b/src/generalDatabase/PamTableItem.java
index 1b75fded..dc523083 100644
--- a/src/generalDatabase/PamTableItem.java
+++ b/src/generalDatabase/PamTableItem.java
@@ -50,6 +50,14 @@ public class PamTableItem implements Cloneable {
*/
private Object value;
+ /**
+ * Test description of field. Can be exported to schema and may
+ * be possible to write into database description fields one day. In any case
+ * it can be useful to the programmer when looking back to see what on earth
+ * code is supposed to be doing.
+ */
+ private String description;
+
/*
* Reference to another PamTableItem in a different
* table. This must be of the same sqlType as this
@@ -60,6 +68,11 @@ public class PamTableItem implements Cloneable {
*/
private PamTableItem crossReferenceItem;
+ /**
+ * Generate a table item
+ * @param name name of table item
+ * @param sqlType SQL Type from java.sql.Types, e.g. Types.INTEGER
+ */
public PamTableItem(String name, int sqlType) {
super();
this.name = name;
@@ -67,7 +80,28 @@ public class PamTableItem implements Cloneable {
this.length = 0;
this.required = false;
}
-
+
+ /**
+ * Generate a table item
+ * @param name name of table item
+ * @param sqlType SQL Type from java.sql.Types, e.g. Types.INTEGER
+ * @param description optional description
+ */
+ public PamTableItem(String name, int sqlType, String description) {
+ super();
+ this.name = name;
+ this.sqlType = sqlType;
+ this.description = description;
+ this.length = 0;
+ this.required = false;
+ }
+
+ /**
+ * Generate a table item
+ * @param name name of table item
+ * @param sqlType SQL Type from java.sql.Types, e.g. Types.INTEGER
+ * @param length length (only applicable to Types.CHAR types)
+ */
public PamTableItem(String name, int sqlType, int length) {
super();
this.name = name;
@@ -76,6 +110,22 @@ public class PamTableItem implements Cloneable {
this.required = false;
}
+ /**
+ * Generate a table item
+ * @param name name of table item
+ * @param sqlType SQL Type from java.sql.Types, e.g. Types.INTEGER
+ * @param length length (only applicable to Types.CHAR types)
+ * @param description optional description
+ */
+ public PamTableItem(String name, int sqlType, int length, String description) {
+ super();
+ this.name = name;
+ this.sqlType = sqlType;
+ this.length = length;
+ this.description = description;
+ this.required = false;
+ }
+
public PamTableItem(String name, int sqlType, int length, boolean required) {
super();
this.name = name;
@@ -500,6 +550,20 @@ public class PamTableItem implements Cloneable {
return null;
}
}
+
+ /**
+ * @return the description
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * @param description the description to set
+ */
+ public void setDescription(String description) {
+ this.description = description;
+ }
}
diff --git a/src/generalDatabase/SQLLogging.java b/src/generalDatabase/SQLLogging.java
index 142b3998..7cbd086d 100644
--- a/src/generalDatabase/SQLLogging.java
+++ b/src/generalDatabase/SQLLogging.java
@@ -2183,5 +2183,12 @@ public abstract class SQLLogging {
return subDetection.getSuperDetection(superDataBlock);
}
+ /**
+ * @return the loggingAddOns
+ */
+ public ArrayList getLoggingAddOns() {
+ return loggingAddOns;
+ }
+
}
diff --git a/src/help/JavaHelpSearch/DOCS b/src/help/JavaHelpSearch/DOCS
index dafb825bffd68feff85b7d080e9d0f84415fcfbc..aece1f4367adf7b052fe81dc26b027b278db7bc3 100644
GIT binary patch
literal 77805
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