逆テレシネ後に残像が残る素材をAviSynthで処理する

デジタル制作になる前の昔のアニメは適切なテレシネ処理がされていないため、普通に逆テレシネすると残像が残りブレンド化したような映像になります。

AviSynthのSrestoreという関数を使うと、こういう素材を綺麗に逆テレシネすることができます。

必要

Srestore

Doom9からダウンロードします。

Srestore.avsiをpluginsフォルダに入れます。

MaskTools2

GitHubからダウンロードします。

masktools2.dllをpluginsフォルダに入れます。

GRunT

32bit

AviSynth wikiの右上の「Download」からダウンロードします。

GRunT.dllをpluginsフォルダに入れます。

64bit

AviSynth+ x64 pluginsからgrunt-x64.rarをダウンロードします。

ファイル名にハイフンが入っているとAvsPmodで警告が出るので、grunt-x64.dllをgrunt.dllにリネームしてからplugins64+フォルダに入れます。

書き方

Srestoreは60pにしてから使うものなので、yadifmod2などで60p化します。

次にSrestoreのfrateで23.976を指定します。

yadifmod2(mode=1)
Srestore(frate=23.976)

設定

frate

Srestoreはデフォルトだと25p出力なので、24p出力する場合は23.976を指定します。

dclip

ここで指定したインターレース解除フィルタは検出にのみ使用されます。

高品質なインターレース解除フィルタを使う場合は、高速なインターレース解除フィルタをここで指定することで処理を高速化できます。

関数

QTGMC24P2

60p化にQTGMCを利用している関数です。

dclipを使うことで処理を高速化しています。

ReduceFlickerが必要なので、GitHubからダウンロードしてReduceFlicker.dllをpluginsフォルダに入れます。

以下のスクリプトを拡張子を.avsiにしてpluginsフォルダに入れます。

function QTGMC24P2(clip clip){
d = clip.Bob(-0.2,0.6).ReduceFlicker(strength=1)
clip = clip.QTGMC(Preset="Fast")
clip = clip.srestore(frate=23.976, dclip=d)
return clip
}

avsファイルに以下のように書きます。

QTGMC24P2()

参考サイト

にわとり遊び 旧作アニメの逆テレシネ