Quantcast VHS restore filters using Avisynth and VirtualDub - advice? - digitalFAQ Forum
Go Back    Forum > Digital Video > Video Project Help > Restore, Filter, Improve Quality

Reply
 
LinkBack Thread Tools
  #1  
03-23-2014, 08:57 AM
Zoink187 Zoink187 is offline
Free Member
 
Join Date: Jan 2014
Location: Illinois
Posts: 40
Thanked 4 Times in 3 Posts
Hello,

I am seeking advice on avisynth scripts and virtualdub filters that are typically applied to vhs captures. I used lagarith lossless yuy2 for my capture. After I apply these filters, I'm going straight into avstodvd. It's a home movie. Thanks.
Reply With Quote
Someday, 12:01 PM
admin's Avatar
Ads / Sponsors
 
Join Date: ∞
Posts: 42
Thanks: ∞
Thanked 42 Times in 42 Posts
  #2  
03-23-2014, 01:43 PM
themaster1 themaster1 is offline
Free Member
 
Join Date: Feb 2011
Posts: 186
Thanked 30 Times in 26 Posts
A typical script for my own vhs recordings would be this:

Code:
AVISource("E:\MyVideo.avi").trim(8083,14591)
assumetff()
resampleaudio(48000) # audio resampling because my caps are 32khz
converttoyv12(interlaced=true)
ylevels(0,1.000,255,16,255) # adjust Luma levels only (adjust according to your needs)
tweak(sat=1.2,cont=1.0,bright=0,coring=false) # adjust saturation, contrast, etc...
########################
pointresize(last.width, last.height*2).ConverttoRGB32(matrix="rec601",interlaced=true).pointresize(last.width, last.height)
separatefields()
## Remove some chroma noise with CCD in RGB (gives best results)
## pointresizing for lossless RGb <> YCrCb convertion
LoadVirtualDubPlugin("C:\Program Files (x86)\virtualdubmod1.5\plugins\Camcorder_Color_Denoise_sse2.vdf", "CCD", 1)
CCD(15,1) # from 0 to 100 # Default =30 / 15-30 = best results
# Sharpening (small-medium) with msu smart sharpen
LoadVirtualDubPlugin("C:\Program Files (x86)\VirtualDub\plugins\msu_sharpen.vdf", "MSUSmartSharpen", 1)
MSUSmartSharpen(1) # from  0 (small overall)  to  5 (mad)
weave()
pointresize(last.width, last.height*2).converttoyv12(matrix="Rec601",interlaced=true).pointresize(last.width, last.height)
###################
# Denoising with Mdegrain1  for not too strong noise and interlaced source
fields=AssumeTFF().SeparateFields() # or AssumeBFF
super = MSuper(fields)
backward_vec2 = MAnalyse(super, isb = true, delta = 2, overlap=2)
forward_vec2 = MAnalyse(super, isb = false, delta = 2, overlap=2)
MDegrain1(fields, super, backward_vec2,forward_vec2,thSAD=400)
Weave()
Reply With Quote
  #3  
03-23-2014, 06:47 PM
Zoink187 Zoink187 is offline
Free Member
 
Join Date: Jan 2014
Location: Illinois
Posts: 40
Thanked 4 Times in 3 Posts
Do I have to open virtualdub to apply these settings?
Reply With Quote
  #4  
03-24-2014, 04:19 AM
themaster1 themaster1 is offline
Free Member
 
Join Date: Feb 2011
Posts: 186
Thanked 30 Times in 26 Posts
nope you don't, you need the filters though
Reply With Quote
  #5  
03-24-2014, 08:10 AM
Zoink187 Zoink187 is offline
Free Member
 
Join Date: Jan 2014
Location: Illinois
Posts: 40
Thanked 4 Times in 3 Posts
Ok. I'm going to google those filters and "load" them. Is it possible to open avstodvd and then open file>, and then load the script? In other words, will avstodvd do the avisynth script conversions within the program itself?
Reply With Quote
  #6  
03-24-2014, 09:02 AM
lordsmurf's Avatar
lordsmurf lordsmurf is offline
Site Staff | Video
 
Join Date: Dec 2002
Posts: 8,488
Thanked 1,393 Times in 1,225 Posts
I prefer to use a very hands off + custom approach. I'm not overly fond of Avisynth denoising, and hate Avisynth weave() because it can cause interlace damage with some filters. I prefer VirtualDub as much as possible, but will use Avisynth wherever VirtualDub is weak.

I'll share it when I get up (about to go to bed here).

- Did my advice help you? Then become a Premium Member and support this site.
- Find television shows, cartoons, DVDs and Blu-ray releases at the TVPast forums.
Reply With Quote
  #7  
03-24-2014, 10:44 AM
themaster1 themaster1 is offline
Free Member
 
Join Date: Feb 2011
Posts: 186
Thanked 30 Times in 26 Posts
Quote:
Originally Posted by Zoink187 View Post
Ok. I'm going to google those filters and "load" them. Is it possible to open avstodvd and then open file>, and then load the script? In other words, will avstodvd do the avisynth script conversions within the program itself?
for ccd:
http://www.mediafire.com/download/0o5d8obxvtjfu6z/Camcorder_Color_Denoise_sse2.vdf
Reply With Quote
  #8  
03-24-2014, 12:33 PM
Zoink187 Zoink187 is offline
Free Member
 
Join Date: Jan 2014
Location: Illinois
Posts: 40
Thanked 4 Times in 3 Posts
Thanks! I had read somewhere that there is a "lord smurf virtualdub". Is that still relevant and applicable today? And if so, where can I get a shiny new download of that?

Quote:
Originally Posted by lordsmurf View Post
I prefer to use a very hands off + custom approach. I'm not overly fond of Avisynth denoising, and hate Avisynth weave() because it can cause interlace damage with some filters. I prefer VirtualDub as much as possible, but will use Avisynth wherever VirtualDub is weak.

I'll share it when I get up (about to go to bed here).
Ok! I'm looking forward to that post

Quote:
Originally Posted by themaster1 View Post
A typical script for my own vhs recordings would be this:

Code:
AVISource("E:\MyVideo.avi").trim(8083,14591)
assumetff()
resampleaudio(48000) # audio resampling because my caps are 32khz
converttoyv12(interlaced=true)
ylevels(0,1.000,255,16,255) # adjust Luma levels only (adjust according to your needs)
tweak(sat=1.2,cont=1.0,bright=0,coring=false) # adjust saturation, contrast, etc...
########################
pointresize(last.width, last.height*2).ConverttoRGB32(matrix="rec601",interlaced=true).pointresize(last.width, last.height)
separatefields()
## Remove some chroma noise with CCD in RGB (gives best results)
## pointresizing for lossless RGb <> YCrCb convertion
LoadVirtualDubPlugin("C:\Program Files (x86)\virtualdubmod1.5\plugins\Camcorder_Color_Denoise_sse2.vdf", "CCD", 1)
CCD(15,1) # from 0 to 100 # Default =30 / 15-30 = best results
# Sharpening (small-medium) with msu smart sharpen
LoadVirtualDubPlugin("C:\Program Files (x86)\VirtualDub\plugins\msu_sharpen.vdf", "MSUSmartSharpen", 1)
MSUSmartSharpen(1) # from  0 (small overall)  to  5 (mad)
weave()
pointresize(last.width, last.height*2).converttoyv12(matrix="Rec601",interlaced=true).pointresize(last.width, last.height)
###################
# Denoising with Mdegrain1  for not too strong noise and interlaced source
fields=AssumeTFF().SeparateFields() # or AssumeBFF
super = MSuper(fields)
backward_vec2 = MAnalyse(super, isb = true, delta = 2, overlap=2)
forward_vec2 = MAnalyse(super, isb = false, delta = 2, overlap=2)
MDegrain1(fields, super, backward_vec2,forward_vec2,thSAD=400)
Weave()
I applied this code and when I open my video file, My virtualdub screen is gray and I can't see anything. I installed xvid and divx because I got the error about the VFW compression needed to make my yuv2 .avi into YV12. Any suggestions? Should I uninstall everything and install divx? I have win7 32.
Reply With Quote
  #9  
04-05-2014, 05:34 PM
themaster1 themaster1 is offline
Free Member
 
Join Date: Feb 2011
Posts: 186
Thanked 30 Times in 26 Posts
HUH ? if you have huffyuv installed it should be decoded normally if it's another codec i don't know
Try directshowsource instead of avisource, perhaps you'll have better luck
Reply With Quote
  #10  
04-09-2014, 10:59 AM
premiumcapture premiumcapture is offline
Free Member
 
Join Date: Dec 2013
Location: Boston, MA
Posts: 581
Thanked 68 Times in 62 Posts
Quote:
Originally Posted by lordsmurf View Post
I prefer to use a very hands off + custom approach. I'm not overly fond of Avisynth denoising, and hate Avisynth weave() because it can cause interlace damage with some filters. I prefer VirtualDub as much as possible, but will use Avisynth wherever VirtualDub is weak.

I'll share it when I get up (about to go to bed here).
I agree with this. 'Measure twice, cut once.' The more you do during capture, the more you limit your ability to restore later on. It can be a good fix if a batch of tapes are all from the same source, but results can vary wildly between tapes and productions with any capture filter. Interlacing, deinterlacing, and avisynth need to be done very carefully. As stated, videos can be damaged depending on the filters used as some take in interlaced content and others progressive.

This type of script will undoubtedly save much time, and may work for many tapes, but I prefer the slow route and capture first, filter second.
Reply With Quote
  #11  
04-21-2014, 05:24 PM
sanlyn sanlyn is offline
Premium Member
 
Join Date: Aug 2009
Location: N. Carolina and NY, USA
Posts: 3,449
Thanked 1,076 Times in 895 Posts
Quote:
Originally Posted by Zoink187 View Post
Hello,

I am seeking advice on avisynth scripts and virtualdub filters that are typically applied to vhs captures. I used lagarith lossless yuy2 for my capture. After I apply these filters, I'm going straight into avstodvd. It's a home movie. Thanks.
I don't think there are any "typical" Avisynth/VirtualDub filters for VHS fixup and restoral, because there is no "typical" VHS source. True, there are common problems found frequently with VHS, and often very specific filters are needed. But the same filters, settings and procedures can't be used for with every VHS project. In fact, often you can't even use the same filters and settings for different scenes from the same VHS tape.

I was unable to download your sample avi, which has been removed. Meanwhile, I see you're trying to get started in Avisynth with Avisynth MT. I'd stick with Avisynth 2.5.8 until you get a better understanding of how to work with Avisynth and its filters. While Avisynth is often essential for some basic VHS fixes, I agree that much can be accomplished with VirtualDub, and VirtualDub is easier to learn. I've seen some of your sample videos is other forums; they are quite problematic. However, you can't just throw copied scripts at video and not know what some of those filters are doing. In many cases, the filters you see in complex Avisynth scripts and VirtualDub setups aren't even needed. You will have to go through a little reading and ask some questions before you can spruce up VHS, and it's something you would have to do with even the "easiest" and most simple software processors.

As lordsmurf and others have noted, it's very easy to over-process VHS. Learning to do it correctly is a slow process at first, but you only have to learn it once. Meanwhile, I'm sorry I missed your sample.
Reply With Quote
  #12  
07-23-2014, 07:28 AM
lordsmurf's Avatar
lordsmurf lordsmurf is offline
Site Staff | Video
 
Join Date: Dec 2002
Posts: 8,488
Thanked 1,393 Times in 1,225 Posts
Quote:
Originally Posted by sanlyn View Post
I don't think there are any "typical" Avisynth/VirtualDub filters for VHS fixup and restoral, because there is no "typical" VHS source. True, there are common problems found frequently with VHS
The biggest issues with VHS are:
- chroma noise -- see also: What are VHS Chroma Flaws? How to Fix Them?
- color cast/contrast issues; various filters need be used
- grain -- Temporal Smoother in VirtualDub, or maybe TTempSmooth in Avisynth
- audio hiss -- and you need an audio editor like Sound Forge and/or Audacity

See also VHS post-capture VirtualDub filter advice?

- Did my advice help you? Then become a Premium Member and support this site.
- Find television shows, cartoons, DVDs and Blu-ray releases at the TVPast forums.
Reply With Quote
  #13  
07-23-2014, 01:02 PM
themaster1 themaster1 is offline
Free Member
 
Join Date: Feb 2011
Posts: 186
Thanked 30 Times in 26 Posts
And you have forgotten the infamous chroma shift. It can be a serious issue (easily fixable generally) depending on the tape.
Reply With Quote
The following users thank themaster1 for this useful post: lordsmurf (07-24-2014)
  #14  
07-24-2014, 09:38 PM
lordsmurf's Avatar
lordsmurf lordsmurf is offline
Site Staff | Video
 
Join Date: Dec 2002
Posts: 8,488
Thanked 1,393 Times in 1,225 Posts
I knew I was forgetting something.

Yes, both chroma noise + chroma shift (color bleed) are typical VHS errors. Fixing the shift makes it sharper, as well as making it look overall better.

- Did my advice help you? Then become a Premium Member and support this site.
- Find television shows, cartoons, DVDs and Blu-ray releases at the TVPast forums.
Reply With Quote
Reply




Tags
avisynth, avstodvd, vhs restore filter, virtualdub

Similar Threads
Thread Thread Starter Forum Replies Last Post
Virtualdub and Avisynth workflow and filter advice for VHS restore Zoink187 Restore, Filter, Improve Quality 11 07-23-2014 07:31 AM
Best settings to save an AVI in VirtualDub filtered from Avisynth? Zoink187 Project Planning, Workflows 7 07-23-2014 05:45 AM
VHS footage restore Advice using VirtualDub/Avisynth Zoink187 Restore, Filter, Improve Quality 0 03-28-2014 09:14 PM
Good VHS filter guides? (VirtualDub + Avisynth) premiumcapture Restore, Filter, Improve Quality 3 02-25-2014 11:24 AM
Avisynth filters, correct tape drop-outs admin Restore, Filter, Improve Quality 0 02-15-2005 05:07 AM

Thread Tools



 
All times are GMT -5. The time now is 02:27 AM