動画関連メモ
AMRの部分もあったのでメモ。
http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/
http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26104-610.zip
http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26204-600.zip
unzip 26104-610.zip
unzip 26104-610_ANSI_C_source_code.zip
mv c-code libavcodec/amr_float
unzip 26204-600.zip
unzip 26204-600_ANSI-C_source_code.zip
mv c-code libavcodec/amrwb_float
もうひとつ
http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26073-600.zip
を入れてc-codeをlibavcodec/amr
調整中・・・
libmpcodecs/libmpcodecs.a In function `loader_init':
エラーばっかり出たけど
./configure --confdir=/etc/mplayer --disable-gui --enable-external-faad --enable-libavcodec --enable-amr_nb --enable-amr_nb-fixed --enable-amr_wb --enable-mp3lib --disable-win32
これにしたら大丈夫になった。
--enable-qtx
ってのがポイントだったらしい。
--disable-qtx disable Quicktime codecs [autodetect]
って書いてあるけど、これがなければ入るのかな大丈夫なのかな?
OKっぽい。
2006-04-17 17:50:00
mencoder /tmp/movie.3gp -vf scale=176:144 -oac mp3lame -lameopts cbr:br=8 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=32
:keyint=5:mbd=2 -o /tmp/movie.avi
どうも携帯用のビットレートに上手く合わないーー;と思っていたら。
vbitrateは bytesで指定なんだ・・・
* と思ったらやっぱbitだ。。。でも指定したのより大きくなる・・・><;
しかも!4以上の値を設定しろと。
ffmpeg は、元データがrawデータじゃないと無理?とか。
ってことで32kbits/sec以下にはできないとまぁそれ以上小さいと汚すぎで見えないけどね。
2006-04-10 17:28:54
AACとか使えなかったのでmakeやり直し。。。
./configure --confdir=/etc/mplayer --disable-gui --enable-qtx --enable-external-faad --enable-libavcodec --enable-amr_nb --enable-amr_nb-fixed --enable-amr_wb --enable-mp3lib
libavcodecに入れた。amr と amrwb_float を MPlayer にも入れる。
でmake
できるといいが。
mencoder in.3gp -ovc lavc -oac pcm -lavcopts vcodec=wmv1 -o out.avi
エラーで無くなった!出来た^-^。
2006-04-03 18:31:47
ffmpeg -y -i out.avi -vcodec flv -acodec mp3 out.flv
ffmpeg -y -i out.avi -vcodec swf -acodec mp3 out.swf
こんなのもできた^-^。
良い良い。
2006-03-24 14:35:39
+++ MP3 +++++++++++++++++++++
# wget http://jaist.dl.sourceforge.net/sourceforge/lame/lame-3.97b2.tar.gz
--17:11:18-- http://jaist.dl.sourceforge.net/sourceforge/lame/lame-3.97b2.tar.gz
=> `lame-3.97b2.tar.gz'
jaist.dl.sourceforge.net DNS... λ
jaist.dl.sourceforge.net[150.65.7.130]:80 ³... ³
HTTP ³... 200 OK
Ĺ: 1,327,960 [application/x-gzip]
100%[=================================================================================================================>] 1,327,960 644.55K/s ETA 00:00
17:11:20 (644.55 KB/s) - `lame-3.97b2.tar.gz' ¸ [1327960/1327960]
#./configure
# make
# make install
+++ FAAD2 ++++++++++++++++++++
FAAD2を先に入れないと駄目らしい
autoreconf -vif
./configure --enable-shared --enable-static --with-drm --with-mp4v2
make
make install
Makefileで「分離記号を欠いています」とか言われたので447以降は消してやった^へ^v
+++ FAAC ++++++++++++++++++++
# wget http://jaist.dl.sourceforge.net/sourceforge/faac/faac-1.24.tar.gz
--17:21:16-- http://jaist.dl.sourceforge.net/sourceforge/faac/faac-1.24.tar.gz
=> `faac-1.24.tar.gz'
jaist.dl.sourceforge.net DNS... λ
jaist.dl.sourceforge.net[150.65.7.130]:80 ³... ³
HTTP ³... 200 OK
Ĺ: 282,585 [application/x-gzip]
100%[=================================================================================================================>] 282,585 1.85M/s ETA 00:00
17:21:16 (1.85 MB/s) - `faac-1.24.tar.gz' ¸ [282585/282585]
autoreconf -vif
./configure --enable-shared --enable-static
make
make install
ffmpegのところで。
# ./configure --enable-amr_nb --enable-amr_nb-fixed --enable-amr_wb --enable-faac --enable-mp3lame
2006-03-23 18:10:42
Point 1:コマンドに 2>&1をつけてエラー出力も標準出力へ^-^。
Point 2:exec関数で標準出力を配列へ取得^-^。
++++++++++++++++++++++++++++++++++++++++++++++
$cmd ="ffmpeg -i out2.3gp 2>&1";
exec($cmd,$out);
echo "===================================
\n";
print_r ($out);
echo "===================================
\n";
++++++++++++++++++++++++++++++++++++++++++++++
# php -f vdata.php
===================================
Array
(
[0] => Input #0, mov,mp4,m4a,3gp, from 'out2.3gp':
[1] => Duration: 00:00:05.0, bitrate: 109 kb/s
[2] => Stream #0.0: Video: mpeg4, 176x144, 15.00 fps
[3] => Must supply at least one output file
[4] => ffmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
[5] => built on Mar 14 2006 13:03:57, gcc: 3.4.5
)
===================================
あとは
[1] => Duration: 00:00:05.0, bitrate: 109 kb/s
[2] => Stream #0.0: Video: mpeg4, 176x144, 15.00 fps
この2行から時間、ビットレート、動画形式、サイズ、フレームレートを取得。
2006-03-22 12:36:30
一枚だけ作りたかったので フレームレートを1にして動画に変換した後1秒抜き出したりしたけど。
そんなことしなくてよかった。
# ffmpeg -img jpeg -ss 00:00:00 -t 00:00:00.001 -i out2.avi %0d.jpg
これで一個だけできた。00:00:00.001。
2006-03-20 19:28:20
# ffmpeg -i out3.3gp
ffmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
built on Mar 14 2006 13:03:57, gcc: 3.4.5
Input #0, mov,mp4,m4a,3gp, from 'out3.3gp':
Duration: 00:00:05.2, bitrate: 23 kb/s
Stream #0.0: Video: mpeg4, 128x96, 5.00 fps
Must supply at least one output file
これを保存して解析するしかないのかな。。。
音声フォーマットは分からないなぁ。。。
2006-03-20 14:27:05
画面サイズ。sqcif:128x96とqcif:176x144だと単純計算で。
sqcif : qcif = 0.48 : 1
なので約半分。ですが、FFmpegで出力したときは、2:3くらいの違い。
レフームレート
音声にもよるのでしょうが、
15 fbps : 10 fbps
3 : 2
になりました。
ビットレート
-b の設定
-b => 50 : 10
fsize 33 : 10
こんな感じ。
もとのフレームレートもビットレートも元動画より挙げる意味は無いので
そのデータを先に取得しておく必要がありそう。
2006-03-20 14:13:23