feat: add qbz-dsd crate (DSF/DFF demux, DSD to PCM, DoP, native DSD)

New frontend-agnostic crate for DSD support. In-house DSF and DFF
demuxers (up to 5.1, DST rejected with a typed error), embedded ID3
tags and artwork via the id3 crate, a verbatim BSD port of Sebastian
Gesemann's dsd2pcm table engine plus a half-band decimation chain
(uniform 88.2 kHz output, ITU stereo downmix for multichannel), DoP
frame packing per the DoP 1.1 standard (marker alternation, 0x69
silence), and native DSD_U32 packing (BE/LE) for kernel-granted
devices. 20 tests over synthesized fixtures.

cc
This commit is contained in:
vicrodh committed 2026-07-03 17:56:26 -06:00
1 parent a7f538b3de
commit 1cc1b3d922
11 files changed
+1670

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
[package]
name = "qbz-dsd"
version.workspace = true
edition.workspace = true
license.workspace = true
description = "DSD (DSF/DFF) demuxing and DSD-to-PCM conversion"
[dependencies]
thiserror = { workspace = true }
log = { workspace = true }
id3 = "1"