FullAuto AVS Encode - 全自動・高機能エンコードスクリプト - 複数ファイルのドラッグに対応
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
README.md
favse.bat

README.md

FavsE (FullAuto AVS Encode)

読み方は「フェイブス」ですが、別に「ふぁぶせ」でもいいです。

動画ファイル(複数可)をドラッグすると、AVC + AACなMP4動画へのエンコード完了までの様々な工程を全自動で高速処理するバッチファイルです。

主な特徴

  • エンコードが高速(DGDecodeに代わりMPEG2DecPlusを採用。LSMASHSourceはそもそも爆速)
  • 1つのバッチファイルへのドラッグでエンコードまでの処理がすべて完結
  • 複数のファイルをドラッグすれば一括処理が可能
  • ほぼすべての動画ファイル形式に対応(AVC / HEVC + aacなmp4への変換としても機能する)
  • DVDソースのtsファイルにも対応(アスペクト比セット等、いくつかの挙動が異なる)
  • ビット深度10bitの動画に自動対応(8bitで処理)
  • エンコーダを選択可能(x264, QSVEncC, NVEncC, NVEncC HEVC)
  • どのエンコーダを選択しても大体同じビットレートに(SSIMで0.98以上目標)
  • 音声処理はFAWとqaacを選択可能(FAWを選択しても利用できない場合は自動でqaacを使用)
  • 設定や動画の情報からAviSynth+スクリプトを自動生成
  • AviSynth+スクリプト作成後に一時停止する機能あり(編集して作業続行可能)
  • 自動CMカット(しない設定も可能、tsファイル以外では無効)
  • 自動ロゴ除去(しない設定も可能、tsファイル以外では無効)
  • インターレース保持/解除/BOB化/24fps化の自動/手動選択(プログレッシブな場合は無効)
    • 上記をGPU処理に置き換えることが可能(高速だが品質は低下)
  • 実写とアニメを自動判別して3Dノイズ除去(しない設定も可能)
  • widthが1280px超になる場合、720pにリサイズ(しない設定も可能)
  • 若干のシャープ化(しない設定も可能)
  • 処理終了後に、作業ファイル群をすべて削除(しない設定も可能。その場合は再利用可能)

要するに

「面倒な知識・判断・作業が不要で、お好きなエンコーダでのエンコード完了までを全自動化する1本のバッチファイル」です。

あの場合はこうして、この場合はこうして、あのソフトで読み込んでポチポチ、このソフトで読み込んでポチポチ…と面倒な作業は必要ありません。動画ファイルをドラッグするだけです。

使用方法

バッチファイル(もしくはバッチファイルへのショートカット)に、動画ファイル(avsファイルではありません)をドラッグしてください。複数ファイルのドラッグにも対応します。

すると設定や動画情報に応じた動作を全自動で行います。AvsPmodやAviUtl + カット編集プラグイン等で手動カット編集を行いたい場合もあるかと思いますが、その際はavsファイル書き出し後に一時停止する設定にしてください。

設定項目については、バッチファイルの冒頭部分を参照してください。簡単な説明があります。

実行に必要なツール

FavsEの動作に必要なツールは以下の通りで、結構あります。それだけ多くのことを面倒みてくれると思ってください。

設定内容によっては無くても構わないものがありますが、今後の更新でどうなるかわかりませんので、一応すべて入れておくのが無難です。

以後すべて 64bit(x64版) で揃えてください。Windowsが32bitの場合、もしくは64bit版が存在しない場合のみ32bitに読み換えてください。

AviSynth+のプラグインは、64bitと32bitの両方が必要であり、配布サイトが異なる場合があります。

ツール類が動作しない場合は、.NET FrameworkVC++ Redistributable Packages等の対応バージョンがインストールされていないケースが多いかと思います。この辺りは環境によりますのでググってみてください。

AviSynth+ MT

まずは中核となるAviSynth+をインストールしてください。

4.00よりAviSynth MT 32bitからAviSynth+ MT 64bitに変更しました。

  • AviSynth+ MT(よくわからなければwith-vc-redistで)

AviSynth+ プラグイン

64bit版はC:¥Program Files (x86)¥AviSynth+内のplugins64+へ、32bit版はplugins+へコピーして使用します。

  • MPEG2DecPlus(AviSynth+対応高速化版です。既にDGDecode.dllがある場合は差し替えてください)
  • LSMASHSource(2種ありますがLSMASHSourceの方です。LSMASHSource.dllのみ必要です)
  • delogodelogo.dllのみ必要です)
  • NNEDI3nnedi3.dllのみ必要です。CPUに合ったフォルダを選択してください)
  • TDeinterlaceTDeinterlace.dllのみ必要です。32bitはTDeintで、TDeint.dllのみ必要です)
  • TIVTCTIVTC.dllのみ必要です)
  • Hqdn3dYHqdn3dY-x64.dllが64bit版です。ハイフンは非推奨と警告が出るので-x64を消したほうが良いです)

各種ツール

以下はフォルダを決めて、まとめて置いてください(例:C:\bin)。PATHを通しておくと便利です。

基本的にexeファイルだけで良いのですが例外もありますので、注意書きに目を通してください。x64などのフォルダ内に64bit版バイナリが格納されている場合が多いので注意してください。

エンコード関連

  • x264(exeファイルのみ必要です。毎回設定変更するのも面倒なのでx264_x64.exe等にリネーム推奨です)
  • QSVEncC(AviUtl 用プラグインに同梱されています。QSVEncC\x64の中身が必要です)
  • NVEncC(AviUtl 用プラグインに同梱されています。NVEncC\x64の中身が必要です)
  • fawcl(基本的に最新のものです。ページ内検索してください。fawcl.exeのみ必要です)
  • aacfawaacfaw.auiaacfaw.dllに、aacfaw_x64.auiaacfaw_x64.dllにリネームして配置)
  • qaacqaac64.exeのみ必要です)
  • L-SMASHmuxer.exeremuxer.exeのみ必要です)

rigaya氏ビルドのものは更新多めなので、同氏のブログでフィードを購読しておくことをおすすめします。

分割ツール

  • TSSplitterTsSplitter.exeのみ必要です)
  • DGIndexDGDecode.dll, DGIndex.exe, dllをリネームしたDGVfapi.vfpが必要です)

DGIndexは、AviSynth+プラグインのMPEG2DecPlusとは別物で、使い道も異なります。

DGIndex 1.5.8にはバグがあり、修正・改造したmod版のソースが公開されています。ソースのみの配布でバイナリが無いため、VisualStudio 2017とNASMを導入して自分でビルドする必要があります。手順とWindows SDKのバージョンだけ気をつければ特に難しくはありません。なおビルドできるのは32bit版のみです。

補助ツール

  • avs2pipemodavs2pipemod64.exeのみ必要です)
  • MediaInfo(CLI版のMediaInfo.exeのみ必要です)
  • rplsinforplsinfo.exeのみ必要です)
  • Git for Windows(一部のLinuxコマンドを使用します。基本デフォルトでインストールします)

Git for Windowsに含まれるLinuxコマンドをコマンドプロンプトから使用するため、Windowsのシステム環境変数PATHC:\Program Files\Git\usr\bin\を追加して再起動してください。

※LinuxコマンドのWindowsバイナリ単体を使用するのであれば、grep, sed, head、及び依存ライブラリファイルが必要です。

※他にWSL(Windows Subsystem for Linux)や各種仮想Linuxマシンを使用する方法もありますが、Git for Windowsの方が簡単です。

特殊ツール

  • join_logo_scpjoin_logo_scp試行環境_2.zipという圧縮ファイルの中身のみ必要です)

join_logo_scpは、CMカットスレで最新版が公開されています。上書きして使用します。不具合が修正されているようです。

その他

  • AvsPmod(確認やカット編集を行えます。AviUtl + チャプター編集プラグインでも可です)

入力ファイルの仕様

LSMASHSourceで読めるすべての動画ファイルが対象です(ver.2.00より)。

つまり日常的に扱う動画ファイルのほぼすべてが対象となります。

音声処理にFAWを使う場合、元の音声がAACである必要があります。

FAW(FakeAacWav)とは、DGIndexやBonTsDemux等で分離したaacファイルを疑似wavファイルに変換(偽装)して使用するソフトウェアです。無劣化のままで編集 → aacファイルに戻すことができます。また、音ズレを防止する役目も果たします。

PT3等のTVチューナーで録画したtsファイルはFAWの条件を満たします。

気をつけるのは、同じtsファイルでもDVDソースからゴニョった場合など自力で作成した場合です。

例えば当サイト管理人オススメのTMPGEnc MPEG Smart Rendererは映像無劣化でtsファイルにできますが、デフォルトのままだと音声はLPCMAC-3になると思います。

この場合、出力直前の画面で音声をAAC(MPEG2 AAC(LC))に指定する必要があります。

せっかくFAWを使うのに非可逆圧縮が入るのも気分的にアレですが、ビットレートを256kbpsとか384kbpsにすれば、元との違いを聞き分けられるような人はそうそういないと思います。

なおFAWを使用する設定でも、使用できない場合は自動判別によりqaacを使用します。