DpdoEngine — PCM 到 DSD 高精度轉換引擎
概述
DpdoEngine 是 Dpdo 產品套件的核心,負責將 PCM 音頻(FLAC、WAV、AIFF 等)轉換爲 DSD 格式(DSF、DFF、DST)。它採用全 64 位雙精度浮點運算、可配置的高階 IIR/FIR 噪聲整形濾波器,以及豐富的 DSP 工具,爲專業音頻工作者和發燒友提供從消費級到發燒級的多級轉換質量選擇。
規格速覽
| 規格 | 參數 |
|---|---|
| 輸入格式 | WAV / FLAC / AIFF / ALAC 等 PCM |
| 輸出格式 | DSF / DFF / DST |
| 計算精度 | 64 位雙精度浮點 |
| 噪聲整形 | 3–11 階 IIR(默認 9 階);FIR(默認 4096 taps) |
| 上採樣 | 64x–4096x(默認 64x / DSD64) |
| 壓縮 | DST 無損編解碼(體積減少 30–50%) |
| GPU 加速 | OpenCL 1.2+ |
| 平臺 | Windows / Linux / macOS |
| 當前版本 | 6.66.0 |
基本用法
DpdoEngine -i INFILE OUTFILE [OPTIONS]
強制參數:
- -i INFILE — 輸入 PCM 文件(FLAC / WAV / AIFF 等)
- OUTFILE — 輸出文件路徑(自動根據擴展名推測格式:.dsf / .dff / .dst)
示例:
# 基礎轉換:WAV → DSF,64 倍上採樣
DpdoEngine -i input.wav output.dsf --oversampling 64
# FLAC → DFF,11 階 IIR 噪聲整形
DpdoEngine -i input.flac output.dff --oversampling 128 --order 11
# 完整參數:OpenCL 加速 + 元數據 + 報告
DpdoEngine -i input.flac output.dsf --oversampling 256 --order 7 --opencl --report --artist "Dpdo" --album "Demo"
上採樣率
通過 --oversampling 或 --oversampling 參數控制 DSD 上採樣率:
| 值 | 對應格式 | 典型帶寬 |
|---|---|---|
| 64 | DSD64 | ~30 kHz |
| 128 | DSD128 | ~60 kHz |
| 256 | DSD256 | ~120 kHz |
| 512 | DSD512 | ~240 kHz |
| 1024 | DSD1024 | ~480 kHz |
| 2048 | DSD2048 | 極高帶寬 |
| 4096 | DSD4096 | 極限規格 |
更高的上採樣率帶來更寬的頻響和更低的帶內噪聲,同時對計算資源的需求也線性增長。
噪聲整形方案
IIR 噪聲整形
--order 參數指定 IIR 噪聲整形器階數。支持的階數:3、5、7、9、11。
# 11 階 IIR(最高規格)
DpdoEngine -i input.wav output.dsf --oversampling 256 --order 11
高階 IIR 提供更陡峭的噪聲整形曲線和更大的帶內動態範圍,但對數值穩定性要求更高。11 階是 DpdoEngine 獨有的最高規格,在典型聽音頻帶內可實現 >140 dB 的信噪比。
子選項:
- --pole 8.5 — 極點配置,影響噪聲傳遞函數形狀
- --zero — 零點配置,進一步優化帶外噪聲分佈
- --mash — MASH 結構噪聲整形(多級噪聲整形)
- --cifb — CIFB(Chain of Integrators with FeedBack)結構
- --poly — 多項式噪聲整形器
FIR 濾波器
`` 啓用 FIR 濾波器模式:
# 使用 Kaiser 窗 FIR,自動計算最佳 taps
DpdoEngine -i input.wav output.dsf --oversampling 64
# 指定 taps 和濾波器類型
DpdoEngine -i input.wav output.dsf --oversampling 64 --taps 4096 --window-type kaiser
FIR 選項:
- --taps <N> — taps 數(默認自動計算,最小推薦 4096)
- --beta <V> / --beta <V> — Kaiser 窗參數
- --window-type <type> — 窗口類型:kaiser、blackman、flattop、bartlett、hamming、hanning、remez
GPU 加速
DpdoEngine -i input.wav output.dsf --oversampling 256 --opencl
--opencl 啓用 OpenCL GPU 加速,大幅減少高階上採樣的運算時間。適用於擁有支持 OpenCL 1.2+ 顯卡的系統。GPU 加速對 FIR 濾波和高階 IIR 的加速效果尤爲顯著。
高級信號處理
母帶預設
--mastering-preset 一鍵加載針對不同音樂類型的 DSP 鏈:
DpdoEngine -i input.wav output.dsf --oversampling 256 --mastering-preset classical
DpdoEngine -i input.wav output.dsf --oversampling 256 --mastering-preset pop
DpdoEngine -i input.wav output.dsf --oversampling 256 --mastering-preset jazz
均衡器
多段參量均衡器,在轉換前對 PCM 信號進行頻域調整:
DpdoEngine -i input.wav output.dsf --oversampling 128 --equalizer "80:0.5:3,1000:1.0:1,8000:-0.5:2"
格式:<頻率(Hz)>:<增益(dB)>:<Q值>,多個頻段用逗號分隔。
諧波飽和
在轉換過程中引入可控的偶次/奇次諧波:
# 軟削波飽和
DpdoEngine -i input.wav output.dsf --oversampling 128 --harmonics tanh,0.5
# 磁帶模擬飽和
DpdoEngine -i input.wav output.dsf --oversampling 128 --harmonics tape,0.3
支持類型:tanh、poly、softclip、fullwave、tape。
心理聲學噪聲整形
--psy 利用人耳聽覺掩蔽效應優化噪聲整形曲線,將量化噪聲分佈在聽覺不敏感的頻率區域,在較低上採樣率下也能獲得良好的主觀聽感。
動態範圍處理
--lufs -16 # 響度標準化到 -16 LUFS
--rg # ReplayGain 標準化
--lal # 前瞻限制器(Look-Ahead Limiter),防止削波
--apo # 削波濾波器
--adaptive # 自適應參數調整
元數據支持
轉換時嵌入元數據到輸出文件:
DpdoEngine -i input.flac output.dsf --oversampling 64 \
--artist "Artist Name" \
--title "Track Title" \
--album "Album Name" \
--genre "Classical" \
--year 2024
反向轉換(DSD → PCM)
DpdoEngine 同樣支持將 DSD 文件反向轉換爲 PCM:
DpdoEngine -i input.dsf output.wav --reverse
此功能利用和正向轉換相同的 64 位雙精度 DSP 引擎,確保反向轉換過程同樣保持最高精度。
分析報告
# 生成 PDF 分析報告
DpdoEngine -i input.wav output.dsf --oversampling 64 -pdfrp
# 頻譜圖生成
DpdoEngine -i input.wav output.dsf --oversampling 64 --spectrogram
# 噪聲分析
DpdoEngine -i input.wav output.dsf --oversampling 64 --noise-profiling
-pdfrp 生成包含轉換參數、頻率響應曲線、噪聲整形特性和頻譜分析的綜合 PDF 報告。
輸出格式
| 擴展名 | 格式 | 說明 |
|---|---|---|
.dsf | DSF | DSD Stream File,最通用的 DSD 格式 |
.dff | DFF | DSD Interchange File Format,廣播格式 |
.dst | DST | Direct Stream Transfer,帶無損壓縮的 DSD 格式 |