« レディイーグル | トップページ | iPhone 3Gファームアップ失敗 »

2009年6月16日 (火)

CentOS5.3にHandBrakeを入れて使う

巷では,DVDを字幕や複数音声付きのmp4ファイルに変換する際に使用されることが多いHandBrake.Mac,Windows,Linuxと幅広い環境で動作するのもウリの1つです.

私の用途は少しこれとは違うけど,先日Express5800 S70FL上のCentOS5.3に入れて使い始めたのでそのメモ.

ココからソースを落とし,

# yum install gcc-c++ jam zlib-devel libtool yasm-devel subversion bzip2-devel
# tar xvzf HandBrake-0.9.3.tar.gz
# cd HandBrake
# ./configure && jam
# cp HandBraleCLI /usr/local/bin/

※cpせずにinstall使うかstripした方が本当は良い

以上,終わり.

いらないものまでyum installしている気がするけど気にしないで :-)

今のところGUI使う予定は無いのでCLIのみインストールしてます.

で,私はivtvドライバ(*1)を使って720x480のMPEG2でキャプチャしたCS放送(*2)をmp4に変換するために使用中.以下のようなスクリプトを組み,『conv2mp4.sh *.mpg』みたいな感じで実行.

#!/bin/sh
for fname in "$@"
do
  echo "Start:" $fname -- `date`
  nohup /usr/local/bin/HandBrakeCLI -i $fname\
  -o `dirname $fname`/`basename $fname ".mpg"`.mp4 -e x264\
  -b 1200 -a 1 -E faac -B 160 -R Auto -6 dpl2 -f mp4 -p\
  --crop 0:0:0:0 -m -2 --width 720 -T\
  -x ref=2:bframes=2:me=umh > /dev/null
  echo `date`
done

スクリプトの中身は大したこと無いです.単に自動でクロップされてイヤンなことがあったので,その辺りの調整+αが中心です.

Core2Duo E8400(3GHzのdual core)で動かして,だいたい1時間物が50分くらいで再エンコ終了.まぁまぁ満足かな.WindowsでCUDAとか使えるエンコーダを使ったら,さらに感動的な速度になるとは思うけど.

で,このS30FLはそこそこ速いCPUを乗せたにも関わらず,殆どいつもidle状態で遊んでいてもったいないなぁという感じでした.cat /proc/cpuinfoをすると,大抵SpeedStepでクロックダウンされていて以下のような感じでした.

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
stepping        : 10
cpu MHz         :
2003.000
cache size      : 6144 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx smx est tm2 cx16 xtpr lahf_lm
bogomips        : 5987.94

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
stepping        : 10
cpu MHz         :
2003.000
...

# 普段は500MHzでも余裕で捌けるくらいの負荷なので,もっとクロックを下げられると嬉しいんだけどな…

しかし,HandBrakeを動かすと本領発揮.HotSaNICで見るとこんな感じ.

Cpu6hhandbreak

図1: CPUをゴリゴリ使ってますの図

極限までCPUパワーを使ってますって感じで気持ちイイ.きちんと複数コア使い,ギリギリまでその能力を使い切ってくれています.こういうのを見ると Core 2 Quad Q9550s を乗せたくなってくるなぁ.

そしてCPUが100%バリバリ働き始めるとコア温度もググッと上がり,こんな感じ.

Core1dayhandbreak

図2: core1の温度変化

このグラフを見ると,最高でも47度弱で頭打ちになっています.65WのCPUを使う場合,S70FLに付いているCPUクーラーの冷却能力は充分と言えましょう.

***

本当はこの手の作業はffpmegの方が適しているのかもしれません.ただ,ffmpegは本体以外に諸々ライブラリを入れないと便利に使えないので,H.264も含めて手軽に使いたいという人にはHandBrakeの方が良いように思います.インストールも楽だし,使い方の情報も豊富だし.

ただ,HandBrakeは万能ではありません.mtsなAVCHDが扱えなかったので,私はiVIS HF S10で撮影したAVCHDをMPEG2に変換するために,ffmpegをインストールして使い始めました.この辺りの話はまた後日.

(*1)これのきっかけになったメール配送トラブル以降,ivtvの開発者MLは退会扱いになったままになっています.何かありましたら直接メールくださいまし."... and Takahiro Adachi for maintaining the Asian support of ivtv. "と書かれていますが,現在は殆ど何もしていません&あまり役立てないかもしれません…

(*2)CATVで再送信された物.OpenSourceのドライバがあり,Linuxでも動き,MythTVとかでも使え,コンポーネント入力を使って1080iで録画でき,アレには無反応で,出力はh.264という,現時点でCATV放送をLinuxで録画するためには最強とも言えるHauppauge_HD-PVRへの移行を最近考えておりました.が,うちで入っているCATV会社は上流の会社の関係で,地デジ以外のチャンネルはSDで放送されているとのこと....orz

 メーカー直販ページでカード番号等を一通り入力し,クリックする直前だったのですが急遽中止.今しばらくはivtvで行こうと思います….それかパラボラアンテナ立てて,CSを直接取り込もうかなぁ…

|

« レディイーグル | トップページ | iPhone 3Gファームアップ失敗 »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/198640/45353506

この記事へのトラックバック一覧です: CentOS5.3にHandBrakeを入れて使う:

» CentOS5.3にffmpegを入れて使う [tadachi-net 出張所]
前回はHandBrakeの話を書いたけど,今回は予告通りffmpegのインストール. 私はffmpegを,HDなビデオカメラで撮影したAVCHDフォーマットのファイル(mts)を別形式へ変換する際に使用しています.例えば配布用のDVD-Videoを焼くために,mpeg2へトランスコードするために使用. 元々はこの作業はWindows上でTMPGEncのTMPGEnc Authoring Works 4かTMPGEnc 4.0 XPress辺りを購入して行おうと考えていたのですが,方針を変更してLin... [続きを読む]

受信: 2009年6月21日 (日) 01時36分

« レディイーグル | トップページ | iPhone 3Gファームアップ失敗 »