View Full Version : old VHS restoration
Terka
27th February 2006, 11:42
Have some home videos (15 yers old) and want to get as much as possible of them and convert to XviD. The pictures are "washed out", is there any chance (some sharpening)...?
And some colors moved to new locations (like ghosting).
Please help.
Chainmax
27th February 2006, 17:10
For color bleeds I'd recommend FixChromaBleeding, and for sharpening LimitedSharpenFaster. There are, however, more kinds of artifacting that should appear on a VHS capture, so please post a capture sample so that we can better help you out.
scharfis_brain
27th February 2006, 17:30
color bleeds primarily should be handled with chromashifting like this:
i=avisource("blah.avi")
vertical = 4
chroma=crop(0,0,0,-vertical).addborders(0,vertical,0,0)
i.mergechroma(chroma)
of course you can shift in the horizontal direction, too. But most times the chroma bleeds towards the bottom.
Fizick
27th February 2006, 17:47
better convert it to DVD (as is interlaced) instead of XVID (progresive)
Mug Funky
28th February 2006, 06:59
well, xvid will do interlaced, but discs are cheap and when bitrates start getting high, mpeg-2 and xvid become equals.
Terka
28th February 2006, 10:49
pictures are cropped, not resized, not deinterlaced
http://img96.imageshack.us/my.php?image=003vt.jpg
http://img96.imageshack.us/my.php?image=018zz.jpg
http://img96.imageshack.us/my.php?image=030xe.jpg
http://img134.imageshack.us/my.php?image=041ju.jpg
http://img96.imageshack.us/my.php?image=054ov.jpg
http://img134.imageshack.us/my.php?image=122by.jpg
Terka
6th March 2006, 11:23
no idea?
scharfis_brain
6th March 2006, 12:55
provide an UNPROCESSED (no recompression allowed!) clip of at least some seconds.
JPG compressed still images aren't sufficient.
Terka
8th March 2006, 13:17
its captured via my camcorder, so its DV format
http://www.megaupload.com/?d=G0JTTPBW
Mug Funky
8th March 2006, 14:46
hmm. does your camcorder support TBC? some do. if it does, it'll fix that wibbly horizontal lines thing to some extent. i wish DVD recorders did this :)
also, it's never going to look "DVD quality" (like there is such a thing) because there's not enough detail in the original recording. however, with some fairly careful sharpening it can still look pretty good. best set your VCR on it's least sharp, or neutral setting (some have a little switch that does this), because a cheap analog filter will not sharpen nearly as well as some more sophisticated sharpners on the captured video. this will hopefully reduce the weird impressionist effect the video has. though it wont look as sharp, it will still have the same amount of information.
Terka
8th March 2006, 21:50
there is a VHS recorder (i think it supports TBC and i think it was ON.) and the recorder was connected to my DV camcorder:
VHS->DV->PC
(the VHS is not mine, was borrowed from my friend)
I tested another one VHS, but the picture was much worse.
I think this is the best i can get from the VHS to my PC.
(I tried another settings and layering this "2 sources" together, but it was not better)
scharfis_brain
9th March 2006, 00:13
import("c:\x\mvbob\mvbob.avs")
loadplugin("c:\x\depan.dll")
loadplugin("c:\x\removedirts.dll")
r=1
i=avisource("VHS.avi").reYV12()
i.mergechroma(i.crop(0,8,-4,0).addborders(4,0,0,8))
x=eedibob()
e=depanestimate(x,pixaspect=1.094)
x.depaninterleave(e,next=r,prev=r,pixaspect=1.094)
removedirt()
selectevery(r+r+1,r)
converttoyuy2()
separatefields().selectevery(4,0,3).weave()
Sorry for the cryptic script. But it works pretty good and is not that complicated.
you may replace eedibob() by bob() for much faster but also less precise processing.
eedibob() is part of my deinterlacers collection mvbob.avs
Terka
9th March 2006, 08:41
2 scharfi: thank you. the script is complicated for me to understand some commands. if i understand, i need "your" mvbob.avs?
if yes, could you paste a link?
how could i make it 50p?
thank you.
Terka
24th March 2006, 08:28
where can i get the eedibob? could you paste a link please?
thank you.
Terka
9th April 2006, 08:14
the script is working, leaving the video interlacedImport("C:\Program Files\AviSynth2\plugins\mvbob.avs")
PluginPath = "C:\Program Files\AviSynth2\plugins\"
LoadPlugin(PluginPath + "depan.dll")
loadplugin(PluginPath + "removedirts.dll")
loadplugin(PluginPath + "removegrains.dll")
loadplugin(PluginPath + "repair.dll")
r=1
i=avisource("e:\VHS.avi").reYV12()
i.mergechroma(i.crop(0,8,-4,0).addborders(4,0,0,8))
x=eedibob()
e=depanestimate(x,pixaspect=1.094)
x.depaninterleave(e,next=r,prev=r,pixaspect=1.094)
############################
function RemoveDirt(clip input, bool "_grey", int "repmode")
{
_grey=default(_grey, false)
repmode=default(repmode, 16)
clmode=17
clensed=Clense(input, grey=_grey, cache=4)
sbegin = ForwardClense(input, grey=_grey, cache=-1)
send = BackwardClense(input, grey=_grey, cache=-1)
alt=Repair(SCSelect(input, sbegin, send, clensed, debug=true), input, mode=repmode, modeU = _grey ? -1 : repmode )
restore=Repair(clensed, input, mode=repmode, modeU = _grey ? -1 : repmode)
corrected=RestoreMotionBlocks(clensed, restore, neighbour=input, alternative=alt, gmthreshold=70, dist=1, dmode=2, debug=false, noise=10, noisy=12, grey=_grey)
return RemoveGrain(corrected, mode=clmode, modeU = _grey ? -1 : clmode )
}
###########################
removedirt()
selectevery(r+r+1,r)
how about make it progressive 50p?
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.