現在の自鯖機(Ubuntu 10.04.4@Express5800/70 typeFL)のDLNAサーバーはMediaTomb。 PS3 Media Serverも何度か(最後は2010年10月)入れてはみたが、いつしか使わなくなって削除した。
次期・自鯖機のDLNAサーバー
次期・自鯖機の導入にあたり、何も考えずにMediaTombを入れるべきか、それとも既に更新しなくなって久しいMediaTombを果たして入れていいものか、ちょっと考えたりした。
ネットをいろいろ徘徊してみて、MediaTombの対抗馬は、やはりPS3MediaServerと思えた。 自分が導入したのは 1.20前後だったが、最新は1.82(2013.7.21時点)まで上がっているらしい。 しかも簡単にインストールするパッケージも(公式ではないが)配布されていて、導入も非常に簡単になっているらしい。 ただ、配布版が1.51なのでどうせなら最新版を先ずはメディアファイルもたくさんある現行・自鯖機の方で試してみる事にした。
PS3mediaserver の導入、設定
PS3mediaserver を動かすには必要になるパッケージが幾つかある。 先ず、それらを入れる。
以下の本家からダウンロード
http://www.ps3mediaserver.org/
psm $ wget https://code.google.com/p/ps3mediaserver/downloads/detail?name=pms-generic-linux-unix-1.82.0.tgz
psm $ tar tvzf pms-generic-linux-unix-1.82.0.tgz
psm $ sudo mkdir /opt/pms
psm $ sudo mv pms-generic-linux-unix-1.82.0/* /opt/pms
●PMS.confの設定
オリジナルのPMS.conf をコピーしとく
/opt/pms $ cp PMS.conf PMS.conf.org
/opt/pms $ sudo vi PMS.conf
で、変更箇所は下記。
network_interface =
hostname =
port =
forders =
# — binary tools path —-
mencoder_path =
ffmpeg_path =
mplayer_path =
tsmuxer_path =
dcraw_path =
vlc_path =
●起動スクリプト
ネットから落としたんだが、ソースを忘れてしまった。 orz
変更箇所は赤字。
#! /bin/sh
### BEGIN INIT INFO
# Provides: pms
# Required-Start: $network $local_fs $remote_fs
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: PS3 UPnP Media Server
### END INIT INFO
##
## Version 3.0 By RyLoS 12-ago-2011 (email: rylos78@gmail.com)
## Contributed by MikyZ on 18/06/2011
## Contributed by Sylvain on 11/08/2011
##
# Source init-functions:
#source /lib/lsb/init-functions
. /lib/lsb/init-functions
# Script variables:
MONTH=`date +%Y-%m`
PMS_HOME=”/opt/pms”
PMS_LOG=”/var/log/pms/pms-$MONTH.log”
DESC=”PS3 UPnP Media Server”
NAME=”PMS.sh”
PMS_PROFILE=”/opt/pms/PMS.conf”
# Path to executable:
DAEMON=”$PMS_HOME/$NAME”
#PID file to create
PIDFILE=”/var/run/pms.pid”
# Run as user/group [UPDATE THESE TO MAKE VALID]:
# PMSUSER=marco
# PMSGROUP=sfz
PMSUSER=
PMSGROUP=
# update PATH:
PATH=”$PMS_HOME:${PATH:+$PATH:}/usr/sbin:/sbin”
# export env-vars
export PATH PMS_HOME PMS_LOG PMS_PROFILE
# Exit if the package is not installed
if [ ! -x “$DAEMON” ]; then {
echo “Couldn’t find $DAEMON or not executable”
exit 99
}
fi
#
# Function that starts the daemon/service
#
do_start() {
# Return
# 0 if daemon has been started
# 1 if daemon was already running
if [ -e “$PIDFILE” ]; then {
log_daemon_msg “$DESC” “$NAME already running or PID file present”
return 2
}
fi
log_daemon_msg “Starting $DESC” “$NAME”
start-stop-daemon –start –quiet –chdir $PMS_HOME –chuid $PMSUSER:$PMSGROUP –exec $DAEMON –pidfile $PIDFILE –make-pidfile –test > /dev/null || return 1
start-stop-daemon –start –quiet –chdir $PMS_HOME –chuid $PMSUSER:$PMSGROUP –exec $DAEMON –pidfile $PIDFILE –make-pidfile > $PMS_LOG 2>&1 &
}
#
# Function that stops the daemon/service
#
do_stop() {
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
log_daemon_msg “Stopping $DESC” “$NAME”
start-stop-daemon –stop –signal 2 –retry 5 –quiet –pidfile $PIDFILE
RETVAL=”$?”
[ “$RETVAL” = 2 ] && return 2
if [ -e “$PIDFILE” ]; then {
rm $PIDFILE
}
fi
return “$RETVAL”
}
case “$1” in
start)
do_start
case “$?” in
0|1) log_end_msg 0 ;;
2) log_end_msg 1 ;;
esac
;;
stop)
do_stop
case “$?” in
0|1) log_end_msg 0 ;;
2) log_end_msg 1 ;;
esac
;;
restart)
do_stop
do_start
case “$?” in
0|1) log_end_msg 0 ;;
2) log_end_msg 1 ;;
esac
;;
*)
echo “Usage: $SCRIPTNAME {start|stop|restart}” >&2
exit 3
;;
esac
exit 0
自動起動する
上記のスクリプトを /etc/init.d配下に置き、更に起動レベルに併せてスタート・ストップを定義する。
/opt/pms$ sudo chown root /etc/init.d/pmsd
/opt/pms$ sudo chmod +x /etc/init.d/pmsd
/opt/pms$ sudo sysv-rc-conf –level 2345 pmsd on # ラン・レベル 2,3,4,5 で起動
/opt/pms$ sudo sysv-rc-conf –level 015 pmsd off # ラン・レベル 0,1,6 で停止
/opt/pms$ sudo sysv-rc-conf -list pmsd # ラン・レベルの確認
pmsd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
起動してみる
しばらくの間、ディスクへのアクセスが発生する。 公開ファイルのスキャンしてるから。
そしてPS3にも「PS3 Media Server」という文字が「Video」メニューに現れた。
当初のディスクスキャンの時こそCPU負荷は高かったが、それが終わると静かなもの。
動画再生時もCPU負荷はほぼ見られない。 たまにjavaが1,2%を指す程度だ。(Celeron E3300)
次期・自鯖機のDLNAサーバ、これで行こうかな。