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.
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.
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.
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.
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.
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.
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.