Log in

View Full Version : ANN: New Video Restoration code project


jmac698
22nd November 2008, 20:24
I invite you to visit
http://code.google.com/p/avisynthrestoration/
and to share and discuss the filters, scripts, and results posted there.
The focus of this new project is restoration of analog video. While this is quickly becoming an obscure pursuit in this age of Blu-Ray, it is still a challenging and (to some, at least) fun exploration.

Really, I could never afford certain high-end equipment when it was in it's peak, so only now do I get to play with it (i.e., Super VHS, Laser Disc), which is why I'm playing with it now.

I've also invented a new way of recording to a VCR with real component video, by re-interpreting the video signal. This hasn't been posted yet, but is an interesting experiment. It's about pushing the technology to the limits and wondering, how would I design a VCR back in those days, knowing what we know now?

Also to come, my not-so-famous Component4All technique, which allows live capture of component video, even 480P, on any capture card, using a wiring trick and little bit of math. Again, this is obsolete since that Hauppage unit came out.

Finally, the scripts themselves are fairly advanced and could be useful to show you techniques in scripting that let you do frame-by-frame and pixel-by-pixel processing, using recursive functions, which I finally got the hang of this year.

Enjoy, and consider this the official thread.
I don't expect any serious updates until Jan/2009.

Thanks.

jmac698
22nd November 2008, 20:35
A new approach to a TBC filter would be quite useful, as this is a common problem when capturing from VCR. My approach is different than the jitter filter (http://avisynth.org/vcmohan/DeJitter/DeJitter.htm) and I believe it could be successful. My ideas for further work are to finish it, and make it very simple; it just finds an edge simply and aligns that edge.

Where the real power will come in is in using other person's work in edge finding filters to preprocess the video. What I want is sub-pixel edge finding. My filter will then use this to simply resize each line. My filter has been tested primarily by recording an artificial line beside the video content. In this way, it's a type of calibration signal recorded onto the VCR. Then I can de-jitter the recorded video later. I was thinking of making the VCR some kind of video backup. Of course, this is all pointless when I could just keep the original MPG file :) But I want to see what is the ultimate quality you can get from a VCR.

Anyone have any other ideas? Ps. as for blind de-jitter, I find I can always distinguish the active video from the horizontal blanking area, in other words I should be able to de-jitter any old tape, so we can save some of those precious recordings without having to buy a TBC.

jmac698
22nd November 2008, 20:42
To vcmohan or other authors;
regarding fft plugins you have developed, could someone create a plugin which allows me to specify an EQ settings in several bands, such that I could restore the frequency response of an analog recording?

By using my freq script, I've been able to measure the exact analog video response of a VCR in 18.75KHz steps, from 0-3MHz. I would like to apply the reverse boost to finally have a flat response. The existing filters are quite limited for this purpose; there's not enough dynamic range. For example the FFT filter uses arbitrary units up to 100 which only subdue but not boost frequencies, I could fool this into working a little bit. (This is off the top of my head, I may be mistaken).
http://avisynth.org/vcmohan/FFTQuiver/F1Quiver.htm
Modify this to allow me to boost frequencies. I need up to 2x for most of the range, and much more toward the higher frequencies.

Thanks.
ps the results were promising! Real sharp edges with no ringing, this approach is the "real" approach without sharpening filters which artificially sharpen edges - my approach put the real edges back without any kind of interpolation.

*.mp4 guy
22nd November 2008, 21:01
You can't do good eq without introducing (lots) of ringing.

This is one of those classic unsolved problems, and is infact tangentially related to quantum physics. The basic jist of it is that you can't know somethings frequency and its position in space at the same time. What ends up happening, is that you trade off frequency resolution and spatial resolution, perfect frequecy resolution (fft of the entire image) gives 0 spatial resolution (the entire image is a single spatialy unseparable block).

Sagekilla
23rd November 2008, 22:48
I may be a bit naive in thinking this way: But what if you were to take several samples with varying frequency resolution and spatial resolution and combine results?

*.mp4 guy
24th November 2008, 18:57
If they are combined in a linear manner, nothing gets changed, its the same as running a few different sized fir filters one ofter the other. If you do it nonlinearly, then its dificult, and probably won't work, and is really slow.

Fizick
24th November 2008, 19:22
jmac698,
you new project have too pretentious name :)
IMO, you will not get much success without writing (modifying) C++ code ;)
it may take years to learn, but waiting for other plugin authors may take ages :)