Go Back    Forum > Digital Video > Video Project Help > Restore, Filter, Improve Quality

Reply
 
LinkBack Thread Tools
  #21  
03-05-2011, 11:01 AM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
Well to fix your problem, try verticalresize(last.width,last.height*2) before your median to avoid any influence vertically.

We are talking about median, but applying it in the 3rd dimension; we stack the exact same frame 3 times on top of itself and take the median across the same pixel in each 3 frames (in the same x,y location). But they are not really exactly the same frames because they are different recordings of them. This gives our noise reduction.
Reply With Quote
Someday, 12:01 PM
admin's Avatar
Ads / Sponsors
 
Join Date: ∞
Posts: 42
Thanks: ∞
Thanked 42 Times in 42 Posts
  #22  
03-05-2011, 11:06 AM
admin's Avatar
admin admin is offline
Site Staff | Web Development
 
Join Date: Jul 2003
Posts: 4,333
Thanked 637 Times in 453 Posts
Code:
verticalresize(last.width,last.height*2)
What does this do?

I'm actually not doing the same thing as proposed in this thread so far -- that is, taking several captures and averaging them on the z axis. What I'm having issues with is temporal median filtering of a single video clip to remove magnetic dropouts, while retaining interlacing.

I think it may be related to the ongoing conversation here, but I could be wrong.

This is one of the few errors I can't seem to solve to my satisfaction, so I'm always on the lookout for something that may apply to my situation. To date, everything fails -- the choice is to either fully deinterlace (results vary + median is less effective), or to butcher the interlace (unacceptable).

So, yeah....

- Did this site help you? Then upgrade to Premium Member and show your support!
- Also: Like Us on Facebook for special DVD/Blu-ray news and deals!
Reply With Quote
  #23  
03-05-2011, 11:18 AM
PDR0 PDR0 is offline
Free Member
 
Join Date: Jul 2010
Posts: 3
Thanked 1 Time in 1 Post
Quote:
Originally Posted by admin View Post
What I'm having issues with is temporal median filtering of a single video clip to remove magnetic dropouts, while retaining interlacing.

This is one of the few errors I can't seem to solve to my satisfaction, so I'm always on the lookout for something that may apply to my situation. To date, everything fails -- the choice is to either fully deinterlace (results vary + median is less effective), or to butcher the interlace (unacceptable).
If we're referring to same thing (magnetic "dropouts" as in the thin little white & black streaks that randomly occur throughout fields) , then using removedirtmc / removedust (or their derivatives) on fields, then re-weaving takes care of them quite easily, while preserving interlacing

(Note this example mean to just illustrate the removal of dropouts, the channels or colors weren't corrected)

I like to use these "automatic" filters in various strengths, so I have multiple versions (e.g. a weakly processed, and a heavily processed) then use software like after effects or a NLE so you can mix & match parts of individual sections or frames. Most of the "heavy lifting" is done by the automatic avisynth filters but you can fine tune with some manual work


Attached Images
File Type: jpg original.jpg (65.5 KB, 22 downloads)
File Type: jpg stack.jpg (48.5 KB, 20 downloads)
Reply With Quote
  #24  
03-05-2011, 11:19 AM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
Yes, there's about 5 filters specifically designed for that. Is the new website going to have a wiki? I could write an article about it. But for now, just wait, I'll dig up my files.
These filters are purely spatial and look for the dropouts themselves.

And yes, temporal median filter could cause ghosting in motion areas, that's why I use a more advanced motion compensated median.
Update: yes, I use removedirt like Pdro does.

Last edited by jmac698; 03-05-2011 at 11:58 AM.
Reply With Quote
  #25  
03-06-2011, 07:39 AM
Bugs.Bunny Bugs.Bunny is offline
Free Member
 
Join Date: Feb 2011
Posts: 13
Thanked 5 Times in 4 Posts
Quote:
Originally Posted by jmac698 View Post
bugs: I have a script for median5.
I'm interested in the script to do some tests.

To clear things up for what median/average & multiple captures can help:
1) Averaging multiple captures can reduce playback noise. Noise that is introduced during playback and that is different on each playback.
2) Median multiple captures can eliminate dropouts (eg. horizontal white lines) that are present in one playback but not the other. Some frames may be harder to read/track and on one playback they are played back with less errors / without errors compared to other playbacks. The median will correct these errors. It will take the pixels from the intact version without the errors.
Clearly some errors / dropouts will appear on every playback even independent from the playback drive. These errors can't be corrected by median of multiple captures.

But at least with median you will get rid of all the random errors that appear on one capture or the other. You will have less or even no more errors afterwards.

Averaging can be done with two or more captures, median with an odd number of captures of 3 or more.

What I would be interested in is a median of an even number of captures (4 or more) because it would be a combination of median and averaging and combine the advantages of the two.

Averaging/median multiple captures is a "cheap" and decent way to enhance quality so afterwards less restoration (denoising, dropout correction...) is necessary.
Reply With Quote
  #26  
03-06-2011, 03:18 PM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
I've perfected this technique and there's another factor. The median will create blurring unless each capture is perfectly aligned, both temporally and spatially. I say spatially because of horizontal line jitter between captures. I worked hard to come up with a jitter matcher that corrects this problem between captures. It will then take on the jitter of one of the captures or some combination of all.
I also worked on temporal comparing. I can detect if the same frame appears in all 3 captures, but I haven't automated dealing with missing or duped frames in one of them.
Also, you can do a median with just two captures. I wrote an actual plugin that finds the most middle value; since the outliers are either black or white I go for the most grey value. This has the effect of slightly brightening the picture though.
Averaging of many medians is a good idea; it's also good to remove some of the dropouts before applying median with one of the 5 other filters.
After quite a lot of processing you can turn a horrible mess into something just beautiful, it's amazing.

Code:
Function Median2_yuy2(clip "i1", clip "i2", clip "i3", clip "i4", clip "i5", string "chroma")
{# median of 5 clips from Helpers.avs by G-force

chroma = default(chroma,"process") #default is "process". Alternates: "copy first" or "copy second"


i1p=i1.interleaved2planar()
i2p=i2.interleaved2planar()
i3p=i3.interleaved2planar()
i4p=i4.interleaved2planar()
i5p=i5.interleaved2planar()

#MEDIAN(i1,i3,i5)
Interleave(i1,i3,i5)
chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
m1 = selectevery(3,1)

#MAX(MIN(i1,i3,i5),i2)
m2  = i1p.MT_Logic(i3p,"min",chroma=chroma).MT_Logic(i5p,"min",chroma=chroma).MT_Logic(i2p,"max",chroma=chroma).planar2interleaved()

#MIN(MAX(i1,i3,i5),i4)
m3  = i1p.MT_Logic(i3p,"max",chroma=chroma).MT_Logic(i5p,"max",chroma=chroma).MT_Logic(i4p,"min",chroma=chroma).planar2interleaved()

Interleave(m1,m2,m3)
chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
selectevery(3,1)

chroma == "copy first" ? last.MergeChroma(i1) : chroma == "copy second" ? last.MergeChroma(i2) : last

Return(last)
clense function from last version RemoveGrainT, interleaved2planar() from SSETools.
Reply With Quote
  #27  
03-08-2011, 04:43 PM
Bugs.Bunny Bugs.Bunny is offline
Free Member
 
Join Date: Feb 2011
Posts: 13
Thanked 5 Times in 4 Posts
jmac698 your techniques are very interesting!

With my small tests so far I had no problem temporally. Have you got problems with dropped/duplicate frames while capturing in VirtualDub? What capture device do you use?

Before getting my BM intensity shuttle I used a ADVC 110 and noted that when capturing in VirtualDub, it was messing up the capture (dropped frames...). In contrast that never happened in WinDV.
I then changed the timing settings and the problems where gone:
http://forums.virtualdub.org/index.p...T&f=6&t=19811&
Though I'm not sure if the settings ar 100% correct now for my device.

My old and new capture device both capture audio and video together. This is probably an advantage. So far when I captured a video multiple times I always got exactly the same amount of captured frames.

So far I did not look at spacial jitter but am going to look at it. Have got the line TBC of the vcr activated and a full frame tbc between vcr and my intensity shuttle.

Tried your script for 5 captures now but got an error - interleaved2planar() is missing. I've downloaded different RemoveGrain packages, but non of them contains SSETools...

Made a script that does median + average of 4 captures (see doom9). Seems to work good.

@jmac698: found the SSETools in some package and got your script working.
Works fine but it does no averaging or does it?

BTW here is my script that does median and then average:
Code:
clip1=AVISource("D:\cap1.avi")
clip2=AVISource("D:\cap2.avi")
clip3=AVISource("D:\cap3.avi")
clip4=AVISource("D:\cap4.avi")
M1=Median1(clip1,clip2,clip3)
M2=Median1(clip2,clip3,clip4)
M3=Median1(clip1,clip3,clip4)
M4=Median1(clip1,clip2,clip4)
Average(M1, 0.25, M2, 0.25, M3, 0.25, M4, 0.25)

Function Median1(clip input_1, clip input_2, clip input_3, string "chroma")
{# median of 3 clips from Helpers.avs by G-force

chroma = default(chroma,"process") #default is "process". Alternates: "copy first" or "copy second"

Interleave(input_1,input_2,input_3)
chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
SelectEvery(3,1)

chroma == "copy first" ? last.MergeChroma(input_1) : chroma == "copy second" ? last.MergeChroma(input_2) : last

Return(last)
}
Four captures of the same video are needed. First four different medians of three are calculated with the median1 function (M1-M4). These are all the four combination possible with pairs of three having four source files.
Then an average of all the 4 medians is calculated.
The script can this way remove errors like white lines that are only present in one capture and also temporal playback noise.
What cannot be removed are dropouts on the tape present on every playback and noise recorded on tape eg. due to a bad reception.
At least for the residual noise some decent denoising filters are available.
Reply With Quote
  #28  
12-19-2012, 12:43 AM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
Hi,
Yes I found almost the same settings here
http://forums.virtualdub.org/index.p...T&f=6&t=19460&
As far as I know phaeron hasn't responded to these issues adequately. It's a known problem with some setups.
Thanks for your script, I will have to try it myself.
I had a lot of problems with sync and now on a new OS they came up again, so it seems to vary by driver.
I'm still upset when I realize years worth of captures are all messed up because the vdub settings by default corrupted them.

-- merged --

Just to update this, the same median/averaging techniques are used in astrophotography, where a hundred photos of stars may be combined in this manner. In those programs, they use an additional technique called sigma

Quote:
A standard deviation is calculated for each pixel location, and a standard deviation calculated. The pixel with the largest deviation is rejected if it falls outside Sigma Factor times the standard deviation are rejected. The average is then taken of the remaining pixels.
What this basically means is, look at the following list and guess which one is part of the white line:
42,52,48,125

We can tell in our heads that 125 is much different from the rest. The formal way to measure this is standard deviation. In this case it's 39. The mean is about 67. The range of one standard deviation is 28 to 106. The 125 is about 1.5 standard deviations away, so it's dropped. The new average is 47.

I think you could do even better, by scanning a known grey area that has no white lines in select frames, to find the real noise standard deviation, then you can absolutely reject anything that seems way too far away to be just noise. You can't be absolutely sure about this though, because of spatial alignment of each clip, sharp edges could get blurred.

I've found though problem with white lines in the sky where it's already bright, they are still visible because the lines are so close in brightness to the actual scene. It's not so noticable though.

As for Admin's question about removing dropouts in a single capture, yes a normal spatial median could cause problems with interlacing, unless you deinterlace it or you use a special median that is horizontal only, which is the reason for the script I gave. What it does is just enlarge the video vertically with a point resampling, bascially defeating the spatial median in the vertical direction.
Reply With Quote
  #29  
12-19-2012, 11:40 PM
JasonCA JasonCA is offline
Free Member
 
Join Date: Oct 2011
Posts: 62
Thanked 2 Times in 2 Posts
Thanks for resurrecting this thread jmac698. It is a very interesting thread. Thanks for your latest input too!
Reply With Quote
  #30  
12-20-2012, 11:00 AM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
Here's the formulas,

average - sqr(n)

median - sqr(2n/pi)

clip average - sqr(n-2)

passes avg med clp
3 1.7 1.4 1
5 2.2 1.8 1.7
7 2.6 2.1 2.2
9 3 2.4 2.6

The table shows how many times noise is reduced. Average is best for guassian noise, but no impulse noise removal. Median reduces impulse (white lines), but not as much plain noise. With more than 6 captures, the min/max clip is good for noise and impulse. The min/max clip is a simple method of just throwing away the 2 extreme values, which is why the formula is n-2. The sigma clip is the same, except a different way of throwing out values.

So there you go, your idea of combing them is down to math.

There's an even better generic way, a modified clipping where values are only thrown away if there's some that are beyond a standard deviation, so hopefully in places without white lines it will convert to a simple average. This is kinda like a built in masking. There's still the problem of the white lines still being there but faint in light areas. A solution to this is building a mask by using more horizontal pixels to look for a significantly higher average in one frame, indicating a line is there. I think this would fail to exactly find the line length so there could be little line fragments left, but it will still look better.
Reply With Quote
The following users thank jmac698 for this useful post: tomr (12-20-2012)
  #31  
02-10-2013, 02:55 AM
JasonCA JasonCA is offline
Free Member
 
Join Date: Oct 2011
Posts: 62
Thanked 2 Times in 2 Posts
So I'm starting to play around with this average technique. Here is my Avisynth script:

Note: I don't need to use Trim in this case, because I already modified each video so that it's aligned from the start.

Code:
v1 = DirectShowSource("C:\capture1.avi").ConvertToYV12(interlaced=true).SeparateFields.Bob
v2 = DirectShowSource("C:\capture2.avi").ConvertToYV12(interlaced=true).SeparateFields.Bob
v3 = DirectShowSource("C:\capture3.avi").ConvertToYV12(interlaced=true).SeparateFields.Bob

Average(v1, 1.0/3, v2, 1.0/3, v3, 1.0/3)
Now, each capture is VHS video which I have captured using the ATI 600 USB. So, each VHS video (capture1.avi, capture2.avi, capture3.avi) is interlaced and captured by virtualdub.

Two things:

1) How do I output the video that has been averaged to a file in Avisynth? I want to dump the averaged video to a file so I can view it.

2) To get a good view of the video, I obviously want to deinterlace it. Though my script works, it's a bit jittery, but it seems to be non-interlaced after using Bob. After it has averaged, I just want to watch the final video to get an overall feel of how the video looks. Are there any additional avisynth commands I can ADD to the script above to help clean up the video...perhaps things that are typically done to get a descent view of if the video came out ok?
Reply With Quote
  #32  
02-10-2013, 10:12 PM
JMP's Avatar
JMP JMP is offline
Former Site Staff | Computers
 
Join Date: May 2009
Location: USA
Posts: 172
Thanked 22 Times in 15 Posts
As much as I want to help with this, you may have to wait for jmac698 to come back to respond to this. You can try PMing him to ask him to come back to post here as well.

-JMP

- Did my advice help you? Then become a Premium Member and support this site.
- Check out my latest Editorial.
Reply With Quote
  #33  
02-12-2013, 09:39 PM
themaster1 themaster1 is online now
Free Member
 
Join Date: Feb 2011
Posts: 309
Thanked 75 Times in 61 Posts
- big mistake to use directshow, use avisource instead much more reliable especially if interlaced
- You don't have to separate the fields before bobing as far as i know, it would be best to use the video as is (not deinterlace imo)

the full script should look like this:

copy1=avisource(...).assumetff (or assumebff depending)
copy2=avisource(...).assumetff (or assumebff depending)
copy3=avisource(...).assumetff (or assumebff depending)
Median1(copy1, copy2, copy3)

And you need to load the avs script "Median1.avs" which you can find on this page:
http://forum.videohelp.com/threads/3...=1#post2122313
Reply With Quote
  #34  
02-13-2013, 09:51 PM
JasonCA JasonCA is offline
Free Member
 
Join Date: Oct 2011
Posts: 62
Thanked 2 Times in 2 Posts
Quote:
Originally Posted by themaster1 View Post
- big mistake to use directshow, use avisource instead much more reliable especially if interlaced
- You don't have to separate the fields before bobing as far as i know, it would be best to use the video as is (not deinterlace imo)

the full script should look like this:

copy1=avisource(...).assumetff (or assumebff depending)
copy2=avisource(...).assumetff (or assumebff depending)
copy3=avisource(...).assumetff (or assumebff depending)
Median1(copy1, copy2, copy3)

And you need to load the avs script "Median1.avs" which you can find on this page:
http://forum.videohelp.com/threads/3...=1#post2122313
Thanks! And would you know how to dump the output to a file in Avisynth? Perhaps something like:

Code:
copy1=avisource(...).assumetff (or assumebff depending)
copy2=avisource(...).assumetff (or assumebff depending)
copy3=avisource(...).assumetff (or assumebff depending)
video = Median1(copy1, copy2, copy3)
DumpToFile(video, "C:\somepath\new.avi")
?
Reply With Quote
  #35  
02-14-2013, 12:35 PM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
There is no command. The script is a video file through the magic of a virtual avi file. Just open the script in an encoder program. You can also open the script in mediaplayer directly.
Also you can try AvsPmod, which includes an avs2avi tool, so you can just click to encode. It uses installed codecs. UTVideo is a nice lossless codec which plays back directly in VLC, for example.
Reply With Quote
  #36  
04-22-2013, 08:52 PM
poita poita is offline
Free Member
 
Join Date: Oct 2012
Posts: 2
Thanked 0 Times in 0 Posts
I have been following this with interest as I have multiple captures done (often 4 or 5 or morecopies) and want to throw away the outliers (dropouts etc.) and then average the remaining pixels to remove random noise.

Trouble is, the captures are all in 10bit YUV or 10bit RGB, and I need to keep the dynamic range.
Is there any software that will average/median in 10bit or higher colourspace? The 8bit ones cause undesirable colour shifts, and leave me with not enough DR in the resulting video.
Reply With Quote
  #37  
12-08-2013, 08:20 PM
JasonCA JasonCA is offline
Free Member
 
Join Date: Oct 2011
Posts: 62
Thanked 2 Times in 2 Posts
For averaging multiple captures, I see two ways two do this. Let's assume 3 captures to make it simple:

First, one could capture a VHS tape utilizing 3 capture cards. This method would be playing the VHS tape once, and capturing it simultaneously to 3 capture cards. I would then have 3 captured digital videos that can then be used for averaging the 3 captures. PRO's: lining up the captures is easier.

Second, one could capture the VHS tape to 1 capture card 3 times. This method would be playing the VHS tape back to one capture card 3 times in a row. Again, I would then have 3 captured digital videos that can be used for averaging the 3 captures. CON's: lining up the captures is harder since you have 3 separate captures at different times.

My main question is this: What is the best methodology of capturing between the two methods for the purpose of using the 3 captures towards being averaged through AviSynth? There must be pro's and con's between the two methods?

Hmmm?

NOTE: "This thread is more than 231 days old. You should only reply if you were part of the original conversation AND need follow-up advice or want to give an update. Make a new thread if you have a new question." Sorry for re-opening this old thread (one of my favorites) which I was apart of originally. I thought my question would apply here since it's a continuation on the averaging methodology from when juhok originally asked the question which was inspired by jmac698.
Reply With Quote
  #38  
12-08-2013, 08:47 PM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
It seems to save time to accomplish the same thing, but you have to think about why this works. With the 3 cards, you are averaging the noise from 3 cards, which should be virtually nil to begin with. To reduce noise you need different "runs" of the noise, the same VHS noise is presented to 3 cap cards. The only advantage might be in capturing a few missing frames.
Reply With Quote
  #39  
12-08-2013, 10:27 PM
JasonCA JasonCA is offline
Free Member
 
Join Date: Oct 2011
Posts: 62
Thanked 2 Times in 2 Posts
Quote:
Originally Posted by jmac698 View Post
It seems to save time to accomplish the same thing, but you have to think about why this works. With the 3 cards, you are averaging the noise from 3 cards, which should be virtually nil to begin with. To reduce noise you need different "runs" of the noise, the same VHS noise is presented to 3 cap cards. The only advantage might be in capturing a few missing frames.
jmac698 himself ! You always have great input. Great to hear from you!

You said, "To reduce noise you need different "runs" of the noise". This almost seems to me you are implying the "Second" method seems better then the first? The second method I described, is 3 separate VHS runs to one capture card. Is this what you mean by different runs?

That's what I'd like to understand...which noise am I reducing? It seems if you run the VHS tape through the VCR 3 separate times (hence 3 separate captures to 1 card), you would get different VCR noise? I could then average out the VCR noise?

On the other hand, if I run the VHS through the VCR one time and capture simultaneously to 3 separate capture cards, I would not have enough captures to filter out the VCR noise itself? Is this correct?
Reply With Quote
  #40  
12-09-2013, 01:11 AM
jmac698 jmac698 is offline
Free Member
 
Join Date: Dec 2010
Posts: 387
Thanked 73 Times in 56 Posts
Yep, you've got it, sorry I wasn't clear enough. Think of it this way, you roll a die, and get 2. Roll again, you get 4. Average them, (2+4)/2=3, which is exactly the average you are looking for. Noise is like a random subtraction/addition to the real amount, and because it's random, it's different every "roll". Therefore you need several passes with different noise, but the same signal, then you average out the noise to 0 and only the signal is left.

In the 2nd case, the original VHS signal is the same, the noise from the capture card is different, and added by the VCR is different, even what's on the tape is different. So those all get cancelled.

With 3 cap cards, the vhs, vcr noise is the same, but capture card noise is different.

I just wanted to point out a few things.

-Median is 80% as effective at reducing noise (when there isn't black/white lines) as average, or exactly sqr(2/pi), though I just read a mention of 65% but no reference given, and I can't really source that formula either.
-With 7 or more captures, eliminating extremes and averaging is better at reducing noise than median.
-Using solely averaging, outliers (white/dark streaks) are reduced by only N.
-There's a few better ways of doing this, as the technique is used a lot in astronomy also so there's serious research on the topic. One is called Sigma-Kappa, another is called Artificial Scepticism. The latter is neat, as it gives more weight to the middle values, but still makes some use of the outer ones, so there's more noise reduction.
-When I say reduces the noise, I mean the standard deviation is divided by the amount in the table. How that relates to visual noise is a bit complicated, but could be converted to a more standard measure like dB, SSIM, or PSNR.
-An even better way to remove comets/streaks, is to look at the rejected pixels and see if any are connected in a line, then don't use those pixels in that capture in the average, and average everywhere else. This makes the maximum use of the available information, however that section could look a bit different as it's a bit noisier than the rest, due to being made from one fewer frames.
-Median doesn't affect the histogram, but average introduces new values and creates a higher bitdepth. The averaged result (if done in 16 bit) could be dithered to remove some banding.
-Here's another idea, to take three copies of some movie, and several passes of each one, then median or average each cleaned copy. This reduces even the noise of the tape, and theoretically you could get a perfectly clean signal as if VHS were noiseless. I tried this, but one of my tapes had some problems so it didn't really work out. I still keep my eye open for a set of 3 used tapes, like the THX Star Wars ones That would be the ultimate test.
Reply With Quote
Reply




Similar Threads
Thread Thread Starter Forum Replies Last Post
Evaluate my setup and test captures? kooz Capture, Record, Transfer 9 03-21-2017 10:51 AM
Is DVD Decryptor included in GSpot? (or Imgburn?) rocko General Discussion 7 07-12-2015 04:43 PM
Best way to merge segments from multiple captures? premiumcapture Restore, Filter, Improve Quality 6 05-05-2015 12:03 PM
Test captures of VHS tapes with JVC HR-S9500 knumag Capture, Record, Transfer 17 07-20-2014 10:00 PM
Averaging multiple VHS captures technique JasonCA Capture, Record, Transfer 9 12-31-2012 11:35 AM

Thread Tools



 
All times are GMT -5. The time now is 09:23 AM