Commit Graph

509 Commits

Author SHA1 Message Date
Denny
cd9bb5a84d Resolves #111 - adds 'Maximum Age Limit' setting to each streaming configuration. Calls that sit in the streaming queue for too long will be aged off if their start time exceeds the delay time and maximum recording age limit. A new column is added to the streaming status table to reflect the number of calls that have been aged off. This would be an indicator to the user that they have too many talkgroups tagged to stream for a given channel and may want to change their settings to avoid age off. This mainly prevents excessive streaming queue build-up that might never get streamed and could potentially impact application memory usage. 2017-01-28 16:06:43 -05:00
Denny Sheirer
37d447066d Merge pull request #147 from DSheirer/81-p25-call-priority-and-encrypted-state
Resolves #81 - adds priority, encrypted channel, session mode and cal…
2017-01-28 14:47:12 -05:00
Denny
2ec882a87f Resolves #81 - adds priority, encrypted channel, session mode and call timer to P25 call events in the details column. 2017-01-28 14:46:38 -05:00
Denny Sheirer
7b9004af08 Merge pull request #146 from DSheirer/140-icecast-metadata-updater-url-encoding
Resolves #140 issue with updating metadata on Icecast2 servers
2017-01-28 11:17:16 -05:00
Denny
eba9367674 Resolves #140 issue with updating metadata on Icecast 2 servers where mountpoint was not URL encoded. 2017-01-28 11:15:27 -05:00
Denny Sheirer
8ffe91911b Merge pull request #145 from DSheirer/114-CSV-logging-issue
Resolves #114 issue with event log entries missing single quotes around date and time values.
2017-01-28 10:56:55 -05:00
Denny
a0e0a5ddc0 Resolves #114 issue with event log entries missing single quotes around date and time values. 2017-01-28 10:55:46 -05:00
Denny Sheirer
d500346ba2 Merge pull request #144 from DSheirer/112-playlist-v2-loading-issue
Resolves #112 issue with loading/discovering playlist V2 filename
2017-01-28 10:44:11 -05:00
Denny
3283b66bdc Resolves #112 issue with loading/discovering playlist V2 filename from the system properties. V2 playlist name is now hard-coded until a future enhancement that supports multiple user playlists. 2017-01-28 10:43:18 -05:00
Denny Sheirer
c16416ab14 Merge pull request #143 from DSheirer/141-streaming-temp-recordings-when-disabled
#141 - resolves issue with temporary streaming recordings being gener…
2017-01-28 10:36:07 -05:00
Denny
5e46e22721 #141 - resolves issue with temporary streaming recordings being generated for aliases that contained broadcast stream channel identifiers, but when no streaming channels were enabled. Resolved second issue where a broadcast channel that is enabled and streaming on application startup then gets disabled by the user and subsequently (persistently) auto restarts and connects. 2017-01-28 10:35:12 -05:00
Denny Sheirer
97e2ac31cd Merge pull request #142 from DSheirer/126-tuner-buffer-processor-out-of-memory
126 - Tuner processing refactor and significant improvement in processor and memory utilization.  R…
2017-01-28 09:09:47 -05:00
Denny
a302d098de 126 - Significant improvement in processor and memory utilization. Refactors all USB tuner sample processing with a new USBTransferProcessor class. LibUSB transfer timeout processing is now consolidated under the TunerManager and tuners register with this singleton to auto-start or auto-stop USB bulk transfer processing. Resolves long-standing issue impacting multi-tuner use where the second and subsequent tuners may have been routinely starved for LibUSB processing time under heavy-loading. All tuner buffer threaded processing is now handled as runnables in the scheduled thread pool, eliminating tuner-dedicated processing threads. Added tuner buffer size management to prevent memory blow-out when down-stream processing is either lagging or impacted by java garbage collection operations. Both tuners and individual DDC channels now have bounded sample buffer queues that automatically enter and exit overflow mode when predefined max/reset thresholds are met. When any queue goes into overflow mode, sample buffers are simply dropped in favor of preserving program/memory stability. 2017-01-28 09:08:11 -05:00
Denny Sheirer
b9e1efa92f Merge pull request #138 from DSheirer/135-audio_recording_issue
135 audio recording issue
2017-01-26 19:19:34 -05:00
Denny
07933831d2 135 WIP - resolves issue with recording. 2017-01-25 21:04:28 -05:00
Denny
e2e00a98d5 135 WIP - updates to resolve issue with all audio being recorded, even when user has not elected to record the audio. 2017-01-24 21:14:16 -05:00
Denny
ea0e1b152f Merge branch 'master' into 135-audio_recording_issue 2017-01-24 20:52:40 -05:00
Denny
afa451a070 #130 MPT-1327 Decoder Filter issue resolved. Converts the post-demodulation filter from a band pass filter to a low-pass filter with 60 dB attenuation and a cutoff of 3200 Hz. This is then followed by a high-pass filter at the decimated channel rate, internal to the decoder that performs DC removal and removes any CTCSS tones prior to the FSK decoder. 2017-01-24 20:49:12 -05:00
Denny Sheirer
eaeedc53fc Merge pull request #136 from DSheirer/130-mpt1327-decoder-filtering
#130 MPT-1327 Decoder Filter issue resolved.
2017-01-24 20:27:56 -05:00
Denny
1786ffac47 #130 MPT-1327 Decoder Filter issue resolved. Converts the post-demodulation filter from a band pass filter to a low-pass filter with 60 dB attenuation and a cutoff of 3200 Hz. This is then followed by a high-pass filter at the decimated channel rate, internal to the decoder that performs DC removal and removes any CTCSS tones prior to the FSK decoder. 2017-01-24 20:26:57 -05:00
Denny Sheirer
8b403e6d87 Merge pull request #134 from DSheirer/132-streaming_error_socket_timeout
#132 - adds enhanced streaming connection error handling.  Adds speci…
2017-01-24 19:31:00 -05:00
Denny
8a8fbc4936 #132 - adds enhanced streaming connection error handling. Adds specific handler for connection timeout to reset the connection. 2017-01-24 19:26:18 -05:00
Denny Sheirer
3c9c7794c9 Merge pull request #129 from DSheirer/128-mpt1327-editor-no-wildcards
#128-resolves issue with MPT1327 alias identifier editor preventing u…
2017-01-22 09:53:58 -05:00
Denny
48d3d7a8c1 #128-resolves issue with MPT1327 alias identifier editor preventing use of * wildcard characters. 2017-01-22 09:53:25 -05:00
Denny Sheirer
d81ef8db2a Merge pull request #127 from DSheirer/#108-thread-pool-cleanup
#108 thread pool cleanup
2017-01-22 09:38:44 -05:00
Denny
3d644c2460 #108 - cleanup 2017-01-22 09:34:55 -05:00
Denny
6e94d9ce51 #108 [WIP] Created new ThreadPool class with a static ScheduledThreadExecutor that is now shared by all components. Removed ThreadPoolManager from all classes. Consolidating into 1 pool seems to have reduced CPU usage by ~15-20%. Overall memory usage is also reduced. 2017-01-22 09:33:47 -05:00
Denny
523ac0314e Merge remote-tracking branch 'origin/master' 2017-01-22 07:29:33 -05:00
Denny Sheirer
b252159250 Merge pull request #124 from DSheirer/111-audio_broadcaster_queue_management
#111 resolves issue with probable thread contention on temporary stre…
2017-01-22 07:29:11 -05:00
Denny
2168ed112e #111 - import cleanup 2017-01-22 07:28:37 -05:00
Denny
2faaa93785 #111 resolves issue with probable thread contention on temporary streamed recording queue management that was causing processing thread backups and memory issues. Audio broadcaster was originally in this configuration but was changed to account for a potential issue where recordings could be streamed out of sequence if they occurred at the same time. Reverted queue type back to a more efficient FIFO linked transfer queue to minimize queue contention. 2017-01-22 07:20:24 -05:00
Denny Sheirer
7dc32954bf Merge pull request #122 from DSheirer/#90-channel_processing_list_and_gui_reformat
#90 channel processing list and gui reformat
2017-01-22 06:51:30 -05:00
Denny
a57183c4cc #90 - updated metadata and attributes to carry channel system/site/name values to support audio recording name generation. Updated always unsquelched decoder state to reset the PRIMARY_TO address to the channel name since the decoder will never push a value to this attribute and it's needed to correctly display audio content. 2017-01-22 06:44:07 -05:00
Denny
8fb2a66411 #90 [WIP] Logging cleanup 2017-01-21 11:06:11 -05:00
Denny
26837b8a68 #90 [WIP] Resolves issue with MPT-1327 decoder which has apparently been broken for a long time. 2017-01-21 11:05:30 -05:00
Denny
6b67a74055 #90 [WIP] Adds ability to show streaming status on main application window using menu (View > Show Streaming Status). Resolves a number of issues with the SystemProperties class. 2017-01-21 08:13:18 -05:00
Denny
2d9c3c0aa4 #90 [WIP] Adds support for attribute monitors to all of the decoder states. Updates color scheme in 'Now Playing' view for channel states. Wires selection listener for selected channel metadata to the Events and Messages views. Finalizes format for horizontal audio panels, font and coloration. 2017-01-20 21:12:57 -05:00
Denny
ce47d2545d #90 [WIP] GUI is functioning again and the new channels table is showing calls and the audio panel is now horizontal. Lots of gui tweaks still to do. 2017-01-19 22:10:49 -05:00
Denny
5f179c4863 #90 [WIP] adds AttributeMonitor and AliasedStringAttributeMonitor for managing the metadata attributes and issuing attribute change requests, so that we can remove attribute management code out of the decoder states. Adds heuristic tracking with the monitor so that we can better track the talkgroups and other attributes and smooth out the rapidly changing values when we're decoding a weak signal. This will eventually close out issue #101 2017-01-18 20:34:37 -05:00
Denny
acabab35ff Merge branch 'master' into #90-channel_processing_list_and_gui_reformat
# Conflicts:
#	src/alias/AliasList.java
2017-01-18 19:07:39 -05:00
Denny Sheirer
929fbdb21e Merge pull request #116 from DSheirer/#115_patch_group_alias_no_wildcard_alias
#115 patch group alias - resolves issue where wildcard aliases were b…
2017-01-17 20:45:32 -05:00
Denny
95a6deaae1 #115 patch group alias - resolves issue where wildcard aliases were being matched against a temporary patch group id and removed from the alias list for the lifespan of the patch group. General cleanup of the rollup methods for the patch group alias. Adds a new method to alias list that allows alias lookup from a tgid while excluding wildcard talkgroups. 2017-01-17 20:43:49 -05:00
Denny
bc8873de01 #90 [WIP] merged metadata management for channel state, decoder states and audio metadata into a new metadata class. The new metadata class is maintained for each decoding audio channel, or in the future, a decoding TDMA channel. Audio playback, recording and streaming all use the same metadata object for the channel. The list of channel processing gui panels have been deleted and channel processing status will now reside in a table where each table row is a metadata instance from the processing channel. The channel processing manager is responsible for adding/removing the channel's metadata instance to/from the metadata table. This allows the channel processing table to be the controller for the messages, events and channel spectrum views, keyed to the selected table row metadata.
I still have to clean up the gui components and wire in the table selection listeners.
2017-01-17 19:24:54 -05:00
Denny
16b69d4aef #90 [WIP] on redesigning the channel processing gui components and backing model. Simplifies channel state by introducing a new Metadata class that tracks all metadata for all decoders. 2017-01-15 08:42:13 -05:00
Denny
7115b4feb1 #90 [WIP] on redesigning the channel processing gui components and backing model. Simplifies channel state by introducing a new Metadata class that tracks all metadata for all decoders. 2017-01-14 11:21:53 -05:00
Denny Sheirer
6a9e522d77 Merge pull request #109 from DSheirer/#100-patch_group_aliases
#100 patch group alias enhancement
2017-01-13 15:48:56 -05:00
Denny
c39c49b049 #100 enhances patch group alias to include any existing alias for the patch talkgroup ID in the rolled-up alias. Streaming channels for the alias now includes any channels designated for the existing alias as well as the highest audio priority. Alias name for the patch group alias is either the existing alias name, or the label "Patch:" and the patch group ID. 2017-01-13 15:47:55 -05:00
Denny Sheirer
471685b576 Merge pull request #105 from DSheirer/#102-tooltip_typo
#102 resolves typo in tooltip for R820T Tuner Editor
2017-01-13 06:03:51 -05:00
Denny
2268879cec #102 resolves typo in tooltip for R820T Tuner Editor 2017-01-13 06:03:20 -05:00
Denny Sheirer
86e4ce817d Merge pull request #103 from DSheirer/#82_icon_manager_model
#82 icon manager model
2017-01-11 20:45:23 -05:00