最後の大仕事、VPSのAirVideoサーバー化です。
これを行うことにより、WebDAVを通してファイル管理の一元化、音楽のストリーミング再生、そして、動画のストリーミング再生が可能になる。
これだけ出来ると、imotenを使わなくてもVPSを借りる価値があるね。
AUやSoftBankのiPhoneを使っていたとしても十分役に立つ。
※この設定はさくらインターネットのVPSの新プランと契約し、WebDAVの設定を終了したものとして書いてあります。
2014/04/02追記
本家AirVideoサーバー用プログラムが削除されていたので、自分のサーバーにアップロードしました。
ライブラリ群のインストール
AirVideoのサーバー稼働に必要なライブラリをインストールする。
[root@ ~]# yum -y install java-1.6.0-openjdk yasm git SDL-devel faac faad2-devel エンターキー
ライブラリ、java-1.6.0-openjdk、yasm、git、SDL-devel、faac、faad2-develがインストールされた。
※JavaSEをインストールしてある場合はjava-1.6.0-openjdkをインストールする必要は無い。
lame-3.99.5のインストール
次にlame-3.99.5をダウンロードする。
[root@ ~]# wget http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz/download tar xzvf lame-3.99.5.tar.gz エンターキー
lame-3.99.5.tar.gzを展開。
[root@ ~]# tar xzvf lame-3.99.5.tar.gz エンターキー
lame-3.99.5をインストールする。
[root@ ~]# cd lame-3.99.5 エンターキー
[root@ ~lame-3.99.5]# ./configure –enable-nasm –disable-shared && make && make install エンターキー
これでlame-3.99.5がインストールされた。
[root@ ~lame-3.99.5]# cd エンターキー
でカレントディレクトリへ戻る。
x264のインストール
x264をダウンロードする。
[root@ ~]# git clone git://git.videolan.org/x264.git エンターキー
x264がダウンロードされた。
x264をインストールする。
[root@ ~]# cd x264/ エンターキー
[root@ ~x264]# ./configure –prefix=/usr –disable-asm –enable-static && make && make install エンターキー
これでx264がコンパイル&インストールされた。
[root@ ~x264]# cd エンターキー
でカレントディレクトリへ戻る。
AirVideo用カスタムFFMpegをインストール
ffmpeg-for-2.4.5-beta7.tar.bz2をダウンロード。
[root@ ~]# wget https://naonotes.com/airvideo/ffmpeg-for-2.4.5-beta7.tar.bz2 エンターキー
ffmpeg-for-2.4.5-beta7.tar.bz2がダウンロードされた。
ffmpeg-for-2.4.5-beta7.tar.bz2を展開。
[root@ ~]# tar jxvf ffmpeg-for-2.4.5-beta7.tar.bz2 エンターキー
FFMpegが展開された。
FFMpegをインストールする。
[root@ ~]# cd ffmpeg エンターキー
[root@ ~ffmpeg]# ./configure –enable-libmp3lame –enable-static –enable-gpl –enable-pthreads –enable-libx264 –disable-shared && make && make install エンターキー
これでFFMpegはインストールされ、AirVideoに必要なライブラリが揃った。
[root@ ~ffmpeg]# cd エンターキー
でカレントディレクトリへ戻る。
AirVideo用ディレクトリの作成
動画保存用ディレクトリを作成。
[root@ ~]# mkdir /var/www/html/dav/movies エンターキー
保存用ディレクトリが作成された。
インストール用ディレクトリの作成。
[root@ ~]# mkdir /usr/local/airvideo エンターキー
インストール用ディレクトリが作成された。
ディレクトリの所有権を変更
動画保存用ディレクトリの所有権をrootからApacheへ変更。
[root@ ~]# chown apache.apache /var/www/html/dav/movies エンターキー
ディレクトリの所有権が変更された。
AirVideoのダウンロード
Linux版AirVideoをダウンロード。
[root@ ~]# cd /usr/local/airvideo エンターキー
[root@ ~airvideo]# wget https://naonotes.com/airvideo/AirVideoServerLinux.jar エンターキー
Linux版AirVideoがダウンロードされた。
[root@ ~airvideo]# cd エンターキー
でカレントディレクトリへ戻る。
設定ファイルの作成
AirVideo設定ファイルを作成する。
[root@ ~]# vi /usr/local/airvideo/properties エンターキー
真っ白なファイルが開くので、そこに下記テキストをペースト。
–ここから–
path.ffmpeg = /usr/local/bin/ffmpeg
password = AirVideo用パスワード
subtitles.encoding = windows-1250
subtitles.font = Verdana
folders = Movies:/var/www/html/dav/movies
–ここまで–
書き込んだら:wqで終了。
AirVideo起動プログラムの作成
再起動しても自動起動するよう起動プログラムを作成する。
[root@ ~]# vi /etc/init.d/airvideo エンターキー
真っ白なファイルが開くので、そこに下記テキストをペースト。
–ここから–
#!/bin/sh
#
# chkconfig: 345 77 01
# description: Air Video is stream videos to iOS.
# processname: airvideoserver
# pidfile: /var/run/airvideoserver.pid
#
# Source function library.
. /etc/init.d/functions
. /etc/sysconfig/network
JAVA=`which java`
AIRVIDEO=/usr/local/airvideo/AirVideoServerLinux.jar
CONFIG=/usr/local/airvideo/properties
LOG=/var/log/airvideo.log
PIDFILE=/var/run/airvideoserver.pid
LOCKFILE=/var/lock/subsys/airvideoserver
RETVAL=1
start(){
echo -n “Starting AirVideo: “
if [ -f $LOCKFILE ]; then
echo $”airvideoserver service is already running.”
RETVAL=1
else
exec $JAVA -jar $AIRVIDEO $CONFIG >> $LOG 2>&1 &
RETVAL=$?
touch $LOCKFILE
ps -ef | grep $CONFIG | grep -v grep | awk ‘{print $2}’ > $PIDFILE
fi
[ $RETVAL = 0 ] && success $”$base startup” || failure $”$base startup”
echo
return $RETVAL
}
stop(){
echo -n “Shutting down AirVideo: “
exec ps -ef | grep $CONFIG | grep -v grep | awk ‘{print $2}’ | xargs kill -9 >/dev/null 2>&1
RETVAL=$?
[ $RETVAL = 0 ] && success $”$base shutdown” || failure $”$base shutdown”
rm -f $LOCKFILE
rm -f $PIDFILE
echo
return $RETVAL
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
$0 stop
$0 start
;;
status)
status airvideoserver
if [ -f $LOCKFILE ]; then
RETVAL=0
else
RETVAL=3
fi
;;
*)
echo “Usage: $0 {start|stop|restart|status}”
RETVAL=1
;;
esac
exit
–ここまで–
ミスなくペーストできたら:wqで保存。
起動プログラムに実行権を付与
起動プログラムがAirVideoを起動できるよう実行権を付与する。
[root@ ~]# chmod 755 /etc/init.d/airvideo エンターキー
これで実行権が与えられた。
自動起動設定
再起動時に自動起動するよう設定。
[root@ ~]# chkconfig –add airvideo エンターキー
これで自動起動するよう設定された。
ログのローテーションと自動削除設定
ログが溜まり過ぎないようにログファイルのローテーション設定。
[root@ ~]# vi /etc/logrotate.d/airvideo エンターキー
真っ白なファイルが開くので、そこに下記テキストをペースト。
–ここから–
/var/log/airvideo.log
{
daily
missingok
rotate 10
}
–ここまで–
ログのローテーション設定は終了した。
AirVideoの起動
AirVideoを起動する。
[root@ ~]# /etc/init.d/airvideo start エンターキー
AirVideoサーバーが起動した。
これでVPSでの設定は終了。
WebDAVのmoviesフォルダに動画を入れておこう。
iPhone(iPad)での設定
AirVideo Clientをダウンロードする。
Air Video – Watch your videos anywhere!
カテゴリ: ユーティリティ
価格: ¥250
AirVideoを起動し、+をタップ。
Specify Address Manuallyをタップ。
Locationにホスト名を入力し、Saveをタップ。
サーバーが追加されるので、それをタップ。
propertiesファイルを入力した時に記述したパスワードを入力し、Confirmをタップ。
これで動画を再生することが出来る。
VPSのクラウドメディアサーバー化もほぼ完成
VPSサーバーでのファイルの送受信にとどまらず、音楽や動画もストリーミング再生が可能になった。
しかもファイルアップロードはドラッグ・アンド・ドロップで可能。
一応すべて簡単にデータをアップロードできるように設計したつもりです。
それにしても、AirVideoの設定は最高難易度だったな(-_-;)
トラップ多すぎ。
エンコーダーをFFMpegに絞ることでインストールできた。
K.s様ヒントをくれてありがとうございますヽ(´ー`)ノ
FFMpegはかなり広範囲の動画をエンコードできるので、これで十分だと思われる。
昨日のSubsonicといい、なんかもう俺の役目は済んだっていう感じがするわw
それでは最強のクラウドマルチメディア環境を楽しんで下さいなヽ(´ー`)ノ