最新のFFmpegをソースからインストールする

2014-11-28
このエントリーをはてなブックマークに追加

スマフォで撮った動画をアップしてブラウザで表示させたい!っていう要望があったとしたら今どきならmpeg4とoggに変換しておいてvideoタグで表示させてやるのが手っ取り早いかと。「YouTubeAPI叩いてアップすりゃいいじゃん」とか聞こえない。

動画を変換するならFFmpegが便利なんですけど、yumでインストールしようとすると0.6という非常に古いバージョンをインストールしようとします(’14.11.27現在)ので、ここはソースからインストールしようと。

sudo rpm -Uhv http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

sudo yum install yasm-devel yasm
sudo yum install libogg libogg-devel
sudo yum install faac faac-devel
sudo yum install xvidcore xvidcore-devel zlib-devel zlib
sudo yum install libvorbis libvorbis-devel
sudo yum install libtheora libtheora-devel

git clone git://git.videolan.org/x264.git

cd x264
sudo ./configure –enable-shared
sudo make
sudo make install

sudo git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
sudo ./configure –enable-gpl –enable-version3 –enable-nonfree –enable-shared –enable-libfaac –enable-libx264 –enable-libtheora –enable-libvorbis
sudo make
sudo make install

vi /etc/ld.so.conf
/usr/local/lib

sudo ldconfig

$ ffmpeg -version
ffmpeg version N-67254-g0c42f47 Copyright (c) 2000-2014 the FFmpeg developers
built on Oct 30 2014 06:36:01 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-4)

ライブラリ、コーデックの類は依存関係がめんどくさいのでyumで。x264だけyumで入るバージョンが古かったのでgitから落としてきました。

スマートフォンから動画をアップしてブラウザで閲覧、っていうのであればmp4とoggがあれば足りるだろうということで最低限しかいれてません。これで足りてる、はず。IE8以下は知らない。

WebMってどうなったんだろ。

12/04追記、configureに–enable-libtheora –enable-libvorbis が足りなかったので追加。

Tags:

FFMPEGを使って動画を携帯向け(3gp/mpeg4)に変換する

2010-09-28
このエントリーをはてなブックマークに追加

どんなコンテンツを作っても「それ携帯で使えるの?」という問い合わせは必ずあるんです。ちょっと前までは携帯で動画なんて観ることは無かったけど、今は大半の機種でQVGA以上の動画が再生できるようなので、携帯でも気軽に動画を楽しめるんですね。

ffmpeg -y -i 変換元ファイル -r 30 -fs 280000 -vcodec mpeg4 -vb 64k -s 320×240 -acodec libfaac -ar 48000 video.3gp

ちなみに、Softbank向けのオプションです。実機で再生確認済みです。DoCoMoでも再生できるかもしれませんが、もしかすると音が出ないかも。音声コーデックだけ違うとか勘弁して欲しい。w

勝手サイト前提なので配信する動画ファイルは300kb以下という制限があります。最新の情報は調べ切れていないのですが、確かSoftbankは300kb以下だったと。もう、300kbなんて、数秒しか再生できないです。「-fs 280000」で280000b以下、というオプションにしてあります。300000と指定すると若干はみ出ます。

大半の機種でQVGAサイズが再生できると思いますが、古い機種まで対応したいというのであれば、サイズをQCIF(176×144)にすればよいかと。あとは15fpsにしてビットレートも変えないといけないかもですね。

FFMPEGの構築に関しては長くなるので割愛します。が、configureくらいは書き残しておきます。

–enable-version3 –enable-libx264 –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-gpl –enable-nonfree –enable-shared –enable-libopencore-amrwb –enable-libopencore-amrnb

iPhoneでも再生できるようにしたかったのと、HTML5対応とか考えてh.264も入れてみました。

LTEもくるし、スマートフォンも増えるだろうし、動画ってPCサイトだけのものじゃなくなりますね。