Commit Graph

112 Commits

Author SHA1 Message Date
Denny
1aa85a86ca Resolves issue with channel frequency correction events not being broadcast within the processing chain and rendering in the spectral display. 2017-03-11 10:16:08 -05:00
Denny
09cf4fcfd7 Resolves issue with empty string list models in channel editor 2017-02-26 10:29:14 -05:00
Denny
183eb2f7c7 Resolves #165 - P25 decoding channel stops arbitrarily and never recovers.
Issue identified with Patch Group management and circular dependencies that can develop because of stale patch groups.  Refactored all patch group management into a new PatchGroupManager.  Patch groups are now automatically deleted if we don't receive any update messages within 5 seconds.  The PatchGroupAlias was also updated to not roll-up attributes from subordinate patched group aliases when those aliases are also patch group aliases -- this eliminates the circular dependency chaining.

Added IOverflowListener interface and updated Sources to support overflow listeners.  Updated ChannelState to register as an overflow listener so that it can visually depict to the user when the channel enters/exits source overflow state.  Added new color pattern for OVERFLOW with yellow text on red.
2017-02-10 06:36:57 -05:00
Denny
a228f29a40 Resolves #154 - add right-click contextual channel menus for Now Playing table.
Also disables right-click channel activation from the spectral display as a clean-up action.
2017-01-28 20:41:46 -05:00
Denny
78a4bfe915 Resolves #123 - adds channel details tab to display: System, Site and Channel name, and the complete Activity Summary 2017-01-28 16:47:44 -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
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
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
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
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
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
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
b6498d048a #82 WIP - converted all classes to get icons from IconManager and removed icon management from the SettingsManager 2017-01-08 21:06:02 -05:00
Denny
488dc9da4c #82 WIP - reorganizing icon management and extracting icon model from the settings manager. 2017-01-08 15:01:53 -05:00
Denny
7865e813de #66 resolves issue with baseband recorders and loggers not being removed from channel processing chains when processing stops. This is now handled in the channel processing manager where baseband recorders and message/event loggers are added at processing start and removed at processing stop. 2017-01-08 05:21:42 -05:00
Denny
49a1ea04f8 #66 wip 2017-01-08 04:38:10 -05:00
Denny
1d7354b4a8 #30 WIP on using the new apache mina library 2016-12-18 09:09:47 -05:00
Denny
f44892c62b #30 WIP - broadcastify and icecast TCP streams working and editors are complete. Adds icons to editor and table views. 2016-12-04 07:28:03 -05:00
Denny
b71415b82a #30 WIP - broadcastify multi-channel streaming is functional. 2016-11-27 11:58:34 -05:00
Denny
357979a5dd #30 - WIP - adds Icecast TCP(v2.3) and HTTP(v2.4) server support. Adds streaming tab and ability to add/delete/change streaming configurations. Adds streaming channel alias id so that aliases can be tagged to stream to one or more stream channels. Adds initial support for broadcastify streaming. 2016-11-06 09:33:49 -05:00
Denny
90324404b2 Resolves issue #69 with double audio recordings 2016-05-30 07:25:50 -04:00
denny
c3d52ff86e Merges #34 Major redesign of Tuner, Channel and Alias management.
Changes to model, view and controller components and updates all gui
editors.  Removes the configuration panel and tree and replaces with 3
new panels.  Updates playlist.xml to a new playlist_v2.xml format.
2016-04-01 08:23:49 -04:00
denny
64fee2c718 wip #34 - testing and validating changes and testing decoding. 2016-03-29 20:00:23 -04:00
denny
3caadf0c90 Moves audio panel into the channel state list panel so that we don't
have to use a split pane.
2016-03-26 07:29:10 -04:00
denny
58160d6c6b wip #34 - resolved various issues with alias controller and editors.
Added synchronized method to channel processing manager to ensure that
we don't have contention during channel changes.
2016-03-26 07:17:43 -04:00
denny
112083a22f wip #34 - finished updating all channel configuration editors and
completed preliminary functional testing.
2016-03-25 14:26:08 -04:00
denny
e89e7bd361 wip #34 - updating the decoder editors to the new editor format 2016-03-21 18:30:19 -04:00
denny
d93f497b33 wip #34 - reformatting the channel configuration editors. 2016-03-20 19:35:45 -04:00
denny
218eeb1848 WIP #34 - more work on tuner model and view. Includes new tuner
configuration and tuner configuration assignment editors.  Beginning of
tuner editor panel rework.   Removes most of the remaining JTree
configuration pieces.  Updates the settings manager to load and save
tuners and refactors all of the tuner configuration management out into
the tuner configuration model.
2016-03-12 12:54:48 -05:00
denny
9d4afb8c1f WIP #34 - updates tuners and tuner model to provide details on
frequency, sample rate, sourced channels, and spectral display in the
tuner view tab.
2016-03-11 07:16:29 -05:00
denny
6fa3089bc9 WIP #34 - adds tuner model and view tab, preparing to remove the
configuration panel from the controller view.
2016-03-07 20:43:43 -05:00
denny
9273f679f4 Resolves issue with loading of channel map ranges from playlist_v2.xml 2016-03-07 19:05:34 -05:00
denny
b6e4c4e7aa WIP #34 - new channel map manager/editor is complete. Channel map
manager is now a separate window launched from the decoder tab,
specifically the MPT1327 decoder tab.
2016-03-06 19:22:54 -05:00
denny
2394ac2fa9 WIP #34: added channel map manager and new editor window. Removed a
number of unused classes.  Removed playlist manager from a number of
classes and replaced with the alias, channel and channel map models.
Updated playlist manager to no longer retain a playlist except for when
loading to models or when storing from models.  Extracted version 1 to
version 2 playlist conversion and changed playlist manager to keep the
original version 1 playlist and create a new version 2 (playlist_v2.xml)
file.  On startup, try to load a v2, and if not, look for a v1 to
convert.  Otherwise, don't create a playlist and one will be created
once the user adds items to the models.
2016-03-06 07:48:14 -05:00
denny
c8328b3eff Channel editor and sub editors updates. 2016-02-15 20:12:23 -05:00
denny
f7f6c2fc3e Merges changes from master branch to resolve issue with CPU and memory
and constraints on scheduled thread pool saturation.  Adds a new
scheduled thread pool for each processing chain that the components in
the chain can share, versus the single shared pool exposed by the
threadpoolmanager class.
2016-02-15 15:47:14 -05:00
denny
dd22397f75 Resolves issue with application memory growth and thread pool
saturation.

Each tunerchannelsource was sharing a thread pool and as the processing
load increased, the thread pool was not expanding and the processing
tasks were backing up, causing the buffers to grow with unprocessed
data.

Changed so that each tuner channel source is handed a thread pool to use
for processing incoming sample data.  Processing chain maintains the
thread pool and starts the channel source.  This allows traffic channels
to reuse the thread pool across multiple iterations.
2016-02-15 09:46:33 -05:00
denny
e2a0451bfb Resolves issue with scheduled thread pool overtasking. Removes tuner
channel source decimation processing over to its own thread pool.
2016-02-15 08:42:29 -05:00
denny
2c6e35c739 Work in progress.
-Removed channel collection panel since panels will only have 1 channel
now
-Resolved issue with channel list and channel selection events
-Fixed some of the classes from the rebase to master branch
2016-02-15 07:10:41 -05:00
denny
1f654b5b9c Rebase channel/alias model redesign branch on current master
(v0.2.0.beta5)
2016-02-14 11:45:43 -05:00
denny
1d7f255784 Revert "Merges master onto development branch"
This reverts commit 2420bc901c63ad9d41e7c99ac95a426f826182ff.
2016-02-13 15:07:53 -05:00
denny
75714072b2 Adds AliasModel, AliasController tab with new AliasEditor 2016-02-13 15:04:10 -05:00
denny
15edcdebe6 Adds AliasModel and AliasEvent and support for conversion from legacy
playlist format.

Renames PlaylistEditor to ChannelController
2016-02-13 15:04:09 -05:00
denny
da924e8b3a Updates playlist editor with Add, Copy/Clone and Delete channel
functionality
2016-02-13 14:58:51 -05:00
denny
61f68c08e8 Adds support to channel model and processing manager to auto-start
channels upon loading the playlist.  

Processing manager now detects channel configuration changes and
restarts the channel if it is currently processing.

Channel editor enable button now shows green if it is processing, or
default when not processing.
2016-02-13 14:58:50 -05:00
denny
ec10bb7e62 Work in progress. 2016-02-13 14:57:13 -05:00