色々なディストリと色々な機器と色々なソフト設定の組み合わせがあり
ブログでは完璧な説明が出来ない事を最初に書いておきます。
まぁ管理人自身のポカ、勘違いもあるのでご指摘いただけると有り難いですm(_ _)m
カーネル再構築でドライバーの守備範囲を広げた環境はまだイジっていて
自分の目標であるPCM-DSD再生環境をシームレスにするためのアプローチの一つです。
# alsacap
*** Scanning for playback devices ***
Card 0, ID `sndrpirpidac', name `snd_rpi_rpi_dac'
Device 0, ID `RPi-DAC HiFi pcm1794a-codec-0', name `RPi-DAC HiFi pcm1794a-codec-0', 1 subdevices (1 available)
2 channels, sampling rate 8000..384000 Hz
Sample formats: S16_LE, S24_LE, S32_LE
Subdevice 0, name `subdevice #0'
この状態で
OS:
# uname -a
Linux alarm 5.16.0-rc3-rt7-v8 #4 SMP PREEMPT_RT Sat Apr 2 22:52:37 JST 2022 aarch64 GNU/Linux
ハード:
RaspberryPi4 + Renew SRC4137(サンプリングレートコンバーター) + HDMIコネクタI2S差動送信基板
※リクロック基板、ハットDACからのI2S横取無し。送信基板のみ。
mpd設定:
dop "yes"
allowed_formats "384000:32:2 44100:*:2 48000:*:2 88200:*:2 96000:*:2 96000:*:2 176400:*:2 192000:*:2 352800:*:2 384000:*:2 dsd64:2=dop dsd128:2=dop dsd256:2=dop"
audio_buffer_size "12288"
buffer_before_play "50%"
max_output_buffer_size "131072"
max_connections "128"
この状態で下の様な仕様の音源をDoP変換再生すると
まともに再生出来る場合と雑音混じりになってしまう場合がある。
つい最近までその原因はドライバーの拡張が無茶(笑)だったと考えていたのだが...
あくまで自分の環境の話だが判明した原因はその時のマスタークロックが44.1系なのか48系なのか!
それだけだった。自分の環境ではデジタルチャンネルデバイダーを使っているので
デバイダー入力周波数がコロコロ変わると曲の頭が切れるので固定していた。
SRC基板を入れていて気がつくのに時間がかかったという顛末
Audio
Format : DSD
Format/Info : Direct Stream Digital
Commercial name : DSD64
Format settings : Little
Duration : 8 min 28 s
Bit rate : 5 645 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 2 822 kHz
Compression mode : Lossless
Stream size : 342 MiB (100%)
この記事に対するコメントはありません
Comments