x264エンコードの方法

個人的なメモですが、借りてきたDVDを保存観賞用にx264でエンコードする方法

  1. DVD Decrypterでリップ 【vobファイル抽出】
  2. DGIndexで音声を分離 【ac3ないしwavファイル抽出】
  3. ac3ファイルをリネーム
  4. avisynthスクリプトの書き出し 【avsファイル書き出し】
  5. aviutlでavs読み込みおよび自動フィールドシフトでx264出力(バッチ出力)

Avisynthの設定はこんな感じ
エビふにゃいさんのところあたりを参考にさせていただきながら、アップスケールしてます。

  • 音声読み込みはWAVSource or AC3Source
  • 取りあえずIT・vinverse・Convolution3Dあたりで画質調整
  • Lanczos4Resizeで1280x720に拡大
  • WarpSharp・MSharpenでハイレゾっぽく


手順2-4はコマンドライン
スクリプトは以下

rem ### エラーチェック ###
if "%~1"=="" (
exit;
)

:gen_avs
rem ### AVS ファイルの出力 ###
%~d1
cd %~p1
md temp
set input_name=%~dp1temp\%~n1
set temp_dir="%~dp1temp\"
set avs_file="%~dp1temp\%~n1.avs"
type nul> %avs_file%

rem ### DGIndexでd2vおよび音声ファイルを抽出 ###
"C:\Program Files\AutoGK\dgmpgdec\DGIndex.exe" -IA=3 -FO=0 -TN=1 -OM=3 -DSA=0 -IF=[%~1] -OF=[%input_name%] -minimize -exit

ren "%input_name%*.wav" %~n1.wav

rem ### AVSファイル出力 ###
echo PluginDirectory = "C:\Program Files\AutoGK\AviSynth\plugins\">> %avs_file%
echo AudioDub(MPEG2Source("%input_name%.d2v"),WavSource("%input_name%.wav"))>> %avs_file%
echo LoadPlugin(PluginDirectory + "IT.dll")>> %avs_file%
echo LoadPlugin(PluginDirectory + "vinverse.dll")>> %avs_file%
echo LoadPlugin(PluginDirectory + "Convolution3DYV12.dll")>> %avs_file%
echo IT(fps=24, ref="TOP", blend=false)>> %avs_file%
echo vinverse(sstr=2.7, amnt=255, uv=3, scl=0.25, opt=2) >> %avs_file%
echo Convolution3D(0,4,4,4,4,2.5,0)>> %avs_file%
echo Lanczos4Resize(1280,720,12,0,704,480)>> %avs_file%
echo WarpSharp(130,3,100,-0.6)>> %avs_file%
echo MSharpen(16,60,true,false,false)>> %avs_file%
echo return last>> %avs_file%
rem ### AVS作成終了 ###

rem ### AviutlでAVSファイルおよび音声ファイルを読み込み ###

:parameter_shift
rem ### バッチパラメータをシフト ###
rem # %9 は %8 に、... %1 は %0 に
shift /1
rem # バッチパラメータが空なら終了
if "%~1"=="" goto end
rem # ラベル gen_avs に戻る
echo.
goto gen_avs


x264のコマンドは以下。超適当。

--crf 20 --level 4 --keyint 240 --scenecut 40 --bframes 3 --bime --b-rdo --weightb --direct auto --analyse p8x8,b8x8,i4x4 --8x8dct --trellis 1 --cqm jvt --merange 32 --qpmax 40 --qpmin 16 --qpstep 6 --qcomp 0.7 --ref 3 --mixed-refs --ipratio 1.70 --pbratio 1.50 --subme 6 --no-deblock --no-fast-pskip --threads auto --thread-input --progress --no-dct-decimate --no-psnr --no-ssim