C++ library for decoding digital speech
Top 88.4% on sourcepulse
DSDcc is a C++ library for digital voice decoding, offering a complete rewrite of the original DSD project. It targets developers integrating speech decoding into applications like SDRangel, providing a cleaner, library-centric API. The primary benefit is a more flexible and embeddable decoder for various digital radio standards.
How It Works
DSDcc operates by pushing audio samples to a central DSDDecoder
object, facilitating library integration. It processes samples to extract symbols and then decodes various digital voice formats (DMR, D-Star, dPMR, YSF) using specialized objects. An optional mbelib
wrapper handles AMBE frame decoding and audio output, with support for upsampling to 48 kHz.
Quick Start & Requirements
cmake
and make
.mbelib
for full audio decoding (optional, compile with -DUSE_MBELIB=ON
).SerialDV
(requires separate installation).socat stdout udp-listen:9999 | dsdccx -i - -fa -o - | play -q -t s16 -r 8k -c 1 -
dsdccx -h
Highlighted Details
mbelib
dependency for AMBE decoding, with clear patent warnings.dsdccx
supports piping and integration with serial devices like ThumbDV.Maintenance & Community
master
, dev
).Licensing & Compatibility
mbelib
usage may involve DVSI Inc. patents; users must assess their jurisdiction.Limitations & Caveats
mbelib
usage carries potential patent infringement risks and requires separate installation.1 year ago
1 week