Du måste ju inte använda alla plugins i ditt script som jag hade.
sätt en # framför raden med stab i avs-filen om den vägrar så slipper du ladda in den.
samma sak med mctemporaldenoise, den är inte absolut nödvändig eftersom QTGMC filtrerar bort en del brus också.
Men i alla fall stab använder i sin tur DePan och DePanEstimate samt RemoveGrain.
Är det från dina VHS-C kassetter så skulle jag nog inte köra deinterlace med QTGMC såsom jag gjorde i scriptet för jazzgossen.
Jazzgossen var ju från film men VHS-C är från videokamera.
Vill du ha det snabbt och enkelt med HC Encoder så kör ett simpelt avisynth-script:
Ersätt capture.avi med hela sökvägen till din fil.
Du kan i och för sig ha kvar smoothlevels för att finlira med nivåerna.
Det är det enda som behövs för att kunna ladda in det i HC Encoder.
Och så komprimerar du det interlaced för enkelhetens skull, med en ini-fil såsom denna:
Kod: Markera allt
*BITRATE 7000
*MAXBITRATE 8000
*PROFILE best
*ASPECT 4:3
*AUTOGOP 15
*INTERLACED
*TFF
*INTRAVLC 2
*MATRIX mpegstd
Där du sedan själv väljer in och utfil.
Jag har väl en förmåga att krångla till det lite...
Ska man köra mitt "avancerade script" på äkta interlaced såsom VHS-C kan man göra såhär:
Kod: Markera allt
SetMemoryMax(1024)
LoadPlugin("C:\Program\AviSynth 2.5\plugins\SmoothAdjust.dll")
AviSource("exempel.avi")
AssumeTFF()
ConvertToYV12(interlaced=true)
QTGMC()
SmoothLevels(input_low=5, gamma=1.0, input_high=255, output_low=0, output_high=250)
MCTemporalDenoise(settings="low",sigma=6)
stab()
# Fix (S-)VHS chroma shift
Vshift=2 # determine experimentally
Hshift=0 # 2 lines per bobbed-field per tape generation (PAL); original=2; copy=4 etc
mergechroma(last.crop(Hshift,Vshift,0,0).addborders(0,0,Hshift,Vshift))
# Nu har vi 50 progressiva bilder/sekund, omvandla dessa till interlaced igen
SeparateFields() #Detta ger 100 "halvbilder" per sekund
SelectEvery(4,0,3) # Välj ut halvbilder för top field och bottom field
Weave() #Väv ihop dem till 25 fps interlaced igen
Vad är meningen med detta då kan man undra?
Jo MCTemporaldenoise och stab kan då jobba med progressiva bildrutor 50 bilder per sekund för bättre kvalitet.
Tycker man QTGMC känns för långsamt kan man ersätta det med yadif.
Så detta är en gnutta snabbare variant som funkar hyfsat för interlaced video:
Kod: Markera allt
SetMemoryMax(1024)
LoadPlugin("C:\Program\AviSynth 2.5\plugins\SmoothAdjust.dll")
LoadCplugin("C:\Program\AviSynth 2.5\plugins\yadif.dll")
AviSource("exempel.avi")
AssumeTFF()
Yadif(mode=1, order=1)
SmoothLevels(input_low=5, gamma=1.0, input_high=255, output_low=0, output_high=250)
MCTemporalDenoise(settings="low",sigma=6)
stab()
# Fix (S-)VHS chroma shift
Vshift=2 # determine experimentally
Hshift=0 # 2 lines per bobbed-field per tape generation (PAL); original=2; copy=4 etc
mergechroma(last.crop(Hshift,Vshift,0,0).addborders(0,0,Hshift,Vshift))
# Nu har vi 50 progressiva bilder/sekund, omvandla dessa till interlaced igen
SeparateFields() #Detta ger 100 "halvbilder" per sekund
SelectEvery(4,0,3) # Välj ut halvbilder för top field och bottom field
Weave() #Väv ihop dem till 25 fps interlaced igen
ConvertToYV12(interlaced=true) # HC Encoder vill ju ha YV12
Observera att pluginet yadif laddas som Cplugin istället för som vanligt plugin.
SmoothLevels får man förstås anpassa till olika videoband.
Exemplet ovan skiftar ju nivåerna neråt lite men det är bara ett exempel som funkade på "jazzgossen". Man får läsa dokumentationen för filtret och labba lite.
Edit: Det kan till och med se bättre ut med Yadif för det är inte riktigt lika "softat" filter som QTGMC.
Kör man med QTGMC så kan man ofta skippa MCTemporaldenoise och det blir väldigt bra ändå.
Kör man Yadif då kanske man vill ta bort mer brus med MCTemporaldenoise.
Vet inte vilket som blir snabbast, misstänker MCTemporaldenoice slöar ner det ganska mycket, fast det gör ju också QTGMC...
Å andra sidan går det att köra QTGMC i högkvalitetsläge där bruset "stoppas tillbaka" för att få det skarpare igen, men då blir det långsammare.
Håhåjaja...