Tutorial FLAC → DSD: fluxo completo de PCM sem perdas para DSD64/128

FLAC é um contêiner sem perdas para PCM, não é DSD. Para converter FLAC em DSD (DSF/DFF), é necessário passar por um processo completo de reamostragem + modelagem de ruído + modulação. Este tutorial traz comandos prontos para seguir.


1. Entenda primeiro: o que realmente é convertido no FLAC → DSD

O arquivo FLAC contém internamente dados PCM (normalmente 16/24 bits, 44,1–192 kHz). Converter para DSD significa:

  1. Descompactar: FLAC → pontos de amostragem PCM originais
  2. Reamostrar: taxa do PCM → taxa do DSD (44,1 kHz × 64 = 2,8224 MHz / DSD64)
  3. Modelar ruído: quantização de multibit → 1 bit, empurrando o ruído de quantização para a faixa ultrassônica
  4. Encapsular: saída em DSF ou DFF

A conversão é um mapeamento de fonte sem perdas para destino de alta precisão — a informação do FLAC é integralmente preservada (a reamostragem não perde dados, apenas muda a representação), mas não "cria" detalhes do nada.


2. Opção A: conversão direta por linha de comando (arquivo único, máximo controle)

# FLAC → DSF (DSD64, IIR de 7ª ordem padrão)
	DpdoEngine -i track.flac track.dsf --oversampling 64
	
	# FLAC → DFF (DSD128, IIR de 11ª ordem, buscando o limite de ruído na banda)
	DpdoEngine -i track.flac track.dff --oversampling 128 --order 11
	
	# FLAC → DSF (DSD256 + aceleração OpenCL + metadados do álbum + relatório PDF)
	DpdoEngine -i track.flac track.dsf --oversampling 256 \
	  --opencl --report --artist "Artist" --album "Album" --year "2026"
	

Referência rápida de parâmetros: - --oversampling N: fator de sobreamostragem (64=DSD64, 128=DSD128, 256=DSD256) - --order N: ordem da modelagem de ruído IIR (3/5/7/9/11, padrão 7) - --opencl: aceleração por GPU (OpenCL 1.2+) - --report: gera relatório de análise da conversão - --metadata-from-input: extrai automaticamente os metadados do arquivo de origem (podem ser sobrescritos por parâmetros explícitos) - --reverse: modo inverso (DSD → PCM)


3. Opção B: conversão em lote (álbum inteiro, um único comando)

Use o script de lote convert incluído no pacote de lançamento (requer ffmpeg + DpdoEngine):

# Entre no diretório com os FLAC e converta tudo para DSF (DSD64)
	cd diretório-do-álbum
	bash convert flac2dsf
	
	# Especifique a taxa de saída (exemplo: DSD128)
	bash convert flac2dsf 128
	

Tipos de conversão suportados (script convert):

PCM/PCM:   wav2flac, flac2wav, m4a2flac
	DSD/PCM:   dsf2flac, dsf2wav, dff2flac, dff2wav
	PCM→DSD:   wav2dsf, wav2dff, flac2dsf, flac2dff
	PCM→DXD:   wav2dxd_w64, wav2dxd_wav, wav2dxd_flac, flac2dxd_*
	

4. Como verificar após a conversão

# Medir distorção e piso de ruído do arquivo DSD de saída (THD+N)
	thdn track.dsf
	
	# Comparar o desempenho na banda de diferentes ordens de modelagem de ruído
	dsp_bench --input test.flac --order 9 --order 11
	

Pontos de verificação: - O piso de ruído na banda (20 Hz–20 kHz) atingiu o esperado? (SNR teórica do DSD64 é da ordem de ~120 dB; na prática depende da ordem de modelagem de ruído) - Consistência da resposta de frequência com o PCM original (o filtro de reamostragem introduziu desvios audíveis?) - Escuta real com DAC/player (o juiz final é a cadeia de reprodução)


5. Perguntas frequentes

A taxa de amostragem da fonte FLAC importa muito? Fontes de 44,1 kHz convertem perfeitamente para DSD; fontes de 96/192 kHz ficam mais confortáveis em DSD128+ (menor erro de interpolação na reamostragem).

Depois de converter, posso ir direto para a autoragem SACD? Sim. Com a saída DSF/DFF, use o DpdoPackSACD para gerar a imagem SACD ISO (veja o tutorial de autoragem).

E se a conversão em lote estiver lenta? Ative --opencl (aceleração por GPU) ou reduza a ordem (IIR de 7ª ordem tem melhor desempenho em tempo real em máquinas modestas).


Escrito pela Dpdo. Os comandos são baseados no DpdoEngine 6.68 e no script convert do pacote de lançamento.