CentOS6 for mpd install


<<トップページへ

概要

CentOS6.x にmpdをインストール。元々がdebian系のソフトなので基本的に
自動設定にはなりません。初心者の方はubuntuをお勧めします(笑)

mpdで音楽ファイルを再生するためには他にクライアントソフトが必要になります。
音を聴く最低限の組み合わせとしてはmpd+mpc+(プレーヤーソフト)となります。
この辺が理解しがたい部分です(笑)

基本的にmpdは音楽再生のための操作系を除くメインの部分をを受け持つサーバーと
考えれば良いかと思います。
操作する部分は同じネットワーク上のクライアントソフトがインストールされた
自分自身(PC)
スマートフォン等で可能です。

家電品を例にすればmpdをインストールしたPCは操作部の無い音楽プレーヤーに相当します。
クライアントソフトが入った操作部がリモコンというところです。

概要、実験材料

mpc-0.22-1.fc19.src.rpm:これをリビルドしてインストー ル※1※2

$ wget http://dl.fedoraproject.org/pub/fedora/linux/releases/19\
/Everything/source/SRPMS/m/mpc-0.22-4.fc19.src.rpm

mpd-0.17.6-1:ソースを拾ってきてpaco,checkinstallでインストール
http://www.musicpd.org/


※1 ffmpeg-develのバージョンによってはビルド不可
管理人のバージョンはffmpeg-devel-0.10.11-1.el6
※2 参考:自宅開発用PC環境(リビルドに必要)
libmpcdec-1.2.6-6.1.el6 (Vendor: CentOS)
mpc-0.22-1.el6

※これは管理人の環境で、実際にはffmeg,ffmpeg-develをyumでepelから
インストールしてあれば、これらのパッケージはnux,epelレポですべて調達可能です。

再生が確認できた環境

DAC :MY220 ES9018DSD D/Aコンバーターキット
DAC :Wadia Wadia 151 PowerDAC mini
 

Audio_Card:M-AUDIO - Audiophile 192,2496等
Audio_Card:Yamaha DS-1

設定

(1)使用ユーザーでの設定

$ cd ~
$ vi .bashrc(追加する)

※各自の環境に合わせる。
export MPD_HOST=192.168.xx.x

(2)以下作業をroot権限で行う。
使用デバイスを明示する。今回はalsa経由で再生した。出力デバイスのハードウエア番号は確認して修正してください。

$ aplay -l

**** ハードウェアデバイス PLAYBACK のリスト ****
カード 1: YMF724F [Yamaha DS-1 (YMF724F)], デバイス 0: YMFPCI [YMFPCI]
カード 1: YMF724F [Yamaha DS-1 (YMF724F)], デバイス 1: YMFPCI - IEC958 [YMFPCI - IEC958]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 1: YMF724F [Yamaha DS-1 (YMF724F)], デバイス 2: YMFPCI - Rear [YMFPCI - Rear PCM]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0


# cd /etc
# vi /etc/mpd.conf  (編集する)
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#audio_output {
#    type "jack"
#    #type "alsa"
#    name "my jack device"
#}

audio_output {
    type        "alsa"
    name       "My ALSA Device"
    device      "hw:1,1"
}

music_directory       "/var/lib/mpd/music"
playlist_directory     "/var/lib/mpd/playlists"
db_file                   "/var/lib/mpd/mpd.db"
log_file                  "/var/lib/mpd/mpd.log"
pid_file                  "/var/run/mpd/mpd.pid"
state_file               "/var/lib/mpd/mpdstate"
user                      "mpd"
bind_to_address       "192.168.11.2"
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

# useradd -r -d / -s /sbin/nologin mpd
# usermod -G audio -a mpd

# mkdir /var/lib/mpd
# mkdir /var/lib/mpd/playlists
# mkdir /var/run/mpd
# chmod 775 /var/lib/mpd
# chown -R mpd:mpd /var/lib/mpd
# chown -R mpd:mpd /var/run/mpd

次にmusic_directoryで指定したディレクトリを再生するファイル が
保存されている
ディレクトリへシンボリックリンクする。

# ln -s /var/video/CD-MOTO2/ /var/lib/mpd/music

# ls -l /var/lib/mpd
-rw-r--r--. 1 mpd  mpd   359095  1月 17 12:01 2015 mpd.db
-rw-r--r--. 1 root root   3313339  3月 14 08:07 2015 mpd.log
-rw-r--r--. 1 mpd  mpd      2591  3月 19 09:02 2015 mpdstate
lrwxrwxrwx  1 root root       20  4月  6 23:09 2014 music -> /var/video/CD-MOTO2/
drwxrwxrwx. 2 mpd  mpd  4096 12月 22 00:28 2014 playlists
-rw-r--r--. 1 mpd  mpd       3072  4月  5 22:40 2014 sticker.sql

とりあえず起動してみる(/etc/init.d/mpdは後日作成)
# mpd /etc/mpd.conf

起動を確認する。
# ps aux | grep mpd
mpd       6297  0.1  0.0 914436  8804 ?  Ssl  09:53   0:06 mpd /etc/mpd.conf

※接続エラー出る場合はmpd自身が起動していない場合がほとんどです 。
 確認する方法で簡単なのは端末で mpc と打ってみてエラーにならなければ正常です。

$ mpc
volume: 95%   repeat: off   random: off   single: off   consume: off

mpcの停止はCentOSの場合は以下のコマンドで行うしかありません。
(/etc/init.d/mpdは後日作成)
# killall mpd

(3)CD等ジャケット表示について

演奏する曲が存在するフォルダーに folder.jpgというファイル名でジャケット画像を
保存する。
次に再生するプレーヤーのLocal Cover Art設定のURLで以下の用に
設定して下さい。


    http://ipアドレス/Music

具体的な作業として管理人の場合

# ln -s /var/video/Music_lib /home/web/public_html/Music

Music_lib:実際に音 楽データがあるディレクトリー
/home/web/public_html: httpdサーバーのドキュメントルート

$ cd /home/web/public_html/
$ ls

Music -> /var/video/Music_lib

参考:http://inaz2.hatenablog.com/entry/2013/07/10/180408