Полное руководство по конвертации PCM в DSD: принципы, выбор параметров и практика
От PCM к DSD — это не просто смена формата файла: это полный процесс ресемплинга + шейпинга шума + модуляции. В этом руководстве каждый шаг объясняется на основе измеренных данных, а также приводятся готовые конфигурации DpdoEngine.
1. Что такое DSD и зачем конвертировать в него?
DSD (Direct Stream Digital) — 1-битный аудиоформат, разработанный Sony/Philips в конце 1990-х для SACD. В отличие от PCM, где амплитуда представлена многобитными отсчётами, DSD использует сверхвысокую частоту дискретизации 2,8224 МГц (DSD64) и представляет сигнал как 1-битный поток с импульсно-плотностной модуляцией (PDM) — плотность потока битов и есть амплитуда сигнала.
Зачем конвертировать PCM в DSD?
- Ориентация на тракт воспроизведения: современные ЦАП внутри построены по delta-sigma архитектуре — PCM на входе в любом случае в конечном счёте преобразуется внутри ЦАП в 1-битный поток, подобный DSD. Заблаговременная конвертация в DSD выполняет модуляцию на источнике, минуя вторичное преобразование внутри ЦАП.
- Экосистема SACD: образы SACD и некоторые плееры/программы принимают только форматы DSD (DSF/DFF).
- Слуховые предпочтения: некоторые слушатели считают спад высоких частот у DSD более мягким, а распределение шейпированного шума — более «аналоговым»; это, конечно, субъективно — далее в статье только данные измерений.
⚠️ Важная предпосылка: конвертация не создаёт информацию. Высокочастотной информации, которой нет в исходном PCM, после конвертации не появится. Цель конвертации — прозрачность: достоверно отобразить PCM в домен DSD с минимальными потерями. В этом и принципиальная разница между «чистым DSD» (нативные DSD-записи) и «конвертированным DSD»: первое — это DSD с этапа записи, второе — перевыражение PCM-материала.
2. Принцип конвертации PCM → DSD (три этапа)
Стандартная конвертация PCM→DSD состоит из трёх этапов:
1. Ресемплинг (оверсэмплинг)
Частота дискретизации PCM (44,1/96/192 кГц…) намного ниже выходного битрейта DSD (от 2,8224 МГц). Конвертер сначала должен выполнить высокократный ресемплинг, интерполируя отсчёты до целевого битрейта.
- DSD64 (2,8224 МГц) = 44,1 кГц × 64 → коэффициент оверсэмплинга OSR=64
- DSD128 (5,6448 МГц) = ×128 → OSR=128
- DSD256 (11,2896 МГц) = ×256 → OSR=256
Ключевой момент качества: конструкция фильтра ресемплинга напрямую определяет прозрачность конвертации и фазовую характеристику. FIR-фильтры (конечная импульсная характеристика) — основной выбор: чем больше taps, тем круче фильтр и лучше подавление в полосе задерживания, но тем больше вычислений. По умолчанию DpdoEngine использует FIR 4096 taps, настраивается на более высокие значения.
2. Шейпинг шума (Noise Shaping)
При понижении ресемплированного многобитного сигнала до 1 бита ошибка квантования порождает огромный шум. Шейпинг шума через петлю обратной связи выталкивает шум квантования в ультразвуковой диапазон (>20 кГц), нечувствительный для слуха, сохраняя отношение сигнал/шум в звуковой полосе.
- Порядок (order): 3/5/7/9/11. Чем выше порядок, тем сильнее подавление шума в полосе, но тем выше требования к стабильности модулятора и больше вычислений.
- Структуры: IIR (бесконечная импульсная характеристика) и FIR. IIR вычислительно эффективнее и даёт лучшие характеристики в полосе при том же порядке; FIR обладает линейной фазой и постоянной групповой задержкой — подходит для мастеринга, чувствительного к фазе.
- По умолчанию в DpdoEngine: IIR 7-го порядка; также доступны структуры MASH, CIFB, полиномиальная и другие.
3. Модуляция и вывод (1-битная модуляция)
Сигнал после шейпинга шума в итоге формируется в 1-битный поток PDM и упаковывается в контейнер DSF или DFF (опционально со сжатием DST без потерь — объём уменьшается на 30–50%).
3. Как выбрать параметры: практическая таблица решений
| Цель | Рекомендуемая конфигурация | Обоснование |
|---|---|---|
| Универсальное воспроизведение (стриминг/портативные устройства) | OSR 64, IIR 9-го порядка | Наилучшая совместимость с DSD64, шум в полосе уже очень низкий |
| Аудиофильское воспроизведение | OSR 128, IIR 11-го порядка | Выше частота + сильнейший шейпинг в полосе; удвоение объёма файла приемлемо |
| Мастеринг/архив | OSR 128–256, FIR | Линейная фаза; предсказуемая ошибка при многоступенчатой обработке |
| Слабый CPU | OSR 64, IIR 7-го порядка | Малые вычисления, приоритет реального времени |
| Упаковка многоканального SACD | OSR 64–128, IIR 9-го порядка + DST | Сжатие DST заметно уменьшает объём образа |
Шум в полосе: суть шейпинга шума — отодвинуть шум квантования дальше: чем выше порядок, тем ниже шумовой пол в полосе, тем выше пик вне полосы и тем круче кривая шейпинга. Разница между 7-м (по умолчанию) и 11-м порядком слышна в тихих фрагментах и высокочастотных деталях; конкретные результаты — по измерениям dsp_bench/thdn.
4. Практика: конвертация с помощью DpdoEngine
Базовая конвертация
# WAV → DSF (DSD64, IIR 7-го порядка по умолчанию)
DpdoEngine -i input.wav output.dsf --oversampling 64
# FLAC → DFF (DSD128, IIR 11-го порядка)
DpdoEngine -i input.flac output.dff --oversampling 128 --order 11
# Все параметры: ускорение OpenCL + метаданные + отчёт PDF
DpdoEngine -i input.flac output.dsf --oversampling 256 --order 7 \
--opencl --report --artist "Artist" --album "Album" --year "2026"
Пакетная конвертация
# Пакетно WAV → DSF (с помощью convert.sh)
cd каталог && bash convert.sh wav2dsf 128
Как проверить качество после конвертации
DpdoEngine формирует отчёт PDF (флаг --report) с параметрами конвертации и данными измерений. Продвинутая проверка:
# Измерить искажения и шумовой пол выходного файла с помощью thdn
thdn output.dsf
# Сравнить характеристики в полосе разных структур шейпинга шума через dsp_bench
dsp_bench --input test.wav --order 9 --order 11
5. Частые вопросы
Какой выбрать: DSD64/128/256? Сначала посмотрите, какой уровень поддерживают ваш ЦАП и тракт воспроизведения; если поддерживаются все, то 128 — баланс между звучанием и объёмом, у 64 самая широкая совместимость, а 256+ — для тех, кто гонится за пределом и не ограничен в хранении.
DSF или DFF? DSF — самый универсальный контейнер (хорошая поддержка метаданных, широкая совместимость со стримингом/плеерами); DFF — стандарт вещательной индустрии. Содержимое аудио не отличается — по умолчанию используйте DSF.
Нужен ли DST? DST — сжатие без потерь: экономия 30–50% объёма, полностью обратимо. Для архивного хранения или упаковки образов рекомендуется включать; если хотите максимально простую декодировку — можно не включать.
Влияет ли исходный PCM (44,1 или 96/192)? Влияет. Чем выше исходная частота дискретизации, тем меньше ошибка интерполяции на этапе ресемплинга. Источник 44,1 кГц тоже даёт хороший результат при конвертации в DSD128, но источник от 96 кГц чувствует себя увереннее на уровне DSD256.
Автор: Dpdo. Данные о качестве конвертации — по измерениям DpdoEngine 6.68; подробности параметров — в справочнике параметров.