Releases: f4exb/dsdcc
Fix Golay_20_8 parity correction and index out of range
Maintenance release
Removed leftover debug message in QR_16_7_6::decode
Removes flooding debug message possibly only for DMR.
Fixed Golay(23,12) syndrome LUT
There was still an issue with the Golay(23,12) syndrome LUT missing a few values. However it does not appear that Golay(23,12) is effectively used.
Fixed some FEC codes decoding errors
Fixed some FEC codes decoding errors
Fixed syndrome lookup table based decoder errors when bit flips occur in the parity bits. The fix could benefit to DMR, YSF and dPMR modes.
Tolerate mismatching symbols in sync sequence
Tolerate mismatching symbols in sync sequence
This concerns all modes and allows to be more flexible on the synchronization sequence that will tolerate some mismatching symbols. For now the rule depends on the number of symbols in the sequence and is the following:
- less than 24 symbols: 1 symbol tolerance (NXDN, YSF, dPMR: some)
- greater or equal to 24 symbols: 2 symbols tolerance (DMR, D-Star, dPMR: some, P25: unused, X2-TDMA: unused, Pro-Voice: unused)
Thus it may be able to capture more frames in adverse conditions but is also exposed to some false positives. This is a compromise and you can also filter the desired mode(s). In general it will achieve better decodes. This is a rather important change hence the middle version upgrade.
Other changes
- DMR BP: apply XORing only to the first 49 bits of the AMBE frame (data bits). But this does not seem to fix it. DMR BP may be remove in the next revision(s).
DMR basic privacy
Fixed zero divide in race conditions
Fixed zero divide in race conditions
In DSDSymbol::pushSample
the m_count
variable could be zero if some other thread resets it. In case it is zero it means the symbol sequence should be restarted. This should fix a possible program crash that was detected in SDRangel (issue: f4exb/sdrangel#406). In DSDcc this should fix #24
Issue when changing decode mode
When changing decode mode with DSDDecoder::setDecodeMode
the state was not re-initialized properly resulting in the decoder being stuck in the previous mode. In consequence when changing baud rate in SDRangel the decoder could not detect the modes relevant to the new baud rate.
NXDN: corrected messages display
- NXDN: corrected messages display
- Various changes in cmake build for Mac O/S and clang compatibility
MSVC compatibility
Put in place the export logic for compatibility with MSVC compilers.