V-AutoEncoderでTVRockからH264へ自動エンコードする手順
- 2010-06-27
- category : V-AutoEncoder
TSファイルをH264にする方法は多々ある。今回紹介する方法は、必要な部分を切り出したTSファイルを一旦映像と音声に分け、それぞれをエンコードしてから再びくっつける方法。
手間は掛かるが音ずれしにくかったり、途中で壊れているファイルが出来にくかったりする...気がする。
・TSSplitte
DTV関係ツールのこちら(リンク)からダウンロードする。今回はVer.1.23を使っている。
インストール先は C:\Program Files\TSSplitter にする。
・BonTSDemux
DTV関係ツールのトップページ(リンク)からダウンロードする。今回はVer.1.10を使っている。
インストール先は C:\Program Files\BonTSDemux にする。
BonTsDemux.exeを起動してエラーが出る場合は Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ をインストールする必要がある。Microsoftダウンロードセンター(リンク)で検索すれば見つかる。
・MediaCoder
MediaCoderオフィシャルのダウンロードサイト(リンク)からFull Editionを入手する。今回はversion 0.7.3.4682を使う。Latest Versionで問題ないだろう。
C:\Program Files\MediaCoder にインストールする。
インストール方法は多くのサイト(たとえばこちら)で紹介されているが、確認事項をいくつか示す。
Install Components 画面の中のAudio Components内にある"Nero AAC Encoder"にチェックが付いていることを確認。
同じ画面でVideo Components内にある"AviSynth"にチェックを付ける。今回の例ではAviSynthは使わないが、あると後で便利なのでインストールしておく。
いずれも、既にインストールされているなら不要。
サービスアプリケーション(Snagitなど)のインストールは必須ではないので、お好みで。
MediaCoder.exeを起動後にエラーで落ちる場合は、C:\Program Files\MediaCoder内にある"SysInfo.dll"を適当なファイル名(例えば"SysInfo.dll.org")に変えると落ちなくなる。その代わりにオプションメニューのシステム情報が使えなくなるけれど実害はなし。(参考記事)
・Firefox
MediaCoderの設定の詳細を変更するためにはブラウザのFirefoxが必要。オフィシャルサイト(リンク)から入手する。インストール先はどこでもかまわない。
既に別のブラウザを使っているなら、インストール中にでる既定ブラウザのチェックを外せば良い。
・V-AutoEncoder
DTV関係ツールのこちら(リンク)からダウンロードする。バージョンは0.1bを使う。
インストール先は C:\Program Files\V-AutoEncoder にする。
V-AutoEncoder.exeを起動してエラーが出る場合は Microsoft .NET Framework 4 をインストールする必要がある。Microsoftダウンロードセンターから検索すれば見つかる。
●MediaCoderの初期設定変更
・ブラウザ起動の抑制
1.一番最初にMediaCoder.exeを起動すると、ブラウザが起動し、MediaCoderはタスクトレイに収まった状態で起動する。
2.ブラウザの「次の起動時にこのページを表示しない」にチェックを入れ、「Start MediaCoder」を押すと、次回からブラウザが立ち上がらなくなる。
この手順が失敗した場合、k本的に無料ソフト・フリーソフト さんのサイト(リンク)の"ウェルカム画面の回避"に紹介されている方法でも可能。
MediaCoderが気に入ったらぜひ寄付しましょう。
・日本語化
1.メニューの"Options"→"User Interface Language"→"Japanese"を選ぶ。
2.MediaCoderを再起動すると日本語になる。
この方法だと一部が英語のまま残る。気になるならば 日本語化工房 -KUP さんが公開されている日本語ランゲージファイル(リンク)を使うと完璧に直る。
以降は日本語化工房-KUPさんのランゲージファイルを適用した後の画面を掲載している。
・起動時のロゴ画面の抑制
1.メニューの"ファイル"→"設定"→"Overall"→"UserInterface"から、"Show splash for specified time..."選ぶ。
2.左下の欄に0を入力し、"Apply"ボタンを押す。
3.画面右上の"×"(閉じるボタン)を押す。
・出力先フォルダの設定
1.画面右上の"出力フォルダ"で設定する。今回は C:\WDIR に設定している前提で説明を進める。
●MediaCoderのエンコード設定を保存
今回の方法では、MediaCoderは映像をH264にするだけに使う。パラメータは人それぞれだが、僕の場合と言うことで紹介しておく。ちなみに僕は自然画中心で、アニメのエンコードはしない。
MediaCoderで作成したいのは以下のフォーマット
H.264/AAC mp4コンテナ
サイズ:1024×576
フレームレート:29.97fps インターレース解除(linear blend)
平均ビットレート 2500Kbps(1時間の映像で約1.2GB)
・一般タブ
"ライヴ表示"がオンだとエンコード中に映像が再生されるのでオフに。
・ビデオ タブ
右側のx264の設定は自然画エンコード用のつもりだけど、適当。
・オーディオ タブ
今回の方法では映像だけで良いので、"オーディオ有効"のチェックを外す。
・コンテナ タブ
"コンテナ"ドロップリストを"MP4"にする。
・画像 タブ
"リサイズ"ドロップリストから好みのサイズを選ぶ。
ここで、何でも良いからTSファイルをMediaCoderへドロップする。そうすると"効果"ボタンが機能するようになり、インターレース解除方法を選べる。
効果ボタンを押した後の画面。右上のインターレース解除のアルゴリズムドロップリストから"linear blend"を選び、左下の"OK"ボタンを押す。
インターレース解除方法は完全に好みの問題。全部試した結果、29.97fpsの場合は映像のカクカクした感じがないlinear blendが好みだったというだけの話。
・プリセット保存
ここまで設定できたら、この設定をファイルとしてはき出す。
メニューの"ファイル"→"プリセットの保存"を選ぶ。適当なファイル名で良い。
ここでは C:\Program Files\V-AutoEncoder へ PresetsH264.xml というファイル名で保存したとして説明を進める。
●現在のファイル構成のおさらい
ここまでに触れたツールやファイルのパスに加え、MediaCoderと共にインストールされ以降の処理でも使うツールと、最終的にファイルを出力させるフォルダを加えて整理すると、以下のようになる。
ツールやフォルダの絶対パスを正しく押さえておくことはV-AutoEncoderの設定ファイルを書く上でとても重要。
c:\
|---Program Files
| |---TsSplitter
| | |---TsSplitter.exe
| |
| |---BonTSDemux
| | |---BonTSDemux.exe
| |
| |---MediaCoder
| | |---MediaCoder.exe
| | |---codecs
| | | |---neroAacEnc.exe
| | |---tools
| | |---MP4Box.exe
| |
| |---V-AutoEncoder
| |---V-AutoEncoder.exe
| |---V-AutoEncoder.cfg
| |---PresetsH264.xml
|
|---WDIR ※作業用フォルダ
|---OUTDIR ※最終出力先フォルダ
●V-AutoEncoderの設定ファイル修正
V-AutoEncoderに同梱されているV-AutoEncoder.cfgをテキストエディタで開き、以下の内容にすべて書き換える。
もしツールのやフォルダの絶対パスが違うのなら、適宜修正する必要がある。
[RenameInputFile]
yes
[P1Application]
C:\Program Files\TsSplitter\TsSplitter.exe
[P1Dir]
c:\wdir
[P1Arguments]
"%Input%" -OUT "%P1Dir%" -EIT -SD -1SEG -SEP3 -OVL5,10,0,0 -WAIT2
[P1SearchPattern]
%InputName%*_HD*.ts
[P1SearchMethod]
Largest
[P2Application]
C:\Program Files\BonTsDemux\BonTsDemux.exe
[P2Arguments]
-i "%P1Output%" -o "%P1Dir%\%P1OutputName%" -es 0 -encode "Demux(m2v+wav)" -sound 0 -nd -nogui -start -quit
[P2SearchPattern]
%P1OutputName%*.m2v
[P3SearchPattern]
%P1OutputName%*.wav
[P4Application]
C:\Program Files\MediaCoder\MediaCoder.exe
[P4Arguments]
"%P2Output%" -start -exit -preset "%param1%"
[P4SearchPattern]
%P2OutputName%.mp4
[P5Application]
C:\Program Files\MediaCoder\codecs\neroAacEnc.exe
[P5Arguments]
-br 192000 -if "%P3Output%" -of "%P1Dir%\%P3OutputName%.m4a"
[P5SearchPattern]
%P3OutputName%.m4a
[P6Application]
C:\Program Files\MediaCoder\tools\MP4Box.exe
[P6Dir]
C:\OUTDIR
[P6Arguments]
-add "%P4Output%"#video -add "%P5Output%"#audio -new "%P6Dir%\%inputName%.mp4"
[P6SearchPattern]
%inputName%.mp4
[P1DeleteTemporalFiles]
yes
[P2DeleteTemporalFiles]
yes
[P3DeleteTemporalFiles]
yes
[P4DeleteTemporalFiles]
yes
[P5DeleteTemporalFiles]
yes
[P6DeleteTemporalFiles]
yes
●バッチファイルでの検証作業
新規にテキストファイルを作成し、以下の内容を書き込んで保存。
"C:\Program Files\V-AutoEncoder\v-autoencoder.exe" -input %1 -param1 "C:\Program Files\V-AutoEncoder\PresetsH264.xml" -logvolume huge
このファイルの拡張子を".bat"にリネームするとバッチファイルができあがる。ファイル自体はどこに置いても支障ない。
バッチファイルにごく短いTSファイルをドロップすると、異常がなければ、c:\outdir フォルダにエンコード後のH264/AACのmp4ファイルが生成される。
生成されていない場合は異常が発生している。v-autoencoderフォルダ内のv-autoencoder_log.txtを見ると原因がわかるかもしれない。
※2010/9/1追記 不具合防止の為、ドロップするTSファイルのファイル名に半角スペースを含めて下さい。詳しい理由はこちらのエントリ(リンク)でご紹介しています。
●TVRockとの連携
1.TVRockの設定画面のプロセス欄に以下のコマンドを記入する。
H264エンコード:start "Encodeing(%4)" /min /LOW "C:\Program Files\V-AutoEncoder\v-autoencoder.exe" -input %1 -param1 "C:\Program Files\V-AutoEncoder\PresetsH264.xml" -queue
2.TVRockの予約ダイアログの"終了後コマンド"ドロップリストから"H264エンコード"を選ぶ。
以上で終わり。各ツールの設定値は適当な部分が多々あるのであしからず。
- 関連記事
- V-AutoEncoderでTVRockからH264 59.94fps 2chへ自動エンコードする手順 (07/18)
- V-AutoEncoderでTVRockからH264へ自動エンコードする手順 (06/27)
- V-AutoEncoder とTVRockを連携させる方法 (06/22)