OMAKE2:
假設我不喜歡 AntiComb 或 Decomb 的去交錯。
假設我比較喜歡 AviUtl 的 filter "交錯解除2",deint2.auf。
它的自適應去交錯,畫面比 blend 銳利。
或者是我想在 Avisynth 裡面用 AviUtl 的 wavelet3DNR2,時間軸小波轉換去雜訊的 filter,wavelet3DNR2.auf。
要怎麼做呢?
前面介紹的 warpsharp 內建了一個函式叫做 LoadAviUtlFilterPlugin,可以載入 AviUtl 的 filter,直接在 Avisynth 中使用。
例如我想在 Avisynth 中用 AviUtl 的 Lanczos3 Resize filter,lanczos3.auf 做 resize。
執行 ShowAUFInfo.exe lanczos3.auf >> aufilters.avs 就會印出 lanczos3 的函式
代碼:
#############################################################
# This file provides convenient Avisynth interfaces to #
# various AviUtl plugins. Load it in your script with: #
# #
# Import("aufilters.avs") #
#############################################################
########################################################
# Change AviUtl_plugin_directory below to point to #
# the directory containing your AviUtl plugins. #
########################################################
# 下面兩行置換成你使用的路徑
global AviUtl_plugin_directory = "c:\Program Files\ken\AviUtl\98d\"
LoadPlugin("c:\Program Files\AviSynth2\plugins\warpsharp.dll")
####################################
# Lanczos 3-lobed Resize
####################################
# i0 : X default(320) range(32,856)
# i1 : Y default(240) range(32,576)
function AU_lanczos3Resize(
\ clip clip,
\ int "i0",
\ int "i1"
\)
{
LoadAviUtlFilterPlugin(AviUtl_plugin_directory+"lanczos3.auf", "_AU_lanczos3Resize")
return clip._AU_lanczos3Resize(
\ default(i0,320),
\ default(i1,240)
\)
}
使用的時候
# LoadAviUtlPlugin Lanczos3 Resize
Import("c:\Program Files\AviSynth2\avs\aufilters.avs")
AU_lanczos3Resize(640,480)
warpsharp.dll 舊版的時候 LoadAviUtlPlugin 是獨立一個 LoadAviUtlPlugin.dll,更舊的版本使用前要先加上
ConvertYUY2ToAviUtlYC()
AU_LANCZOS3(640,480)
ConvertAviUtlYCToYUY2()
把 YUY2 轉成 AviUtl 的 48bit YUV 格式,現在好像不用了,程式自動轉換。
另外 loadaui.dll 好像也不見了,變成 warpsharp.dll 內建,function name 好像是 LoadAviUtlInputPlugin。
我很久沒使用了,最新的用法您需要自己研究看看,可以上日本的網站找資料
又寫得太長,好像一點也不簡短 ^^;