tydk27.info

TOP
About
Diary
Encode Blog
Anime Encode
Programming

アニメのエンコード研究

ただの自己満ページ。

avs晒しと初心者向け説明

avsファイル

#--------------------------------------------------------------------

PluginDir="E:\AviSynth 2.5\plugins\"
LoadPlugin(PluginDir + "warpsharp.dll")
LoadPlugin(PluginDir + "LoadPluginEx.dll")

LoadPlugin(PluginDir + "delogo.dll") #ウォーターマーク除去
LoadPlugin(PluginDir + "itvfr_deint.auf") #30fps用
LoadPlugin(PluginDir + "Its.dll") #手動VFR
Import("E:\AviSynth 2.5\plugins\TIVTC24P2.avsi") #24fps化 以下の3つのフィルタが必要
LoadPlugin(PluginDir + "TIVTC.dll")
LoadPlugin(PluginDir + "eedi3.dll")
LoadPlugin(PluginDir + "TDeint.dll")

LoadPlugin(PluginDir + "FluxSmooth.dll") #2Dと時間軸の平滑化フィルタ
#Import("E:\AviSynth 2.5\plugins\MCTemporalDenoise.v1.4.20.avsi") #動き補償付き時間軸ノイズ除去関数
#LoadPlugin(PluginDir + "FFT3dGPU.dll") #FFT3dfilterのGPU版
Import("E:\AviSynth 2.5\plugins\shownoise.avs") #Aviutlのノイズ表示フィルタ

LoadPlugin(PluginDir + "ColorMatrix.dll") #色空間調整
LoadPlugin(PluginDir + "RangeInfo.dll") #色調レベルの数値化表示

LoadPlugin(PluginDir + "flash3kyuu_deband.dll") #バンディング低減
#Import("E:\AviSynth 2.5\plugins\GradFun2DBmod.v1.3.avsi") #バンディング低減
#LoadPlugin(PluginDir + "AddGrainC.dll")
#LoadPlugin(PluginDir + "mt_masktools-26.dll")
#LoadPlugin(PluginDir + "RemoveGrain.dll")
#LoadPlugin(PluginDir + "gradfun2db.dll")

#--------------------------------------------------------------------

#PV4ソースの読み込み
LoadAviUtlInputPlugin("EARTH SOFT DV.aui", "EARTHSOFTDV")
EARTHSOFTDV("hoge.dv")

#--------------------------------------------------------------------

#フィールドオーダーの指定
AssumeFrameBased().ComplementParity()

#--------------------------------------------------------------------

a=Trim(2294,23601).EraseLOGO(logofile="E:\aviutl99i8\Plugins\logodata.ldp",
\ logoname="animax 1440x1080",
\ depth=127, yc_y=0, yc_u=0, yc_v=0,
\ start=152, fadein=29, fadeout=29, end=21157)

b=Trim(25400,47097).EraseLOGO(logofile="E:\aviutl99i8\Plugins\logodata.ldp",
\ logoname="animax 1440x1080",
\ depth=127, yc_y=0, yc_u=0, yc_v=0,
\ start=152, fadein=29, fadeout=29, end=21546)

c=Trim(49496,49945)

a ++ b ++ c

#--------------------------------------------------------------------

#フレームレート調整とインタレ解除
TIVTC24P2()
#its(def="E:\enc_folder\exe\six.def", fps=-1, debug=false, output="E:\enc_folder\DtsEdit_20080313\six.tmc")

#--------------------------------------------------------------------

#色空間処理
ConvertToYV12()
ColorMatrix(mode="Rec.601->Rec.709", source=2, dest=3, clamp=3, inputFR=false, outputFR=false, interlaced=false, hints=false, d2v="", debug=false, threads=1, thrdmthd=0, opt=3)
#ColorYUV(levels="PC->TV")

#リサイズ・クロップ
Spline36Resize(1280,720,4,1,-1,-1)

#NR
FluxSmoothST(7,7)
#FFT3DGPU(sigma=2, beta=1, plane=1, bw=16, bh=16, ow=8, oh=8, bt=3, mode=1, interlaced=false, wintype=0)

#シャープ
#UnsharpMask(16,6,8)
#WarpSharp(95, 3, 65, -0.6)

#バンディング低減
f3kdb(range=15, Y=64, Cb=48, Cr=48, ditherY=16, ditherC=16, keep_tv_range=true, input_mode=0, input_depth=8, output_mode=0, output_depth=8)
#gradfun2db()

#以下デバッグ
/*
ConvertToYUY2()
RangeInfo()
ConvertToYV12()
*/
/*
ConvertToYUY2()
ConvertYUY2ToAviUtlYC()
AU_shownoise(3,1,20)
ConvertAviUtlYCToYUY2()
ConvertToYV12()
*/
#Histogram(mode="levels")
#Info()

return last

とりあえず上から順に説明してみようか。超絶初心者向け&各所で既に述べられている既出情報ばかり。

フィールドオーダーの指定

AviSynth.infoに丁寧にまとめられているし書くほどのことでもないけども。まずは、ソースクリップ本来のフィールドオーダーを確認する必要があります。確認方法はとりあえず省略、というかAviSynth.infoのフィールドオーダーの確認を参照してください。PV4ソースのフィールドオーダーはトップフィールドファーストになります。

EARTHSOFTDV("hoge.dv").info と記述したavsをAvsPmod等にぶち込むと下部のようなものが表示されます。上から7行目で、AviSynthがボトムフィールドファーストと仮定していることを表しています。

このようにソースクリップとAviSynthの仮定するフィールドオーダーが異なるので、こちら側で指定しなければなりません。いや、指定しなきゃいけないわけじゃないけどそのほうが安心ということ。トップフィールドであると明示する場合は、

AssumeFrameBased().ComplementParity()

と書けばおkです。もう1つの方法に

AssumeTFF()

というのがあり、どちらも同じ処理(厳密に言えば違うけども)になります。詳しく知りたい人はAviSynth.infoをみr(ry

CMカットとウォーターマーク透過処理

 

copyright © あいる all rights reserved.