初めてのエンコード

HDDの容量が厳しくなってきたので(最近は年中そうだけど;
HDDにリッピングしてある音楽DVDのファイルをエンコードして圧縮してみました。
初めてのエンコードのドタバタ劇の様子です。

エンコード元のファイルは2枚組の音楽ライブのDVD。
1枚目が3.6GB、2枚目が4.8GBなのでDVD-Rに焼くと2枚目がはみ出てしまう困ったファイル構成。

エンコード形式は映像はH264の一択でしょう。
現在、最新最強のエンコード形式ですが、再生時の負荷が激重な点でも最強;
音声は音楽DVDなので出来るだけ良い音で、LPCMそのままが出来ればいいのだけど。

エンコード形式は知っていてもどうやるのかさっぱり分からないのでWebで調べます。
以前にネットの記事でチラッと読んでいた範囲では映像と音声を分離していろいろ面倒な作業が必要だったはずですが・・・うーむ、時代は進んでおる。
今はソフト一本で一発で変換できるようです。もちろんフリーソフトで。

取りあえず HandBrake というソフトが良さそうなのでダウンロードしてみます。
HandBrake
HandBrake - CNET Downloads

ネットの記事を参考にしながらインストールして設定します。
と言っても設定したのは入力フォルダと出力ファイル名とVideoのCodecとAudioのCodecだけです。
VideoはCodecをH264にしてそれ以外はデフォルトのままです。
AudioのCodecはどれにすれば良いんだ?
選べるのは AAC(faac)、MP3(lame)、AC3Passthru、AC3(ffmpeg) の4つ。
faacはフリーのAAClameはMP3の定番、ffmpegって何ぞね?
よく分からないままにAC3Passthruを選択しました。
理由はこれだけはBitrateの設定が無かったからです。
つまり
Passthru → thruなんだからcodec無しでLPCMそのままじゃない?
Bitrate設定が無い → ソースのLPCMそのままだからBitrateが無いんだね、きっと。
という思い込みの元に決定いたしました。

で、準備OK!
冷却台のファン全開!
STRATをポチッ。

エンコード開始!
当然ながらドーンとCPU全開!

左下に処理した%が出るのだけど、結構速い。
だいたい動画の再生時間と同じぐらいの時間でエンコードできそうです。

そして処理%が3%になったあたりで予想してた不安がムクムクと盛り上がります;
「うーん、熱は大丈夫?」
CPU使用率100%で1時間連続で回して大丈夫? 
某さんみたいに家にPCが群れてるお家なら自作PCの1台ぐらい平気なんでしょうが、うちはノートPCだし、まともにゲームができるのはこれ一台、壊れたら困るんですけど。
温度をモニターしようにも今は温度計測できるソフトは入れてないし。

と言うわけで、そっとSTOPボタンを押しました。あぅ><

温度を計測する為に以前に使っていた事がある HWMonitor をインストールしました。
HWMonitor - CPUID
HWMonitor - CNET Downloads
起動してみると、何だか前より表示項目が増えているような・・・まぁ、詳しく便利になる分には問題無しです。

そしてHWMonitorが紹介されいるWepページを見ていたところ、CUDAを使えるエンコーダが載っていました。
私のPCはノートPCだけどnVidiaディスクリートGPUが付いています。確かCUDA対応のチップのはずです。
GPUエンコードできればCPUの負荷は下がって「熱が心配」問題も解決?
と言うわけで CUDAが使えるフリーのエンコーダ MediaCoder をダウンロードします。
MediaCoder - more than a universal audio/video transcoder - MediaCoder official website
MediaCoder - CNET Downloads
起動するとWebページらしきものがでるのだけど、なんか日本語おかしくない(^^;)?

MediaCoderの設定をします。
ビデオのエンコーダは CUDA Encorder に、オーディオのエンコーダはFLACに設定します。

再び冷却台全開!
STARTをポチッ!

Error
Error
Error

あぅぅ orz

エラーメッセージを読むとCUDAの実行環境が揃っていない様子です。
うーん、GPUはCUDA対応してるはずなんだけどなぁ・・・と思いながらnVidiaのCUDA公式ページ CUDA GPUs で確認するとちゃんと対応チップに入ってます。
Wikipediaで調べると「専用ドライバが必要」とあるけど専用ドライバなんてあったっけ?
よく分からないけど、「おそらく今インストールしてあるドライバが古くてCUDAに対応してないんじゃ?」と考えた。確かに今インストールしてあるドライバは2年ぐらい前のドライバのはずなのでその可能性はあります。
さっそく最新のドライバをダウンロードします。
134M、でかっ。

そしてドライバダウンロード中にCUDAのエンコードを調べてたら、かなり残念なお知らせが・・・。
いくつかのブログでCUDAでH264エンコードをした記事を読みました。
確かにエンコード速度は爆速ですが、肝心の画質が目立って悪いようです。
いくらエンコードが速くてCPUに優しくても画質がダメダメでは意味無いじゃん。
画質では定番のX264が良いみたいです。

残念ながらダウンロードした最新のGPUドライバはお蔵入りに。
CUDAは諦めて最初の HandBrake でCPUパワーで頑張る事にします。

三度冷却台全開!
STARTボタンをポチッ!

HWMonitorで温度をモニターすると、温度はじわじわを上がるけどそれほど急には上がらないみたいでちょっと安心です。
8割ぐらいエンコードが終わったあたりでも早朝で気温が低かった事もあってか70度までいってません。64〜66度ぐらいで安定しています。
夏にSaddun AttackやFEZをやるとCPUもGPUも70度ぐらいまで行くので、それと同じぐらいです。
温度だけで見る分にはそれほど心配しなくてもいいかもしれません。

1時間ぐらいで1枚目終了しました。
3.6GBが670MBになりました。
音声分が相当食ってそうなのにこんなに小さくなるなんてさすがにすごいです。
画質ですが、わずかに粒子のエッジが立ってるというか、微妙にざらついてるような気がしないでもないけど、ほとんど差が分かりません。
音楽ライブDVDで元々の画質があまり良くないのもあって、DVDのソースとエンコード後のH264版を二つ並べて見ても、言われなければどっちがソースか分からないぐらい。

一応エンコード出来たけど不満点があってやり直しです。
LPCMだけ入れてAC3 5.1chを入れ忘れました。
LPCMはFLACにしたい。
字幕とチャプターも入れ忘れたました。

ともかく結構できそうなので、貯まってる分だけでもやろうかなぁ。