Ustream配信に使えるffmpegの作り方
Mint11のベースになってるUbuntu11.04でも同じはずです。
必要なパッケージのインストール
ち、違うわよ!これはMintを再インストールしたばっかりなだけで、gitも入れてない意識の低いプログラマじゃないんだからね!
apt-get install \ yasm \ git \ libasound2-dev \ libmp3lame-dev \ librtmp-dev \ libx11-dev \ libxext-dev \ libxfixes-dev
libx264のコンパイル
Mint11標準のはバージョンが古いとのことで。
(何かの手違いで、)Nightlyを取ってきてコンパイル。
# tar xvjf /home/moguno/ダウンロード/last_x264.tar.bz2 # cd x264-snapshot-20120225-2245/ # ./configure --enable-shared # make # make install # ln -s /usr/local/lib/libx264.so.120 /usr/lib/
/etc/ld.so.conf.d/に突っ込むのが筋な気がしますが、めんどいのでシンボリックリンク。
ffmpegのインストール
職人の朝は公式ページのgitコマンドをターミナルにコピペするところから始まる。
# git clone git://source.ffmpeg.org/ffmpeg # cd ffmpeg # ./configure --enable-x11grab --enable-libx264 --enable-librtmp --enable-libmp3lame --enable-gpl # make # make install
関連するライブラリを入れ忘れててもエラーにならずmakeまで通っちゃうので、configure後のメッセージをよく見て、目的のコーデックが有効になってるか確認しよう。
配信してみる
uStreamで配信用XMLを取得し、以下のコマンドの然るべきところにはめ込む。
/usr/local/bin/ffmpeg -r 20 -s 800x600 -f x11grab -i :0.0 \ -f alsa -i default -acodec libmp3lame -vcodec libx264 \ -b 300k -ar 44100 -ab 48k -threads 4 -vsync 1 -y -f flv\ 'rtmp://秘密.fme.ustream.tv/ustreamVideo/10508364/秘密offair flashver=FME/3.0\20(compatible;\20FMSc/1.0)'