info‎ > ‎

beaglebone black用のlightMPD-v1.0.0を公開しました

2015/06/09 8:18 に digififan が投稿   [ 2015/07/03 5:33 に更新しました ]
beaglebone black用のlightMPD-v1.0.0を公開しました。

主な仕様

  • buildroot
    buildroot-2015.05
  • kernel
    linux-4.0.4rt1
  • mpd
    mpd-0.19.9rt
    mpd-0.19.9rt-native-dsd

v0.08との相違点

  •  WebUIのクライアントympdを実装しました。
  • lightmpd.confの変更
    http,telnetd,ympd,webconsoleでポートの指定を行えるようにしました。
    [http]
         enable=yes
         port=80

          [telnetd]
                enable=yes
                port=23

           [webconsole]
                enable=yes
                port=9000

           portは省略可能ですが、省略した場合は http,telnetd,ebconsoleのポートはれぞれ80,23,9000 になります。
           
            [ympd]
                enable=yes
                webport=8080
                mpdport=6600
    
             webportはympがリクエストを受け付けるポートを指定します。デフォルトは8080です。
             mpdportはmpdがリクエストを受け取るポートを指定します。mpdがリクエストを受け付けるポートはmpd.confで指定できます。デフォルトは6600です。

  •  mpd.confの変更
    •  decoder_selectorを外しました。
    •  samplerate_converterのデフォルトを"soxr very high"にしました。
    • 拡張オーディオフォーマットにxnを追加
      x(小文字)の場合、入力がDSDでもサンプリング周波数の変換を行います。
      mpdのサンプリング周波数変換の動きについては近いうちに解説します。
      取りあえずは、dsdをpcmに変換して再生する場合(audio_outputでdsd_usbが"no"の場合)はx(小文字)を指定して下さい。
      dsd_usb="yes"の場合はX(大文字)を指定して下さい。

native-dsdの対応

mpd-0.19.9rt-native-dsdはhttps://github.com/lintweaker/xmos-native-dsdで公開されているdsdのnative転送に対応したmpdです。
DDC,DACが対応していればdsd native転送を使うことにより機器側が対応していればDSD256の再生が可能になります。

対応するDDC,DACは
  •  iFi Audio micro/nano iDSD
  •  Matrix Audio X-Sabre
  •  Matrix Audio Mini-i Pro
  •  DIYINHK DSD DXD 384kHz USB to I2S/DSD
  •  Denon DA300-USB
  •  Marantz HD-DAC1
  •  Marantz SA-14S1
です。(上記全ての機器がDSD256に対応しているとは限りません。DSD256の為に機器を選択する場合は仕様を確認して下さい。)


当初、DIYINHKのDDCでテストする予定でしたが、タイムリーな事にエレクトロアートのデジタルオーディオ実験室上にて下記基板に対するnative dsdのパッチが公開されましたので、その対応を行いました。
  •  ElectrArt USDA_MINI
  •  ElectrArt USBDAC
  •  ElectrArt UDA2

HDtte-onkyoから購入したDSD256ファイルをUSDA_MINIでテストしたところちゃんと再生できましたので、公開に踏み切りました。

[注意]
  • 但し、たまにプチノイズがでる時があります。buffer_sizeの調整やirqのプライオリティの調整が必要かもしれません
  • beagleboneの場合、USBへのデータ転送はPIO方式で行われ、データ量が増えればそれだけCPUの負荷が増えます。352.8Khzあたりが限界なのかもしれません。
  • USDA_MINI以外の機器ではテストしていません。
  • native-dsdの他機種への対応は順次行います。
dsd native転送を行う場合は、lightmpd.conf,mpd.confを以下のように修正して下さい。

  • lightmpd.conf
    [mpd] -> load_module を mpd-0.19.9rt-native-dsdに変更。
  • mpd.conf
    • dsd_usbを  "yes" から "no" に変更
  • 以下を追加
          dsd_native              "yes"
          dsd_native_type      "2"




ダウンロードおよびインストール

このバージョンからzip形式のアーカイブで配布する事にしました。
  • lightMPDbbb-v1.0.0.zip
  • lightMPDbbb-v1.0.1.zip(2015.07.03 update)
    • mpd-0.19.9rt-native-dsd:   曲の終わりでmpdがハングアップするバグを修正しました

ダウンロードしたファイル(zip)をFAT32でフォーマットしたSDメモリ上に解凍して下さい。

バグ情報

  1. mpd-0.19.9rtでsamplerate_converteにsoxr を指定する際に openmpの指定を行うと、mpdが起動しません。
    これはバグですが、修正するまでの間openmpの指定を外して対処して下さい。
    「openmpを指定するとエラーになる」を正式な仕様とします。(2015.07.03)

Comments