Denny
d95c78c0f1
Updates version to 0.4.0 alpha 5
2018-09-23 05:51:28 -04:00
Denny Sheirer
aee5ece8d2
Merge pull request #430 from DSheirer/429-polyphase-channelizer-25khz-channel-rate
...
429 polyphase channelizer 25khz channel rate
2018-09-23 05:50:18 -04:00
Denny
ba358a7d48
Adjusted costas loop gain values. Updated channel filter values to mitigate adjacent channel interference.
2018-09-23 05:34:41 -04:00
Denny
09b209496b
Resolves issue with NPE in 3/4 rate decoder.
2018-09-22 09:19:15 -04:00
Denny Sheirer
cc209683bd
Merge pull request #428 from DSheirer/377-npe-in-trellis-decoder
...
377 NPE in P25 3/4 Rate Trellis Decoder
2018-09-22 02:53:16 -04:00
Denny
2771c28dba
Resolves issue with NPE in 3/4 rate decoder.
2018-09-22 02:52:36 -04:00
Denny
d752917073
Resolves #427 . Moves the module(s) reset operation to the stop() method
...
so that the modules are reset after they are shut down, in order to
prepare for processing chain reuse.
Previously, the modules were reset upon startup, but after any traffic
channel metadata had already been transferred to the channel state,
causing the metadata to be lost and allowing initial audio packets to
stream without any metadata and related streaming/monitoring rules.
2018-09-20 04:01:45 -04:00
Denny
28bc02e172
Updates channel state to ensure teardown processing is completed during
...
a call end and/or during a commanded stop.
2018-09-19 04:25:37 -04:00
Denny
0f6044d48b
Updates mutable metadata to reset the buffer overflow flag between uses.
2018-09-18 19:15:06 -04:00
Denny Sheirer
58ecb83e2c
Merge pull request #425 from DSheirer/417-channel-overflow-state-processing
...
417 Channel Overflow State Processing - Part 2
2018-09-16 10:23:15 -04:00
Denny
9e1de922e4
Resolves issue with overflow state processing. Displays the overflow
...
state in the Message field of the channel metadata table column instead
of displaying it in the channel state column.
2018-09-16 10:22:27 -04:00
Denny Sheirer
84d0b827d8
Merge pull request #422 from DSheirer/421-nbfm-25-khz-channel-bandwidth
...
421 Add 25 kHz Channel Bandwidth Support to NBFM Decoder
2018-09-16 07:22:38 -04:00
Denny
a17132be0d
Updates the NBFM decoder to allow user to select between 12.5 and 25.0
...
kHz channel bandwidth so that 25 kHz channels can be demodulated correctly.
2018-09-16 07:21:14 -04:00
Denny Sheirer
dae68515a5
Merge pull request #420 from DSheirer/419-heterdyne-channelizer-center-frequency-tuning
...
419 Heterodyne Channelizer Center Frequency Calculations
2018-09-16 06:04:09 -04:00
Denny
0aaec8ff54
Updates the heterodyne channelizer's center frequency calculator to
...
only update the center frequency when needed and to place the set of
decoding channels adjacent to the right side of the tuner's center
frequency when the complete set of channels fit into the usable half
bandwidth of the tuner.
2018-09-16 06:02:46 -04:00
Denny Sheirer
001883edc2
Merge pull request #418 from DSheirer/417-channel-overflow-zombie-state
...
417 Traffic Channels in Buffer Overflow state do not tear down correctly
2018-09-16 05:23:05 -04:00
Denny
335fb51456
Updates buffer overflow handling to occur coincident to other channel
...
states rather than being a channel state itself. This was preventing
traffic channels that overflow from being torn down correctly.
2018-09-16 05:21:46 -04:00
Denny Sheirer
e94b6ae172
Merge pull request #416 from DSheirer/415-overflow-state
...
415 Buffer Overflow State Listener Registration
2018-09-14 06:46:34 -04:00
Denny
785125da4f
Correctly implements the buffer overflow listener registration so that
...
decoding channels can be notified when the internal buffer goes into
and out of overflow state.
2018-09-14 06:45:37 -04:00
Denny
81b8f5a423
Updates build to version 0.4.0 alpha 4
2018-09-12 06:23:09 -04:00
Denny Sheirer
bf186a7408
Merge pull request #414 from DSheirer/405-airspy-tuner-waterfall-freeze
...
405 Airspy Spectrum/Waterfall Freezes
2018-09-12 06:20:36 -04:00
Denny
43fc326f93
Resolves #405
...
Adds 500 ms delay to initial registering for samples from all tuners to
feed the spectral display/waterfall. The existing approach of immediately
registering for samples was causing the airspy tuner to lockup
aperiodically. Investigation via debugger didn't show any application
thread locks ... usb master processor was continuing to service libusb
timeouts. Unable to debug internal airspy processes. Adding the delay
to startup seems to be a usable solution.
2018-09-12 06:19:11 -04:00
Denny Sheirer
7cdbb75b42
Merge pull request #413 from DSheirer/375-poor-p25-decode-performance
...
375 P25 Decode Performance
2018-09-10 04:22:40 -04:00
Denny
96a56cab68
Resolves #375 .
...
Reverts PLL gain values to version 0.3.4beta2 values to restore P25
decoder performance.
This change in conjuction with recent channel sample rate change should
restore P25 channel decoding to comparable levels from 0.3.4b2.
2018-09-09 09:55:40 -04:00
Denny Sheirer
29d4b36cf7
Merge pull request #412 from DSheirer/411-variable-channel-sample-rates
...
#411 Update Tuner Source Manager to provide variable sample rate channels
2018-09-09 09:50:11 -04:00
Denny
b15a3e59a0
Resolves #411
...
Updates decoder types to specify channel sample rate and pass/stop
frequencies for requested channels. Updates tuner channel source
managers to accept a channel specification for channels that are
allocated.
2018-09-09 09:49:05 -04:00
Denny Sheirer
9950e46e5a
Merge pull request #408 from DSheirer/406-tuner-sample-delay-buffer
...
406 Tuner Sample Delay Buffer
2018-09-09 08:47:17 -04:00
Denny
570321da3e
Implements a complex sample delay buffer integrated into the tuner
...
channel manager so that channel source requests can have a start
timestamp specified and the channel can be preloaded with samples from
the delay buffer. If no timestamp is specified, current time is assumed.
This feature requires corresponding updates to any decoder that wishes
to implement the timestamped sample preloading functionality.
2018-09-09 08:46:21 -04:00
Denny
bb0bcd3198
Updates build to 0.4.0 alpha 3
2018-09-05 07:34:09 -04:00
Denny Sheirer
cb54850f99
Merge pull request #402 from DSheirer/heterodyne_channelizer
...
401 Update Tuners to use Heterodyne Channelizer
2018-09-05 07:31:57 -04:00
Denny
5bb8c46bd5
Merge remote-tracking branch 'origin/heterodyne_channelizer' into heterodyne_channelizer
2018-09-05 07:27:39 -04:00
Denny
2a3fd2c5a3
Class renaming and cleanup.
2018-09-05 07:27:18 -04:00
Denny
d712feb45a
Class renaming and cleanup.
2018-09-05 07:26:52 -04:00
Denny
fbb24a4c05
Class renaming and cleanup.
2018-09-05 07:24:42 -04:00
Denny
3992f8178c
Merge remote-tracking branch 'origin/heterodyne_channelizer' into heterodyne_channelizer
...
# Conflicts:
# src/main/java/io/github/dsheirer/dsp/filter/design/FilterViewer.java
2018-09-05 07:19:37 -04:00
Denny
8642def77e
Cleanup, renaming and removing legacy code.
2018-09-05 07:17:51 -04:00
Denny
38e6de6cb2
Resolves cutoff frequency for 2 channel polyphase synthesizer.
2018-09-05 07:17:51 -04:00
Denny
994e78f42b
Resolves issue with polyphase filter gain and channel output processor gain
2018-09-05 07:16:51 -04:00
Denny
b8a46af836
Creates new HeterodyneChannelSourceManager that uses frequency translation
...
and CIC decimation for each channel provided by the tuner.
2018-09-05 07:15:57 -04:00
Denny
1c6d19959a
Class renaming and cleanup.
2018-09-05 06:34:13 -04:00
Denny
50bc3088b7
Removes unused legacy code.
2018-09-05 06:31:39 -04:00
Denny
09356848eb
Merge branch 'master' into heterodyne_channelizer
...
# Conflicts:
# src/main/java/io/github/dsheirer/dsp/filter/design/FilterViewer.java
2018-09-05 06:18:27 -04:00
Denny Sheirer
316bfb19c2
Merge pull request #400 from DSheirer/375-channelizer-synthesizer-gain-issue
...
375 channelizer synthesizer gain issue
2018-09-05 06:17:47 -04:00
Denny
c045c8f16d
Updates heterodyne channel manager to correctly lock/unlock the tuner
...
controller.
2018-09-05 06:11:28 -04:00
Denny
8946d789ff
WIP - updated tuners to use CIC decimation tuner channel sources instead
...
of polyphase channelizer.
Channel sample rate reduced to 30 kHz - seems to work better with P25
decoders than previous 25 kHz.
2018-09-04 08:16:57 -04:00
Denny
19399d9138
Resolves cutoff frequency for 2 channel polyphase synthesizer.
2018-09-01 06:32:24 -04:00
Denny
9acdf22b91
WIP - identifier framework and restructuring P25 messages to provide
...
identifiers.
2018-08-31 04:50:58 -04:00
Denny Sheirer
f963d821a1
Merge pull request #396 from DSheirer/394-p25-bitstream-output
...
394 P25 bit stream output
2018-08-18 03:52:36 -04:00
Denny
ade0cef50b
Updates P25 C4FM and LSM decoders to provide demodulated bit streams
...
for recording using the new binary recorders/format.
2018-08-18 03:36:17 -04:00
Denny
2044c2a2de
WIP - Updated P25 C4FM and LSM decoders to assemble dibits and push
...
reusable byte buffers out to the processing chain. This enables the
processing chain to broadcast these buffers back to the decoder for
message assembly and to any running binary recorder.
Updated P25Decoder to be a reusable byte buffer listener. The decoder
will now pass reusable byte buffers down to the message framer for
message processing. This should make the code more efficient since it
can process byte arrays versus handling each individual dibit.
The P25MessageFramer has been updated to be a listener of reusable byte
buffers instead of Dibits, but the actual processing of byte arrays
has to be coded.
Added max recording size to the binary recorder so that it cycles at
500 kB max file size.
2018-08-17 07:27:04 -04:00
Denny Sheirer
1c312a50b6
Merge pull request #395 from DSheirer/393-raw-bitstream-recording
...
393 Recording raw decoded bitstream from supported decoder types
2018-08-11 08:09:22 -04:00
Denny
54f6bd09e2
Cleanup
2018-08-11 08:08:57 -04:00
Denny
5f8f2ec330
Resolves #393 - Adds support for recording demodulated (raw) bitstream
...
buffers. None of the decoders currently support this yet, but the P25
will be updated to provide bitstream output for recording.
Renames the ReusableBuffer class to ReusableFloatBuffer for
consistency.
2018-08-11 08:02:58 -04:00
Denny Sheirer
d7e018f66e
Merge pull request #392 from DSheirer/390-polyphase-channel-source-npe
...
390 PolyphaseChannelSource NPE
2018-08-11 05:43:35 -04:00
Denny
c2a232fdee
Adds null checking to output processor.
2018-08-11 05:42:45 -04:00
Denny Sheirer
c5d2dcd0cf
Merge pull request #391 from DSheirer/389-add-active-to-channel-states
...
389 Add ACTIVE Channel State and Update P25 Decoder State processing
2018-08-11 05:39:20 -04:00
Denny
8e4e4129ca
Adds 'ACTIVE' as a valid channel state to indicate that the channel is
...
actively decoding, but no call or data is being transmitted. This is
primarily used for P25 channels when TDU Link Control messages are
being transmitted in between voice or data transmissions on a channel.
Updated several of the P25 decoder state message processing sections to
keep the channel state UI updated with current call identifiers and
states.
Hard-coded channel state colors to remove inefficiency in the way that
channel state coloration was being handled.
2018-08-11 05:36:30 -04:00
Denny
9176ca610f
Updates build to Version 0.4.0 Alpha 2
2018-08-05 07:51:40 -04:00
Denny Sheirer
97b31e4d9b
Merge pull request #385 from DSheirer/372-icecast-streaming-reconnect
...
372 Icecast Streaming Reconnect and Metadata Updates
2018-08-05 07:48:28 -04:00
Denny
a3e5520d3e
Resolves #372 - Icecast reconnect following network outage. Updates
...
the lost connection timeout from default of 60 seconds down to 5 seconds
so that the connection state updates more quickly. Removed complex
error handling and replaced with a simpler approach to catch an error
and disconnect and then attempt a reconnect.
Added new 'Network Unavailable' error state that detects when the network
connection is unavaialable.
Updated the icecast metadata updater to close the TCP session after
successfully writing metadata to the socket.
2018-08-05 07:44:46 -04:00
Denny
8c456972cc
Decreases usable bandwidth of the R820T tuner to 98% so that channels
...
do not get allocated at the spectral extremes where the signal is
degraded.
2018-08-03 11:02:47 -04:00
Denny
35d81ab31d
Decreases buffer size for low sample rates for RTL2832 tuners.
2018-08-03 08:06:00 -04:00
Denny
b90b06e600
Merge remote-tracking branch 'origin/master'
2018-08-03 07:57:58 -04:00
Denny
04144ca677
Adds additional RTL 2832 sample rate options
2018-08-03 07:57:47 -04:00
Denny Sheirer
d3c7a50918
Merge pull request #384 from DSheirer/382-rtl-tuner-sample-rate-options
...
382 - Additional Sample Rate Options for RTL2832 Tuners
2018-08-03 07:53:01 -04:00
Denny
0fd29fa35a
Resolves #382 - Adds additional sample rate options for the RTL2832
...
tuner and adjusts the low sample rate buffer size down to 16 kb.
2018-08-03 07:50:36 -04:00
Denny Sheirer
c00b173064
Merge pull request #383 from DSheirer/381-rtl-tuner-adaptive-native-buffer-size
...
381 Adaptive USB Transfer Buffer Sizes for RTL2832 Tuners
2018-08-03 07:29:31 -04:00
Denny
2718367259
Resolves #381 . Updates USB transfer processor to use native transfer
...
buffer sizes that adapt to the selected sample rate.
2018-08-03 07:27:58 -04:00
Denny Sheirer
3f0c13096a
Merge pull request #380 from DSheirer/374-rtl-tuner-sample-rate-issue
...
374 RTL Tuner Sample Rates Not Supported (1.44 & 2.88 MHz)
2018-08-03 07:04:28 -04:00
Denny
71ba4adbd7
Resolves #374
...
Updates polyphase channel manager to correctly calculate the number of
channels for each sample rate change.
2018-08-03 07:02:58 -04:00
Denny Sheirer
3908e29a2e
Merge pull request #376 from DSheirer/373-tuner-ppm-monitoring-and-adjustment
...
#373 - Tuner PPM Error Monitoring and R820T PPM Auto-Correction
2018-07-29 11:18:47 -04:00
Denny
0c47efea03
Resolves #373 - Adds support for Tuner frequency error PPM monitoring
...
and auto-correction for R820T tuners.
-Updated TunerModel and TunerViewPanel to add 2 new columns to
display the current tuner's PPM setting and (when available) the
measured frequency error averaged over 5 second intervals provided by
certain decoders (e.g. P25 C4FM and LSM). Frequency error value from
P25 decoders is provided from the Costas Loop PLL once 2 or more P25
message sync events have been observed in a short period.
-Updated R820T tuner to auto-correct PPM when measured frequency error
exceeds the +/- 0.4PPM threshold for a period of 30 seconds or more.
Feature can be enabled/disabled by user in the tuner editor panel.
Resolved several issues with P25 C4FM/LSM decoders that was impacting
performance related to channel misalignment from tuner PPM offsets.
2018-07-29 10:48:29 -04:00
Denny
5c0d97d942
Resolves issue with array out of bounds exception on shutdown while
...
removing tuners from the tuner model.
2018-07-20 05:59:00 -04:00
Denny
61ae0d2d83
Resolves issue with saved setting for spectral display panel enabled state
2018-07-20 05:58:23 -04:00
Denny Sheirer
68f2a8da2c
Merge pull request #371 from DSheirer/370-tuner-editor-lock-state
...
Resolved #370 Tuner Editor Lock State
2018-07-15 05:55:46 -04:00
Denny
0d69f11e65
Resolved #370 Tuner Editor Lock State
...
Resolves an issue with the previous implementation where the tuner
editor was being refreshed repeatedly to update the lock state for the
tuner, rendering the editor almost completely unusable.
Now updates only the frequency control and the sample rate control to
reflect the tuner's lock state.
2018-07-15 05:55:28 -04:00
Denny Sheirer
b3d5daea8b
Merge pull request #369 from DSheirer/320-mixer-gain-r820t-tuner
...
360 R820T Mixer Gain Labels
2018-07-15 05:30:45 -04:00
Denny
fe34623c4a
Resolves #320
...
Changes labels for R820T mixer gain settings.
2018-07-15 05:29:21 -04:00
Denny Sheirer
353747cecc
Merge pull request #368 from DSheirer/96-disable-spectral-display-option
...
#96 Disable Spectral Display Option
2018-07-14 16:05:00 -04:00
Denny
a8c649ef64
Resolves #96
...
Adds capability to disable spectral display.
Adds right-click context
menu items to disable display and/or reenable display by selecting
another tuner.
Adds view menu items to disable spectral display or show a tuner.
Persists spectral display enabled state across application run sessions.
2018-07-14 16:04:18 -04:00
Denny Sheirer
8cf50e629e
Merge pull request #367 from DSheirer/366-application-shutdown
...
366 Application Shutdown Procedure
2018-07-14 14:45:00 -04:00
Denny
20a8f2bb3c
Fully implements application shutdown procedure that is invoked when the
...
user closes the the main gui window or invokes exit from the file menu.
2018-07-14 14:44:03 -04:00
Denny
8c237be682
Resolves issue with Mute/Unmute icon rendering.
2018-07-14 13:39:43 -04:00
Denny Sheirer
2d5271b849
Merge pull request #365 from DSheirer/364-p25-pll-lock-gain
...
#364 Excessive P25 PLL Sync Lock Timelines
2018-07-14 11:29:18 -04:00
Denny
609a1e86c7
Resolves #364 .
...
The C4FM and LSM decoders were issuing a PLL reset with each new
channel that was allocated, causing any existing decoding channels to
be disrupted. Decoding re-sync delays or inability to recapture the
signal for decoding would likely result as the tuner's overall PPM
caused misadjustment in the channel.
Resolved a NPE that was occurring in the FrequencyController for
sample rate changes.
2018-07-14 11:27:38 -04:00
Denny Sheirer
821e719015
Merge pull request #363 from DSheirer/170-airspy-mini-sample-rates
...
#170 Add Support for Airspy Mini tuner's 3 and 6 MHz
2018-07-14 07:47:03 -04:00
Denny
104c4f72be
Resolves #170 adding support for Airspy Mini tuner's 3 and 6 MHz
...
sample rates.
Resolves issue in PolyphaseChannelManager responding to sample rate
changes in the tuner. The manager now recreates the channelizer when
needed if the tuner's sample rate has changed since the last time the
channelizer was used.
Updates the Tuner selection view to reflect tuner lock state. Updates
the tuner editors to enable/disable frequency controller and sample
rate controls according to the tuner's lock state.
2018-07-14 07:45:42 -04:00
Denny
9e7fa7618d
Logging cleanup.
2018-07-04 06:05:15 -04:00
Denny
ee09520181
Updates build script to version 0.4.0 alpha 1. Adds missing resampler
...
library.
2018-07-01 20:52:38 -04:00
Denny Sheirer
fa12b840db
Merge pull request #357 from DSheirer/39-polyphase-channelizer
...
39 polyphase channelizer and decoder updates
2018-07-01 07:30:06 -04:00
Denny
183d7d6d19
Logging cleanup
2018-07-01 07:25:37 -04:00
Denny
e2550869ce
Disables debug logging of reusable buffer creation.
2018-07-01 07:21:42 -04:00
Denny
e88944e53d
Updates all reusable buffer queues to automatically set the user count
...
to 1 on all provided buffers by default.
2018-07-01 07:08:52 -04:00
Denny
0051a1d381
Removes debug logging for polyphase channelizer and reusable buffer queues.
2018-07-01 06:43:40 -04:00
Denny
f7a873dd0c
Removes AFC settings from all decode configurations.
2018-07-01 05:43:42 -04:00
Denny
ad560db5ea
[WIP] Removes all usage of Buffer, RealBuffer and ComplexBuffer.
2018-06-30 06:54:36 -04:00
Denny
6f1ce79461
[WIP] Updates the AM decoder module.
...
Removes a number of unused classes in an effort to remove RealBuffer
usage across the codebase (has been replaced by ReusableBuffers).
2018-06-30 05:37:13 -04:00
Denny
df1bc1031e
[WIP] Updates AudioPackets to be ReusableAudioPackets.
2018-06-29 06:53:03 -04:00
Denny
a621a31aa9
[WIP] Updates the sample adapters to natively use ReusableBuffers.
...
Refactors a MixerReader instance from the RealMixerSource so that it
can be reused for both real and complex data outputs.
Updates RealMixerSource to use refactored MixerReader and use a default
sample rate of 8 kHz.
Updates the ComplexMixer to use the refactored MixerReader.
Updates the FCD 1/2 tuners for compatibility with the new ComplexMixer.
Removes several unused classes.
2018-06-24 09:50:36 -04:00
Denny
19fa256c60
[WIP]Updates mixer manager and mixer source to use 8 kHz audio for
...
sound card inputs.
Updated DecoderFactory to only include an AM/FM demodulator when we're
using a tuner input.
2018-06-23 09:49:40 -04:00
Denny
7a830077bd
[WIP] Cleanup. Refactors DecoderFX application to the gui package.
2018-06-15 07:29:27 -04:00
Denny
f4793f3cfd
[WIP] Cleanup. Removes the legacy Instrumentable, Taps, etc and related
...
gui components. Refactors the new DecoderFX application to the
instrument package.
2018-06-15 07:27:17 -04:00
Denny
2cd3b73633
[WIP]Updates the MDC1200 decoder to use the new AFSK1200 decoder
...
class.
Adds Demodulator Viewer FX pane for MDC1200 decoder.
2018-06-15 07:11:07 -04:00
Denny
18f50485d3
[WIP]Updates the Tait1200 decoder to use the new AFSK1200 decoder
...
class.
Adds Demodulator Viewer FX pane for Tait1200 decoder.
2018-06-15 06:56:44 -04:00
Denny
b410cf0dfe
[WIP]Updates the LJ-1200 decoder to use the new AFSK1200 decoder
...
class.
Adds Demodulator Viewer FX panes for MPT-1327 and LJ-1200 decoders.
2018-06-15 06:19:50 -04:00
Denny
1fdcb623a6
[WIP]Updates the MPT-1327 decoder to use the new AFSK1200 decoder
...
class.
2018-06-11 04:32:30 -04:00
Denny
9dda1f95a1
[WIP] Creates a new AFSK-1200 correlation decoder and updates the
...
Fleetsync II decoder to use it. Adds instrumented version of the decoder
and a new Fleetsync2 FX pane to the DemodulatorViewerFX tool.
Note: the remaining AFSK-1200 based decoders will all be ported to use
this new AFSK1200 decoder (MDC1200, Tait1200, LowJack1200).
2018-06-09 08:17:18 -04:00
Denny
a5c8552937
[WIP] new AFSK1200 decoder.
2018-06-09 04:38:47 -04:00
Denny
e4209c8e4f
[WIP] Updates the passport decoder to use the new LTRDecoder.
...
Deprecates the Listener<Boolean> interface method in the MessageFramer
to optimize for primitive booleans and reduce impact on memory. Will
remove this interface once the AFSK1200 decoders are updated.
2018-06-02 09:31:49 -04:00
Denny
a898be265f
[WIP] Updates the LTR-Standard and LTR-Net decoders to use a new LTR
...
decoder with a zero-crossing symbol timing error detector. The new
decoder is optimized for 8 kHz FM demodulated audio produced by the
AudioModule.
2018-06-02 08:47:48 -04:00
Denny
c13315f731
[WIP] The Two-Channel synthesizer is now fully-functional and the
...
channelizer sub-system is functionally complete.
Updated the channelizer and synthesizer filter design methods to use a
Kaiser windowed Nyquist filter. Updated the synthesizer filter design
to use a new cutoff frequency of 105% of the channel bandwidth to
resolve a slight dip in the synthesized channel gain at the channel
union region.
Updated the 2 channel output processor to use a low-pass filter that
is designed for the runtime channel sample rate versus hard-coded 12.5
khz.
Testing and redesign continues ...
2018-05-20 07:21:14 -04:00
Denny
341e740e77
[WIP] updated the 2 channel synthesizer to use a more SIMD friendly
...
filter structure. Updated the channel results array buffer to produce
reusable buffers.
This has dropped the overall memory usage considerably when profiling.
Resolved issue in the processing chain where polyphase channel sources
were not being stopped and were stacking up in memory.
2018-05-10 08:08:20 -04:00
Denny
cbc228d798
[WIP] The 2 channel synthesizer appears to be working after restructuring.
...
Check-point commit. I'm going to optimize the code so that it can
leverage SIMD instructions.
2018-05-06 07:37:24 -04:00
Denny
488b2e02ce
[WIP] Work continues on resolving issues with the 2-channel synthesizer
...
that is currently up/down converting the signal of interest, but the
synthesizer is not correctly combining the original two channels.
Some experimentation with the tap count for the channelizer indicates
that we can cut the tap count in half and still have decent decoding
on the P25 decoder when paired to an aligned channelized output. The
2-channel synthesized output decodes partially, but needs more work.
Resolved issue with channel gain in the channelizer that was making the
sample values so small that they were registering as zero when converted
from float to 16-bit int value in the complex wave recorder.
2018-04-29 06:19:39 -04:00
Denny
e395d737f8
[WIP]-39 updates to resolve issue with stopping channel streams.
2018-04-22 04:44:35 -04:00
Denny
7a9f705517
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/main/java/io/github/dsheirer/module/decode/p25/P25DecoderC4FM.java
2018-04-18 06:00:57 -04:00
Denny
dfaf506e23
Updates changelog
2018-04-18 05:52:15 -04:00
Denny
81c9a352a8
Updates changelog
2018-04-18 05:51:55 -04:00
Denny
e6937764c3
Merge remote-tracking branch 'origin/master'
2018-04-18 05:49:16 -04:00
Denny
5bfc5bf456
Increments build to 0.3.4 beta 2
2018-04-18 05:49:04 -04:00
Denny Sheirer
ce83273393
Merge pull request #345 from DSheirer/344-p25-c4fm-agc
...
344 Add AGC to P25 C4FM decoder
2018-04-18 09:48:19 +00:00
Denny
95aa9f8803
Adds automatic gain control to P25 C4FM decoder to condition the
...
samples prior to interpolation.
Resolves issue with using incorrect quadrature index when pulling a
sample from the interpolating buffer.
Resolves issue where the instrumented version of the interpolating
buffer was being constructed in the non-interpolated decoder component.
2018-04-18 05:47:17 -04:00
Denny
e971ad4582
39 [WIP] - restructured the polyphase filter process. Previous version
...
was not computationally feasible with my 3rd Gen i7 processor running
and airspy at 10 MHz. Restructured the polyphase channelizer to use
vector iteration structures that the JDK 9 JIT compiler can translate
into SIMD instructions. Separated the IFFT processing from the filter
process so that they can be executed on separate threads and this allows
the processing to occur real time.
P25 C4FM decoding at 25 kHz channel sample rate using an airspy
10MHz sample stream seems to be working nicely with ~25% CPU usage and
~300 to 500 MB memory usage. Incremental (parallel) channel decoding
should have a minimal increase in CPU loading since all of the 12.5 kHz
channels are available in the polyphase channelizer and the only
additional workload is the decoding of the 25 kHz sample stream.
There is still an issue with stopping channels and the channelizer keeps
processing, and occasionally when starting traffic channels something
deadlocks and causes out of memory.
2018-04-15 09:05:06 -04:00
Denny
ff9395e4b9
39 [WIP] working copy with new SIMD structures in place.
2018-04-14 07:23:33 -04:00
Denny
d023da9ead
39 [WIP] experiments to reduce processing time for high sample rate tuners (e.g airspy)
2018-03-26 09:47:32 -04:00
Denny
60ffb18cd9
39 [WIP] cleans up the reusable buffers and creates both real and
...
complex variants.
2018-03-25 09:13:03 -04:00
Denny
c36f6901af
39 - Adds P25/LSM support to the DemodulatorViewerFX application and
...
adds Feed forward gain support to the C4FM DQPSK demodulator which seems
to improve output from the interpolating sample buffer at each symbol
period. Updates the symbol timing gain for C4FM to decrease the gain a
bit since the feed forward gain is providing a better interpolated symbol.
2018-03-24 11:03:18 -04:00
Denny
bfaacb309d
39 - WIP - incorporates the latest P25 C4FM decoder from master and
...
updates the LSM decoder to follow the same design pattern. Adds LSM
decoder support to the demodulator viewer application. The current
symbol timing gain for LSM is set too high -- is using the C4FM gain
and causes too much fluctuation in the timing error.
2018-03-24 06:59:41 -04:00
Denny
c3b405a752
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/main/java/io/github/dsheirer/buffer/FloatCircularBuffer.java
# src/main/java/io/github/dsheirer/dsp/filter/FilterFactory.java
# src/main/java/io/github/dsheirer/dsp/filter/design/FilterView.java
# src/main/java/io/github/dsheirer/dsp/filter/design/FilterViewer.java
# src/main/java/io/github/dsheirer/dsp/filter/fir/complex/ComplexFIRFilter.java
# src/main/java/io/github/dsheirer/dsp/gain/ComplexFeedForwardGainControl.java
# src/main/java/io/github/dsheirer/dsp/mixer/Oscillator.java
# src/main/java/io/github/dsheirer/dsp/psk/LSMDemodulator.java
# src/main/java/io/github/dsheirer/module/decode/Decoder.java
# src/main/java/io/github/dsheirer/module/decode/DecoderFactory.java
# src/main/java/io/github/dsheirer/module/decode/p25/P25Decoder.java
# src/main/java/io/github/dsheirer/module/decode/p25/P25_C4FMDecoder.java
# src/main/java/io/github/dsheirer/module/decode/p25/P25_LSMDecoder.java
# src/main/java/io/github/dsheirer/source/tuner/TunerChannelSource.java
# src/main/java/io/github/dsheirer/source/tuner/TunerModel.java
# src/main/java/io/github/dsheirer/source/tuner/TunerSourceEditor.java
# src/main/java/io/github/dsheirer/spectrum/ChannelSpectrumPanel.java
2018-03-18 05:19:33 -04:00
Denny
3619b480f8
Updates build to 0.3.4 beta 1.
...
Note: build 0.3.3 was never promoted beyond beta 3, although there were
no reported issues that would have prevented a 0.3.3 release.
2018-03-17 10:43:24 -04:00
Denny Sheirer
830b2a2d34
Merge pull request #339 from DSheirer/336-audio-recording-temp-files
...
336 - Audio recording temporary file name
2018-03-17 14:41:14 +00:00
Denny
78bb5ffe43
Resolves #336 . Updates audio recorder to use a *.tmp file extension
...
while the file is open/in-use and change the file extension to *.wav
when the recording is closed.
2018-03-17 10:39:35 -04:00
Denny Sheirer
5dd1664844
Merge pull request #338 from DSheirer/330-p25-c4fm-decoder-update
...
330 p25 c4fm decoder update
2018-03-17 13:51:19 +00:00
Denny
8868c1f954
330 - updates P25 C4FM decoder to use the new DQPSK demodulator and
...
removes the previous FM demodulator based decoder.
2018-03-17 09:45:23 -04:00
Denny
646bd78037
330-WIP - adds the message decoder to see the P25 messages being decoded
...
as we step through the recording.
2018-03-04 20:41:43 -05:00
Denny
5af4cb8706
330-WIP - adds the message decoder to see the P25 messages being decoded
...
as we step through the recording.
2018-03-04 12:07:29 -05:00
Denny
45a6c5a0b6
330 WIP - implements the new data-directed symbol timing and phase
...
error calculator. After increasing the gain for symbol timing, this
new symbol evaluator class seems to track the signal very accurately
despite lots of noise and ISI.
2018-03-04 11:42:23 -05:00
Denny
b563f2d11b
330 WIP - created new symbol evaluator class that combines phase and
...
timing error calculation with symbol decision. In the process of
changing over to this new class and remove the previous implementations
for the 3 values. This commit includes the partial implementation
so I can access from another dev machine.
2018-02-27 05:57:48 -05:00
Denny
148ddd0bd5
330 WIP - P25 C4FM decoder fully functional using DQPSK decoder and
...
new symbol timing error detector. Each component now has a subclass
that supports instrumentation for use with the DemodulatorViewerFX
application.
2018-02-25 08:56:34 -05:00
Denny
a0630102e6
330 WIP - P25 C4FM decoder fully functional using DQPSK decoder and
...
new symbol timing error detector.
2018-02-25 05:04:20 -05:00
Denny
3d1ac30646
330 WIP - changing to 45 degree rotation before demodulation.
2018-02-20 05:27:33 -05:00
Denny
dda37a1198
330 WIP - updates the demodulator viewer with an eye diagram and symbol
...
chart. Testing various configurations to see which yields the best
PLL and symbol timing locks.
2018-02-18 16:20:45 -05:00
Denny
eaf7c7d11e
330 WIP on redesigning the P25 C4FM decoder. Creates a new decoder
...
based on the P25 LSM decoder using a costas loop and a gardner detector.
Updates the Demodulator Viewer FX application to add in a symbol chart
and a phase error chart. The decoder won't lock on yet ... still a wip.
2018-02-17 13:41:36 -05:00
Denny
80c5ad1bc8
WIP - updates to the demodulator viewer app and the recently used files
...
menu.
2018-02-13 12:31:50 +00:00
Denny
956bf2d76a
Adds phase viewer and recent files menu item to viewer desktop.
2018-02-12 12:34:42 +00:00
Denny
1406d5576a
330 - Adds new JavaFX implementation of the demodulator viewer applicaiton
...
with initial support for playback control and I/Q sample axis viewing.
2018-02-11 10:16:50 -05:00
Denny
03e39f3343
Merge branch 'master' into 330-p25-c4fm-decoder-update
2018-02-11 06:14:23 -05:00
Denny
28f351287c
328 - cleanup issue with NPE
2018-02-11 06:13:56 -05:00
Denny
54227703a2
Cleanup from last PR.
2018-02-11 06:12:57 -05:00
Denny
bb078de0a9
Cleanup from last PR.
2018-02-10 10:23:28 -05:00
Denny
ec30cd6305
Updates changelog
2018-02-10 08:28:40 -05:00
Denny Sheirer
5a88ac0200
Merge pull request #329 from DSheirer/328-auto-start-ordering
...
328 Channel Auto-Start capability
2018-02-10 08:15:10 -05:00
Denny
05eea44f7e
Cleanup
2018-02-10 08:14:00 -05:00
Denny
030fc1617c
328 Channel Auto-Start capability. Adds auto-start and auto-start
...
ordering to each channel configuration to provide the user with greater
control over initial application startup configuration.
Adds new dialog window that displays on startup that allows the user to
invoke/cancel auto-start, or simply allow the timer to expire whereby
the channels will be auto-started.
Updates channel table model to include an auto-start column and relabels
the 'Enabled' column to read 'Playing'.
Updates channel editor to change the 'Enable/Disable' button to read
'Start/Stop'.
Changes the 'enabled' property of the channel configuration to indicate
the current 'processing' status - isProcessing().
Channel's XML configuration re-purposes the 'enabled' property to indicate
auto-start and adds a new (optional) auto-start 'order' attribute.
2018-02-10 08:09:43 -05:00
Denny Sheirer
594a77a9d0
Merge pull request #327 from DSheirer/321-channel-preferred-tuner
...
321 channel preferred tuner
2018-02-09 07:13:13 -05:00
Denny
c2fcc9e85d
321 - adds a preferred tuner option to the channel's source configuration
...
so that on startup, the application attempts to source the channel from
the preferred tuner.
If the tuner is currently not available, or if the tuner cannot source
the channel, then the next available tuner is selected.
2018-02-09 07:11:38 -05:00
Denny
28da8b2fa4
[wip] reusable buffer support.
2018-02-09 05:56:20 -05:00
Denny
1c06c4382f
Adds preferred tuner to tuner source configuration.
2018-02-09 05:55:29 -05:00
Denny
28cb9d9407
[WIP] Updating dsp modules to accept variable sample rate I/Q streams
...
and creating a new audio resampler.
2018-02-09 05:29:07 -05:00
Denny
96d9d6f750
[WIP] Adds locking mechanism to tuner controllers so that the
...
polyphase channel manager can block users from changing frequency and/or
sample rate when polyphase channels are allocated.
2018-02-04 06:30:25 -05:00
Denny
85691edacb
[WIP] Testing completed for channel manager allocating tuner channels
...
when the tuner controller indicates that there is a center DC spike
blocked region or when the tuner has clipped outer spectral regions
resulting in less than 100% usable bandwidth.
2018-02-04 04:59:27 -05:00
Denny
f2f2c92afe
[WIP] Implements reusable sample buffers across all components. This
...
produces a significant reduction in memory usage, especially for tuners
like the airspy and hackrf that produce 10/20 MSPS sample rates. This
is observed to be around 66% reduction in peak memory usage and provides
a more stable memory utilization across time reducing stress on the
garbage collector.
Use of these reusable memory buffers will be pushed further down into
the processing chain modules to ensure we keep new object creation
to the lowest levels possible.
2018-02-03 10:05:16 -05:00
Denny
fcd3c2fd46
[WIP] channelizer and 1/2 channel output processors along with the 2
...
channel synthesizer ... all appear to be functional.
2018-01-28 10:52:53 -05:00
Denny
e78d2339ff
WIP - aligns the SynthesizerViewer configuration with that of the
...
ChannelizerViewer so that we can compare the two-channel synthesis
operations. The SynthesizerViewer is successfully down-sampling and
synthesizing two 25.0 kHz channels into a combined 25.0 kHz channel with
no noticeable drop/nulling in the joined region. However, the channelizer
viewer's synthesized channels definitely have a null in the joined
region. I suspect that the channelizer is not quite where it needs to
be and am going to start experimenting there.
2018-01-27 16:27:58 -05:00
Denny
673c8a2423
WIP - two-channel output processor is correctly synthesizing a channel
...
and translating it by -FS/4 to correctly center the synthesized channel.
The low-pass filter is currently disabled to better troubleshoot/view the
state of the synthesized channel. It appears that the synthesizer is
not correctly joining the channel ... instead of down-sampling and then
synthesizing the two channels, it appears to be synthesizing and then
down-sampling. The synthesized channel has a null in the middle which
would render it unusable.
2018-01-27 15:57:22 -05:00
Denny
5a03a0038c
WIP - Adds FS/4 up and down converter classes.
2018-01-27 15:37:26 -05:00
Denny
e7f7d27a1f
Updates the Oscillator and LowPhaseNoiseOscillator classes to share a
...
common interface and abstract class.
2018-01-27 04:41:01 -05:00
Denny
0cf964fa98
Updates test tuner to cleanup the buffer reuse settings
2018-01-20 04:26:53 -05:00
Denny
b6f282a85a
Polyphase Channelizer Viewer is fully functional again, now using the
...
TestTuner and TestTunerController implementations. This implementation
only has support for channels that are completely centered within a
channelizer output. Two output slice stitching to form a composite
channel will be implemented next.
Initial profiling indicates that the FFT function within the polyphase
channelizer is now the dominant processing workload - 28% cpu loading
when channelizing a 10 MHz sample rate input into 800 channels running
at 25.0 kHz each. This is ideal for offloading to an OpenCL kernel and
running on a GPU.
2018-01-19 12:44:31 -05:00
Denny
32ab0598e8
Updates sample generator and test tuner controller to support multiple
...
complex buffer listeners. Removes complex buffer broadcast support from
the source manager and renames it to channel source manager to convey
that it's only responsible for providing channels from the tuner.
2018-01-15 05:34:36 -05:00
Denny
5ae3cb38e1
Merge master and re-apply the source event structures to the DFT processor.
2018-01-15 05:03:03 -05:00
Denny
78205bb1bf
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/main/java/io/github/dsheirer/spectrum/DFTProcessor.java
2018-01-15 04:56:16 -05:00
Denny Sheirer
3d9b38bef5
Merge pull request #319 from DSheirer/318-dft-processor-non-blocking-queue
...
318 DFT Processor Non-Blocking Queue redesign
2018-01-15 04:54:40 -05:00
Denny
d5b377b1af
Resolves #318 . Redesigns DFT processor to use a non-blocking queue approach to
...
access incoming buffer streams coupled with a overflowable queue that
limits the quantity of complex buffers that are cached for the DFT
processor.
2018-01-14 12:05:39 -05:00
Denny
a7a0c26b38
#39 WIP - changes for testing of the channelizer viewer.
2018-01-14 08:40:34 -05:00
Denny
d4761be00a
#39 WIP - rolls back embedding source events in buffers. The channel
...
calculator must be updated immediately any time the tuner's center
frequency changes so that a channel can be allocated immediately. So,
I changed source event handling to two parts where the channel calculator
is immediately updated and the channelizer configuration is deferred so
that it can happen on the buffer processor execution thread and we can
avoid any sync() locking on the channelizer or polyphase channel
sources.
2018-01-13 11:43:26 -05:00
Denny
05fa5c25fd
#39 WIP - adds support for timestamped complex buffers so that decoded
...
messages and events can be accurately timestamped, and more importantly,
allocated traffic channels can request to be pre-loaded with buffered
samples to ensure that traffic channels don't miss any samples that
are currently missed due processing latency inherent in current buffer
sizing. This should reduce the clipping of starting messages or voice
on the traffic channels.
Restructures processing path for tuner frequency and sample rate change
events. The tuner now embeds these events in the sequence of buffers
that are generated immediately after the event occurs since those are
the buffers that will be impacted by the change. Previously, the change
event would be broadcast throughout the system and would impact any
buffered/cached buffers. This also reduces the number of source event
change listeners that have to be managed. Note: this change is not yet
implemented in all tuners ... only in the TestTuner implementation.
Updates the polyphase channelizer to now buffer channel results and then
dispatch the buffer to the channel output processors to improve efficiency
of using float arrays versus single value complex float processing.
2018-01-13 09:10:57 -05:00
Denny Sheirer
69e9bed2af
Updated readme
2018-01-12 03:50:57 -05:00
Denny
d2e7f008c8
WIP - implements tuner source manager to calculate and update the tuner's
...
center frequency each time we allocate a new DDC/channel. Adds
support for broadcasting channel count change source events so that the
tuner can accurately convey sourced channel counts via tuner events.
Completes changeover of polyphase channel manager to support arbitrary
bandwidth channels. The new approach provides greater compatibility
across any tuner sample rates. Likewise, all decoders will have to be
updated to adapt to any channel sample rate, although channel bandwidths
will be at least 12.5 kHz and likely no more than 25.0 kHz, with a 2x
oversampling that produces channel sample rates in range 25.0 - 50.0
kHz.
2018-01-07 07:46:41 -05:00
Denny
ddad4b6fb0
Updates readme
2018-01-01 13:16:20 -05:00
Denny
b65dd7e414
Updates readme
2018-01-01 08:20:30 -05:00
Denny
b076587f30
Updates readme
2018-01-01 08:17:42 -05:00
Denny
336669f1d5
Updates build version to 0.3.3 beta 3
2018-01-01 07:26:42 -05:00
Denny Sheirer
46cf7f4193
Merge pull request #309 from DSheirer/308-icon-manager-npe
...
308 IconManager throws NPE when loading external icons
2018-01-01 07:25:29 -05:00
Denny
e9aeb09011
Resolves issues with NPE handling and loading external icons.
2018-01-01 07:24:37 -05:00
Denny
236df8f3f4
Merges from master branch.
2017-12-27 10:10:51 -05:00
Denny
667c50174d
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# .idea/dictionaries/denny.xml
# .idea/libraries/imports.xml
# sdrtrunk.iml
# src/audio/AudioModule.java
# src/audio/broadcast/StreamManager.java
# src/buffer/FloatCircularBuffer.java
# src/channel/state/AlwaysUnsquelchedDecoderState.java
# src/channel/state/ChannelState.java
# src/channel/state/DecoderState.java
# src/channel/traffic/TrafficChannelManager.java
# src/controller/channel/Channel.java
# src/dsp/filter/FilterFactory.java
# src/dsp/filter/Window.java
# src/dsp/filter/design/FilterView.java
# src/dsp/filter/design/FilterViewer.java
# src/dsp/filter/fir/FIRFilterSpecification.java
# src/dsp/filter/fir/remez/RemezFIRFilterDesigner.java
# src/dsp/gain/AutomaticGainControl.java
# src/dsp/gain/ComplexFeedForwardGainControl.java
# src/dsp/mixer/Oscillator.java
# src/dsp/psk/LSMDemodulator.java
# src/gui/control/JFrequencyControl.java
# src/instrument/tap/stream/BinaryTapViewPanel.java
# src/module/Module.java
# src/module/ProcessingChain.java
# src/module/decode/Decoder.java
# src/module/decode/am/AMDecoder.java
# src/module/decode/fleetsync2/Fleetsync2Decoder.java
# src/module/decode/fleetsync2/Fleetsync2DecoderState.java
# src/module/decode/lj1200/LJ1200Decoder.java
# src/module/decode/lj1200/LJ1200DecoderState.java
# src/module/decode/ltrnet/LTRNetDecoder.java
# src/module/decode/ltrnet/LTRNetDecoderState.java
# src/module/decode/ltrstandard/LTRStandardDecoder.java
# src/module/decode/ltrstandard/LTRStandardDecoderState.java
# src/module/decode/mdc1200/MDCDecoder.java
# src/module/decode/mdc1200/MDCDecoderState.java
# src/module/decode/mpt1327/MPT1327Decoder.java
# src/module/decode/mpt1327/MPT1327DecoderState.java
# src/module/decode/nbfm/NBFMDecoder.java
# src/module/decode/p25/C4FMSymbolFilter.java
# src/module/decode/p25/P25Decoder.java
# src/module/decode/p25/P25DecoderState.java
# src/module/decode/p25/P25_C4FMDecoder.java
# src/module/decode/p25/P25_LSMDecoder.java
# src/module/decode/p25/audio/P25AudioModule.java
# src/module/decode/passport/PassportDecoder.java
# src/module/decode/passport/PassportDecoderState.java
# src/module/decode/tait/Tait1200Decoder.java
# src/module/decode/tait/Tait1200DecoderState.java
# src/module/demodulate/am/AMDemodulatorModule.java
# src/module/demodulate/audio/DemodulatedAudioFilterModule.java
# src/module/demodulate/fm/FMDemodulatorModule.java
# src/module/log/EventLogger.java
# src/record/AudioRecorder.java
# src/record/RecorderManager.java
# src/record/wave/ComplexBufferWaveRecorder.java
# src/record/wave/RealBufferWaveRecorder.java
# src/sample/Broadcaster.java
# src/sample/OverflowableTransferQueue.java
# src/sample/SampleType.java
# src/source/ComplexSource.java
# src/source/ISourceEventProvider.java
# src/source/InvalidFrequencyException.java
# src/source/RealSource.java
# src/source/Source.java
# src/source/config/SourceConfigRecording.java
# src/source/config/SourceConfigTuner.java
# src/source/heartbeat/Heartbeat.java
# src/source/heartbeat/IHeartbeatListener.java
# src/source/heartbeat/IHeartbeatProvider.java
# src/source/mixer/RealMixerSource.java
# src/source/recording/Recording.java
# src/source/recording/RecordingSourceManager.java
# src/source/tuner/ITunerChannelProvider.java
# src/source/tuner/Tuner.java
# src/source/tuner/TunerClass.java
# src/source/tuner/TunerController.java
# src/source/tuner/TunerEditor.java
# src/source/tuner/TunerManager.java
# src/source/tuner/TunerModel.java
# src/source/tuner/TunerSourceEditor.java
# src/source/tuner/TunerType.java
# src/source/tuner/airspy/AirspyTuner.java
# src/source/tuner/airspy/AirspyTunerController.java
# src/source/tuner/airspy/AirspyTunerEditor.java
# src/source/tuner/configuration/TunerConfigurationModel.java
# src/source/tuner/fcd/FCDTuner.java
# src/source/tuner/fcd/FCDTunerController.java
# src/source/tuner/fcd/proV1/FCD1TunerController.java
# src/source/tuner/fcd/proV1/FCD1TunerEditor.java
# src/source/tuner/fcd/proplusV2/FCD2TunerController.java
# src/source/tuner/fcd/proplusV2/FCD2TunerEditor.java
# src/source/tuner/hackrf/HackRFTuner.java
# src/source/tuner/hackrf/HackRFTunerController.java
# src/source/tuner/hackrf/HackRFTunerEditor.java
# src/source/tuner/rtl/RTL2832Tuner.java
# src/source/tuner/rtl/RTL2832TunerController.java
# src/source/tuner/rtl/e4k/E4KTunerController.java
# src/source/tuner/rtl/e4k/E4KTunerEditor.java
# src/source/tuner/rtl/r820t/R820TTunerController.java
# src/source/tuner/rtl/r820t/R820TTunerEditor.java
# src/source/tuner/usb/USBTransferProcessor.java
# src/source/wave/ComplexWaveSource.java
# src/source/wave/RealWaveSource.java
# src/spectrum/ChannelSpectrumPanel.java
# src/spectrum/DFTProcessor.java
# src/spectrum/OverlayPanel.java
# src/spectrum/SpectralDisplayPanel.java
2017-12-26 08:35:33 -05:00
Denny
c7f00ea124
Updates version to 0.3.3 beta 2
2017-12-26 07:19:06 -05:00
Denny Sheirer
1759f4a804
Merge pull request #306 from DSheirer/305-gradle-icons-missing
...
305 Icons missing from gradle build
2017-12-26 07:17:12 -05:00
Denny
3d9044802e
Resolves issue with including icons in gradle build product. Updates
...
all icon handling code to use absolute path for bundled icons.
2017-12-26 07:13:15 -05:00
Denny
42aec490bd
Updates build version and changelog.
2017-12-25 07:42:56 -05:00
Denny Sheirer
c3f5c1c70e
Merge pull request #303 from DSheirer/278-wave-metadata
...
278 Add Metadata to WAV audio recordings
2017-12-25 07:17:08 -05:00
Denny
188a521770
Adds wave file ID3 metadata chunk to audio recordings.
...
Updates wave writer to add the metadata LIST and ID3 chunks to the end
of the recording so that the file contains the final/complete set of
metadata that was accumulated over the call lifecycle.
2017-12-25 07:08:55 -05:00
Denny
6e352143d2
Adds wave file LIST metadata chunk to audio recordings.
...
Note: the metadata chunk may be added multiple times over the life span
of an audio call, as additional metadata details are added.
2017-12-24 06:51:09 -05:00
Denny Sheirer
7391265949
Merge pull request #302 from DSheirer/tsypuk-SDR-build
...
Gradle Build System
2017-12-21 20:55:44 -05:00
Denny
26b97f09b7
Updates SettingsManager to use jackson xml serialization. Final
...
testing on all changes to xml serialization.
2017-12-21 19:59:11 -05:00
Denny
1d2d9e8630
Updates IconManager to use faster jackson XML serialization.
2017-12-21 13:42:03 -05:00
Denny
ee6aeafa84
Updates PlaylistManager to use faster jackson XML serialization.
...
Removes native xml.bind serialization for improved compatibility with
Java 9.
Global optimize imports on the entire project.
2017-12-21 07:18:27 -05:00
Denny
47cc194415
Resolves issue with runtime exception when identifying application
...
version string from jar manifest
2017-12-17 07:34:47 -05:00
Denny
9316599dec
Updates pull request from Roman Tsypuk to convert the build system from
...
ant to gradle. Removes linux and windows application launch scripts and
produces an executable jar with all resources included.
2017-12-17 07:28:06 -05:00
Roman Tsypuk
a1535c4157
updated README, gitignore, moved styles
2017-12-16 11:12:59 +02:00
Roman Tsypuk
b478068475
- cosmetics naming changes
2017-12-16 10:44:54 +02:00
Roman Tsypuk
7286c978da
updated gitignore
2017-12-16 10:36:04 +02:00
Roman Tsypuk
628d514462
- updated to current version
2017-12-16 01:05:07 +02:00
Roman Tsypuk
3478702845
- removed scripts
2017-12-16 01:04:14 +02:00
Roman Tsypuk
695d622603
- added fatJar task
2017-12-16 00:57:44 +02:00
Roman Tsypuk
e8e47bfb40
- moved to package in.ua.smartjava
2017-12-16 00:56:22 +02:00
Roman Tsypuk
c1a4425969
- cleanup
2017-12-16 00:27:12 +02:00
Roman Tsypuk
4fa1a1aa81
- moved dependencies to gradle
2017-12-16 00:23:12 +02:00
Roman Tsypuk
4e1f9bcf97
- moved dependencies lib4java to gradle
2017-12-16 00:09:43 +02:00
Roman Tsypuk
50bb96b14a
- moved dependencies to gradle
2017-12-16 00:01:23 +02:00
Roman Tsypuk
51ea70f279
moved resource files
2017-12-15 23:57:27 +02:00
Roman Tsypuk
e15f271a54
- moved dependencies to gradle
2017-12-15 23:56:28 +02:00
Roman Tsypuk
605475c98b
- moved dependencies to gradle
2017-12-15 23:38:22 +02:00
Roman Tsypuk
86248c511a
updated gitignore
2017-12-15 23:23:42 +02:00
Roman Tsypuk
b1e07f762c
fix src folder structure
2017-12-15 23:22:32 +02:00
Roman Tsypuk
f2d1ac7e48
- commons moved to gradle
2017-12-15 22:56:38 +02:00
Roman Tsypuk
d114282e4b
added dependencies from import folder
2017-12-15 22:53:33 +02:00
Roman Tsypuk
0fd20655fa
- added gradle wrapper
2017-12-15 22:52:42 +02:00
Roman Tsypuk
181527f54c
- added gradle build
2017-12-15 22:45:40 +02:00
Roman Tsypuk
910587bad7
- updated gitignore
2017-12-15 22:44:29 +02:00
Denny Sheirer
1dc9a7fb0e
Merge pull request #300 from DSheirer/299-traffic-channel-event-logging
...
299 Traffic Channel Event Logging
2017-12-11 21:08:09 -05:00
Denny
eef29d28da
#299 - adds support for traffic channel event logging of binary or
...
decoded messages and event logging, as inherited from the parent
control channel's configuration.
2017-12-11 21:07:30 -05:00
Denny
1c71a37755
#39 WIP -
2017-12-11 20:30:19 -05:00
Denny
318e6f3586
#39 WIP - changes tuner controllers to expose the frequency controller
...
and the channel manager in preparation for polyphase.
2017-12-11 20:27:01 -05:00
Denny
f38184fd83
#39 WIP - finishes polyphase channel source processing of frequency
...
offset calculation and updating for channel frequency correction.
2017-12-10 06:26:44 -05:00
Denny
d2085052f6
#39 WIP - updates tunerchannelsource as the parent class for the CIC
...
and polyphase sub class implementations. Converts all source implementations
and tuners to treat sample rate as a double.
2017-12-09 15:23:40 -05:00
Denny
441b595325
#39 WIP - initial efforts to restructure the way tuners and tuner
...
controllers manager sample buffer processing and channel management.
General cleanup across all modules to remove the executor from each
of the start() methods. Removed the B100 tuner class since it's not
yet implemented.
2017-12-08 04:02:49 -05:00
Denny
57fab2b7ca
#39 WIP - initial efforts to restructure the way tuners and tuner
...
controllers manager sample buffer processing and channel management.
General cleanup across all modules to remove the executor from each
of the start() methods. Removed the B100 tuner class since it's not
yet implemented.
2017-12-03 11:10:50 -05:00
Denny
bf65e10286
#39 WIP polyphase channelizer
...
Updates the M2 channelizer and correctly implements the ChannelCalculator
2017-12-02 08:58:34 -05:00
Denny Sheirer
a3ecb339be
Merge pull request #294 from DSheirer/241-lj1200-crc-error-checking
...
241 LJ1200 Error Correction
2017-12-02 03:16:29 -05:00
Denny
910a08f7bb
#241 Resolves issue with error correction routine introducing invalid messages
2017-12-02 03:15:31 -05:00
Denny
5a76f31dea
Updated change log
2017-11-23 07:37:53 -05:00
Denny Sheirer
1b42e64f50
Merge pull request #290 from DSheirer/289-shoutcast-2-credentials-encryption-error
...
289 Shoutcast 2 Login Error
2017-11-23 07:30:45 -05:00
Denny
1ddc0a33a5
#289 resolves issue with encrypting username and password with XTEA
...
algorithm using credential values longer than 8 characters/bytes.
2017-11-23 07:28:15 -05:00
Denny
a12aaf7cf3
#39 WIP polyphase channelizers.
2017-11-18 07:33:28 -05:00
Denny
b3e4bd6a9c
#39 WIP polyphase channelizers.
2017-11-18 05:50:00 -05:00
Denny
5281679b7f
#39 WIP polyphase channelizers. Creates test tuner and controller to
...
use in testing tuner and polyphase channel manager operations.
2017-11-12 10:33:13 -05:00
Denny
a581da56a8
#39 WIP polyphase channelizers.
2017-11-05 11:38:01 -05:00
Denny Sheirer
88580af436
Merge pull request #284 from DSheirer/283-broadcastify-text-html-response
...
283 Broadcastify mount point in use error
2017-11-04 13:31:40 +00:00
Denny
64688a3c20
Updates CHANGELOG
2017-11-04 09:07:46 -04:00
Denny
8be3399a6b
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.
2017-11-04 09:02:03 -04:00
Denny
0181926fe3
WIP - polyphase channelizer
2017-10-30 19:12:14 -04:00
Denny
2c3be02939
WIP - polyphase channelizer
2017-10-23 08:43:53 -04:00
Denny
a00ec42230
Cleanup from master merge
2017-10-22 06:37:24 -04:00
Denny
14a3532030
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/source/tuner/TunerController.java
2017-10-22 06:28:57 -04:00
Denny Sheirer
28340809ca
Merge pull request #279 from DSheirer/276-traffic-channel-manager-deadlocked-threads
...
276 TrafficController Infinite Loop
2017-10-21 09:43:42 -04:00
Denny
f3d3a8187a
Resolves #276 Traffic Channel threads locking in overflow state. Issue
...
occured when the ChannelProcessionManager was allocating a new channel
causing the tuner to invoke the updateLOFrequency() method that was
trying to find a center tune frequency that would accommodate all of the
channels, specifically in the instance where the distance between the
highest channel and the middle channel was exactly one-half of the
tuner's bandwidth. This situation would cause the calculated adjustment
to be zero and would cause an infinite loop, locking all channels from
accessing the any channel startup/teardown events and causing running
channels to block with buffer overflows. Added 1 to the adjustment to
ensure that the initial adjustment placed the center overlapping channel
fully to the left of the center DC spike so that on the next iteration
that channel would no longer be overlapping.
2017-10-21 09:31:34 -04:00
Denny Sheirer
8484e837b8
Merge pull request #277 from DSheirer/273-gui-title-version
...
273 Application Title Version String
2017-10-16 19:38:15 -04:00
Denny
01b188ea25
Resolves #273 issue with dangling dash in application title version string.
2017-10-16 19:37:11 -04:00
Denny
3be65d5e9a
Resolves issue from merging master branch into polyphase channelizer branch.
2017-10-15 07:26:17 -04:00
Denny
c21f3fca23
Resolves issue from merging master onto branch.
2017-10-15 07:19:36 -04:00
Denny
99d81d247a
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/channel/state/ChannelState.java
# src/module/ProcessingChain.java
# src/source/Source.java
# src/source/mixer/RealMixerSource.java
# src/source/tuner/TunerChannelSource.java
# src/source/wave/RealWaveSource.java
2017-10-15 07:17:57 -04:00
Denny Sheirer
108691dc3c
Merge pull request #274 from DSheirer/272-java-9-compatibility
...
272 java 9 compatibility
2017-10-09 12:40:04 -04:00
Denny
455aa97286
Updates build number to 'final'
2017-10-09 12:35:28 -04:00
Denny
d608834214
Resolves #272 . Updates the windows launch script to perform conditional
...
launching based on the JRE version 8 or 9.
2017-10-09 16:33:58 +00:00
Denny
41660e1881
Updates the build number to 0.3.1 for the next patch release
...
Updates the build script for conditional compilation using either Java
8 or Java 9 options. Java 9 deprecated the java.xml.bind package and
removed it as a default Java SE package, so we have to reference it via
the --add-modules argument.
Updates the linux/mac launch script to check the java runtime version
and use either a Java 8 or Java 9 launch command.
2017-10-08 09:00:10 -04:00
Denny Sheirer
110ccb158c
Update README.md
...
Removed Version 0.2.0 user manual link
2017-09-22 06:16:34 -04:00
Denny
64ccacf04a
Releasing Version 0.3.0 (final).
2017-09-22 05:56:27 -04:00
Denny
27461df7f0
WIP on 2 channel output processor
2017-09-18 04:15:04 -04:00
Denny Sheirer
f00b9555fe
Merge pull request #271 from DSheirer/269-viterbi-3-4-rate
...
269 Viterbi decoder for DMR 3/4-rate packet messages
2017-09-15 11:50:19 -04:00
Denny
85442a9648
Resolves #269 - creates a generic Viterbi decoder and a Digital Mobile Radio (DMR) 3/4 Rate Viterbi decoder implementation for decoding Trellis Coded Modulation (TCM) encoded DMR Data packets.
2017-09-15 11:40:23 -04:00
Denny Sheirer
c67a0b329d
Merge pull request #267 from DSheirer/266-licence-directory
...
266 Update build script to use gitlab license file
2017-09-10 04:55:57 -04:00
Denny
8035d64fcd
Resolves #266 - updates build script to use new gitlab license file and
...
removes previous license file.
2017-09-10 04:54:26 -04:00
Denny
9983d2119d
WIP
2017-09-10 04:42:35 -04:00
Denny
9e275b7d62
WIP
2017-09-02 06:55:58 -04:00
Denny Sheirer
df2a061a08
Create LICENSE
2017-08-28 19:51:13 -04:00
Denny
e430319937
Updates build to 0.3.0 Beta 14
2017-08-19 07:15:57 -04:00
Denny Sheirer
724f769771
Merge pull request #262 from DSheirer/260-icecast-stream-doesn't-reconnect
...
260 - Icecast and Shoutcast streaming doesn't auto-reconnect
2017-08-19 07:14:55 -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
c8994d5593
Updates build to version 0.3.0 Beta 13
2017-07-22 05:45:36 -04:00
Denny Sheirer
99ef57c90f
Merge pull request #255 from DSheirer/249-overflow-teardown-lockup
...
249 Channel TEARDOWN/OVERFLOW state lockup
2017-07-22 05:44:12 -04:00
Denny
be62ae0459
Resolves #249 - removes the state monitor runnable from the channel
...
state and replaces it with a processing chain heartbeat that is generated
by the sample source.
Previously, the state monitor was running on a separate thread and this
was causing multi-threading issues. With this update, all channel state
operations (and all module operations) occur on the source's buffer
processing thread.
2017-07-22 05:42:13 -04:00
Denny Sheirer
b9be6f43e0
Merge pull request #253 from DSheirer/252-usb-transfer-processor-bad-logging
...
252 USB transfer processor erroneous logging and performance enhancements
2017-07-09 12:29:21 +00:00
Denny
d5ad3f807d
Resolves issue where the tuner's buffer processor is logging that an overflow state has been cleared, caused by a clearing of the buffer when the tuner is being shutdown because there are no more channel consumers registered on the tuner.
...
Tweaked buffer size limits and buffer handling to attempt to avoid overflow situations in the first place.
Resolved an issue where the tuner processor was not deregistering correctly from the LIBUSB tuner processor during tuner shutdown.
2017-07-09 08:21:07 -04:00
Denny Sheirer
d85ebd018d
Merge pull request #251 from DSheirer/250-state-monitor-throwable
...
StateMonitor - try/catch for Throwables
2017-07-01 11:39:21 +00:00
Denny
ab4e31ae00
Ensures that any leftover cached LDU1 message is reset when the call ends.
2017-07-01 07:36:55 -04:00
Denny
5efd89632e
Ensures that any leftover cached LDU1 message is reset when the call ends.
2017-05-28 07:30:05 -04:00
Denny
1dc3863489
Updates build to 0.3.0 Beta 12
2017-05-28 07:22:43 -04:00
Denny Sheirer
441286ba13
Merge pull request #247 from DSheirer/244-ldu1-encryption-flag
...
244 Prevent P25 Encrypted Audio Decoding/Playback
2017-05-28 11:20:20 +00:00
Denny
e4323df347
Resolves issue #244 - updates the P25 IMBE audio module to correctly
...
detect encrypted audio state so that encrypted audio is not (incorrectly)
decoded and played back to the user.
Processes HDU and LDU2 messages to identify encrypted call state. Once
established, all subsequent LDU1/2 messages are decoded only if the call
is unencrypted. If an LDU1 message is received out-of-sequence, meaning
that the initial HDU message was missed, then the LDU1 is cached until
we receive an LDU2 message and correctly determine the call encryption
state.
2017-05-28 07:17:09 -04:00
Denny
a872e0d664
Updates version to Beta 0.3.0 Beta 11
2017-05-20 07:24:27 -04:00
Denny Sheirer
fbc92cfe31
Merge pull request #246 from DSheirer/245-sound-card-source-issue
...
Using sound card or mixer as a source throws an error
2017-05-20 10:55:23 +00:00
Denny
1a432197ac
Resolves #245 issue with NPE for frequency change event listener when using the sound card/mixer as a source.
2017-05-20 06:51:53 -04:00
Denny
f461ed9cdb
wip-channelizer
2017-05-13 10:16:18 -04:00
Denny
7c6b7494b8
wip-channelizer
2017-04-21 12:17:55 -04:00
Denny
ab31b40124
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/spectrum/SpectrumPanel.java
2017-04-14 14:42:56 -04:00
Denny
fbc6e508bd
Increments build to 0.3.0-beta10
2017-04-14 07:46:18 -04:00
Denny
ac686f5f64
WIP - correctly implements the 2x oversampled polyphase channelizer.
2017-04-14 06:41:43 -04:00
Denny
f7cd798f07
WIP
2017-04-08 08:35:48 -04:00
Denny
41d307cdad
WIP - checkpointing update for 2x oversampling where we're only computing half of the coefficients.
2017-04-03 19:04:00 -04:00
Denny
afae1654d5
WIP
2017-04-01 15:10:02 -04:00
Denny Sheirer
f9b6e67b00
Merge pull request #240 from DSheirer/234-long-alias-names-cause-audio-label-to-wrap
...
Long alias names cause audio label to wrap
2017-03-31 01:13:17 +00: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 Sheirer
069f951a86
Merge pull request #239 from DSheirer/228-traffic-channel-allocation-for-do-not-monitor
...
Traffic channel manager now allocates traffic channels for do not monitor aliases
2017-03-30 23:27:38 +00:00
Denny
dab6df7836
Resolves #228 - traffic channel manager now allocates traffic channels even when the alias is marked as do not monitor
2017-03-30 19:26:35 -04:00
Denny Sheirer
89da46b63c
Merge pull request #238 from DSheirer/235-lojack-decoder-error-on-construction
...
Resolves error on constructing a LoJack decoder state.
2017-03-30 23:19:29 +00:00
Denny
5f2ce2a9f2
Resolves #235 - fixes error on constructing a LoJack decoder state.
2017-03-30 19:18:39 -04:00
Denny
ffc92a8f0e
WIP - adds remez channelizer builder, working toward combined support (remez & sync) via the filter factory.
2017-03-30 19:16:37 -04:00
Denny
6d9e129087
WIP - adds windowed-sinc (nyquist) filter designer and polyphase channelizer filter designer to FilterFactory. Resolves a few issues with Window designers. ChannelizerViewer is now able to show 800 channels with 12.5 kHz channelization of a 10 MHz bandwidth input signal.
2017-03-26 10:23:38 -04:00
Denny Sheirer
7a0b377971
Merge pull request #232 from DSheirer/229-p25-phase2-event-duplicates
...
Resolves #229 - duplicate P25 TDMA call events.
2017-03-23 21:52:47 +00:00
Denny
5dbe0ecce3
Resolves #229 - duplicate P25 TDMA call events.
2017-03-23 21:48:52 +00:00
Denny Sheirer
6647c581a6
Merge pull request #231 from DSheirer/230-p25-tdma-frequency-bands
...
P25 Phase II TDMA frequency bands are now displayed in details summary
2017-03-23 21:01:58 +00:00
Denny
a2ab5bfa95
Resolves #230 - P25 Phase II TDMA frequency bands are now displayed in the channel details summary.
2017-03-23 20:55:42 +00:00
Denny
0e1da8fb3b
Updates intellij files and includes missing library
2017-03-23 11:31:15 +00:00
Denny
7d5371db4c
Updates build to 0.3.0 Beta 9
2017-03-20 06:12:15 -04:00
Denny
ed486440b8
Merge remote-tracking branch 'origin/master'
2017-03-12 11:33:17 -04:00
Denny
13464e01fc
Updates build to 0.3.0 Beta 9
2017-03-12 11:33:04 -04:00
Denny Sheirer
ea46a8b0e8
Merge pull request #225 from DSheirer/222-spectral-display-of-frequency-correction-offset
...
Frequency change event handling in the processing chain
2017-03-11 17:03:34 +00:00
Denny
d510c34356
Adds frequency change event listener handler to LSM decoder.
2017-03-11 12:01:45 -05:00
Denny
ae8a44caed
Removes cic cleanup filter from processing chain.
2017-03-11 11:53:12 -05:00
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 Sheirer
17539d4d55
Merge pull request #224 from DSheirer/223-now-playing-frequency-format
...
Now Playing frequency display formatting
2017-03-11 11:14:58 +00:00
Denny
1db1d28390
Resolves issue with frequency display formating in the Now Playing window.
2017-03-11 06:13:59 -05:00
Denny
131290fcd2
WIP - experiments
2017-03-11 06:08:23 -05:00
Denny Sheirer
37a941e904
Merge pull request #219 from DSheirer/218-audio-priority-
...
Resolves issue with audio playback allowing higher priority audio to preempt lower priority audio
2017-03-05 12:34:09 +00:00
Denny
57f6655824
Resolves issue where higher priority audio was not preempting lower priority audio.
2017-03-05 07:32:42 -05:00
Denny
e2fe06638b
Incrementing build to version 0.3.0 beta8
2017-03-05 05:55:04 -05:00
Denny Sheirer
4cd8f8209f
Merge pull request #216 from DSheirer/215-audio-recording-handles-part-2
...
215 audio recording handles part 2
2017-03-03 15:49:24 +00:00
Denny
61bfef5798
Incrementing build to version 0.3.0 beta8
2017-03-03 10:44:50 -05:00
Denny
ef172a04c6
Cleanup - removed synchronized blocks since the buffer processor thread is the only thread managing recorders.
2017-03-03 10:04:21 -05:00
Denny
a877afcceb
Updates buffer processing in recorder manager so that we're not blocking any of the decoding channel producer threads that are trying to push audio packets to the recorder manager. Adds an overflowable packet queue and services the queue once a second followed by an idle recorder check (and disposal).
2017-03-03 10:01:32 -05:00
Denny
980ad72d4d
Incrementing build to 0.3.0 beta7
2017-03-03 06:01:09 -05:00
Denny Sheirer
9b746cc032
Merge pull request #215 from DSheirer/198-audio-recorder-handles-left-open
...
Resolves issue audio recorders left open
2017-03-03 10:58:08 +00:00
Denny
f51ae0b5da
Resolves issue with periodic instances of audio recorders not being shutdown correctly. Adds recorder monitor as a fail-safe to automatically shutdown recorders that don't receive an end-call indication.
2017-03-03 05:56:32 -05:00
Denny Sheirer
561078e9bf
Merge pull request #214 from DSheirer/210-playlist-saving-all-times
...
Resolves issue with the playlist saving all of the time
2017-03-03 00:34:25 +00:00
Denny
e052b01f9b
Resolves issue with the playlist saving all of the time due to audio streaming broadcast events.
2017-03-02 19:33:10 -05:00
Denny
17c16e16ee
Adds a new remez designer that uses BigDecimal to handle the larger values inherent in longer length filters. However, this designer is hugely inefficient and takes forever to calculate the filter. More experimentation needed.
2017-03-02 19:17:22 -05:00
Denny
cd4eaedfcc
Merge branch 'master' into 39-polyphase-channelizer
2017-02-26 13:35:33 -05:00
Denny
09cf4fcfd7
Resolves issue with empty string list models in channel editor
2017-02-26 10:29:14 -05:00
Denny
5e731d0e9f
Resolves issue with alias list and group combo box value editing.
2017-02-26 06:51:58 -05:00
Denny Sheirer
670a02b0ba
Merge pull request #209 from DSheirer/153-cursor-frequency-artifacts
...
Resolves issue with spectral display rendering artifacts
2017-02-26 10:48:59 +00:00
Denny
9ef156b061
Resolves issue with spectral display rendering artifacts from cursor frequency readout when accessing menu items directly above the spectral display.
2017-02-26 05:47:26 -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
a4a339b505
Resolves issue with FCD2 tuner frequency.
2017-02-25 14:58:51 -05:00
Denny
119370c46e
Resolves issue with FCD2 tuner frequency.
2017-02-25 14:57:25 -05:00
Denny
4eb66e6045
Updated readme file with screen shot and link to new Version 0.3.0 user's manual.
2017-02-25 06:18:59 -05:00
Denny Sheirer
8827ecd0e9
Merge pull request #207 from DSheirer/206-alias-list-npe-null-list-name
...
206 alias list npe null list name
2017-02-24 10:25:29 +00:00
Denny
8660002f93
Incrementing build to beta 6
2017-02-24 05:24:38 -05:00
Denny
2058fcbc1d
Resolves issue #206 - alias list throws NPE on aliases that don't have a list name specified.
2017-02-24 05:23:48 -05:00
Denny
9515dfa380
Incrementing build for 0.3.0 beta #5
2017-02-20 20:25:43 -05:00
Denny
9e9a604c6a
Merge remote-tracking branch 'origin/master'
2017-02-20 20:20:11 -05:00
Denny
234e313b7a
Resolves issue with Null Pointer exception in alias list
2017-02-20 20:19:47 -05:00
Denny
fd748fec79
[WIP] Using different filters
2017-02-20 20:16:38 -05:00
Denny
14b844f0bd
[WIP] Channelizing 6.4 MHz sample rate into 512 channels with with 512-point FFT on each channel at frame rate of 20 fps.
2017-02-19 10:37:44 -05:00
Denny
99ef002d07
[WIP] working on polyphase channelizer and testing viewer
2017-02-19 08:22:37 -05:00
Denny
e868428c88
[WIP] working on polyphase channelizer and testing viewer
2017-02-18 11:05:21 -05:00
Denny
d2542d2560
Merge branch 'master' into 39-polyphase-channelizer
...
# Conflicts:
# src/dsp/filter/design/FilterViewer.java
2017-02-18 07:34:18 -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 Sheirer
c0a6d578c7
Merge pull request #202 from DSheirer/201-audio-stream-failed-reconnect
...
Resolves issue with audio broadcasters attempting to reconnect if a c…
2017-02-17 22:54:58 +00: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 Sheirer
8162d6ffd6
Merge pull request #196 from DSheirer/164-patched-group-streaming-duplicates
...
Resolves #173 - duplicate streaming calls for patch groups.
2017-02-12 15:59:46 +00:00
Denny
cd60251337
Resolves #173 - duplicate streaming calls for patch groups.
2017-02-12 10:59:06 -05:00
Denny Sheirer
5647879b37
Merge pull request #195 from DSheirer/173-p25-tdma-channel-frequencies-incorrect
...
Resolves #173 - logging/management of P25 TDMA channels.
2017-02-12 15:21:50 +00:00
Denny
6916d95cdf
Resolves #173 - logging/management of P25 TDMA channels. There is no Phase II decoder support yet.
2017-02-12 10:20:45 -05:00
Denny Sheirer
a0c32f6fe0
Merge pull request #194 from DSheirer/193-icecast-tcp-write-timeout-exception
...
Resolves #193 - adds handling for MINA WriteTimeoutException
2017-02-12 13:05:11 +00: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 Sheirer
e55a2226a2
Merge pull request #192 from DSheirer/189-shoutcast-ultravox-UTF8-encoding
...
Resolves #189 - add UTF-8 encoding to shoutcast v2
2017-02-12 12:45:10 +00: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 Sheirer
46425e9cae
Merge pull request #191 from DSheirer/188-p25-activity-summary-cleanup
...
188 p25 activity summary cleanup
2017-02-12 12:31:45 +00:00
Denny
3726401563
Resolves #188 - cleanup of the P25 and MPT activity summaries. Resolves an issue in the SNDCP downlink/uplink channel frequencies.
2017-02-12 07:30:32 -05:00
Denny
a3e50acfe3
Incrementing build to 0.3.0-beta4
2017-02-11 09:02:35 -05:00
Denny
cf0018e6ba
Incrementing build to 0.3.0-beta4
2017-02-11 07:22:54 -05:00
Denny Sheirer
e8055dcab0
Merge pull request #187 from DSheirer/186-p25-c4fm-decoder-no-worky
...
Resolves #186 - p25 C4FM decoder wasn't working (at all).
2017-02-11 12:17:58 +00:00
Denny
fce3d5c4f3
Resolves #186 - p25 C4FM decoder wasn't working (at all).
2017-02-11 07:17:23 -05:00
Denny Sheirer
9cc0d367a8
Merge pull request #185 from DSheirer/183-alias-list-throws-npe-on-empty-name
...
Resolves #183 - alias list throws NPE when created with a null or emp…
2017-02-11 00:35:16 +00:00
Denny
2ca9e5d5ce
Resolves #183 - alias list throws NPE when created with a null or empty name and receives alias updates.
2017-02-10 19:34:50 -05:00
Denny Sheirer
861203c3a0
Merge pull request #184 from DSheirer/181-patch-group-audio-priority
...
Resolves #181 - patch group audio priority will assume the highest (l…
2017-02-11 00:31:42 +00:00
Denny
7c930deefe
Resolves #181 - patch group audio priority will assume the highest (listenable) audio priority and override a 'Do Not Monitor' setting if any of the other aliases have an audio priority defined.
2017-02-10 19:31:09 -05:00
Denny
0e0af932eb
Incrementing build to 0.3.0-beta3
2017-02-10 17:09:54 -05:00
Denny Sheirer
6ba5e91fcb
Merge pull request #182 from DSheirer/176-streaming-handle-additional-io-exceptions
...
Resolves #176 - resolves 2 streaming related issues
2017-02-10 22:06:32 +00: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
Denny Sheirer
2543072e08
Merge pull request #180 from DSheirer/166-traffic_channel_manager_cleanup
...
Resolves #166 - removes traffic channel timeout from traffic channel manager
2017-02-10 15:31:24 +00:00
Denny
281be147f8
Resolves #166 - removes traffic channel timeout from traffic channel manager
2017-02-10 10:30:35 -05:00
Denny Sheirer
12ecca4555
Merge pull request #179 from DSheirer/169-aarch64-usb-support-for-ARM64
...
Resolves #165 - adds ARM64 (aarch64) linux libusb support
2017-02-10 15:26:16 +00:00
Denny
4c27d04120
Resolves #165 - adds ARM64 (aarch64) linux libusb support
2017-02-10 10:08:52 -05:00
Denny Sheirer
ece202315f
Merge pull request #178 from DSheirer/165-overflowable-buffer-issue-causes-channels-decoding-stop
...
165 overflowable buffer issue causes channels decoding stop
2017-02-10 14:50:30 +00:00
Denny Sheirer
6afe5dcec9
Merge pull request #177 from DSheirer/master
...
165 - P25 Channel stops decoding
2017-02-10 14:47:33 +00:00
Denny
8db47c25bc
#165 - cleanup of logging and comments in TunerChannelSource
2017-02-10 09:45:32 -05:00
Denny
6a340050c6
#165 - cleanup of logging and comments in TunerChannelSource
2017-02-10 06:41:45 -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
9ca87299d5
[WIP] Polyphase channelizer experiments
2017-02-06 04:19:09 -05:00
Denny Sheirer
6bc92e8b94
Merge pull request #174 from RachelOlivero/gui_accessibility_enhancements
...
Add a Text Label to the Mute Image Button
2017-02-04 20:21:44 +00:00
Denny
767b302ed7
Adds additional unresolved address exception handler to metadata updater
2017-02-04 07:32:22 -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
74c15d530b
Resolves #164 - USB time out while processing buffer transfers. Decreases periodicity of processing the LibUsb timeout handler from 9 milliseconds to 5 milliseconds to reduce chance that buffers are not being serviced in time.
2017-01-29 11:02:12 -05:00
Denny
8621d1c8e2
Bumping build to 0.3.0-beta2
2017-01-29 09:11:11 -05:00
Denny Sheirer
1cd45a1b79
Merge pull request #162 from DSheirer/161-e4000-tuner-error
...
Resolves #161 - E4000 tuner error.
2017-01-29 09:08:41 -05:00
Denny
8215b78a43
Resolves #161 - E4000 tuner error. Tweaks settings in the USB transfer processor to improve latency in IQ buffer handling.
2017-01-29 09:07:48 -05:00
Denny
f53519ad59
Updated CHANGELOG
2017-01-29 06:56:21 -05:00
Denny
e6ab615931
Updates the overflowable queue to reduce thread contention on the queue size monitor
2017-01-29 06:26:12 -05:00
Denny Sheirer
0c84984fcc
Merge pull request #160 from DSheirer/159-icecast-unresolved-host
...
159 icecast unresolved host
2017-01-29 06:17:44 -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 Sheirer
c097e536e0
Merge pull request #158 from DSheirer/154-channel-metadata-context-menu
...
Resolves #154 - add right-click contextual channel menus for Now Play…
2017-01-28 20:42:58 -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
74aab2cc72
Expanded error message for when drivers are not installed on user machine for RTL2832.
2017-01-28 20:04:20 -05:00
Denny
3543712fd3
Updating build to 0.3.0.beta1
2017-01-28 20:02:38 -05:00
Denny Sheirer
4780f00c44
Merge pull request #157 from DSheirer/155-libusb-pipe-error-on-resubmit
...
Resolves #155 - adds usb endpoint clear halt when attempting to resubmit transfer buffer
2017-01-28 19:35:38 -05:00
Denny
7e4acc568c
Resolves #155 - adds usb endpoint clear halt when attempting to resubmit a transferred buffer that causes a usb pipe error.
2017-01-28 19:33:52 -05:00
Denny Sheirer
a1757686e9
Merge pull request #156 from DSheirer/155-libusb-pipe-error
...
Resolves #155 - LIBUSB_PIPE_ERROR when trying to start R820T tuner
2017-01-28 17:35:01 -05:00
Denny
960bf975d9
Resolves #155 - LIBUSB_PIPE_ERROR when trying to start R820T tuner
2017-01-28 17:33:59 -05:00
Denny Sheirer
57a52a662a
Merge pull request #152 from DSheirer/151-mpt1327-call-timeout-no-persist
...
Resolves #151 - mpt1327 decoder configuration persistence
2017-01-28 17:01:10 -05:00
Denny
f7c144ca16
Resolves #151 - mpt1327 decoder configuration was not setting editor to modified on changes to traffic channel pool size or traffic channel timeout
2017-01-28 16:59:58 -05:00
Denny Sheirer
f63b05c1e4
Merge pull request #149 from DSheirer/123-add-channel-details-tab
...
Resolves #123 - adds channel details tab
2017-01-28 16:50:24 -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 Sheirer
3b2ff7144b
Merge pull request #148 from DSheirer/111-broadcaster-queue-management
...
Resolves #111 - adds 'Maximum Age Limit' setting to streaming queues
2017-01-28 16:08:39 -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 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
Denny
75cb6c27d4
#82 - resolves issue with icon management and list updating after additions/deletions of icons. Updates the single and multi alias list editors to refresh their view any time that changes are made to the list of icons.
2017-01-11 20:44:07 -05:00
Denny
1352ef9092
Merge branch 'master' into #82_icon_manager_model
2017-01-09 18:19:28 -05:00
Denny Sheirer
8a150451c4
Merge pull request #99 from DSheirer/98_jmbe_version_check_error
...
#98 - updated logging to reflect the required version of JMBE (0.3.3).
2017-01-09 18:16:38 -05:00
Denny
5ff3f4169a
#98 - updated logging to reflect the required version of JMBE (0.3.3).
2017-01-09 18:15:41 -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 Sheirer
4481560c41
Merge pull request #97 from DSheirer/#78_p25_patch_group_management
...
#78 p25 patch group management
2017-01-08 08:54:05 -05:00
Denny
1dbdede5a2
#78 updated change log
2017-01-08 07:57:22 -05:00
Denny
6bfe98dae6
#78 patch group alias and call event management. Adds new PatchGroupAlias which is a temporary alias group that is added to the alias list by the decoder state. The P25 decoder state maintains a mapping of patch group identifier to patched talkgroups and creates the patch group alias. This allows audio recording and audio streaming of patched talkgroups, according to the aliases corresponding to the group of patched aliases contained in the patch group alias.
...
Event logging is now pared down to only logging events when the internal patch group mapping is updated.
2017-01-08 07:54:48 -05:00
Denny Sheirer
de9c51c228
Merge pull request #94 from DSheirer/#66_remove_loggers_and_recorders_between_channel_restarts
...
#66 remove loggers and recorders between channel restarts
2017-01-08 05:28:16 -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
a55296eb45
Merge branch 'master' into #66_remove_loggers_and_recorders_between_channel_restarts
2017-01-08 04:44:53 -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
49a1ea04f8
#66 wip
2017-01-08 04:38:10 -05:00
Denny Sheirer
2226306de3
Merge pull request #89 from DSheirer/#65_audio_recorder_exception_on_startup
...
#65 resolves issue where on audio recorder startup an IO exception is…
2017-01-07 10:59:57 -05:00
Denny
0cf26da94e
#65 resolves issue where on audio recorder startup an IO exception is thrown. Traps the exception and shuts down the recorder.
2017-01-07 10:56:57 -05:00
Denny Sheirer
59671738a2
Merge pull request #88 from DSheirer/#86_playlist_file_corruption_on_save
...
#86 - updates playlist configuration file save operations to 1)create…
2017-01-07 10:26:41 -05:00
Denny
c6f4d6da05
#86 - updates playlist configuration file save operations to 1)create a backup copy, 2)create a lock file, 3)store the playlist, and 4)remove the lock file. On startup, if it detects a residual lock file, the playlist manager will delete the existing playlist (assumes it is incomplete or corrupted), restore the previous playlist from the backup file, and remove the lock file.
2017-01-07 10:24:04 -05:00
Denny Sheirer
2d07734cc5
Merge pull request #85 from DSheirer/30-audio_streaming_support
...
30 audio streaming support
2017-01-07 08:25:19 -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
ebca330730
#30 WIP - icecast 2 broadcaster cleanup
2016-12-10 10:42:59 -05:00
Denny
ef373daeef
#30 WIP - icecast 2 broadcaster cleanup
2016-12-10 10:36:38 -05:00
Denny
4290d8e403
#30 WIP - icecast 2 broadcaster cleanup
2016-12-10 10:21:08 -05:00
Denny
293dec8a1c
#30 WIP - adds radio reference web service lookup of broadcastify feed settings dialog.
2016-12-09 19:50:14 -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
ecfac83eb4
#30 WIP - adds stream manager to receive multiple audio stream's packets and convert the audio and persist to disk. Broadcaster will now receive converted audio files to stream out to the server.
2016-11-13 04:33:45 -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
893cbba277
#30 - WIP on the shoutcast v2 protocol
2016-10-23 06:03:07 -04:00
Denny
ac23aea602
#30 - WIP on the shoutcast v2 protocol
2016-10-21 05:30:36 -04:00
Denny
a43ae9ce53
#30 - WIP on the shoutcast v2 protocol
2016-09-30 05:59:14 -04:00
Denny
02f470cf91
#30 - WIP on the shoutcast v2 protocol
2016-09-29 20:50:00 -04:00
Denny
6138838d60
#30 - WIP on the shoutcast v2 protocol
2016-09-14 06:07:21 -04:00
Denny
2537a71375
#30 - WIP Streaming audio support. Adds Shoutcast V1 handler.
2016-09-12 04:28:46 -04:00
Denny
9031fd78c9
#30 - WIP Streaming audio support
2016-08-21 11:41:42 -04:00
Denny Sheirer
e75290c42c
Merge pull request #79 from DSheirer/53_audio_sample_rate_to_8kHz
...
53 audio sample rate to 8k hz
2016-08-21 07:27:29 -04:00
Denny
d466ec9f5e
Changes audio module decimation filter from lowpass to bandpass so that we can remove 0-250 Hz and any LTR signalling from the audio output.
2016-08-21 07:21:38 -04:00
Denny
3af4b953f4
Changes internal audio sample rate from 48 kHz down to 8 kHz. Updates the P25 audio module to output 8 kHz audio. Updates the audio recorder to record at 8 kHz rate.
...
Note: required updated JMBE 0.3.3 library which supports 8 kHz audio output sample rate.
2016-08-19 21:09:39 -04:00
Denny
cc65d44237
Updates change log with efforts to day for 0.3.0
2016-08-04 20:01:45 -04:00
Denny
ae6ccc5d51
Updates change log with efforts to day for 0.3.0
2016-08-04 20:00:37 -04:00
Denny
77cdcf1862
#72 Enhances management of wildcard values for aliases. Calculates a relative weighting for each wildcard alias id and then orders (smallest to largest) the wildcard values so that when attempting to lookup an id value, it first attempts to look for a direct match and then defaults to iterating the list of wildcard values until it finds the most specific or best matching wildcard value.
2016-08-04 19:54:43 -04:00
Denny
bccd4f0e32
#72 Resolves issue with alias identifier wildcard matching
2016-08-01 05:04:01 -04:00
Denny
a76268b32c
Cleanup
2016-07-31 11:00:34 -04:00
Denny
ba31015423
#74 - added specific call event types for patch group processing.
2016-07-31 10:18:15 -04:00
Denny
c635dc5d79
Updated call event details message for traffic channel rejects (no tuner, unknown frequency) to include the original call event details in addition to the traffic channel reject message.
2016-07-31 10:08:13 -04:00
Denny
d57c485450
Resolves issue with correct parsing of channel number for motorola patch group channel grants.
2016-07-31 09:46:09 -04:00
Denny
6e1f28917e
Resolves null pointer exception when updating identifier from values.
2016-07-31 09:20:00 -04:00
Denny
6af24ffa38
Closes #72 - updates alias list to maintain a map of alias id to alias and separate lists for wildcard alias id values. Alias lookup logic is changed to first look for in the alias map for a concrete match to the alias identifier. If an alias is not found, then the list of wildcard alias identifier values is iterated looking for a matching wildcard. If the wildcard is found, then the matching alias is returned from the map.
2016-07-31 09:18:25 -04:00
Denny
b19bfb400e
Merge remote-tracking branch 'origin/master'
2016-07-31 07:52:43 -04:00
Denny
a56935f92c
Closes #74 - adds support for vendor-specific (Motorola) TSBK patch group management. Processes patch group channel grants and updates and allocates voice channel processing. Logs call events for patch group add (register) and patch group delete (deregister). Also adds call event logging when there is a planned control channel shutdown--logged only once.
2016-07-31 07:52:01 -04:00
Denny
b33c0359ef
Resolves issue with 10 MHz sample rate discovery in Airspy R0/R2
2016-07-12 13:44:17 +00:00
Denny
078a6fddce
Closes #71 - frequency controller throws exception when exceeding min/max tuning limits of a tuner.
...
Updated code to show dialog to user whenever the tuning limit has been exceeded. Added new InvalidFrequencyException that includes the requested invalid frequency and the valid frequency limit that was exceeded
2016-06-04 08:21:28 -04:00
Denny
bf5ded53e2
Code cleanup
2016-06-01 04:15:16 -04:00
Denny
3c53f864c4
Closes #70 - airspy mini sample rates.
...
Change code to no longer assume that 10 MHz is an available default sample rate. The mini is only capable of 6 and 3 MHz.
Note: only the 6 MHz sample rate option should be used at this time. 6 MHz can be decimated to 48 kHz using an integer decimator. sdrtrunk doesn't support the 3 MHz option, because it can't decimate that rate to 48 kHz until the new channelizer is developed.
2016-05-30 08:58:00 -04:00
Denny
61d9698ca5
Code cleanup for waterfall and overlay panels
2016-05-30 07:30:17 -04:00
Denny
8fec7c7314
IntelliJ and configuration updates
2016-05-30 07:29:43 -04:00
Denny
90324404b2
Resolves issue #69 with double audio recordings
2016-05-30 07:25:50 -04:00
Denny
d520f43265
Adds support for Intelli-J IDE and adds missing CSS file for filter viewer
2016-05-30 07:03:31 -04:00
Denny
192d39294b
Merge branch 'master' of https://github.com/DSheirer/sdrtrunk.git
2016-05-30 05:33:20 -04:00
Denny
129dba869f
Adds Remez filter designer for low, high and band-pass filters. Support
...
for Hilbert and Differentiator FIR filter designers may be added in the
future.
Adds developer filter viewer tool written in JavaFX to visualize the
frequency and impulse response of FIR filters. This application is not
intended to be a user application and is specifically for the developer
to analyze filters and filter specifications that will be used in the
code.
NOTE: Java 8 JDK is now required to build this project for version 0.3.x
and forward. The JavaFX visualizer application and future user
interfaces will use the Java 8 version of JavaFX
2016-05-29 08:54:07 -04:00
Denny Sheirer
72390cc62a
Update README.md
...
Updated download link
2016-05-02 04:28:22 -04:00
Denny
5cd51c3199
Revert "wip: adds filter viewer JavaFX utility application for visualizing filters designed through the filter factory."
...
This reverts commit 097884337b .
2016-04-18 18:44:43 -04:00
denny
097884337b
wip: adds filter viewer JavaFX utility application for visualizing
...
filters designed through the filter factory.
2016-04-11 19:22:56 -04:00
denny
3231e9828b
Resolves #64 Persist last tuned frequency to tuner configurations
...
Task-Url: http://github.com/DSheirer/sdrtrunk/issues/issue/64
2016-04-05 19:30:09 -04:00
Denny Sheirer
5672182609
Fixed type in R820T tuner editor
2016-04-02 08:15:09 -04:00
denny
631ce112bd
Resolves issue with MessageActivityModel and includes missing files from
...
previous commit.
2016-04-01 08:27: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
03e641525c
Updating version to 0.2.0 (final).
2016-03-29 20:11:41 -04:00
denny
64fee2c718
wip #34 - testing and validating changes and testing decoding.
2016-03-29 20:00:23 -04:00
denny
55443b42f3
wip #34 - resolved issue with airspy correctly loading stored tuner
...
configuration values. Updated remaining tuner editors to set loading
flag when loading tuner configuration and turn off after loading is
complete.
2016-03-27 07:25:17 -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
f2b189ee2b
Adds support to TunerManager for the RAD1O (HackRF compatible) tuner.
2016-03-21 18:39:59 -04:00
denny
3f0581dad1
Adds support for Munich hackerspace Rad1o tuner - a HackRF compatible
...
tuner.
2016-03-21 18:33:56 -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
f32c520cab
wip #34 - updates FCD Pro tuner and completes work on tuners, tuner
...
configurations and tuner editors.
2016-03-20 08:13:28 -04:00
denny
13617e8fe2
wip #34 updates funcube dongle pro plus tuner editor
2016-03-20 07:22:18 -04:00
denny
4adffbdca7
wip #34 adds sort ordering to tuner table
2016-03-20 06:40:25 -04:00
denny
7a5dc5ad58
wip: #34 Updates the HackRF tuner editor and a few other tuner
...
config/editor items
2016-03-20 06:27:53 -04:00
denny
d3e8816bb4
wip: #34 Adds the E4000 tuner editor and updates a few other tuner
...
editor pieces.
2016-03-20 05:30:16 -04:00
denny
6bb417f69a
wip: #34 - finishes the airspy tuner editor panel and adds tuner info
...
button to the r820t tuner editor to view serial number and misc info.
2016-03-19 14:49:55 -04:00
denny
a4d69ce0aa
wip #34 - final edits to R820T tuner configuration editor and introduced
...
frequency correction to the airspy tuner configuration.
2016-03-18 10:59:36 -04:00
denny
45f0e09d5a
wip #34 - updated tuner configurations to include unique id and assigned
...
flag, so that we can get rid of tuner configuration assignment objects.
2016-03-17 22:01:31 -04:00
denny
f518c15a06
wip #34
...
34: Redesign Channel Management
Task-Url: http://github.com/DSheirer/sdrtrunk/issues/issue/34
2016-03-17 21:16:21 -04:00
denny
6eade2b7ea
wip: #34
2016-03-13 20:06:26 -04:00
denny
86816228c2
wip #34 - adds enable/disable to tuner editor components and frequency
...
control
2016-03-13 08:43:55 -04:00
denny
0605760fcd
wip #34 - removed some wrapper methods from tuner since the tuner
...
controller is now exposed (frequency, sample rate, channel count, etc)
2016-03-13 07:38:29 -04:00
denny
415f95ec89
wip #34 : refactored tuners to take a tuner controller as an argument.
...
Removed frequency change listener framework from tuner so that the tuner
controller handles all frequency change interaction.
Updated tuner view to allow selecting tuners for main spectral display
and/or launching a new spectral display by clicking in the tuner table
cell.
2016-03-13 07:09:26 -04:00
denny
1078bdc4fd
wip: #34 - adds tuner spectral display manager to handle requests to
...
show a tuner in the main spectral display or to show the tuner in a new
spectral display
2016-03-12 13:11:06 -05: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
8aebdd1c26
Changes default channel source to be a tuner.
2016-03-05 08:25:22 -05:00
denny
8b11fabf3d
wip: adds call priority and non-recordable editors to the alias
...
multi-select editor.
Changes example hyperlink to 'Help'.
Ensures editor only allows 1 instance of call priority or non-recordable
can be added to any alias.
2016-03-05 08:23:08 -05:00
denny
4ad16296d8
wip: alias multi-editor feature complete
2016-03-05 07:33:04 -05:00
denny
e8fd4f363a
wip: alias multi-select editor feature
2016-03-05 04:30:21 -05:00
denny
00d2b43c2a
wip: finished alias, alias ID and alias action editing framework.
2016-03-04 09:33:46 -05:00
denny
2c3dbe1b22
Work in progress - more updates to the Alias Identifier editor
2016-03-01 19:54:59 -05:00
denny
6d1e7a78cf
Work in progress - added ability to add new alias identifiers and to
...
auto save alias/identifier changes.
2016-02-29 20:14:52 -05:00
denny
d1ea8656c4
Resolved error when clicking clear on an empty message model.
2016-02-29 19:16:41 -05:00
denny
e31b6adf52
Updated help text display for each of the alias identifier editors.
2016-02-28 10:06:28 -05:00
denny
63cea60c42
Merges master CF2C0CA, EEAD22F, 5F2D8C8, 22D3871, and 6F2A7E8 - updates
...
libusb transfer processing and shutdown/cancel management of transfers
in progress.
2016-02-27 09:45:47 -05:00
denny
ece555dead
Merges master 1550c62 - channel state panel null checking
2016-02-27 09:04:13 -05:00
denny
15716d1270
merges master 455e452 - removes logging from dft processor about buffer
...
overflows
2016-02-27 09:02:17 -05:00
denny
8d10b502ab
Merges master ca8406b - DFT processor queue backing up
2016-02-27 09:01:07 -05:00
denny
62851351a4
Merges master 399d164 - default tuner configurations issue #57
2016-02-27 08:58:47 -05:00
denny
daf2b58cf2
Updates build to Version 0.2.0 Beta 8
2016-02-27 06:21:51 -05:00
denny
cf2c0ca07d
Resolves significant memory usage issue - updates Airspy and HackRF with
...
the recent changes applied to RTL2832 Tuner controller for processing of
libusb transfer buffers.
2016-02-27 06:19:35 -05:00
denny
eead22ffad
Issue #59 - more changes to improve handling of transfer buffers between
...
tuner start/stop iterations.
2016-02-26 14:52:31 -05:00
denny
1550c62782
Adds null checking to channel state panel.
2016-02-26 14:37:12 -05:00
denny
5f2d8c8fe6
Issue #59 - reorganizes management of the libusb transfers queue to
...
better handle processing and shutdowns.
-Reuses transfers between tuner start/stop invocations
-Moves libusb transfer status direct byte buffer allocation out of
buffer processing thread and reuses it, saving a lot of memory
allocations over time.
2016-02-26 14:35:34 -05:00
denny
22d3871d0b
Restructures transfer buffer handling to better handle shutdown and
...
canceling of transfers across multiple threads.
2016-02-26 13:28:59 -05:00
denny
455e45269c
Issue #58 - DFT processor queue - removed logging that indicates the
...
queue is full and samples are being purged.
2016-02-26 10:08:52 -05:00
denny
ca8406bdc0
Resolves #58 - DFT processor sample queue may fill up over time causing
...
the spectral display to be slow to reflect changes to tuner settings.
Changed the max size of the sample queue based on the highest rate tuner
sample rate 10 MHz (airspy) and the lowest available spectral update
frame rate (12). Sized the buffer queue based on the maximum number of
buffers that should be available per DFT processing iteration. If the
queue backs up, new buffers will be discarded until the DFT processor
consumes the queue and catches up.
2016-02-26 06:35:03 -05:00
denny
399d164bd0
Resolves #57 - default tuner configuration per tuner type was being
...
shared across multiple tuners of the same type, unless the user created
a new tuner configuration for each tuner.
Updated code to create a default tuner configuration based on the tuner
type, but name the configuration as 'Default-UNIQUETUNERID', so that any
changes to that uniquely identified tuner will persist across sessions.
Note: this does not avoid the situation where multiple tuners of the
same type are all using the same default serial number (e.g. 0000001).
In this case, they will all still share the same configuraiton. User
must change the serial number of the dongle in order for it to be
uniquely identifiable, so that we can correctly lookup the configuration
for the specific tuner.
2016-02-26 06:07:21 -05:00
denny
6f2a7e89a9
Resolves issue with RTL2832 Tuner cancelling transfer buffers that
...
haven't yet been initialized. This occurs when there is a channel
allocated from the tuner that is the first/only listener and then is
immediately released. Some of the buffers are in motion and the others
simply haven't yet been initialized.
2016-02-22 20:49:20 -05:00
denny
a807ff5c07
Resolves issue with RTL2832 tuner where we attempt to cancel transfers
...
that have not yet been initialized.
2016-02-22 20:47:40 -05:00
denny
e5004f9fa6
Work in progress - updates to alias and alias ID editors.
2016-02-21 20:02:27 -05:00
denny
bd09911e68
Alias updates to allow JAXB persistence
2016-02-21 05:45:54 -05:00
denny
ca2b12b868
Merges master 88d3088
2016-02-20 17:56:28 -05:00
denny
7ff9e9a7ce
Merges master 894ebeb - patch to audio playback where audio output
...
channels were locking up after a period of time
2016-02-20 17:54:35 -05:00
denny
7da541ed06
Merges master a7da60c - TDU message text
2016-02-20 17:46:38 -05:00
denny
d90684dbdc
Merges master be7ab87 patch to audio metadata
2016-02-20 17:45:18 -05:00
denny
9286fdf42d
Merges cdcc487 from master
2016-02-20 17:42:07 -05:00
denny
b821588e54
Removes debug message from trafficchannelmanager
2016-02-20 17:20:15 -05:00
denny
62aca27e66
Resolves issue with resetting audio metadata between traffic channel
...
reuse.
2016-02-20 10:26:50 -05:00
denny
cdcc487095
Resolves potential threading issue in tuner channel source.
2016-02-20 10:21:47 -05:00
denny
d5b6589e36
Updates build to 0.2.0 beta 7
2016-02-20 10:05:22 -05:00
denny
be7ab871d1
Resolves issue with audio metadata updates that was causing the audio
...
playback panel to not detect changes in FROM/TO values for the current
audio playback.
2016-02-20 09:55:39 -05:00
denny
294a830aaf
Updates TDU message decoded message text.
2016-02-20 08:54:02 -05:00
denny
a7da60cd27
Resolves issue with audio playback where audio playback stops working.
...
Potential existed for the audio output class to become unsynchronized
with the underlying source data line and attempt to perform a blocking
write to the data line when the data line doesn't have the capacity to
accept the full buffer, and the data line is not started. Thus,
playback could potentially stay in a persitent blocked state.
Refactored Mono and Stereo audio output implementations to push the
audio buffer queue processing into the parent abstract class.
AudioManager was updated to remove the last time active timestamp out
of the audio manager and down into the audio output to remove duplicate
timestamp accounting.
2016-02-20 08:53:09 -05:00
denny
894ebeb040
Removes logging of C4FM filter coefficients.
2016-02-19 21:03:34 -05:00
denny
682fe0c779
Updates linux launch script to allow clean exit on program exit.
2016-02-15 21:06:20 -05:00
denny
62c5265bce
Updates launch script to allow clean exit on program termination.
2016-02-15 21:05:08 -05:00
denny
1687ca2c4b
Updated data state default color setting
2016-02-15 20:29:46 -05:00
denny
5ee4a48ab3
Resolved issue with duplicate properties saves
2016-02-15 20:23:01 -05:00
denny
c8328b3eff
Channel editor and sub editors updates.
2016-02-15 20:12:23 -05:00
denny
691e4c3383
merges master commit 94d85f6 to persist FFT size.
2016-02-15 20:11:53 -05:00
denny
5573b9a9fb
Changes audio timeout from 2 seconds to 1
2016-02-15 16:01:06 -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
88d3088ebc
Resolves issue with concurrent access of channel panels in channel list
2016-02-15 14:58:07 -05:00
denny
dc3390460a
Updates build to beta.6
2016-02-15 10:01:11 -05:00
denny
8db226cd7b
Adds broadcasting of unknown P25 message types. If a P25 message passes
...
the NID crc check but uses an unrecognized data unit id, it will now be
broadcast as NID:UNKN, but allows for detection of new DUID types when
we have a large number of occurances of unknonwn duid types.
2016-02-15 10:00:29 -05:00
denny
b7a54598b1
Changes audio panel call timeout from 2 seconds to 1 second in order to
...
increase audio output cycle time.
2016-02-15 09:59:04 -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
e7d3713791
Removes message broadcaster from Decoder abstract class -- processing
...
chain has a message broadcaster built in, so the decoder's broadcaster
is redundant. Changes Decoder(s) to only have a single registered
message listener (ie processing chain)
2016-02-15 07:32:26 -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
3f674c0b8f
Revert "Updates."
...
This reverts commit 0e01381935f0630fa8e1755d7c9c7fbeed7ae746.
2016-02-13 15:07:52 -05:00
denny
5071205e73
Updates.
2016-02-13 15:07:02 -05:00
denny
37a93c8884
Merges master onto development branch
2016-02-13 15:05:45 -05:00
denny
12ff5513b7
Adds preliminary support for legacy P25 CAI VSELP voice frames. VSELP 1
...
and 2 messages simply capture the message at this point -- don't yet
know the format for the voice frames and embedded signalling.
2016-02-13 15:04:10 -05:00
denny
bca39e74ce
Work in progress - more updates to the alias controller and alias editor
...
panels.
2016-02-13 15:04:10 -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
denny
7d1ec344de
Work in progress - updates channel component editors and changes
...
functionality so that the editor starts up without a channel displayed
and as each channel row is selected in the channels table, the editor is
updated with the channel configuration.
Likewise, the channel editor is now a channel event listener on the
channel model and will maintain channel state if the user changes
channel configuration in any of the external channel controllers like
the spectral display or the channel list.
2016-02-13 14:57:13 -05:00
denny
4be63d4b95
Work in progress.
...
-Started work on new channel editor channel viewer/controller
-Removed a number of unused buffer package classes
-Moved automatic frequency control to be a module and removed special
handling
-Added IUnfilteredRealBufferListener & Provider interfaces
-Completely removed the ResourceManager class
2016-02-13 14:57:12 -05:00
denny
c405ddad96
Work in progress - program compiles and runs
2016-02-13 14:37:36 -05:00
denny
d8a20b5adb
Updating build to beta 5
2016-02-13 09:10:06 -05:00
denny
c670f1d855
Resolves issue with audio playback state becoming disconnected with
...
AudioManager connection class monitoring of the playback state. Adds a
line listener to monitor when the line is started/stopped and responds
accordingly.
Removes squelch control from mono and stereo audio playback components
which was a holdover -- squelch state is now managed within the
audio component for each processing chain.
2016-02-13 09:07:37 -05:00
denny
1dc0125ef4
Resolves issue with LTR standard calls - ending state was not monitoring
...
the correct channel number on call ends.
2016-02-12 20:54:14 -05:00
denny
225e747d6e
Updated README
2016-02-07 10:04:23 -05:00
denny
36f9953156
Updated README
2016-02-07 09:40:25 -05:00
denny
47c452e7e6
README update
2016-02-07 09:28:09 -05:00
denny
06c8bba97e
Updated README with version 0.2.0 wiki updates.
2016-02-07 09:26:25 -05:00
denny
a25bb83dea
Talkgroup ID Editor - updates help text in editor window
2016-02-06 09:34:13 -05:00
denny
8e11cb4554
Removes audio inversion from talkgroup id and editor. The audio
...
processing architecture will be updated in the next version and will
handle identifying and processing audio inversion on a per-alias basis.
2016-02-06 09:30:52 -05:00
denny
2892e4609e
Removes the 'No Tuner' color change sub-menu from the decoding channels
...
list. This is no longer a valid channel state since any decoding
channels that fail to get a tuner source will not be displayed.
2016-02-06 08:24:46 -05:00
denny
d6e161f3e9
Updating build to 0.2.0.beta4
2016-02-05 09:11:37 -05:00
denny
ba952af721
Added support for parsing additional Packet Data Unit unrecognized types
...
and removed logging of unrecognized PDUC messages.
2016-02-05 09:10:23 -05:00
denny
d9be346d7f
Added new message for Packet Data Unit Confirmed messages with unknown
...
PDUType.
2016-02-04 21:14:16 -05:00
denny
133adec27a
Adds support for PacketData messages that were being flagged as Packet
...
Data Unit - Confirmed unknown message types.
2016-02-04 20:51:13 -05:00
denny
981a8fec55
Removes logger from TrafficChannelManager that was logging when a
...
traffic channel is allocated but fails to get a source and is
subsequently torn down. Logging was ambiguous and unneeded.
2016-02-04 20:50:17 -05:00
denny
9c94266adb
Resolves issue with Audio Channel display showing a call in progress
...
with TO/FROM identifiers displayed, but no audio playing. This occurred
when the decoder sent a few audio buffers which caused the display to
update from the metadata, however the decoder stopped sending buffers
and the audio start threshold is never met. Clear display is invoked
upon audio stop, so the panel was never started or stopped or cleared
until the next call came in.
Changed to store the incoming metadata and only display it once the
audio playback starts and reset the display once the audio stops.
2016-02-04 20:49:11 -05:00
denny
4460f1ee30
Suppresses logging of attempts to change to invalid channel state. The
...
state enumeration is designed to block these attempts which can occur
when a non-standard call sequence of events occurs, normally due to
intermittent decoding.
2016-02-02 20:14:33 -05:00
denny
ddfefe4b85
Resolves issue with ChannelState FADE monitor - changes from
...
starting/stopping the monitor for each call to simply leaving the
monitor task running continuously. Was causing issue with scheduled
thread executor not shutting down the task in a timely manner -- new
approach should avoid start/stop related issues altogether.
Updates P25DecoderState with reordering of timing of when we send
updates for the TO/FROM identifiers so that the audio manager receives
up-to-date metadata and hopefully resolves issue with 'Do Not Monitor'
talkgroups being monitored by the audio manager.
Updates the AudioManager with a try/catch block around the processing
task so that we can catch any audio processing exceptions that occur
during the timer task and might get suppressed by the scheduled thread
executor.
2016-02-02 19:44:18 -05:00
Denny Sheirer
debdc39a5f
Resolves threading issue in ChannelState.
...
Resolves issue in tuner controller where controller was not releasing
sourced tuner channels, preventing re-tuning to other frequencies.
Resolves issue with channel timeout on MPT1327 monitored traffic
channels
2016-02-01 09:17:56 +00:00
Denny Sheirer
6f76f6fca4
Resolves issue with Tuner retaining released TunerChannels, preventing
...
the tuner from sourcing additional out-of-band channels.
2016-01-30 16:58:52 +00:00
denny
1290b8c4d3
Adds VSELP message and unknown Data Unit ID handling to P25 decoder.
2016-01-28 19:18:05 -05:00
denny
b95b3ff415
Updated readme
2016-01-23 21:19:54 -05:00
denny
3e8db5b216
Updates version 0.2.0 build to beta.3
2016-01-23 14:41:01 -05:00
denny
f0c11f2590
Cleanup.
2016-01-23 14:39:52 -05:00
denny
99a5fc9bcf
Closes issue #46 . Removes the recordings tree node from the
...
configuration controller until such time that it can be fully
implemented. Existing skeleton framework was a placeholder that did not
materialize.
2016-01-23 14:38:02 -05:00
denny
f5fadc5004
Stores selected audio output mixer name and channels (mono/stereo) to
...
system properties so settings are loaded on startup.
2016-01-23 14:28:21 -05:00
denny
c922029233
Adds capability to persist spectral display fft size and frame rate
...
between sessions.
2016-01-23 14:07:01 -05:00
denny
94d85f636d
Resolves Audio issues (underwater/overlapping audio buffers).
...
Redesigned audio manager handling of audio outputs to ensure that only
one channel's audio can be routed to an audio output at a time.
Changed audio outputs to use the shared thread pool manager for
scheduled tasks, instead of creating a thread pool for each audio
output.
2016-01-23 10:19:47 -05:00
denny
1db6779dec
Audio outputs - added exception handler to catch any errors that occur
...
while the buffer processor thread is running.
Added check for 0 space available in data line buffers to avoid trying
to write a zero-length audio chunk to the data line.
Added thread sleep for 100 milliseconds when we detect that the data
line buffer is full, to allow time for the data line to drain before we
check it again. Hopefully this should minimize the chattering during
playback when the code was repeatedly hitting the available() method to
check for space availability.
2016-01-22 16:35:18 -05:00
denny
676d26f4d8
Updated default color for data channel state
2016-01-22 16:31:59 -05:00
denny
abca4ebbd7
Updated to use concurrent containers to avoid concurrent modification
...
exceptions.
2016-01-22 16:30:58 -05:00
denny
cffc6b6eed
Updates TDMA synchronization broadcast message to ICD
2016-01-22 10:39:09 -05:00
Denny Sheirer
39ebec78a8
Updates channel type description for TDMA channels.
2016-01-19 04:06:20 +00:00
Denny Sheirer
4066a4b3c3
Adds TDMA channel IdentifierUpdate message parsing.
2016-01-19 04:00:18 +00:00
denny
c12f535f3c
Issue #47 - work in progress
2016-01-18 04:53:49 -05:00
denny
810bb7384e
Closes #42 - ltr standard call state was not accurately tracking call
...
state.
Note: a related issue described in ticket #42 involves issues with the
audio output module. A new ticket will be opened with that issue.
2016-01-17 19:42:13 -05:00
denny
0c5692cb1e
Closes issue #44 . Creates /sdrtrunk folder within the .zip and .tar.gz
...
output products so that upon extracting the contents they are contained
within the /sdrtrunk folder.
2016-01-15 10:37:45 -05:00
denny
663378ad20
Logging cleanup
2016-01-15 09:50:10 -05:00
denny
5807bb191e
Resolved issue with loading 'loading.png' image file for the map
2016-01-15 09:49:43 -05:00
denny
ab9ef2d8cc
Updated build script internal variable naming.
2016-01-01 10:20:10 -05:00