I've been capturing some camcorder tapes recently, using both an ATI600 USB device and the EzCap116 (they seem pretty much the same device to me but let's not open that can of worms...), and I always end up with somehow "uneven" levels. Have a look at the following image for example:
There are some levels that seem not to be used, so the histogram has gaps. If I adjust the brightness/contrast in VirtualDub, I then get no gaps, but instead some luma values get "bunched up":
Now, in practice this doesn't matter much, as any amount of subsequent levels adjustments and denoising wipe out these gaps. But I'd still like to know if the stair-stepping can be avoided altogether, is there perhaps a setting in VirtualDub that would cause this to happen? I've tried going through the options but can't seem to make a difference.
The EzCap has similar issues but not identical, so it can't be entirely a VirtualDub issue anyway. VDub's own histogram also shows the gaps or peaks during capture, when I happen to get the histogram working (it seems very buggy).
I've attached a short .avi file with four different captures, two with the ATI capture device and two with the EzCap.
Any ideas? Is this just unavoidable due to how the capture devices adjust levels?
+ Reply to Thread
Results 1 to 6 of 6
You're working with integer values. Manupulations of those values will cause duplicates or gaps. For example, start with 0,1,2,3,4,5 and double all of them: 0,2,4,6,8,10 -- there are gaps. On the other hand half all of them: 0,0,1,1,2,2 -- now they've bunched up. The proc amp of capture devices often work in higher bit depths internally. So using the capture card's proc amp may give smoother results than VirtualDub's Levels/Brightness/Contrast filters.
I'd be fine with not manipulating them at all. Is there a way to completely bypass any contrast adjustment during capture? The first image I posted is with all sliders in the middle, yet there are gaps in the histogram. I can't find a setting that leaves a smooth levels curve. As long as I can get the brightness roughly right, I could adjust the contrast with Levels(dither=true) later on in AviSynth.
The sliders available through Video -> Capture filter appear to be the same ones as Video -> Levels (one mirrors changes to the other).
GraphStudio, then importing that into an AviSynth script with DirectShowSource(), adding the Histogram() filter, then displaying the script with a media player.
But many capture devices have a non-defeatable automatic gain control which will make this impossible.
...I think this is just not worth the effort. I'll just make sure to capture in a way that doesn't compress the luma and then adjust the levels back down afterwards. Why oh why does nothing work sensibly when it comes to video capturing.