Good evening all
I'll try and be succinct here. I have a very poor quality VHS tape which I want to restore using Avisynth. I have a beginners/moderate knowledge of Avisynth but would like some recommendations from seasoned professionals. A sample of the uncompressed .AVI is at the bottom mega.nz link.
JVC SVHS > S-Video > Panasonic DMR ES-10 > S-Video > Diamond VC500 > Virtualdub Lossless capture.
Some examples of code/script would be greatly appreciated.
Thank you kindly.
+ Reply to Thread
Results 1 to 4 of 4
You havent really specified what you're looking for or what you hope to do with it. Do you want it cleaned some at the cost of detail? Did you want colors or anything adjusted? Do you care about detail? That kind of information would get you a better suggestion for your liking.
This is so poor looking, the most I would bother to do is get rid of the combing artifacts, crop off that garbage from the sides, see if rainbow visibility can be lessened if you see any, and resize it to proper aspect ratio. There isn't really too much you can do without destroying it more.
LoadPlugin("C:\Program Files (x86)\MeGui\tools\ffms\ffms2.dll") FFVideoSource("C:\Users\????\Desktop\OTE99 RAW.avi", threads=1) ConvertToYV12(matrix="rec601", chromaresample="point") bifrost() QTGMC(preset="slow", matchpreset="slow", matchpreset2="slow", fpsdivisor=2, sourcematch=3, tr1=2, tr2=1, NoiseTR=2, sharpness=0.1) lanczosresize(640,480) crop(16, 0, -14, -4) # Adjust the amount of cropping as you see fit
Here is the results of that script being used on the sample you provided. Depending on the changes you make and bitrate you choose, the results may vary. It certainly looks much better to me.
I wouldn't decimate to 29.97 fps (remove fpsdivisor=2) unless you have playback restrictions.
LWLibavVideoSource("OTE99 RAW.avi") AssumeTFF() Crop(20,0,-16,-4).AddBorders(10,0,10,4) # remove most of the junk at the edges of the frame, restore 704x480 ColorYUV(gain_y=30, off_y=-35, cont_u=60, cont_v=60) # levels/saturation adjustments ConvertToYV12(interlaced=true) QTGMC()