2010/07/24 pt2のテスト(2)
の続き。
視聴環境を用意していないので、未だちょこちょことepgrecから録画出来ているかチェックする、程度にしか使っていないのだが、正直きつい。誰だ、TSファイルは処理が軽い、などと言っているのは。ボトルネックがどこにあるのか分からないのだが、長時間、まともに視聴するのは不可能な状態。
つーか、うちのノートPCも動画再生環境、ちととち狂っているせいもあるのかもしれないが、単純ファイルコピーとストリーミングの際のネットワーク転送速度が一緒、ってことは上限振り切っているってことだよね・・・
当然、単純に容量的な問題も出てくるわけで、圧縮を検討。
最初、ノートPCで一晩かけてやってみたのだが、一つやって飽きた。時間が掛かり過ぎる。3fpsくらい。
なので、将来の自動化も踏まえて録画サーバ(ubuntu)自身にやらせてみた。
以下、まさかの全コピペ。
http://f14s.biz/makoto/?p=2363
http://calves.jugem.jp/?eid=1001
sudo apt-get remove ffmpeg x264 libx264-dev
sudo apt-get update
sudo apt-get install build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev
cd
git clone git://git.videolan.org/x264.git
cd x264
./configure
make
sudo checkinstall –pkgname=x264 –pkgversion “2:0.`grep X264_BUILD x264.h -m1 | cut -d’ ‘ -f3`.`git rev-list HEAD | wc -l`+git`git rev-list HEAD -n 1 | head -c 7`” –backup=no –default
cd
git clone git://review.webmproject.org/libvpx.git
cd libvpx
./configure
make
sudo checkinstall –pkgname=libvpx –pkgversion=”`date +%Y%m%d%H%M`-git” –backup=no –default
cd
svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure –enable-gpl –enable-version3 –enable-nonfree –enable-postproc –enable-pthreads –enable-libfaac –enable-libmp3lame –enable-libopencore-amrnb –enable-libopencore-amrwb –enable-libtheora –enable-libvorbis –enable-libvpx –enable-libx264 –enable-libxvid –enable-x11grab
make
sudo checkinstall –pkgname=ffmpeg –pkgversion “4:SVN-r`svn info | grep Revision | awk ‘{ print $NF }’`” –backup=no –default
hash x264 ffmpeg ffplay
cd ~/ffmpeg
make tools/qt-faststart
sudo checkinstall –pkgname=qt-faststart –pkgversion “4:SVN-r`svn info | grep Revision | awk ‘{ print $NF }’`” –backup=no –default install -D -m755 tools/qt-faststart /usr/local/bin/qt-faststart
sudo apt-get install mplayer
sudo apt-get install gpac
cd /user/local/share/ffmpeg/
sudo emacs libx264-hq-ts.ffpreset
level=41
crf=25
coder=1
flags=+loop
cmp=+chroma
partitions=+parti8x8+parti4x4+partp8x8+partb8x8
me_method=umh
subq=7
me_range=16
g=250
keyint_min=25
sc_threshold=40
i_qfactor=0.71
b_strategy=1
qmin=10
rc_eq=’blurCplx^(1-qComp)’
bf=16
bidir_refine=1
refs=6
deblockalpha=0
deblockbeta=0
sudo emacs ts2mp4_noresize.sh
#!/bin/bash -x
TS=$1
BASE=$(basename $TS .ts)
[ "${BASE}.ts" = "$(basename $TS)" ] || exit 1
#CPU_CORES=0
CPU_CORES=$(/usr/bin/getconf _NPROCESSORS_ONLN)
X264_HIGH_HDTV=”-f mp4 -vcodec libx264 \
-fpre /usr/local/share/ffmpeg/libx264-hq-ts.ffpreset \
-r 30000/1001 -aspect 16:9 -s 1280×720 -bufsize 20000k -maxrate 25000k \
-acodec libfaac -ac 2 -ar 48000 -ab 128k -threads ${CPU_CORES}”
ffmpeg -y -i $TS ${X264_HIGH_HDTV} ${BASE}.mp4
exit
太字の部分を変更。
後は上記に実行権限を付けて、TSファイルを引数に渡してやれば勝手に動く。
こちらもCPUぶん回しで、5fpsくらい。まぁatomだし・・・
録画マシンで動かすのは現実的ではない、という予想通りの結論。
(非常に時間がかかるので)一つしか試していないが、ファイルサイズは1/5。画質はまぁyoutubeのHD画質とは遜色はないんじゃないかな、という感じ。難しいことは分からんので。