NetCommons の拡張モジュール「動画配信」を利用するためには、サーバーサイドに ffmpeg、ffmpeg-php、PHP GD library が、クライアントサイドには Adobe Flash Player10 がそれぞれ別途導入されている必要があります。導入自体は簡単なように感じましたが、実際にインストール作業をするために、方法を探ってみると、実に様々やり方がありました。その方法の一例をお示しします。今回インストールしたサーバーは Cent OS 5.6、動画配信モジュールは multimedia-2.3.1.1 でした。
また今回の作業はすべてSSHコマンド(Tera Term)を使用して行っています。
※ ***** の部分はユーザーによってディレクトリ名が異なります。
/* -------------------------------------------- */
// PHP GD Libraryのインストール
/* -------------------------------------------- */
- 既にインストールさているか確認する
# yum list | grep php - "php-gd" が一覧に表示されていない場合は、インストールする
# yum install php-gd - httpd を再起動する
# /etc/init.d/httpd restart
// ffmpegのインストール
/* -------------------------------------------- */
- yumに RPMforge のリポジトリから対応パッケージを追加する
$ wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
# rpm -Uhv rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm - yum経由で ffmpeg パッケージをインストールする
# yum --enablerepo=rpmforge install -y ffmpeg
// ffmpeg-phpのインストール
/* -------------------------------------------- */
- php-devel をインストールする
# yum install php-devel - ffmpeg-devel をインストールする
# yum --enablerepo=rpmforge install ffmpeg-devel - ffmpeg-php のインストールする
$ wget http://downloads.sourceforge.net/ffmpeg-php/ffmpeg-php-0.6.0.tbz2
$ tar jxvf ffmpeg-php-0.6.0.tbz2
$ cd ffmpeg-php-0.6.0
3-1. toGDImage() のパッチを当てる
$ cd /home/*****/ffmpeg-php-0.6.0/
$ wget wget http://hazaah.com/download/ffmpeg_frame.c.patch
$ patch -p0 ffmpeg_frame.c < ffmpeg_frame.c.patch
3-2. ffmepg_frame.c を編集する
$ vi ffmpeg_frame.c
$ [:%s/PIX_FMT_RGBA32/PIX_FMT_RGB32] → [:wq]
$ phpize
$ ./configure
$ make
$ make install - ffmpeg.ini に追加
$ vi /etc/php.d/ffmpeg.ini
// 以下の手順でエディタを入力する
[Esc]→ extension=ffmpeg.so →[Esc]→[:wq] - /usr/loca/bin/ にシンボリック・リンクを貼る
$ ln -s /usr/bin/ffmpeg /usr/local/bin/ffmpeg - httpd を再起動する
$ /etc/init.d/httpd restart - 不要なファイルを削除する
$ cd
$ rm -r ffmpeg-php-0.6.0.tbz2
以上の方法でインストールを行うことで、動画配信モジュールを問題なく動かすことができるようになりました。今回色々と調べていく中で、ポイントはシンボリック・リンクを /usr/loca/bin/ に貼るという手順です。この作業を抜いていたために、なかなか成功できず苦労しました。
自サーバーをお持ちの方で、動画配信モジュールの導入をご検討の方の参考になればと思います。