====== ffmpeg-php(動画,音声データの解析や変換) ======
===== 14.04 LTS へインストール =====
Ubuntu 14 から ffmpeg 関連が削除されたため、自分でコンパイルしないとインストールできなくなりました。\\
\\
コンパイルに必要な物をインストール。
$ sudo apt-get install php5-dev
$ sudo apt-get install nasm
$ sudo apt-get install git
ffmpeg のインストール。
$ wget http://ffmpeg.org/releases/ffmpeg-2.3.1.tar.bz2
$ tar xjf ffmpeg-2.3.1.tar.bz2
$ cd ffmpeg-2.3.1
$ ./configure --enable-shared --enable-swscale --enable-gpl
$ make
$ sudo make install
$ cd ..
$ rm -rf ffmpeg-2.3.1*
ffmpeg-php のインストール。
$ git clone https://github.com/tony2001/ffmpeg-php.git
$ cd ffmpeg-php
$ phpize
$ ./configure --enable-skip-gd-check
$ make
$ sudo make install
$ cd ..
$ rm -rf ffmpeg-php
php.ini の最後の方に以下を追加。
extension=ffmpeg.so
apache2 の再起動。
$ sudo service apache2 restart
===== Ubuntu 12.04 へインストール =====
以下のコマンドを実行すればインストールされます。
$ sudo apt-get install php5-ffmpeg
$ sudo /etc/init.d/apache2 restart
===== XAMPP USB Lite 1.7.7 へインストール =====
XAMPP にインストール場合は、PHP とコンパイラ、バージョンが一致している必要があります。\\
このバージョン用の ffmpeg-php は以下からダウンロードしてください。\\
http://x32.elijst.nl/ffmpeg6-php53-win32-vc9-all.zip\\
\\
php_ffmpeg.dll は xampp/php/ext にコピー。残りの dll はパスの通ったフォルダへ。\\
\\
xampp/php/php.ini に以下の記述を追加し Apache を再起動。
;extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_ffmpeg.dll
===== インストール確認 =====
phpinfo() を実行し以下のように表示されればインストールに成功しています。\\
{{:web:web0001.png|}}
===== 関数マニュアル =====
==== ffmpeg_movie クラス ====
^float getDuration()|ファイルの長さを秒で取得|
^int getFrameCount()|ファイルの長さをフレーム数で取得|
^float getFrameRate()|フレームレート(fps)取得|
^string getFilename()|ファイル名取得\\ WindowsだとSJISなので注意|
^string getComment()|コメント取得\\ mp3 で試したが取得でない|
^string getTitle() |タイトル取得|
^string getAuthor()\\ string getArtist()|アーティスト名取得(ID3)|
^string getCopyright()|コピーライト取得|
^string getGenre()|ジャンル取得(ID3)|
^int getTrackNumber()|トラック番号取得(ID3)|
^int getYear()|制作年取得(ID3)|
^int getFrameHeight()|動画の横幅をピクセル数で取得|
^int getFrameWidth()|動画の高さをピクセル数で取得|
^string getPixelFormat()|ピクセルフォーマット取得|
^int getBitRate()|総ビットレート取得(bps)|
^int getVideoBitRate()|動画(音声を除いた)のビットレート取得(bps)|
^int getAudioBitRate()|音声のビットレート取得(bps)|
^int getAudioSampleRate()|音声のサンプリングレート取得|
^int getFrameNumber()|カレントフレーム番号取得|
^string getVideoCodec()|動画コーデック取得|
^string getAudioCodec()|音声コーデック取得|
^int getAudioChannels()|音声チャンネル数取得|
^bool hasAudio()|音声データを含んでいるか|
^bool hasVideo()|動画データを含んでいるか|
^ffmpeg_frame getFrame([フレーム番号])|フレームデータ取得\\ (フレームが存在しないい場合は falseを 返す)|
^ffmpeg_frame getNextKeyFrame()|次のキーフレームのフレームデータ取得\\ (フレームが存在しないい場合は falseを 返す)|
==== ffmpeg_frame クラス ====
^toGDImage()|フレームデータを GD のイメージ形式に変換|
このメソッド意外は使うことがなさそうなので記述しません。\\
英文のドキュメントは http://ffmpeg-php.sourceforge.net/doc/api/。