minidlna でDSDが再生出来るようになる
2017/9/16
みみず工房さんやってくれた!!
「MiniDLNAをDSD対応させる」 http://mimizukobo.sakura.ne.jp/articles/articles021.html#001
この記事は凄い!!使い物にならなかった minidlna がDSD再生が出来る様になって且つ安定する。
先人に感謝、感謝です(^_^)
minidlna-1.1.6-dsd.zipをHPからリンクを辿ってdownload
$ unzip minidlna-1.1.6-dsd.zip
$ cd minidlna-1.1.6-dsd
$ ./autogen.sh
$ ./configure
$ make
# make install
# cp ./minidlna.conf /etc/minidlna.conf
# /usr/local/sbin/minidlnad
# ps aux | grep minidlnad
root 19423 0.0 0.1 9828 3128 ? Ss 16:07 0:00 /usr/local/sbin/minidlnad
※ブラウザでhttp://localhost:8200/にアクセスして確認してもOK
「MiniDLNAをDSD対応させる」 http://mimizukobo.sakura.ne.jp/articles/articles021.html#001
この記事は凄い!!使い物にならなかった minidlna がDSD再生が出来る様になって且つ安定する。
先人に感謝、感謝です(^_^)
minidlna-1.1.6-dsd.zipをHPからリンクを辿ってdownload
$ unzip minidlna-1.1.6-dsd.zip
$ cd minidlna-1.1.6-dsd
$ ./autogen.sh
$ ./configure
$ make
# make install
# cp ./minidlna.conf /etc/minidlna.conf
# /usr/local/sbin/minidlnad
# ps aux | grep minidlnad
root 19423 0.0 0.1 9828 3128 ? Ss 16:07 0:00 /usr/local/sbin/minidlnad
※ブラウザでhttp://localhost:8200/にアクセスして確認してもOK
— posted by くま at 04:54 pm
お気楽kit組み立て 4桁LED基板
かなりトラブったけど何とか動作にこぎ着けた(^_^;)
一つ勘違いしていたのはPCM再生時とDSD再生時では測定するピンが違うことだ。
自動化するためには74HC157、SN74CBTLV3257を使って
切り替え回路基板を作ろうかな。(^_^;)
※今更ですが...
PCM再生時にLRCKが出るピンはDSD再生時にはDSD信号のRが出るんです(^_^;)
だからDSD再生時にはBCKを測定しないとダメなんです。
PCM:LRCK-GND
DSD:BCK-GND
PCM 44.1KHz
PCM 192KHz
DSD再生11.29MHz
一つ勘違いしていたのはPCM再生時とDSD再生時では測定するピンが違うことだ。
自動化するためには74HC157、SN74CBTLV3257を使って
切り替え回路基板を作ろうかな。(^_^;)
※今更ですが...
PCM再生時にLRCKが出るピンはDSD再生時にはDSD信号のRが出るんです(^_^;)
だからDSD再生時にはBCKを測定しないとダメなんです。
PCM:LRCK-GND
DSD:BCK-GND
PCM 44.1KHz
PCM 192KHz
DSD再生11.29MHz
— posted by くま at 01:51 pm
DSD再生環境(1) 混乱していますがこれでOK?
2017/9/11
DSDフォーマット(周波数):PCM必要帯域
DoP再生
DSD64_2.8224MHz 176.4KHz
DSD256_11.29MHz 705.6KHz
DSD_native再生
DSD64_2.822MHz 88.2KHz
DSD256_11.29MHz 352.8KHz
DSD512_22.5792MHz 705.6KHz
PCM変換再生
DSD64_2.822MHz 176.4KHz
DSD256_11.29MHz 705.6KHz
この表の要点はDSD_nativeだとDoPに比べて半分の周波数帯域で済むという部分。
神再生ソフトと言われているJPLAYがASIO対応で無いのであれば?
どうやってDSD512を再生するのだろうか?ダウンコンバートしているのか?
DoP再生
DSD64_2.8224MHz 176.4KHz
DSD256_11.29MHz 705.6KHz
DSD_native再生
DSD64_2.822MHz 88.2KHz
DSD256_11.29MHz 352.8KHz
DSD512_22.5792MHz 705.6KHz
PCM変換再生
DSD64_2.822MHz 176.4KHz
DSD256_11.29MHz 705.6KHz
この表の要点はDSD_nativeだとDoPに比べて半分の周波数帯域で済むという部分。
神再生ソフトと言われているJPLAYがASIO対応で無いのであれば?
どうやってDSD512を再生するのだろうか?ダウンコンバートしているのか?
— posted by くま at 08:20 am
中華DDC(3)DSD_native再生が可能になった
Kernelソースの変更部分をデジファイ管理人さんに教えていただいたm(__)m
$(LINUX_SRC)/sound/usb/quirks.c
u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
という関数がありここを変更すると Format: SPECIAL の時に Format: SPECIAL DSD_U32_BE
に読み替えて動作するようになるとのことで
case USB_ID(0x16d0, 0x06b4): /* NuPrime Audio HD-AVP/AVA */
case USB_ID(0x20b1, 0x000a): /* Gustard DAC-X20U */
case USB_ID(0x20b1, 0x2009): /* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
case USB_ID(0x20b1, 0x2023): /* JLsounds I2SoverUSB */
case USB_ID(0x20b1, 0x3023): /* Aune X1S 32BIT/384 DSD DAC */
case USB_ID(0x20b1, 0x302d): /* Unison Research Unico CD Due */
case USB_ID(0x20b1, 0x305d): /* Cyberdrive Clarity Feather Dac */
case USB_ID(0x22d9, 0x0426): /* OPPO HA-2 */
case USB_ID(0x2616, 0x0106): /* PS Audio NuWave DAC */
case USB_ID(0x20b1, 0x3086): /* SPECIAL */ <----- 追加
if (fp->altsetting == 3)
return SNDRV_PCM_FMTBIT_DSD_U32_BE;
break;
としてKernelの再構築を行った。
結果はDSD_native再生が可能になった。(^o^)
$ cat /proc/asound/card0/stream0
Singxer USB Audio 2.0(Q1) at usb-0000:00:1a.0-1.6.3, high speed : USB Audio
Playback:
----省略-----
Interface 1
Altset 3
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 1 OUT (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Format: SPECIAL から Format: SPECIAL DSD_U32_BE に変わっている。
DSD音源を再生して確認
$ cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: DSD_U32_BE
subformat: STD
channels: 2
rate: 352800 (352800/1)
period_size: 32768
buffer_size: 131072
$(LINUX_SRC)/sound/usb/quirks.c
u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
という関数がありここを変更すると Format: SPECIAL の時に Format: SPECIAL DSD_U32_BE
に読み替えて動作するようになるとのことで
case USB_ID(0x16d0, 0x06b4): /* NuPrime Audio HD-AVP/AVA */
case USB_ID(0x20b1, 0x000a): /* Gustard DAC-X20U */
case USB_ID(0x20b1, 0x2009): /* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
case USB_ID(0x20b1, 0x2023): /* JLsounds I2SoverUSB */
case USB_ID(0x20b1, 0x3023): /* Aune X1S 32BIT/384 DSD DAC */
case USB_ID(0x20b1, 0x302d): /* Unison Research Unico CD Due */
case USB_ID(0x20b1, 0x305d): /* Cyberdrive Clarity Feather Dac */
case USB_ID(0x22d9, 0x0426): /* OPPO HA-2 */
case USB_ID(0x2616, 0x0106): /* PS Audio NuWave DAC */
case USB_ID(0x20b1, 0x3086): /* SPECIAL */ <----- 追加
if (fp->altsetting == 3)
return SNDRV_PCM_FMTBIT_DSD_U32_BE;
break;
としてKernelの再構築を行った。
結果はDSD_native再生が可能になった。(^o^)
$ cat /proc/asound/card0/stream0
Singxer USB Audio 2.0(Q1) at usb-0000:00:1a.0-1.6.3, high speed : USB Audio
Playback:
----省略-----
Interface 1
Altset 3
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 1 OUT (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Format: SPECIAL から Format: SPECIAL DSD_U32_BE に変わっている。
DSD音源を再生して確認
$ cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: DSD_U32_BE
subformat: STD
channels: 2
rate: 352800 (352800/1)
period_size: 32768
buffer_size: 131072
— posted by くま at 06:14 pm
Comments