QSVEncC+avisynthで高速自動エンコードする その1
以前の記事では、AviUtl Controlで一括エンコードを書きました。
これはこれで便利なのですが、やはりコマンドで録画直後に自動でエンコードした方が楽です。
視聴時にはmp4で見ればエラーチェックもできますしね。
というわけで、必要なファイルや説明等を書いて行きたいと思います。
この方法でも一括エンコードは可能です。
かなり前に書いた下の記事を一部参考しています。似通った部分はこちらの方が詳しい場合があります。
Avisynth+バッチファイル+αで簡単にアニメ高速エンコード その1 Firefoxは情弱のたしなみ
QSVってなに?自分もできるかな?という人は以下の記事を御覧ください
Aviutl+QSVでエンコードしてみる(core i7 3770+Z77) Firefoxは情弱のたしなみ
難易度は上がりますが、自動CMカットなどの機能をつけたスクリプトも作りました。
PowerShell + QSVで自動エンコード・自動CMカット part1 Firefoxは情弱のたしなみ
スポンサーリンク これはこれで便利なのですが、やはりコマンドで録画直後に自動でエンコードした方が楽です。
視聴時にはmp4で見ればエラーチェックもできますしね。
というわけで、必要なファイルや説明等を書いて行きたいと思います。
この方法でも一括エンコードは可能です。
かなり前に書いた下の記事を一部参考しています。似通った部分はこちらの方が詳しい場合があります。
Avisynth+バッチファイル+αで簡単にアニメ高速エンコード その1 Firefoxは情弱のたしなみ
QSVってなに?自分もできるかな?という人は以下の記事を御覧ください
Aviutl+QSVでエンコードしてみる(core i7 3770+Z77) Firefoxは情弱のたしなみ
難易度は上がりますが、自動CMカットなどの機能をつけたスクリプトも作りました。
PowerShell + QSVで自動エンコード・自動CMカット part1 Firefoxは情弱のたしなみ
エンコード方針
大体1話800MB、8分程度(corei7 3770)でエンコードが終わります。
TS保持派だったので、ほぼソースと同じ画質で、容量を3分の1近くに短時間で減らせるのは魅力です。
編集したい方は有用な記事では無いかもしれません。あと、aviutl、tvtest、tvrockが使えてる人対象です。
簡単な流れ
必要なソフト類
一応32bit統一になっているはずです。
とりあえず上の必要になるのでダウンロードしてください。結構分かり難いところにあるものもあります。
こういうファイルは結構リンクが切れてたりするので、もし切れてたらぐぐってみてください。
インストール
ダウンロードできたらインストールしましょう。まずAvisynthを普通にインストールしてください。
そして、Program Files→AviSynth 2.5→pluginsでプラグインフォルダを開きましょう。
そこに上のAvisynthプラグインをavisynth.dll以外全て入れてください。
avisynth.dllは上にもあるようにC:\Windows\SysWOW64に入れます。
すでにavisynth.dllがあると思うので、avisynth.dll.bakとし、ダウンロードしたavisynth.dllに差し替えてください。
他のソフトウェアは自由に置いて貰って構いません。が、
ここではCドライブ直下に「avisynth」と言うフォルダを作り、その中に「program」を作ります。
TsSplitterやMP4boxなどは全部programフォルダに入れておいてください。
肝のbatファイルやavsファイルはavisynthに入れることにします。
AVSスクリプト
早速AVSスクリプトの説明を。編集しないので短いです。
AVSファイルの作成はテキストファイル作成して拡張子をavsにすれば良いです。
以下の内容をメモ帳にコピペしavsファイルとして保存してください。
ここではファイル名を「template.avs」とします。これはC直下に作ったavisynthフォルダに入れてください。
上のプラグインをプラグインフォルダに入れて無いと動かないので、入れてない方は入れておいてください。
上の色付けはエディタのAvsPでの見た目のような感じにしてあります。
簡単に説明するとTSファイルの指定、aacファイルの指定、ディレイの指定のみ行うものです。
SetMTModeはマルチスレッドでエンコード可能になります。
これはなくても動くのですが、使えるようにした方がエンコード速度が上がると思います。
まず「#」があるとその行はコメントになりますので、自分で分かりやすい様に書いてください。
必要ないのなら消してしまっても構いません。
基本的にavsを書き換える事はなく、TSをDGindexで読み込むと、上のtemplate.avsを元にして、
「__vid__」「__aud__」「__del__」に自動的に値が入ったavsが新しく作成されます。
とりあえずここまで。次回はbatファイルについて説明します。
QSVEncC+avisynthで高速自動エンコードする その2 Firefoxは情弱のたしなみ
スポンサーリンク ・主に地上波アニメの録画TS想定(1話30分約2.4GB) ・時間をかけず、高画質 ・CMカットなどの編集はしない(CMカット出来るソフト) ・CMロゴ除去などのフィルタは使わない ・インターレースは保持 ・ファイルサイズは大体1GB以下であればOK(1話平均800MB) ・リサイズ無しでオリジナルサイズ ・インタレ解除、フィルタは再生プレーヤー依存(後ほど説明) |
TS保持派だったので、ほぼソースと同じ画質で、容量を3分の1近くに短時間で減らせるのは魅力です。
編集したい方は有用な記事では無いかもしれません。あと、aviutl、tvtest、tvrockが使えてる人対象です。
簡単な流れ
TVRockの後処理コマンドに記述する事になります。 1.録画したTSファイルがDGindexによりd2v、aac、avsが作成される 2.avs2pipemodでavsをQSVEncCに渡し、d2vを264ファイルにqsvエンコード 3.aacをFAWで偽装WAV化してディレイカット、即偽装解除 4.MP4boxで264とaacを合成 5.終わり |
必要なソフト類
ソフトウェア | |
Avisynth | スクリプトベースのビデオ編集ソフトウェア。公式の2.5.8版を使っています。 |
AvsP | AVSファイルのエディタです。メモ帳でもいいですが見やすいです。 |
TsSplitter | TSファイルから不要なデータを削除します。(30分アニメなら300MBくらいカットできます) |
MP4Box | 映像(d2v)と音声(aac)して合成してmp4動画ファイルを作る |
DGMPGDec 1.5.8 | 同梱の『DGindex』を使います。TSをd2v(映像)とaac(音声)に分割します。 ※通常のDGindxはバグが原因でBS11などBS放送では音声に異常がおきます。 有志の方が改造したソースがあるのでここを参考にビルドして下さい。 |
QSVEnc(作者ブログ) | 肝のQSVエンコーダ。aviutl用のGUI版もありますが、自動化のためにCUIを使います。 |
avs2pipemod | 後ほど説明しますが、avsとQSVEncCを繋ぐパイプ、仲人役と思えば良いと思います。 |
FakeAacWav(1009.zip) | aacをwavに偽装して無劣化で編集できるようにします。 |
SCRename(18.zip) | しょぼかるから番組名、話数、タイトル、放送局を取得しリネームする。 |
Avisynthプラグイン | |
DGDecode.dll | 上のDGMPGDecに入っています。DGindex作成のd2vをAvisynthで読込みに必要 |
BassAudio.dll bass.dll bass_ac3.dll bass_aac.dll | BASSオーディオライブラリを使った音声入力プラグイン。 数多くのファイルフォーマットに対応。これらで分割したaacを音声を読み込みます。 ※BassAudio.dllとbass.dllが使えない場合は、こちらのdllを試してみて下さい。 |
MT.dll avisynth.dll | マルチスレッドモードでエンコードが可能になります。「dlls」をダウンロード。 (参考) MT.dll→avisynthのpluginフォルダへ avisynth.dll(MT対応修正版)→"C:\WINDOWS\system32"にavisynth.dllがあるので、 MT対応修正版と差し替える。(win7x64はC:\Windows\SysWOW64)要バックアップ! |
とりあえず上の必要になるのでダウンロードしてください。結構分かり難いところにあるものもあります。
こういうファイルは結構リンクが切れてたりするので、もし切れてたらぐぐってみてください。
インストール
ダウンロードできたらインストールしましょう。まずAvisynthを普通にインストールしてください。
そして、Program Files→AviSynth 2.5→pluginsでプラグインフォルダを開きましょう。
そこに上のAvisynthプラグインをavisynth.dll以外全て入れてください。
avisynth.dllは上にもあるようにC:\Windows\SysWOW64に入れます。
すでにavisynth.dllがあると思うので、avisynth.dll.bakとし、ダウンロードしたavisynth.dllに差し替えてください。
他のソフトウェアは自由に置いて貰って構いません。が、
ここではCドライブ直下に「avisynth」と言うフォルダを作り、その中に「program」を作ります。
TsSplitterやMP4boxなどは全部programフォルダに入れておいてください。
肝のbatファイルやavsファイルはavisynthに入れることにします。
AVSスクリプト
早速AVSスクリプトの説明を。編集しないので短いです。
AVSファイルの作成はテキストファイル作成して拡張子をavsにすれば良いです。
以下の内容をメモ帳にコピペしavsファイルとして保存してください。
ここではファイル名を「template.avs」とします。これはC直下に作ったavisynthフォルダに入れてください。
SetMTMode(2,0) #MPEG2読み込み v=MPEG2Source("__vid__") a=bassAudioSource("__aud__") AudioDub(v,a) DelayAudio(__del__) return last |
上のプラグインをプラグインフォルダに入れて無いと動かないので、入れてない方は入れておいてください。
上の色付けはエディタのAvsPでの見た目のような感じにしてあります。
簡単に説明するとTSファイルの指定、aacファイルの指定、ディレイの指定のみ行うものです。
SetMTModeはマルチスレッドでエンコード可能になります。
これはなくても動くのですが、使えるようにした方がエンコード速度が上がると思います。
まず「#」があるとその行はコメントになりますので、自分で分かりやすい様に書いてください。
必要ないのなら消してしまっても構いません。
基本的にavsを書き換える事はなく、TSをDGindexで読み込むと、上のtemplate.avsを元にして、
「__vid__」「__aud__」「__del__」に自動的に値が入ったavsが新しく作成されます。
とりあえずここまで。次回はbatファイルについて説明します。
QSVEncC+avisynthで高速自動エンコードする その2 Firefoxは情弱のたしなみ
- 関連記事
-
- QSVEncC+avisynthで高速自動エンコードする その3
- QSVEncC+avisynthで高速自動エンコードする その2
- QSVEncC+avisynthで高速自動エンコードする その1
- TSファイルを一括でQSVエンコードする
- Aviutl+QSVでエンコードしてみる(core i7 3770+Z77)
| エンコード | 22:05 | comments:4 | trackbacks:0 | TOP↑
BassAudio.dllのリンク先にあるファイルでは、avisynthが動作しませんでした。
http://behappy.codeplex.com/
からダウンロードしたbass.dll、bassaudio.dllを用いることで動作しました。
| | 2013/05/03 05:23 | URL |