DpdoPlayerEngine — DSD オーディオプレイヤー
概要
DpdoPlayerEngine は DSD 再生に最適化された CLI オーディオプレイヤーです。ネイティブ DSD 出力と DoP (DSD over PCM) の 2 つの転送モードをサポートし、さまざまな USB DAC および DSD デコーダーと互換性があります。
仕様一覧
| 仕様 | 値 |
|---|---|
| オーディオフォーマット | DSD(DSF / DFF / DST / WSD)· SACD ISO · DTS / DTS-WAV · PCM(WAV / AIFF / FLAC)· ALAC / TTA / WavPack / APE · CUE |
| 転送モード | ネイティブDSD出力 / DoP (DSD over PCM) / DSD→PCM デコード再生 |
| 出力モード | standard / differential / BTL |
| チャンネルレイアウト | ステレオ / マルチチャンネルパススルー / カスタムマッピング |
| ストリームモード | 低遅延 (-stream) |
| プラットフォーム | 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
最も簡単な再生:
# 単一 DSF ファイルの再生
DpdoPlayerEngine track.dsf
# DFF ファイルの再生
DpdoPlayerEngine track.dff
デバイス設定
-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
# differential 出力
DpdoPlayerEngine track.dsf -mode differential
# BTL ブリッジモード
DpdoPlayerEngine track.dsf -mode btl
モード説明
| モード | 説明 | 用途 |
|---|---|---|
standard | 標準シングルエンド出力 | 一般的な互換モード |
differential | チャンネルごとに反転ペアの差動出力 | バランス DAC |
btl | BTL ブリッジ負荷、反転駆動 | 高出力 |
DoP モード (DSD over PCM)
-dop で DSD-over-PCM 動作を制御します:
# DoP またはネイティブ DSD を自動選択
DpdoPlayerEngine track.dsf -dop auto
# DoP 強制
DpdoPlayerEngine track.dsf -dop force
# ネイティブ DSD 強制
DpdoPlayerEngine track.dsf -dop native
DoP が実際に通るかはデバイス側の証拠で判定します:176400 を排他で開けても DoP を解せるとは限りません —— オンボードのコーデックには DSD 経路が回路として存在せず、DoP を流してもマーカーが普通の PCM として鳴るだけ(ヒスが聞こえます)。不可と判定した端点では -dop force は拒否され、自動的に DSD→PCM 再生に切り替わります。GUI(DpdoPlayer)のデバイス一覧には判定が表示され(⟨DoP 2x⟩ / ⟨DoP 1x⟩ / ⟨DoP 未確認⟩ / ⟨PCM のみ⟩)、判定が不確かなデバイスは「DSD デコーダーとしてマーク」で登録できます。
DoP オプション
| 値 | 説明 |
|---|---|
auto | デバイス能力を自動検出、最適な転送を選択 |
force | DoP カプセル化を強制 (DSD を 24-bit PCM フレームに内包) |
native | ネイティブ DSD 転送を強制 (デバイス対応が必要) |
ヒント: 最近の USB DAC のほとんどはネイティブ DSD に対応しています。
nativeを先に試し、ノイズや無音が聞こえたらforceに切り替えてください。
ボリュームコントロール
-vol で再生ボリュームを設定します (パーセント):
# ボリューム 80% に設定
DpdoPlayerEngine track.dsf -vol 80
# 最大ボリューム
DpdoPlayerEngine track.dsf -vol 100
ボリューム範囲: 0–100、デフォルトはデバイス初期設定に依存します。
ボリュームはデバイス側(Linux = ALSA ハードウェアミキサー、Windows = エンドポイント音量)で直接変更します。ホスト側ではデジタル減衰を行いません —— 1-bit DSD にソフトウェア乗算をかけると劣化します。
-volを指定しない場合、デバイスの音量は一切変更されません。-vol 100はデバイス音量を最大にします。
DSD → PCM デコード再生
-pcm モードにより、DSD ネイティブ非対応の DAC でも DSD ファイルを再生できます。再生中に Pdm2Pcm がリアルタイムで PCM にデコードします。
# 自動レートでデコード再生 (DSD/64 または DSD/32)
DpdoPlayerEngine track.dsf -pcm
# デコードレートを明示指定
DpdoPlayerEngine track.dsf -pcm 352800
# 16-bit 出力
DpdoPlayerEngine track.dsf -pcm -pcm-bits 16
-pcm [rate]— DSD→PCM デコード再生を有効化。rate 0(省略)= 自動(DSD/64 または DSD/32)-pcm-bits <16|24|32>— 出力ビット深度。既定 24-bit。内蔵ノイズシェイピングが量子化ノイズを高域へ押し上げ、聴感が大幅に向上
ヒント: 24-bit + ノイズシェイピングは音質と互換性の最適点。16-bit は旧型機器向け、32-bit は後段の処理チェーン向けです。
ストリームモード
-stream で低遅延ストリーミングを有効にします:
# ストリームモード再生
DpdoPlayerEngine track.dsf -stream
ストリームモードの特徴
- 低遅延 — オーディオバッファ削減
- リアルタイム再生 — パイプ入力のライブモニタリングに最適
- 自動適応 — システム性能に応じてバッファを動的調整
DpdoEngine パイプとのリアルタイム変換再生
# リアルタイム PCM → DSD 変換を DpdoPlayerEngine で再生
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
トラブルシューティング
音が出ない
- DAC の接続とシステム認識を確認
-dev listで正しいデバイスを選択- DoP モード切替を試す:
-dop auto→-dop force(DSD 経路のない端点ではforceは自動的に DSD→PCM に切り替わります) - ボリュームを確認:
-vol 100
再生中のノイズ/ポップ
- ネイティブ DSD でノイズが出る場合は DoP を試す:
-dop force(ただしオンボードなど DSD 経路のない端点では使わないでください。ヒスが出るだけです —— プレーヤーが自動で止め、DSD→PCM に切り替えます) - USB ケーブルの品質と接続安定性を確認
- より低い DSD 仕様を試す (例: DSD256 の代わりに DSD128 ソース)
デバイスが一覧に表示されない
- OS に DAC ドライバーがインストールされているか確認
- Linux で ALSA 設定を確認
- USB 接続を確認
GUI 版について

上:プレーヤー GUI(DpdoPlayer)。パッケージャとオーディオツールの GUI は各製品ページにあります。
DpdoPlayer を選ぶ理由
DSD を再生するだけなら他のソフトでもできます。DpdoPlayer は次の点を具体的に作り込んでいます(すべて検証可能な実装です):
- DSD ネイティブ出力と確実なフォールバック:native / DoP を優先。DSD 非対応の DAC でも PDM2PCM のリアルタイムデコードで再生できます。ミキシングが必要な構成では自動的にデコード再生へ切り替え、ログに明記します。
- 複数 DAC を前提にした設計:1 台 1 チャンネル(差動/バランス、BTL)でも、多チャンネル DAC でも。デバイス↔チャンネルの対応は設定可能で、配線どおりに構成できます。
- 設定できるチャンネル構成、決して黙って変えない:ミックス行列 + ミックス音量(プリセット direct / bs775 / all-channel-stereo、または自作
*.json、GUI と CLI で同じ 1 つの構成)。不正な構成(未知のチャンネル名・係数の範囲外・長さの不一致)は再生を拒否します。 - 聴く前にクリップが分かる:実測スキャンが現在の構成で素材全体を通し、各チャンネルのピーク・クリップの有無・0 dBFS に収める混合音量を報告します。
- ビットパーフェクトなルーティング:チャンネル分離は 1 サンプルも変えず、既定のリミッター/AGC/ラウドネス正規化もありません。レベルが動くのは実際にミックスする時だけで、係数は静的で再現可能です。
- 対応フォーマット:DSD(DSF / DFF / WSD / DSD-raw)、SACD ISO(DST 展開を含む)、DTS / DTS-WAV、PCM(WAV / AIFF / FLAC)、CUE(ギャップレス)。
- 音量はデバイス側で調整し、サンプルには触れません(1-bit DSD にソフトウェア乗算をかけると非可逆)。Windows は ASIO / WASAPI 排他、Linux は ALSA、エンジンは両者共通です。