Raspberry Pi で遊ぶ (4) —MPD サーバーとして—

先回 Raspberry Pi (RPi) と雑誌 Stereo 2013年 1月号 附録の USB-DAC (LUXMAN LXU-OT2) を繋いでみたところ、思いの外良い感触だったので、今回はその延長線上で、RPi に MPD (Music Player Daemon) をインストールして音楽配信サーバーとして利用してみる。RPi の音周りの設定は 先回 の通りなのでここでは省略する。

イメージは以下のような感じ。RPi –> DAC –> AMP –> Speaker と繋いで音を出す。データは NAS に保存したものを利用。

https://skalldan.files.wordpress.com/2013/02/wpid-rpi_mpd_af59e91478c8ac97da42c6a7052d53eb90e375cc.png

超低価格の RPi と雑誌の附録の LXU-OT2 (DAC チップはバーブラウンの PCM2704) でそこそこのサウンド環境が実現するところが素晴らしい。

MPD

コマンドラインのクライアント mpc も一緒に入れておく。

$ apt-get install mpd mpc

/etc/mpd.conf を以下のように編集した。

$ sudo vi /etc/mpd.conf

# 以下の行をコメントアウト
audio_output {
        type            "alsa"
        name            "My ALSA Device"
        device          "hw:0,0"        # optional
#       format          "44100:16:2"    # optional
#       mixer_device    "default"       # optional
#       mixer_control   "PCM"           # optional
#       mixer_index     "0"             # optional
        dsd_usb         "yes"
}

# 以下の行をコメントアウト
# bind_to_address                "localhost"

# "yes" に設定
auto_update    "yes"

# 以下追加
follow_outside_symlinks "yes"
follow_inside_symlinks "yes"
zeroconf_enabled "yes"
zeroconf_name "RPi MPD"
mixer_type "hardware"
bind_to_address "0.0.0.0"

ファイルサーバーをマウントして (/mnt/storage)、MPD のデフォルトの音楽データフォルダ (/var/lib/mpd/music) にシンボリックリンクを貼っておく。

$ sudo ln -s /mnt/storage/Music/iTunes/iTunes\ Media /var/lib/mpd/music

デーモンを再起動する。

$ sudo /etc/init.d/mpd restart
[ ok ] Stopping Music Player Daemon: mpd.
[ ok ] Starting Music Player Daemon: mpd.

MPC

mpc で実際に使用してみる。

まずはアップデート。

$ mpc update

プレイリストに追加。

$ mpc ls | mpc add

プレイリストの内容を確認。

$ mpc playlist

音を出してみる。

$ mpc play

その他詳細。

$ mpc help

MPaD

iPad の MPD クライアント MPaD を利用してみた。

RPi の IP アドレスを入力するだけ。後は特に設定する必要はない。

https://skalldan.files.wordpress.com/2013/02/wpid-mpad_01.png

iTunes に近い UI。操作感はかなり良い。

mpad_02.png

Lastfm Scrobble

Lastfm にアカウントがあるなら、再生した楽曲を Scrobble しておくと、自分と趣向の似たユーザーや関連情報を要領よく知ることができる。

上記サイトを参照しつつ、MPD で再生された曲を Scrobble するための設定を行った。

はじめに mpdscribble を導入しておく。

$ apt-get install mpdscribble

~/.mpdscribble/mpdscribble.conf を編集する。

$ mkdir ~/.mpdscribble
$ vi ~/.mpdscribble/mpdscribble.conf

[mpdscribble]
host = <your mpd host> # optional, defaults to $MPD_HOST or localhost
port = <your mpd port> # optional, defaults to $MPD_PORT or 6600
log = /home/<YOUR_USERNAME>/.mpdscribble/mpdscribble.log
verbose = 2
sleep = 1
musicdir = <your music directory>
proxy = <your proxy> # optional, e. g. http://your.proxy:8080, defaults to none

[last.fm]
# last.fm section, comment if you do not use last.fm
url = http://post.audioscrobbler.com/
username = <your last.fm username>
password = <your last.fm password> 
journal = /home/<YOUR_USERNAME>/.mpdscribble/lastfm.journal

パスワードは MD5 として記述することが可能。以下のコマンドの結果を上の mpdscribble.conf の [last.fm] の password に指定する。

$ echo -n 'PASSWORD' | md5sum | cut -f 1 -d " "

mpdscribble を (user で) 実行する。

$ mpdscribble

X 起動時に実行するには以下を ~/.xinitrc に書いておく。

pidof mpdscribble >& /dev/null
if [ $? -ne 0 ]; then
 mpdscribble &
fi

Lastfm の自分のアカウントにアクセスして Scrobble されているか確認する。

https://skalldan.files.wordpress.com/2013/02/wpid-lastfm_scrobble_new.png

【追記 2013/03/22】

MPD で音楽再生している状態で RPi の CPU 使用率はおおよそ 10% 前後 (psensor-server を利用)。

https://skalldan.files.wordpress.com/2013/03/wpid-mpd_play.png

ライブラリのアップデートを行うと 30% 強といったところ。

https://skalldan.files.wordpress.com/2013/03/wpid-mpd_update.png

RPi を MPD サーバーとして利用する限り安定した運用が可能。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s