DpdoPlayerEngine — DSD аудиоплеер

Обзор

DpdoPlayerEngine — командный аудиоплеер, оптимизированный для DSD. Поддерживает нативный вывод DSD и DoP (DSD over PCM), совместим с широким спектром USB DAC и DSD-декодеров.

СпецификацияЗначение
ПлатформыWindows / Linux / macOS
Версия6.75.0

Базовое использование

DpdoPlayerEngine <audio_file> [options]
	

Поддерживаемые форматы: - DSD: DSF (.dsf) / DFF (.dff) / DST-сжатые DSF/DFF (автораспаковка при воспроизведении) / WSD (.wsd, Korg, с 6.70.0) / SACD ISO (.iso, с распаковкой DST) - DTS: .dts / DTS-WAV (ядро 2.0–5.1) - PCM: WAV / AIFF / AIFC / FLAC - Без потерь: ALAC (.m4a / .mp4) / TTA (.tta) / WavPack (.wv) / APE (.ape) - Плейлисты: CUE (без пауз) - Пока не поддерживается: MP3 / AAC / OGG

Простейшее воспроизведение:

DpdoPlayerEngine track.dsf
	DpdoPlayerEngine track.dff
	

Воспроизведение с декодированием DSD → PCM

-pcm позволяет воспроизводить DSD даже на ЦАП без нативной поддержки: Pdm2Pcm декодирует в реальном времени в PCM.

# Автоматическая частота (DSD/64 или DSD/32)
	DpdoPlayerEngine track.dsf -pcm
	
	# Явная частота декодирования
	DpdoPlayerEngine track.dsf -pcm 352800
	
	# Вывод 16 бит
	DpdoPlayerEngine track.dsf -pcm -pcm-bits 16
	
  • -pcm [rate] — воспроизведение с декодированием DSD→PCM; rate 0 (опущено) = автоматически
  • -pcm-bits <16|24|32> — разрядность вывода, по умолчанию 24 бит; встроенный шейпинг шума заметно улучшает звучание

Конфигурация устройства

-dev выбирает устройство вывода:

# Список устройств
	DpdoPlayerEngine track.dsf -dev list
	
	# По ID
	DpdoPlayerEngine track.dsf -dev 1
	
	# По имени
	DpdoPlayerEngine track.dsf -dev "USB Audio DAC"
	

Пример списка:

Available audio devices:
	  0: Default Output
	  1: USB Audio DAC (ALSA)
	  2: HDMI Audio Output
	

Схема каналов

-layout настраивает сопоставление каналов:

# Стерео
	DpdoPlayerEngine track.dsf -layout stereo
	
	# Многоканальный сквозной режим
	DpdoPlayerEngine track.dsf -layout multichannel
	
	# Своё сопоставление (левый → выход 1, правый → выход 2)
	DpdoPlayerEngine track.dsf -layout "1,2"
	

Варианты

ЗначениеОписание
stereoстандартное стерео
multichannelмногоканальный сквозной
reverseперестановка каналов
monoмоно-микс
customсвоё сопоставление

Режим воспроизведения

-mode задаёт режим вывода:

DpdoPlayerEngine track.dsf -mode standard
	DpdoPlayerEngine track.dsf -mode differential
	DpdoPlayerEngine track.dsf -mode btl
	
РежимОписаниеПрименение
standardстандартный одностороннийобщая совместимость
differentialдифференциальный, пара с инверсией на каналбалансные DAC
btlмостовой режим BTLвысокая мощность

DoP (DSD over PCM)

-dop управляет поведением DoP:

DpdoPlayerEngine track.dsf -dop auto
	DpdoPlayerEngine track.dsf -dop force
	DpdoPlayerEngine track.dsf -dop native
	

Реально ли работает DoP, решают свидетельства со стороны устройства: возможность открыть 176400 в эксклюзивном режиме не означает, что эндпоинт декодирует DoP — у встроенного кодека DSD-пути нет аппаратно, и DoP там звучит как обычный PCM (слышно шипение). На эндпоинтах, признанных непригодными, -dop force отклоняется и воспроизведение автоматически переходит на DSD→PCM; в интерфейсе (DpdoPlayer) вердикт виден прямо в списке устройств (⟨DoP 2x⟩ / ⟨DoP 1x⟩ / ⟨DoP не подтверждено⟩ / ⟨только PCM⟩), а неподтверждённое устройство отмечается одним щелчком — «пометить как DSD-декодер».

ЗначениеОписание
autoавтоопределение возможностей устройства
forceпринудительная инкапсуляция DoP (DSD в 24-бит PCM-кадрах)
nativeнативная передача DSD (требуется поддержка устройства)

Совет: большинство современных USB DAC поддерживают нативный DSD. Сначала native; при шуме или тишине переключитесь на force.


Громкость

-vol задаёт громкость (проценты):

DpdoPlayerEngine track.dsf -vol 80
	DpdoPlayerEngine track.dsf -vol 100
	

Диапазон: 0–100. По возможности используйте аппаратную громкость DAC — цифровая теряет часть динамического диапазона.


Потоковый режим

-stream включает низкозадержанный стриминг:

DpdoPlayerEngine track.dsf -stream
	
  • низкая задержка (уменьшенный буфер)
  • реальное время (мониторинг через pipe)
  • автоадаптация буфера

Конвертация в реальном времени через pipe

DpdoEngine -i input.flac output.dsf --oversampling 64 --pipe | DpdoPlayerEngine - --vol 80
	DpdoEngine --record recording.dsf --pipe | DpdoPlayerEngine - --stream
	

- означает чтение из stdin.


Полные примеры

# Высококачественная конфигурация
	DpdoPlayerEngine sacd_track.dsf \
	  -dev "USB DAC" \
	  -layout stereo \
	  -mode differential \
	  -dop native \
	  -vol 85
	
	# Многоканальный нативный DSD
	DpdoPlayerEngine multichannel.dsf \
	  -dev 1 \
	  -layout multichannel \
	  -mode standard \
	  -dop native
	
	# Низкозадержанный стриминг
	DpdoPlayerEngine live_recording.dsf \
	  -stream \
	  -dev 0 \
	  -vol 70
	

Устранение неполадок

Нет звука

  1. Проверьте подключение и распознавание DAC
  2. -dev list — выберите правильное устройство
  3. Переключите DoP: -dop auto → -dop force (на эндпоинте без DSD-пути force автоматически перенаправляется на декодирование DSD→PCM)
  4. Проверьте громкость: -vol 100

Шум/щелчки

  1. При шуме в нативном режиме попробуйте DoP: -dop force; но не используйте DoP на эндпоинтах без DSD-пути (встроенная звуковая карта даст только шипение) — плеер это блокирует и переходит на DSD→PCM
  2. Проверьте USB-кабель и соединение
  3. Попробуйте более низкую спецификацию DSD

Устройство не отображается

  1. Проверьте драйверы DAC в ОС
  2. Linux: проверьте настройки ALSA
  3. Проверьте USB-подключение

Версия с графическим интерфейсом (GUI)

DpdoPlayer GUI

Выше: интерфейс плеера (DpdoPlayer). GUI упаковщика и аудиоинструментов — на их страницах.

Почему DpdoPlayer

DSD воспроизводят и другие программы; DpdoPlayer конкретен в следующем (это проверяемое поведение, а не реклама):

  • Прямой вывод DSD и надёжный резерв: сначала native / DoP; ЦАП без поддержки DSD всё равно играет DSD через декодирование PDM2PCM в реальном времени, а схема, требующая микширования, автоматически переключается на декодирование и сообщает об этом в журнале.
  • Несколько ЦАП — штатный режим: по одному ЦАП на канал (дифференциальный/балансный, BTL) или один многоканальный ЦАП; соответствие устройство↔канал настраивается — как проложены кабели, так и настраивается.
  • Настраиваемые схемы каналов, которые не врут: матрица микширования + усиление микса (пресеты direct / bs775 / all-channel-stereo или свой *.json; GUI и CLI используют одну схему). Некорректная схема (неизвестное имя канала, коэффициент вне диапазона, несовпадение длины) отказывается воспроизводиться.
  • О клиппинге известно до прослушивания: измерение прогоняет весь материал через текущую схему и сообщает пик по каналам, наличие клиппинга и усиление микса до ровно 0 dBFS.
  • Бит-перфектная маршрутизация: разделение каналов не меняет ни одного сэмпла, без лимитера, AGC и нормализации громкости по умолчанию; уровень меняется только при реальном микшировании, коэффициенты статичны и воспроизводимы.
  • Форматы: DSD (DSF / DFF / WSD / DSD-raw), SACD ISO (с распаковкой DST), DTS / DTS-WAV, PCM (WAV / AIFF / FLAC), ALAC (M4A / MP4) / TTA / WavPack / APE, CUE (без пауз).
  • Громкость применяется на устройстве, а не к сэмплам (умножение 1-битного DSD в софте необратимо); ASIO / WASAPI exclusive в Windows, ALSA в Linux, один и тот же движок.