Denny
8f68967b6c
#289 resolves issue with encrypting username and password with XTEA
...
algorithm using credential values longer than 8 characters/bytes.
(cherry picked from commit 1ddc0a3 )
2017-11-23 07:31:52 -05:00
Denny
67c3cb9639
Issue #283
...
Updates Icecast TCP broadcaster to correctly handle content type:text/html
message that normally follows mount point in use error received from
broadcastify.
Changes mount point in use broadcast state to be a temporary error so that
the stream will attempt to reconnect after receiving this error.
Updates logging to include memory allocation/usage metrics with each
logging entry in order to support debugging issues related to high
memory usage situations. Updates initial application logging to better
identify the host system operating environment.
(cherry picked from commit 8be3399 )
2017-11-04 09:41:23 -04:00
Denny
c196cfebed
Resolves issue #260 - applies changes to Shoutcast V1 and v2 that were
...
applied to the Icecast streamer for issue releated to reconnecting.
2017-08-19 07:13:08 -04:00
Denny
e80b5866d4
Resolves issue #260 where audio streaming was not re-connecting after a
...
disconnect.
2017-08-18 20:07:53 -04:00
Denny
a628800a71
Resolves #234 - updates the miglayout layout manager to allow jlabel text strings to be automatically truncated (with ellipses) when the alias name is too long.
2017-03-30 21:12:06 -04:00
Denny
25f71a76c4
Resolves #234 - hard codes alias name truncation when name exceeds 33 characters in length.
2017-03-30 20:03:48 -04:00
Denny
5fe8ccd478
Resolves #234 - change the order of assigning an icon and alias text to the audio panel in an attempt to prevent the audio channel panel from wrapping to the next line when the text is too long to display.
2017-03-30 19:52:35 -04:00
Denny
57f6655824
Resolves issue where higher priority audio was not preempting lower priority audio.
2017-03-05 07:32:42 -05:00
Denny
d9cf1b19f3
Removes assert() usage throughout project and replaces with Validate from apache commons.
2017-02-25 16:03:35 -05:00
Denny Sheirer
e1e7169029
Merge pull request #203 from DSheirer/199-utf8-encoding-of-metadata
...
Resolves issue with UTF-8 encoding of Shoutcast 2 metadata updates.
2017-02-17 23:09:10 +00:00
Denny
f3605db0ed
Resolves issue where metadata is UTF-8 URL encoded versus UTF-8 String encoding.
2017-02-17 18:08:01 -05:00
Denny
79b4b30ec7
Resolves issue with audio broadcasters attempting to reconnect if a connection attempt is not successful.
2017-02-17 17:53:42 -05:00
Denny
17c7466c6b
Resolves logic issue in Icecast error handling during resets.
2017-02-13 20:51:10 -05:00
Denny
cd60251337
Resolves #173 - duplicate streaming calls for patch groups.
2017-02-12 10:59:06 -05:00
Denny
c3d60dc174
Resolves #193 - adds handling for MINA WriteTimeoutException error. Resets connection when this occurs.
2017-02-12 08:04:27 -05:00
Denny
9f01678b00
Resolves #189 - add UTF-8 encoding to shoutcast v2 (ultravox) XML metadata update values.
2017-02-12 07:43:51 -05:00
Denny
34dd2161ef
Resolves #176 - 2 issues:
...
A) streaming connection errors - detects errors and if currently connected, resets the connection.
B)duplicate calls being streamed - issue with comparison of broadcast channels allowed the same broadcast channel to be queued two or more times for the list of channels to stream a recording.
2017-02-10 17:05:28 -05:00
Rachel Olivero
952d930b5b
Adds a screen reader accessible label to the mute button. Label toggles between mute and unmute to match the action that will be taken when the button is next pressed.
2017-02-03 10:19:52 -05:00
Denny
26087c465f
Adds additional unresolved address exception handler to metadata updater
2017-01-29 12:37:09 -05:00
Denny
b3e493989e
Updates javadoc
2017-01-29 06:16:46 -05:00
Denny
50e838749d
Resovles #159 - adds UnresolvedHostException error in Icecast metadata updater.
2017-01-29 04:31:31 -05:00
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
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
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
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
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
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
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
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
2c558ce929
#93 resolves issue with NPE when an exception is handled in the audio broadcaster exception handler
2017-01-08 04:44:13 -05:00
Denny
ad377f4006
#30 - updates changelog with description of audio broadcaster feature.
2017-01-07 08:19:18 -05:00
Denny
648b12fd16
#30 - resolves logic issue that was preventing deletion of temporary stream recordings. Changes the streamable recording queue in the AudioBroadcaster to find the recording with the earliest start time to prevent situations where a long recording might close out and enter the broadcast queue after a shorter recording that started later, but would have been replayed first.
2017-01-07 07:31:47 -05:00
Denny
bc430b255f
#30 - changes internal MP3 temporary recording stream management so that the broadcast model manages the recordings and sends the completed recordings to the broadcasters to avoid 2 or more streams recording MP3 files for the same audio call.
...
Note: there is a bug where temporary recordings are not being consistently deleted that I'm still working on.
2017-01-03 09:27:17 -05:00
Denny
4578e45f60
#30 - adds streaming status color indicators to the streaming panel table.
...
Resolves issue with temporary streaming file name collisions by adding a 1-up number to each generated temporary recording file.
2017-01-03 06:41:22 -05:00
Denny
42c18341b6
#30 - adds support for Shoutcast V2 (aka Ultravox 2.1) audio streams.
...
Resolves issue with MP3 framing where the remote server was disconnecting us due to bad MP3 sync. The LAME encoder was sending partial 20 byte MP3 frames initiall, then following with a 144 byte array which contained the remainder of the first frame and the header of the next frame. Adjusted the MP3SilenceGenerator to only emit complete MP3 frames.
This should be the final commit for this feature, pending merge back into master branch.
2017-01-02 16:05:00 -05:00
Denny
e71a1dbeda
#30 - changes audio broadcaster to send full/complete MP3 frames instead of partial frames in order to reduce remote server disconnnects due to MP3 frame sync loss on remote server.
2016-12-29 08:20:10 -05:00
Denny
a4e3c53ba8
#30 - adds support for Shoutcast V1 streaming. Resolves issue where temporary MP3 recording files were not being flushed at the end, causing partial frames to be streamed resulting in repeated remote server connection resets.
...
Note: Shoutcast V1 streaming to a Shoutcast V2.5.x server seems to be problematic. The newer server tracks MP3 boundaries in order to insert advertising and this appears to have problems keeping sync with the MP3 stream. I spent significant time eliminating MP3 framing errors in my code. You can see these 'Bad frame' errors in the sc_serv.log and the shoutcast server will eventually reset the connection after a period of time or after a number of framing errors occur. I anticipate that streaming to a Shoutcast V2 server using the ultravox (ie V2.x) protocol may resolve this issue.
2016-12-29 05:59:14 -05:00
Denny
0cebe7e5d9
#30 - cleanup
2016-12-26 13:48:24 -05:00
Denny
5611f594c7
#30 - improves silence frame handling. Appends silence to end of MP3 recordings to round them out to whole second intervals and adds an MP3 silence generator to generate 1 second silence frames each interval when there is no audio to broadcast. Previous approach used static silence frame, but we can't generate an exactly 1 second frame, so the remote server was resetting the connection when it detected that we were sending data at over or under rate.
2016-12-26 11:52:25 -05:00
Denny
524a76e583
#30 WIP extracted the IcecastMetadataUpdater and merged some of the icecast configuration method into a new superclass.
2016-12-26 09:08:34 -05:00
Denny
c216f56c4f
#30 WIP extracted the IcecastMetadataUpdater and merged some of the icecast configuration method into a new superclass.
2016-12-24 05:41:04 -05:00
Denny
5e4cbf2a4e
#30 WIP on using the new apache mina library
2016-12-18 10:17:09 -05:00
Denny
1d7354b4a8
#30 WIP on using the new apache mina library
2016-12-18 09:09:47 -05:00
Denny
d085ecc0c9
#30 WIP on using the new apache mina library
2016-12-17 16:29:52 -05:00
Denny
1c8362c1fc
#30 WIP - cleanup
2016-12-11 10:38:23 -05:00
Denny
b65ff17ede
#30 WIP - adds support for Icecast 2 (v2.4+) audio streams. Adds additional fields (genre, description, public) to Icecast 1 configuration editors. Adds audio broadcast delay to Broadcastify and Icecast editors.
2016-12-11 06:55:42 -05:00
Denny
4290d8e403
#30 WIP - icecast 2 broadcaster cleanup
2016-12-10 10:21:08 -05:00