PCM → DSD 완전 가이드: 원리, 파라미터 선택과 실전
PCM에서 DSD로 가는 것은 단순한 파일 포맷 변경이 아닙니다. 완전한 리샘플링 + 노이즈 셰이핑 + 변조 과정입니다. 이 가이드는 각 단계를 실측 데이터로 설명하고, 바로 사용할 수 있는 DpdoEngine 구성을 제시합니다.
1. DSD란 무엇이며, 왜 변환해야 하나?
DSD(Direct Stream Digital)는 Sony/Philips가 1990년대 후반 SACD를 위해 개발한 1-bit 오디오 포맷입니다. PCM이 다중 비트 샘플 값으로 진폭을 나타내는 반면, DSD는 2.8224 MHz(DSD64)의 초고속 샘플링 레이트로 1-bit 펄스 밀도(PDM)로 신호를 표현합니다. 비트스트림의 밀도가 곧 신호 진폭입니다.
PCM을 DSD로 변환하는 이유는?
- 재생 체인 정렬: 현대 DAC는 내부적으로 델타-시그마 아키텍처를 사용합니다. PCM 입력도 결국 DAC 내부에서 DSD와 유사한 1-bit 스트림으로 변환됩니다. 미리 DSD로 변환하면 소스에서 변조를 완료해 DAC 내부의 2차 변환을 우회합니다.
- SACD 생태계: SACD 이미지와 일부 플레이어/소프트웨어는 DSD 형식(DSF/DFF)만 지원합니다.
- 청감 선호: 일부 사용자는 DSD의 고주파 감쇠 특성이 더 부드럽고, 노이즈 셰이핑 후의 노이즈 분포가 더 "아날로그적"이라고 느낍니다. 물론 주관적인 영역이며, 이후에는 데이터로 말합니다.
⚠️ 중요한 전제: 변환은 정보를 창조하지 않습니다. PCM 소스에 없는 고주파 정보는 변환 후에도 생겨나지 않습니다. 변환의 목표는 정확성(투명성) — PCM을 DSD 영역에 충실히 매핑하여 손실을 최소화하는 것입니다. 이것이 "순수 DSD"(네이티브 DSD 녹음)와 "변환 DSD"의 본질적 차이입니다. 전자는 녹음 단계부터 DSD이고, 후자는 PCM 소재의 재표현입니다.
2. PCM → DSD 변환 원리(3단계)
표준 PCM→DSD 변환은 세 단계로 구성됩니다:
1. 오버샘플링(리샘플링)
PCM의 샘플링 레이트(44.1/96/192 kHz…)는 DSD 출력 비트레이트(2.8224 MHz부터)보다 훨씬 낮습니다. 변환기는 먼저 고배율 리샘플링을 수행해 샘플 포인트를 목표 비트레이트로 보간해야 합니다.
- DSD64(2.8224 MHz) = 44.1 kHz의 64배 → 업샘플링 비율 OSR=64
- DSD128(5.6448 MHz) = 128배 → OSR=128
- DSD256(11.2896 MHz) = 256배 → OSR=256
품질 포인트: 리샘플링 필터의 설계가 변환의 투명성과 위상 응답을 직접 결정합니다. FIR 필터(유한 임펄스 응답)가 주류 선택입니다. taps 수가 많을수록 필터가 더 가파르고 저지대역 감쇠가 좋아지지만 계산량이 늘어납니다. DpdoEngine은 기본 FIR 4096 taps이며, 더 높게 구성할 수 있습니다.
2. 노이즈 셰이핑
리샘플링된 다중 비트 신호를 1-bit로 줄이면 양자화 오차가 막대한 노이즈를 만듭니다. 노이즈 셰이핑은 피드백 루프를 통해 양자화 노이즈를 사람의 귀가 둔감한 초음파 대역(>20 kHz)으로 밀어내고, 가청 대역 내의 신호대잡음비를 유지합니다.
- 차수(order): 3/5/7/9/11차. 차수가 높을수록 인밴드 노이즈 억제가 강해지지만, 변조기 안정성 요구와 계산량이 늘어납니다.
- 구조: IIR(무한 임펄스 응답)과 FIR 두 종류. IIR은 계산 효율이 높고 같은 차수에서 인밴드 성능이 좋습니다. FIR은 위상 선형성과 일정한 군지연을 제공해 위상에 민감한 마스터링 처리에 적합합니다.
- DpdoEngine 기본값: 7차 IIR; MASH, CIFB, 다항식 등 다양한 구조 선택 가능
3. 변조 출력(1-bit 변조)
노이즈 셰이핑된 신호는 최종적으로 1-bit PDM 스트림으로 생성되어 DSF 또는 DFF 컨테이너로 패키징됩니다(선택적으로 DST 무손실 압축으로 30–50% 용량 절감).
3. 파라미터 선택: 실용적인 결정표
| 목표 | 권장 구성 | 이유 |
|---|---|---|
| 일반 재생(스트리밍/휴대용) | OSR 64, 9차 IIR | DSD64 호환성이 가장 좋고, 9차면 인밴드 노이즈가 이미 매우 낮음 |
| 오디오파일 재생 | OSR 128, 11차 IIR | 더 높은 비트레이트 + 최강 인밴드 셰이핑, 파일 크기 2배는 수용 가능 |
| 마스터링/보관 | OSR 128–256, FIR | 위상 선형성, 다단계 처리 시 오차 예측 가능 |
| 저사양 CPU | OSR 64, 7차 IIR | 계산량이 적어 실시간성 우선 |
| 멀티채널 SACD 패킹 | OSR 64–128, 9차 IIR + DST | DST 압축이 이미지 크기를 크게 줄임 |
인밴드 노이즈: 노이즈 셰이핑의 본질은 양자화 노이즈를 더 멀리 밀어내는 것입니다. 차수가 높을수록 인밴드는 더 낮게, 밴드외 노이즈 피크는 더 높게, 셰이핑 곡선은 더 가파르게 됩니다. 기본 7차와 11차의 차이는 조용한 구간과 고주파 디테일에서 가장 뚜렷하며, 구체적인 성능은 dsp_bench/thdn 실측 출력을 기준으로 합니다.
4. 실전: DpdoEngine으로 변환
기본 변환
# WAV → DSF (DSD64, 기본 7차 IIR)
DpdoEngine -i input.wav output.dsf --oversampling 64
# FLAC → DFF (DSD128, 11차 IIR)
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 중 무엇을 선택하나요? 먼저 DAC와 재생 체인이 어느 단계까지 지원하는지 확인하세요. 모두 지원한다면 128이 청감과 용량의 균형점이며, 64가 호환성이 가장 넓고, 256+는 한계를 추구하면서 저장 공간에 여유가 있을 때 적합합니다.
DSF인가 DFF인가? DSF가 가장 범용적인 컨테이너(메타데이터 지원이 좋고, 스트리밍/플레이어 호환성이 넓음)입니다. DFF는 방송 업계 표준입니다. 오디오 데이터에는 실질적 차이가 없으므로 기본적으로 DSF를 사용하세요.
DST를 써야 하나? DST는 무손실 압축으로 30–50% 용량을 절약하며 완전히 가역적입니다. 보관 저장이나 이미지 패킹에는 켜는 것을 권장합니다. 디코딩 단순성을 우선한다면 끄면 됩니다.
PCM 소스가 44.1인가 96/192인가가 영향이 있나요? 있습니다. 소스 샘플링 레이트가 높을수록 리샘플링 단계의 보간 오차가 작아집니다. 44.1 kHz 소스를 DSD128로 변환해도 좋은 결과를 얻지만, 96 kHz 이상 소스가 DSD256 단계에서 더 여유 있습니다.
본 문서는 Dpdo가 작성했습니다. 변환 품질 데이터는 DpdoEngine 6.68 실측 기반이며, 파라미터 세부 사항은 파라미터 레퍼런스 문서를 참조하세요.