Raspberry Pi をDLNAサーバーに

Raspberry Pi をDLNAサーバーに

DLNA
(Divital Living Network Alliance)

異なるメーカーのAV機器を
LANを介して相互接続できるようにした規格

最近のネット対応TVのほとんどは
DLNA機能が備わっているため
DLNA対応NASをLANに追加すれば
NASに保存した動画や音楽を離れたTVなどでも再生できる

これを利用して Raspberry Pi へDLNAサーバーをインストールすれば
TVなどからRasberrt Pi にアクセスして動画などをみることができる

起動ディスクに使っているSDカードだと容量が少ないけどUSBに外付けHDDをつければ、
この問題も解決できる

まずは Raspberry PI にDLNAサーバーインストール
インストールするのはMiniDLNA

[shell]
sudo apt-get install minidlna
[/shell]
でインストール

次にDLNAサーバーの設定
動画や音声ファイルを保存するディレクトリを作成する

現在ホームディレクトリにいるので、ここへ作成する

 mkdir Video Music Photo

そして、作成したディレクトリにSFTPでメディアを転送する

クライアントソフトは Filezilla を利用
音楽なら Music
動画なら Video
写真なら Photo
に転送する

次に設定ファイルを編集する

sudo vim /etc/minidlna.conf 

で変更できるけどバックアップとってから編集したほうが無難

26行めの
media_dir=/var/lib/minidlna
が保存先を指定しているので

#media_dir=/var/lib/minidlna
media_dir=V,/home/pi/Video
media_dir=A,/home/pi/Music
media_dir=P,/home/pi/Photo

とする
#のついているのはコメントアウト

これで設定できたのでDLNAサーバーの起動

sudo /etc/init.d/minidlna start

で起動できる

設定ファイルを書き換えた場合

sudo /etc/init.d/minidlna force-reload

で設定ファイルを再読み込みする

起動できたら、まずは ipod touch でアクセス

しかしアクセスできても再生できないので
権限を確認
-rw-r–r–
となっているので
chmod 755 で変更したけど結果は変わらず

原因を調べるため
raspberry pi minidlna で検索

RPi miniDLNA


を元にログをチェック

less /var/log/minidlna.log 

で確認すると

inotify.c:195: warn: WARNING: Inotify max_user_watches [8192] is low or close to the number of used watches [8] and I do not have permission to increase this limit.  Please do so manually by writing a higher value into /proc/sys/fs/inotify/max_user_watches.

となっていたので

sudo sysctl fs.inotify.max_user_watches=81920

を実行し

sudo /etc/init.d/minidlna force-reload

で miniDLNAを再起動

しかしまだ再生はできなかった
どうやらログをみるとポート関連の問題のよう

minidlna.c:1006: warn: HTTP listening on port 8200

とりあえずポート確認するため
ubuntu で

nmap 192.168.1.198

で確認

結果は

Starting Nmap 5.21 ( http://nmap.org ) at 2014-08-10 19:22 JST
Nmap scan report for raspberrypi (192.168.1.198)
Host is up (0.12s latency).
Not shown: 998 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
8200/tcp open  unknown

Nmap done: 1 IP address (1 host up) scanned in 1.23 seconds

ポートが開いているようなので
次に再生できる形式を調べることに

mp3 ファイルで実験するため

cp /usr/share/pyshared/pygame/examples/data/house_lo.mp3 Music/

で実験した結果、再生可能なことを確認

どうやら .ogg 形式が再生できないため
http://nanase.hatenablog.jp/entry/2013/11/08/193003
を参考に

sudo apt-get install mpg321 vorbis-tools

でインストール
これでもダメなので
http://linuxforums.org.uk/index.php?topic=9822.0
を元に

sudo apt-get install minidlna gstreamer0.10-ffmpeg

でさらにインストール

しかし未だに .ogg 形式ファイルの再生はできなかった

とりあえず .ogg はできないけど mp3 までなら
DLNAサーバーでの再生が可能になった

動画に関しても調べてみたけど
http://bty.sakura.ne.jp/wp/archives/377
に書いてあるように
動画ファイルはmpeg2のフォーマットじゃないと閲覧できない

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です