Grundig DSS-SP native decoder
Pure-Python, bit-exact decoder for Grundig .dss files (magic \x06dss, e.g.
the Digta 415) — the Grundig SP CELP variant that neither FFmpeg's dss_sp, the
Olympus-derived open codecs, nor NCH Switch decode correctly.
Reverse-engineered from Grundig's dss2wav.dll; output is byte-for-byte
identical to the reference on every test sample. The full story and the
recovered bitstream + synthesis spec are in
../docs/12-cracking-the-grundig-sp-codec.md.
Install
pip install grundig-dss # from PyPI (pure-Python, zero dependencies)
Usage
grundig-dss input.dss [output.wav] # console command (out defaults to the input stem)
# or, without installing:
python3 -m grundig input.dss output.wav
./decode.sh input.dss output.wav
from grundig import decode_dss, write_wav
pcm = decode_dss("recording.dss") # list[int], 16 kHz mono 16-bit
write_wav("recording.wav", pcm)
Files
| File | What |
|---|---|
grundig_dss.py |
the decoder (no Wine, no DLL, stdlib only) |
gtables.json |
quantization tables (reflection codebooks, gains, pulse/binomial tables, resample FIR) extracted from dss2wav.dll's .data |
decode.sh |
thin CLI wrapper |
Olympus DSS/DS2 files (\x02dss/\x03dss/\x03ds2) are handled by the main
chain, not this module.
Metadata
Release files for grundig-dss 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| grundig_dss-1.0.0.tar.gz | 22.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| grundig_dss-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.7 kB
Release files / grundig_dss-1.0.0.tar.gz
| Download URL | grundig_dss-1.0.0.tar.gz |
|---|---|
| Size | 22.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9c23f044dbfc2bb6488b7fd6f056cd54b2e2e67987b68e49e2a9b678ca45c6db
|
|
BLAKE2b-256 checksum How to use checksums |
f0233567e6b6d16e3a6a44c0c99104677451ea6984529f432eb06c40a9b52553
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|
Release files / grundig_dss-1.0.0-py3-none-any.whl
| Download URL | grundig_dss-1.0.0-py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
63b7ee2f2476a160778ab2155177bf79b5ca633f6c455085aa46b0ae17f06233
|
|
BLAKE2b-256 checksum How to use checksums |
bd7dd7ea9a52908f8615cd4e6450008dafbb857e53091700ccd3ce413173cff6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|
Security for grundig-dss 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.