mkdir ~/src/ cd ~/src/ svn co svn://svn.ffmpeg.org/soc/libavfilter cd libavfilter/ sh checkout.sh cd ffmpeg/libavcodec/ wget http://svn.xiph.org/trunk/ffmpeg2theora/patches/6to2channel-resample.patch patch resample.c < 6to2channel-resample.patch cd ../ mkdir ~/ffmpeg ./configure --prefix=$(realpath ~/ffmpeg) && make && make install
2011-01-26
Resampling with input channels greater than 2 unsupported.
http://hibari.2ch.net/test/read.cgi/software/1270542020/-100
2011-01-25
ffmpegのyuv以外で早送りにする例
yuvのファイルサイズが大きいです。
http://www.google.co.jp/search?num=100&hl=ja&safe=off&biw=1272&bih=776&q=yuv+sox+ffmpeg&btnG=%E6%A4%9C%E7%B4%A2&aq=f&aqi=&aql=&oq=
http://ffmpeg.org/faq.html#SEC23
http://ffmpeg.org/libavfilter.html#SEC34
利用するディスクサイズが少なくなったはずです。果たして本当にそうでしょうか?
soxは100倍まで対応しているようです。
聞き取る場合100倍は無理で2~4倍程度になると思います。
下記の例はperlやexprなどの外部コマンドが必要です。
threadNumを手動で入れる場合で、cpuの利用を最低にしたい場合は1です。
mpeg4のオプションはマニュアルの内容のままです。
実は -vf sox=xxx のようなオプションがあるのかもしれません、が見つかりません。
例えば、&& ffmpeg, && sox となっている部分を、
&& echo ffmpeg, && echo sox と変更すると、コマンドの文字が出力されます。
http://www.google.co.jp/search?num=100&hl=ja&safe=off&biw=1272&bih=776&q=yuv+sox+ffmpeg&btnG=%E6%A4%9C%E7%B4%A2&aq=f&aqi=&aql=&oq=
http://ffmpeg.org/faq.html#SEC23
http://ffmpeg.org/libavfilter.html#SEC34
利用するディスクサイズが少なくなったはずです。果たして本当にそうでしょうか?
soxは100倍まで対応しているようです。
聞き取る場合100倍は無理で2~4倍程度になると思います。
下記の例はperlやexprなどの外部コマンドが必要です。
threadNumを手動で入れる場合で、cpuの利用を最低にしたい場合は1です。
srcFile=./src.mp4 \
&& threadNum=$(expr $(grep ^processor /proc/cpuinfo | wc -l) \* 2 - 1) \
&& frameSize="-s 512x288" \
&& frameRate=60 \
&& diameter=3 \
&& videoBitrate=1600 \
&& ffmpeg -threads ${threadNum} -y -i ${srcFile} \
-mbd 2 -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 2147483647 \
-vcodec mpeg4 -f mp4 ${frameSize} \
-vf "setpts=$(perl -e "print 1/${diameter}")*PTS" \
-an -r $(perl -e "print int(${diameter}*${frameRate})") \
-b $(perl -e "print ${videoBitrate}*${diameter}")k \
-bt $(perl -e "print ${videoBitrate}*${diameter}*20")k -bufsize 1835k -maxrate 400000k -minrate 0 \
tmp1.mp4 \
&& ffmpeg -threads ${threadNum} -y -i ${srcFile} -vn -aq 100 tmp2.wav \
&& sox tmp2.wav tmp3.wav tempo ${diameter} 30 \
&& ffmpeg -threads ${threadNum} -y -i tmp1.mp4 -i tmp3.wav \
-mbd 2 -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 2147483647 \
-vcodec mpeg4 -f mp4 ${frameSize} \
-acodec libfaac -aq 80 -async 30 -r ${frameRate} \
-b ${videoBitrate}k -bt $(expr ${videoBitrate} \* 20)k -bufsize 1835k -maxrate 4000k -minrate 0 \
-pass 1 /dev/null \
&& ffmpeg -threads ${threadNum} -y -i tmp1.mp4 -i tmp3.wav \
-mbd 2 -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 2147483647 \
-vcodec mpeg4 -f mp4 ${frameSize} \
-acodec libfaac -aq 80 -async 30 -r ${frameRate} \
-b ${videoBitrate}k -bt $(expr ${videoBitrate} \* 20)k -bufsize 1835k -maxrate 4000k -minrate 0 \
-pass 2 result.mp4流れは、速い映像を作る => 速い音を作る => 2passエンコードで合成する、です。mpeg4のオプションはマニュアルの内容のままです。
実は -vf sox=xxx のようなオプションがあるのかもしれません、が見つかりません。
例えば、&& ffmpeg, && sox となっている部分を、
&& echo ffmpeg, && echo sox と変更すると、コマンドの文字が出力されます。
2011-01-20
ffmpegのfilterでmovie,overlayが使えない例
追記: 2011-07-11現在、通常のパッケージのffmpegでmovieフィルターは動作します。
http://ffmpeg-users.933282.n4.nabble.com/Overlay-filter-with-new-movie-filter-problem-td3301170.html
http://www.corbellconsulting.com/2010/07/using-ffmpeg-to-add-and-watermark-overlay-on-a-video-2/
http://ffmpeg-users.933282.n4.nabble.com/problem-with-movie-td3069917.html
http://fixedpoint.jp/ffmpeg/ffmpeg.html
http://www.ffmpeg.org/ffmpeg.html
動画に画像を書き込む場合に使うようですが使えません。
http://ffmpeg-users.933282.n4.nabble.com/Overlay-filter-with-new-movie-filter-problem-td3301170.html
$ eix -e media-video/ffmpeg -c [I] media-video/ffmpeg (0.7_rc1@2011年07月02日): Complete solution to record, convert and stream audio and video. Includes libavcodec. $ ffmpeg -version 2>&1|head -n3 ffmpeg version 0.7-rc1, Copyright (c) 2000-2011 the FFmpeg developers built on Jul 2 2011 13:46:01 with gcc 4.4.5 configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc --disable-static --enable-gpl --enable-version3 --enable-postproc --enable-avfilter --disable-stripping --disable-debug --disable-vaapi --disable-ffplay --disable-vdpau --enable-libmp3lame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libfaac --enable-nonfree --enable-x11grab --enable-frei0r --enable-libfreetype --enable-pthreads --enable-libopencore-amrwb --enable-libopencore-amrnb --enable-libgsm --enable-libdirac --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libvpx --enable-libopenjpeg --disable-altivec --disable-avx --enable-pic --cpu=host --enable-hardcoded-tables下記の記述はパッケージのffmpegのバージョンが古い場合に最新版をソースから入れると欲しいオプションが追加される例です。
http://www.corbellconsulting.com/2010/07/using-ffmpeg-to-add-and-watermark-overlay-on-a-video-2/
http://ffmpeg-users.933282.n4.nabble.com/problem-with-movie-td3069917.html
http://fixedpoint.jp/ffmpeg/ffmpeg.html
http://www.ffmpeg.org/ffmpeg.html
動画に画像を書き込む場合に使うようですが使えません。
svn co svn://svn.ffmpeg.org/soc/libavfilter cd libavfilter/ sh checkout.sh cd ffmpeg/ ./configure --list-filters
export CFLAGS="-O2 -pipe -march=native"
export CXXFLAGS="${CFLAGS}"
export CHOST="x86_64-pc-linux-gnu"
INSTALLDIR=~/ffmpeg-`date +%Y-%m-%d`
mkdir ${INSTALLDIR}
make distclean
make clean# あらかじめパッケージ版を入れておくと必要なライブラリが入っている場合が多いです。 # $ eix ^ffmpeg$ -c # [I] media-video/ffmpeg (0.6_p25767@2010年12月19日): Complete solution to record, convert and stream audio and video. Includes libavcodec. # sudo emerge -av libnut # sudo USE="ffmpeg" emerge -av opencv
./configure \
--prefix=${INSTALLDIR} \
--enable-gpl \
--enable-nonfree \
--enable-version3 \
--enable-gray \
--enable-small \
--enable-frei0r \
--enable-libopencore-amrnb \
--enable-libopencore-amrwb \
--enable-libopencv \
--enable-libdirac \
--enable-libfaac \
--enable-libfreetype \
--enable-libgsm \
--enable-libmp3lame \
--enable-libnut \
--enable-libopenjpeg \
--enable-libschroedinger \
--enable-libspeex \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libxvid \
--disable-altivec \
--disable-amd3dnow \
--disable-amd3dnowext \
--disable-mmx \
--disable-mmx2
make -j 3
make install
export PATH="{$INSTALLDIR}/bin:${PATH}"ffmpeg -i ./src.mp4 -vf "movie=0:png:./logo.png [logo]; [in][logo] overlay=10:10:1" logo.flv
2011-01-13
flvtool2のインストール
$ sudo layman -a graaff $ layman -l $ sudo layman -S && sudo eix-update $ eix flvtool2 $ sudo ACCEPT_KEYWORDS="~amd64" emerge -av flvtool2 $ ffmpeg -i src.mp4 tmp.flv && flvtool2 -UP tmp.flv用途は、
flow player http://flowplayer.org/plugins/streaming/pseudostreaming.html
nginx http://nginx.org/ http://wiki.nginx.org/Main
などで読み込んでいない部分のシークバーをクリックしても読み込める、など。
もしかすると失敗しても0を返すかもしれないので、
flvtool2 -UP xxx.flv && ... とつなげると困るかもしれない。
ffmpegのバージョンによってはエラーを出すかもしれない。
xen,kvm,別のサーバー、などにcentosなどを入れてrpmforgeなどを入れて、
yum install flvtool2としても似たようなバージョンが入るかもしれない。
2011-01-06
vertical-align
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<div style="background-color:gray;
width:120px;height:90px;
text-align:center;
line-height:90px;vertical-align:middle;">■</div>
</body>
</html>■
ブロック要素の中央にブロック要素のwidth,height以下の何かを配置する。tableタグのが良いかもしれない。
登録:
コメント (Atom)