digitalFAQ.com Forum

digitalFAQ.com Forum (https://www.digitalfaq.com/forum/)
-   Capture, Record, Transfer (https://www.digitalfaq.com/forum/video-capture/)
-   -   VHS capturing: what do I need to own and know? (https://www.digitalfaq.com/forum/video-capture/7027-vhs-capturing.html)

sanlyn 06-25-2016 01:03 PM

4 Attachment(s)
Quote:

Originally Posted by koberulz (Post 44703)
Quote:

Originally Posted by sanlyn (Post 44697)
All you do with ColorMill is click on a category, move sliders up and down, and watch the results in its preview.

Having reopened it, I guess it's just an initially overwhelming number of options. Apart from that, though, not sure what the 'stick' and 'lock' buttons do.

"Stick" allows you to adjust all three sliders at the same time. "Lock" lets you lock your settings in place so you don't accidentally blow away your settings.

At the bottom of ColorMill's dialog, forget the "sharp" button. It doesn't do anything. The :MIDDLE POINT" needs explaining. The assumed midpoint between RGB 0 and 255 is RGB 128. In terms of grays/whites, it's the middle gray point. If you lower the midpoint, other controls that are are based on the normal midpoint will assume a midpoint lower than 128. Raise the midpoint, and the new middle point is centered higher than 128. The Booster and Base Shift button tweak brightness values above or below the set middle point. If you try it sometime you'll see that it acts like the gamma slider in the middle of a Levels control. Usually one makes very slight adjustments with those options, but you can see the difference. Advanced NLE's have simialr controls, but they're more complicated (!)

From your samples it looks as if you did a pretty decent job of handling some really bad color. A little noisy in spots, so when I worked with the originals I did some mild denoising in Avisynth. The originals have set the black levels too high, which brought on some bright chroma clipping, especially bright red. The reds in this video are monsters. They're over saturated to the point of glowing. Bright Cyan (blue+green) has the same trouble in some spots.

The opening frames of Example2 are troublesome, as the player moves through some uneven stadium color lighting at first; fix skin colors in the opening frames, and by the end of the clip the colors are out of whack again. Anoither problem is getting decent color and levels in the playing court. Chroma blending and ghosting are a nigthmare, making it impossible to get clean color for the players and uniforms.

The image below taken from two frames in Original1 shows how chroma blending makes moving objects take on the colors of the background. This isn't the same as motion blur, which is bound to happen in action shots. In the picture at left, the player in the upper right has disappeared into the MacDonald's ad. In the right-hand image, see if you can find the basketball (it's on the green part of the floor in front of the lower left player). In some frames the guys look transparent.
http://www.digitalfaq.com/forum/atta...1&d=1466877351

One curious thing I saw in the Restorations. Interlaced VHS from TV is usually top field first. Your Originals are top field first as well. But the Restorations are bottom field first, which is more common with DV. Was that on purpose?

The attached mp4's are the results I got, having the hardest time with that MacDonald's ad lining the court's side walls -- it's more pinkish than the other reds (the seats are closer to real red). Red oversaturation was another problem, as it obscured contours in the auditorium seats. My own take with the samples was to reduce saturation a bit and remove some noise. But give 10 people a video like this and you'll get 10 different videos in return. Your work was definitely an improvement.
:)

koberulz 06-25-2016 01:23 PM

Quote:

Originally Posted by sanlyn (Post 44704)
One curious thing I saw in the Restorations. Interlaced VHS from TV is usually top field first. Your Originals are top field first as well. But the Restorations are bottom field first, which is more common with DV. Was that on purpose?

Um...no. Oops.

Could that be a result of the crop/add borders?

Quote:

The attached mp4's are the results I got, having the hardest time with that MacDonald's ad lining the court's side walls -- it's more pinkish than the other reds (the seats are closer to real red). Red oversaturation was another problem, as it obscured contours in the auditorium seats. My own take with the samples was to reduce saturation a bit and remove some noise. But give 10 people a video like this and you'll get 10 different videos in return. Your work was definitely an improvement.
:)
Wow, yours looks way better than mine. What did you do specifically?

I used a VHS filter to shift the chroma 4 vertically, -2 horizontally. Cropped X1 6, X2 28, Y1 12, Y2 12. Resize to letterbox to 720x576. Color Mill levels middle -6, bright -13. Levels to bring the blacks to 28. HSI on all colors bringing saturation to 1.03, Red/Cyan/Blue saturation to 0.9, red hue to 3, CCD at 20, temporal cleaner at defaults, and a small overall and borders with MSU Smart Sharpen.

EDIT: I'm less interested in your settings specifically than something like "I noticed X problem, so I applied Y filter to achieve Z result" or something. Something I can apply later, to different tapes.

Looking at mine compared to yours, it seems I've gone a bit dark and oversaturated? Hard to tell just playing such short clips back-to-back, and I don't have time to split-screen them in Premiere right now (like I did with the earlier DVD-recorder example).

sanlyn 06-25-2016 03:02 PM

Quote:

Originally Posted by koberulz (Post 44705)
Could that be a result of the crop/add borders?

Reversed field order? Not with Avisynth's Crop. I never use VDub's crop, so I don't know how that works. But if you used a resizer (Mm, shouldn't have to do that, and resizing always has a cost) it might have deinterlaced in the background and put the fields back together in reverse order. Interlaced video should never be resized while interlaced.

I don't see that the mp4's look better, they just look different (But thank you, anyway!). The fist step in Avisynth was to crop the black borders so I could check levels without throwing off histograms. I did this in YUY2 without touching the core image, then added black borders (later) for centering and final frame size:
Code:

Crop(8,12,-34,-10).AddBorders(12,12,14,10)
Black levels were about y=20 points too high, a little less on some shots, so I lowered black levels by applying ColorYUV's luminance offset, which lowers all luminance values over the entire spectrum by the same amount (I used minus 15 to suit all 3 clips):
Code:

ColorYUV(Off_y=-15)
Red was oversaturated and bright reds were starting to glow. So I lowered red contrast and bright gain:
Code:

ColorYUV(gain_v=-20,cont_v=-15
The U and V channel had some chroma noise (subtle, unevenly colored "stripes", difficult to see but noisy in motion). There was line shimmer and some ragged edges, and plain old tape noise. I used SmoothUV() at its weak default for some of the chroma junk. Then for shimmer, fuzzy edges and mild denoising, I used QTGMC at default "medium" presets.

For color bleed and chroma shift I used Avisynth's FixChromaBleeding and ChromaShift filters, then added awarpsharp2 on Chroma only (basically, it's used that way to "tighten" chroma along edges and contours). The only sharpener was default values of LimitedSharpenFaster, a sophisticated sharpener that avoids halos and many common sharpening artifacts. At default values this is a "smoothing" sharpener, if you can imagine such a thing. If you want, you can pump its parameters and make a really horrible looking video.

Correcting line shimmer and disjointed-looking edges usually requires deinterlacing, which is what QTGMC did along with smoothing noise. So the video had to be reinterlaced and then converted properly to RGB for work in Virtualdub. Avisynth can do a very clean job of it:

Code:

AssumeTFF().SeparateFields().SelectEvery(4,0,3).Weave()
ConvertToRGB32(matrix="Rec601",interlaced=true)

Videos with fewer problems wouldn't need QTGMC, and there are other motion smoothing specific filters (good luck on learning how to use them, only their creators know for sure). For heavier denoising in itself you wouldn't get much from QTGMC, and some denoisers work without affecting interlace.

In VirtualDub I used ColorMill and gradation curves, and ColorTools for checking results along with a free Photoshop-style desktop pixel sampler called CSamp. I used hue/sat/intensity for red, yellow, and cyan, and on one clip I used temporalsmoother. Never cared for MSU filters, I removed them years ago.

I saved VDub's output to new files, then I went to sleep. Next morning I took a look with fresh eyes. Yes, indeed, almost every setting had to be tweaked further. Amazing what you think you see the first time around. Then I saved VDub's output as YV12 with Lagarith lossless compression and opened the new file into an X264 encoder.

Others might do something entirely different.

You can create a side-by-video in Avisynth and encode it as generic mp4 or something that doesn't require standard frame sizes, but your video and mine use a different frame size (mine are 704x576). But you can add side border pixels to make it 720x576. More simple: What I often do is set VLC player to loop through selections and play two files, one after another, over and over.

lordsmurf 06-26-2016 01:06 AM

I'm the opposite: I hate Avisynth crop. :P

But both Avisynth and VirtualDub are easy to make mistakes. In fact, everything is: pro NLEs like Premiere, freeware, and everything in between. I'm really tired of seeing interlace errors on cable/satellite.

Even the fixed clips have a chroma blooming problem. It's not the TBC, and my money is on the VCR. The tape signal is possible, but less likely. I'd want to see more samples, from other tapes, to be sure there's really a problem.

I need to clean this thread up, and read new posts (not just skim), before I say anything else.

koberulz 06-26-2016 04:04 AM

Quote:

Originally Posted by sanlyn (Post 44706)
Reversed field order? Not with Avisynth's Crop. I never use VDub's crop, so I don't know how that works. But if you used a resizer (Mm, shouldn't have to do that, and resizing always has a cost) it might have deinterlaced in the background and put the fields back together in reverse order. Interlaced video should never be resized while interlaced.

I'll get to the other stuff later, but the only resize I did was to add the borders, there was no scaling.

I tried to attach the vdscript file earlier, but that's not an allowed file format here.

How can you actually tell what the field order is?

koberulz 06-26-2016 07:13 AM

6 Attachment(s)
Quote:

Originally Posted by lordsmurf (Post 44714)
Even the fixed clips have a chroma blooming problem. It's not the TBC, and my money is on the VCR. The tape signal is possible, but less likely. I'd want to see more samples, from other tapes, to be sure there's really a problem.

How about the same tape from two other VCRs? I ran it through the old VCR I mentioned in the OP (no AVT, but using the USB-Live2), capped as Lagarith and then saved the clips as Lagarith. I've also pulled the same clips from a capture made by a friend using a DVD-VCR combo unit, straight to a single-layer DVD. I converted the VOB files to Lagarith AVI using TMPGEnc, then used VDub to get Lagarith clips.

Not really entirely sure what chroma blooming is, so I can't tell if that's still present, but the AltVCR clips make me damn happy I spent the money on a good VCR.

Quote:

Originally Posted by sanlyn
Red was oversaturated and bright reds were starting to glow. So I lowered red contrast and bright gain:

Lowering the red contrast is basically just desaturating it, yes? Not sure what the 'bright gain' is?

Quote:

The U and V channel had some chroma noise (subtle, unevenly colored "stripes", difficult to see but noisy in motion). There was line shimmer and some ragged edges, and plain old tape noise.
Not even sure what I'm looking for with regards to any of those issues?

Quote:

So the video had to be reinterlaced and then converted properly to RGB for work in Virtualdub.
Could you expand a little on what each piece of that AVISynth script does? And am I doing something wrong by editing my YUV captures in VDub?

msgohan 06-26-2016 10:04 AM

Quote:

Originally Posted by sanlyn (Post 44704)
Your Originals are top field first as well. But the Restorations are bottom field first, which is more common with DV. Was that on purpose?

Quote:

Originally Posted by koberulz (Post 44705)
Could that be a result of the crop/add borders?

Quote:

Originally Posted by koberulz (Post 44680)
I just went with what looked good (6 & 28 X, 12 & 10 Y).

Any time you alter the top of the image by an odd number, you have reversed the field order. You cropped it by even numbers, but if VirtualDub then centered it exactly, it added 11 to the top & bottom. Choosing "Multiples of 2" under "Codec-friendly sizing" makes it stick to even numbers.

koberulz 06-26-2016 10:15 AM

1 Attachment(s)
Also for comparison, there was another game played the night before in the same venue with one of the same teams. Some highlight clips from that game were shown at the end of the broadcast of this game. So they were recorded on the same VHS tape, and captured using the same equipment. I've attached a sample, unrestored. It's significantly better quality, so a lot of the issues with the game I'm working on at the moment were presumably inherent in the actual broadcast.

This clip might also be helpful in color-correcting the Perth-Madrid game. The area inside the three-point line looks a lot more blue in this clip, as opposed to the greener tint of the full game (which is one of the biggest things that stood out to me in comparing my work to sanlyn's).

koberulz 06-26-2016 10:48 AM

2 Attachment(s)
Quote:

Originally Posted by msgohan (Post 44725)
Any time you alter the top of the image by an odd number, you have reversed the field order. You cropped it by even numbers, but if VirtualDub then centered it exactly, it added 11 to the top & bottom. Choosing "Multiples of 2" under "Codec-friendly sizing" makes it stick to even numbers.

I'll give that a shot, cheers.

After looking at that other clip, I set the hue of the greens and cyans at +18 to try and replicate the blue color (which, now that I look at it, also makes the FIBA logo the correct color), desaturated the yellows to 0.84 to make the court more of a brown colour, and lowered the intensity of the reds to 0.95.

Problem is, I'm now getting this sort of thing happening:
Attachment 6314

If I drop the intensity of the reds to 0.90, I get a similar result with this shot:
Attachment 6315

However, the first one goes away if I enter and exit the Filters dialog, or go forward a couple of frames and then back. So I'm not sure if it's a VDub display issue or something...the second example is permanent, without upping the intensity of the reds again. Not really sure what it is in either case or what I should be doing differently.

sanlyn 06-26-2016 12:06 PM

Thanks for new samples. Will check them later today.

sanlyn 06-26-2016 09:15 PM

Sorry for the delay. I'll post new material and answers tomorrow.
To partially offer an answer for your saturation control problems: mounting multiple copies of that plugin with separate color selections for each copy of he plugin will bring on the posterizing and hard gradient edge effects you're seeing. There are other ways to control specific colors in specific ranges.

The FIBA logo you pictured is neither blue nor green. but it's both colors. Blue + Green = Cyan. The logo in the FIBA image is 1/3 green an 2/3 blue, or an average of RGB Red=0, Green-108, Blue=210. In real life those exact colors in a scene would not always look exactly like the cyan in the artwork because of lighting, conditions of scale, reflections, and other factors. But it's certainly more blue than green. However if getting that exact logo color in a scene with a human would cause the human turn green or other weird colors, I'd rather favor believable flesh tones and clean whites.

koberulz 06-27-2016 02:21 AM

3 Attachment(s)
Switched from desaturating the yellow to changing its hue, which has the court looking even better.

I still don't know how to figure out field order, so I'm not sure if I've fixed that issue.

I'd like to lower the intensity of the reds a bit more and see how that goes. They keyways still don't look right, but I can't see how it affects skintones because of the posterizing (which is already present in the FIBA logo anyway).

sanlyn 06-27-2016 10:58 AM

3 Attachment(s)
Quote:

Originally Posted by koberulz (Post 44718)
How can you actually tell what the field order is?

A quick way to check field order in Virtualdub is to open a video in VDub and load the builtin "bob doubler" filter. In the bob doubler setup dialog window, set Field Order to "Top field first", and set Deinterlacing Method to "Bob". The bob doubler breaks down each fame into its separate fields and resizes the fields into full frames. Simple double-rate deinterlacing, but not very clean.

Scroll to a section of the video that contains definite motion horizontally or vertically. Move the frames manually one frame at a time using the frame advance button and observe the effect in the right-hand Output pane. Each time you press the frame advance key, the Output pane will show one field at a time. Press the frame advance button repeatedly and note how objects move in the Output pane. If you see stuttery back-and-forth motion instead of a consistent flow, you chose the wrong field order. If you change the field order in the bob dialog window and see motion moveing correctly, you've determined the correct field order for that video.

With field types other than plain interlaced it's more complicated. The old neuron2 website had a ton of tips and tricks for Virtualdub and Avisynth. He'd suggest Avisynth for analyzing different frame structures. I have attached an offline copy of his old html page with the article titled "How do I figure out the nature of my source video?". Since html isn't an allowed upload format, it's attached as D2_neuron2_faq_AnalyzeVideo.zip

Crop: Whether one uses Avisynth or VirtuaLDub to crop a video, be careful about colorspace and frame structure. In VDub the working colorspace is RGB. The rules for safely cropping a video apply to all colorspaces in Avisynth and to VirtualDub as well. Those rules were mentioned earlier, but I'll link to that page of cropping rules again. Look for the table in the lower part of this page: http://avisynth.nl/index.php/Crop. Telecined video should be considered as interlaced for cropping.

Quote:

Originally Posted by koberulz (Post 44721)
Not really entirely sure what chroma blooming is, so I can't tell if that's still present

If Contrast/saturation is set too high the color will “bloom”, glow unnaturally, or flare, and highlights and other details in objects can distort or tend to disappear under the flood of color. Color bleeding is often sign of oversaturation. Look at the red auditorium seats in the original capture, where red is so "hot" that edges and contours in the seats seem to blend.

Quote:

Originally Posted by koberulz (Post 44721)
Lowering the red contrast is basically just desaturating it, yes?

Basically, yes.

Quote:

Originally Posted by koberulz (Post 44721)
Not sure what the 'bright gain' is

"Gain" in both YUV and RGB applies a multiplier to luminance or chroma. Darker colors have lower values so are raised to fairly low numbers, but the multiplier acts more progressively as values get brighter. Thus middle and brighter values are "stretched" from the bottom up. Decreasing gain will "shrink" values from the brights downward.

Code:

                  Dark                    Bright
    original:      |  ------------          |

    Increase gain: |  ----- --- --- -- - > |

    Decrease gain: | --------- <            |

Note that increasing gain stretches available data so that the brights have data "gaps" that can
result in rough edges on fine gradients, as in shadow-to-highlight skin tones and areas that are supposed to have smooth transitions from one hue to another. Decreasing gain can compress darker values so that some fine detail gets merged. A gain control is used in moderation and often followed by dithered smoothing to "fill in the gaps" with interpolated values. Some Avisynth smoothing filters that use dithering.

Quote:

Originally Posted by koberulz (Post 44721)
am I doing something wrong by editing my YUV captures in VDub?

It's your choice. Avisynth has more flexibility, more filters, is more precise with colorspace changes, etc. AVisynth and VirtualDub work together: what you can't do in one, you can do in the other. For one thing, AVisynth has more comprehensive and specific denoisers, and better deinterlacing when required.

Quote:

Originally Posted by koberulz (Post 44721)
Quote:

The U and V channel had some chroma noise (subtle, unevenly colored "stripes", difficult to see but noisy in motion). There was line shimmer and some ragged edges, and plain old tape noise.
Not even sure what I'm looking for with regards to any of those issues?

You'll see shimmer or ragged motion noise when the camera pans in Original1.avi in the stadium seats. Also some slight edge buzz in the markings on the court.

Subtle striping and noise mentioned are difficuly to see in large expanses of solid color unless the video is moving. Below, from Bluer3.avi, you can see blocky coarse grain chroma noise and streaking, especially the reds. Sharpening while still noisy and interlaced compounds the issue.

http://www.digitalfaq.com/forum/atta...1&d=1467042418

Another type of noise is discoloration.

Below, in the left-hand image you see vertical orange discoloration in the guy's arm as well as rough grainy edges on skin hue transitions and the "hot spot", some of it from clipped brights. In the middle image from Restored.avi, the edge effects are worsened by sharpening noise and grain -- in the middle case a posterized effect is more evident, not too bad but more noisy during play. In the right-hand image from the mp4's original AVI, SmoothUV cleaned the orange, dithering and QTGMC denoising softened the grainy edge transitions, sharpening while deinterlaced avoided exaggerating hard edge effects, and lowering the brightest highlights with VDub's gradation curves above RGB 180 tamed the hot spots.

http://www.digitalfaq.com/forum/atta...1&d=1467042609

Below, from Bluer3.avi, you can see blocky coarse grain chroma noise and streaking, especialluy in reds. Sharpening while still noisy and interlaced compounds the issue.

[quote=koberulz;44727]After looking at that other clip, I set the hue of the greens and cyans at +18 to try and replicate the blue color (which, now that I look at it, also makes the FIBA logo the correct color)
Problem is, I'm now getting this sort of thing happening:

http://www.digitalfaq.com/forum/atta...ng-artefactpng
[quote]
Color looks better in the logo, but that's block noise from sharp color cutoff and sharpening noise. The noise in the white lettering in he background was removed from the mp4 version with SmoothUV in AVisynth and CamcoderColorDenoise in VirtualDub. But the mp4 logo is still too green.

I note you increased green and cyan saturation. The bright part of logos are already too green, so increasing green and cyan at the same time made extra work with green (cyan is a secondary color = green + blue).

Quote:

Originally Posted by koberulz (Post 44726)
Also for comparison, there was another game played the night before in the same venue with one of the same teams. Some highlight clips from that game were shown at the end of the broadcast of this game. So they were recorded on the same VHS tape, and captured using the same equipment. I've attached a sample, unrestored. It's significantly better quality, so a lot of the issues with the game I'm working on at the moment were presumably inherent in the actual broadcast.

They were indeed. It would serve as a useable color and levels guide, although balck levels in the Highlights.avi are still too high but can be fixed. The FIBA logos won't look the official brand, so to speak, because of environmental differences and size. Still, the offficial colors I saw at the FIBA have more blue than green. The FIBA colors in all of the samples posted including mine are still too green. But remember that lowering blue or green saturation affects all resulting colors including skin tones, which contain Red, Green, and Blue. So it presents a very tricky dilemma.

Don't trust TV broadcasts to get everything right. They often don't. VHS inconsistencies don't help, either. Just do the best you can.

I thought I explained the Avisynth procedures earlier. What part do you have a problem with?

[EDIT] Oops. I forgot the neuron2 web page. Fixed. 2 coffees are better than one!

koberulz 06-27-2016 11:45 AM

Quote:

Originally Posted by sanlyn (Post 44735)
It's your choice. Avisynth has more flexibility, more filters, is more precise with colorspace changes, etc. AVisynth and VirtualDub work together: what you can't do in one, you can do in the other. For one thing, AVisynth has more comprehensive and specific denoisers, and better deinterlacing when required.

The biggest advantages of VDub are being able to look through a list of filters for things that might help, and being able to live-preview things. I've used the HD2SD plugin quite a bit but other than that have no real experience with AviSynth.

Quote:

Color looks better in the logo, but that's block noise from sharp color cutoff and sharpening noise. The noise in the white lettering in he background was removed from the mp4 version with SmoothUV in AVisynth and CamcoderColorDenoise in VirtualDub. But the mp4 logo is still too green.
So if I run SmoothUV, that gets rid of the posterizing? I didn't quite follow the deinterlace-and-reinterlace procedure you mentioned last time.

Quote:

I note you increased green and cyan saturation. The bright part of logos are already too green, so increasing green and cyan at the same time made extra work with green (cyan is a secondary color = green + blue).
I'm not sure what you mean by 'made extra work', but I don't see anything in my filters list that would increase saturation? I increased the hue of those two colors by 18, to make them bluer, but that's it.

Quote:

They were indeed. It would serve as a useable color and levels guide, although balck levels in the Highlights.avi are still too high but can be fixed. The FIBA logos won't look the official brand, so to speak, because of environmental differences and size. Still, the offficial colors I saw at the FIBA have more blue than green. The FIBA colors in all of the samples posted including mine are still too green. But remember that lowering blue or green saturation affects all resulting colors including skin tones, which contain Red, Green, and Blue. So it presents a very tricky dilemma.
Given that the unpainted areas of the court look way too yellow and the blue areas look way too green, I think it's fair to assume skintones and anything else in the video would also benefit from deyellowing.

And yeah, I was never expecting to get the FIBA logo looking perfect, by any means, just throwing it out there as another bit of evidence that things were greener (or yellower) than they should have been.

As far as skin tones containing blue and green...are you sure? Green screen and blue screen are a thing for a reason. And I actually did try zipping up and down the hue scale on the green and cyan just to test skin tones, and never saw any movement whatsoever.

Quote:

I thought I explained the Avisynth procedures earlier. What part do you have a problem with?
I'm not sure what this is a response to.

sanlyn 06-27-2016 12:11 PM

Quote:

Originally Posted by koberulz (Post 44736)
TSo if I run SmoothUV, that gets rid of the posterizing? I didn't quite follow the deinterlace-and-reinterlace procedure you mentioned last time.

SmoothUV does some chroma smoothing to help clean upblotching and, rainbows, and color streaking of various kinds, , but it won't defeat posterizing on its own. It's a rather mild filter.

In order to use chromableed fixers, motion smoothing, many denoising operations, and other factors, the video was deinterlaced. QTGMC is a deinterlacer that smooths motion between fields, does some noise and edge cleanup, and a lot of other work in interpolating new full-sized frames from half-sized fields. PAL interlaced video is a 720x576 frame with two interlaced fields, each 270x288. QTGMC uses sophisticated cleaners, interpolation, and motion compensation to create full-sized 720x576 frames from each 720x288 field. If your video has 1000 frames at 25fps, the deinterlaced result would be 2000 frames at 50fps progressive video. There are other ways to do this, but QTGMC seemed the better choice than heavy-duty denoisers on a video with so little sharp detail to work with.

After cleanup the video was reinterlaced by breaking the frames into original half-sized fields and reweaving them into a 25fps interlaced video.

koberulz 06-27-2016 12:20 PM

Quote:

Originally Posted by sanlyn (Post 44737)
SmoothUV does some chroma smoothing to help clean upblotching and, rainbows, and color streaking of various kinds, , but it won't defeat posterizing on its own. It's a rather mild filter.

So how do I fix that?

Quote:

After cleanup the video was reinterlaced by breaking the frames into original half-sized fields and reweaving them into a 25fps interlaced video.
So...AssumeTFF handles field order, SeparateFields splits the fields, Weave combines them? No idea what SelectEvery does?

And how do I get/use these AviSynth plugins. I've downloaded SmoothUV and ChromaShift, and just dumped the files into the AviSynth/plugins folder, but both have an avisynth.h file. And is there a quick way to get everything I need for QTGMC, or do I have to manually track down and install every necessary plugin?

koberulz 06-27-2016 03:51 PM

Even better colour references:
http://www.digitalfaq.com/forum/imag...6/q3iEEA-1.jpg
http://www.digitalfaq.com/forum/imag...6/7OBFXs-1.jpg

sanlyn 06-27-2016 05:57 PM

Nice pics.

I'll be back in the thread in a few moments.

[EDIT]

Quote:

Originally Posted by koberulz (Post 44738)
Quote:

Originally Posted by sanlyn View Post
SmoothUV does some chroma smoothing to help clean upblotching and, rainbows, and color streaking of various kinds, , but it won't defeat posterizing on its own. It's a rather mild filter.
So how do I fix that?

I found that with these clips QTGMC's denosing smoothed rough grainy edges well enough with its "Medium"" defaults. QTGMC has a few dozen parameters, but the several preset defaults are often good enough. You can be more picky and change some defaults. But you have to look up its HTML doc to know what's going on.

Quote:

Originally Posted by koberulz (Post 44738)
So...AssumeTFF handles field order, SeparateFields splits the fields, Weave combines them? No idea what SelectEvery does?

SelectEvery is one of 4 builtin "Select: functions. Some of which let you do some pretty geeky stuff with fields and frames. SelectEvery(4,0,3) takes groups of 4 of those separated fields. For every 4 fields, use the first field (field #0) as the new frame's top field, use the last field (#3) as the new frame's bottom field, and weave them into a new interlaced TFF frame.

For more details, the web page http://avisynth.nl/index.php/Select is a copy of the same documentation that was installed on your PC with Avisynth.

AssumeTFF() is stated because Avisynth by default assumes BFF. I get kinda picky about making sure TFF is in the script somewhere.

BTW, SmoothUV is designed for non-interlaced video and works in YV12 color, as do a ton of other Avisynth plugins and most of the chroma cleaners. Not a problem. Before running QTGMC or the other filters, use this:

ConvertToYV12(interlaced=true)

Never fear. Avisynth handles that conversion correctly. The SmoothUV plugin came with its own documentation, which I think is a simple read-me or html. The defaults worked OK for me:

Code:

SmoothUV()
Quote:

Originally Posted by koberulz (Post 44738)
And how do I get/use these AviSynth plugins. I've downloaded SmoothUV and ChromaShift, and just dumped the files into the AviSynth/plugins folder, but both have an avisynth.h file. And is there a quick way to get everything I need for QTGMC, or do I have to manually track down and install every necessary plugin?

Not a good idea to load plugin .zip packages and unzip everything into your plugins folder. It will fill with junk and irrelevant files, straightaway. ChromaShift includes some .h, .cpp, etc., files in case you're ambitious enough to compile a C++ version of the plugin. Don't bother, it won't change results. The next time you download another .zip package it might have more .cpp and other files of its own. Avisynth can't use those files. Ther chromashift .html is neded but astore it elsewhere. The ChromaShift plugin is ChromaShift.dll, which is the only one of those files Avisynth will recognize and use.

Make a master folder for your downloads, and a subfolder for each filter. That way you'll avoid piling junk into your Avisynth folder and you'll always know where the plugin's documentation is.

Well, now, QTGMC is one big customer. So if you're game....

Doom9 and the Avisynth wiki have download package links for QTGMC files, but many have been updated and not posted in the old links. An updated package was posted in digitalfaq somewhere, but I can't find it. Let me hunt a bit and I'll return with a new compilation.

sanlyn 06-27-2016 08:32 PM

1 Attachment(s)
The attached QTGMC_new.zip has updated versions of the original doom9 download package. Make a folder somewhere, name it "QTGMC", and download QTGMC_new.zip to that location.

The filters and other stuff are in 6 small zipped subfolders. As supplied, and with the included plugins installed as directed in the read-me's, you should be able to run QTGMC with Medium default presets using this statement:

AssumeTFF().QTGMC(preset="Medium")

QTGMC comes with 18 or so support files including the main QTGMC-3.32.avsi, plus two Windows system dll's. When the .zip file unzips you'll have the 6 small subfolders and three separate files -- a "READ ME FIRST.TXT" file, a .txt version of the entire QTGMC avsi file, and QTGMC's HTML help doc. Don't ignore the big html, even if you don't savvy most of it. You should have at least a quick-browse glance at what this critter is about, even if you don't know how it does its work. But do yourself a favor and start with READ ME FIRST.TXT.

The other plugins have docs in a documentation folder. Those support plugins are stand-alone filters in their own right that you can use without running QTGMC. Many are proof that most Avisynth filters are much leaner than QTGMC. Several other complex plugin packages use some of these plugins.

For many cases you can play with the umpteen QTGMC parameters, but most of the time the defaults work well. There's a specific version of MaskTools.dll somewhere that lets QTGMC run in YUY2, but it's a headache to keep moving it in and out of the plugins. Otherwise, like much Avisynth heavy artillery, it runs in YV12.

3 of the zip'd subfolders have links to Microsoft's download sites for MSVC runtime libraries MSVC2010, 2012, and 2013, used by a great many Avisynth filters. Check those MSVC editions in your Control Panel "add/Remove Programs" list to see if they already exist. Likely, Microsoft installer won't overwrite what's there. Get 32-bit versions.

If you're familiar with Avisynth's installed "Getting Started" intro, there are 3 main types of Avisynth plugins. They should be kept in your plugins folder.
- ".dll" loads automatically when the avs script calls for it.
- ".avsi" loads automatically when the avs script calls for it.
- An ".avs" plugin is a scripted plugin that doesn't load automatically. I suppose the authors have reasons for doing it that way but I'm not willing to second guess their rationale. I don't think you mentioned any .avs plugins (FixChromaBleeding would be one), but they're easy enough to load manually with the Import() function:

Import("drive:\path to plugins\plugin_name.avs")

And there you go.

Now to find the scripts I used for the samples I made, which included two Avisynth filters not mentioned: SmoothAdjust and LimitedSharpenFaster. The latter is tough to find these days, having been replaced with a new "mod" that many users don't like as much. The other has dozens of versions. I'll get a workable package together tomorrow A.M.

koberulz 06-28-2016 12:49 AM

Quote:

I found that with these clips QTGMC's denosing smoothed rough grainy edges well enough with its "Medium"" defaults. QTGMC has a few dozen parameters, but the several preset defaults are often good enough. You can be more picky and change some defaults. But you have to look up its HTML doc to know what's going on.
But if I keept screwing with the colors, it gets worse/comes back. So how do I tweak the colors the way I want without introducing the posterizing effect?

Also, this:
---------------------------
VirtualDub Error
---------------------------
Avisynth open failure:
Cache: Filter returned invalid response to CACHE_GETCHILD_CACHE_MODE. 428222752
(QTGMC-3.32.avsi, line 776)
(QTGMC-3.32.avsi, line 386)
(***\game.avs, line 32)
---------------------------
OK
---------------------------

Code:

Function FixChromaBleeding (clip input) {

  # prepare to work on the V channel and reduce to speed up and filter noise
  area = input.tweak(sat=4.0).VtoY().ReduceBy2()

  # select and normalize both extremes of the scale
  red = area.Levels(255,1.0,255,255,0)
  blue = area.Levels(0,1.0,0,0,255)

  # merge both masks
  mask = MergeLuma(red, blue, 0.5).Levels(250,1.0,250,255,0)

  # expand to cover beyond the bleeding areas and shift to compensate the resizing
  mask = mask.ConvertToRGB32().GeneralConvolution(0,"0 0 0 0 0 1 1 1 0 0 1 1 1 0 0 0 0

0 0 0 0 0 0 0 0").ConvertToYV12()

  # back to full size and binarize (also a trick to expand)
  mask = mask.BilinearResize(Width(input),Height(input)).Levels(10,1.0,10,0,255)

  # prepare a version of the image that has its chroma shifted and less saturated
  input_c = input.ChromaShift(C=-4).tweak(sat=0.8)

  # combine both images using the mask
  return input.overlay(input_c,mask=mask,mode="blend",opacity=1)
}


A = AVISource("Capture.avi").ConverttoRGB32(matrix="rec601",interlaced=true)
B = AVISource("capture.avi")
B = B.FixChromaBleeding()
B = B.ConverttoYV12(interlaced=true)
B = B.SmoothUV()
B = B.QTGMC()
B = B.AssumeTFF().SeparateFields().SelectEvery(4,0,3).Weave()
B = B.ConverttoRGB32(matrix="rec601",interlaced=true)
StackVertical(A,B)


sanlyn 06-28-2016 07:55 AM

Well, you got farther along the first time than most people do. :congrats:


Quote:

Originally Posted by koberulz (Post 44744)
Code:

Function FixChromaBleeding (clip input) {
  ......
  ......
  ......

  # expand to cover beyond the bleeding areas and shift to compensate the resizing
  mask = mask.ConvertToRGB32().GeneralConvolution(0,"0 0 0 0 0 1 1 1 0 0 1 1 1 0 0 0 0

0 0 0 0 0 0 0 0").ConvertToYV12()
  ......

}


First, if the the line of code shown above is split into multiple lines by Notepad's "Wrap Text" when FixChromaBleeding was pasted into your script, that's an error for certain. Code lines can't be split that way. In Notepad, disable "Word Wrap" when working with scripts. There's a valid way to split lines in Avisynth. On top of that, the part of the line that was split contains a character string in quotes. To keep it simple, just don't use Word Wrap.

You shouldn't have to copy and paste avs files into your script anyway, unless you just want it that way. See "Import" in the script below.

FixChromaBleeding and SmoothUV work in YV12 and non-interlaced video. To use most chroma fixers you must first deinterlace or use SeparateFields(). Deinterlacing is more effective.

I don't think I used FixChromaBleeding on any of the samples, perhaps only one if I did. For one thing, in this case it desaturates everything, not just one color, and you can't control the strength of desaturation.

I used a couple of other plugins for the mp4's. I'm getting them together with an updated version of the other plugins and will post later today.

Stacking before and after is one way of comparing results, but I'd find it very difficult to work with both frames in Virtualdub and slows processing. In any case, I believe the overuse of "B=" is likely confusing some of the operation.
There's more than one way to do it. Try it this way:

Code:

### ---- In the Import line, change the path to match your system ----
Import("Drive:\path to\Avisynth\plugins\FixChromaBleeding.avs")

A = AVISource("Capture.avi").ConverttoRGB32(matrix="rec601",interlaced=true)
B = AVISource("capture.avi")

# ---- Here, move the focus of the script onto version "B" ----

B
AssumeTFF()
ConverttoYV12(interlaced=true)
QTGMC(preset="medium")
FixChromaBleeding()
SmoothUV()
SeparateFields().SelectEvery(4,0,3).Weave()
ConverttoRGB32(matrix="rec601",interlaced=true)
C=last

Return(StackVertical(A,C))

If you still get the CACHE_GETCHILD_CACHE_MODE error, you can sometimes ignore it but it's not safe. Make sure you copied the FFTW3 system files in the right place, and check that you have MSVC runtime 2010, 2012, and 2013 in your system if you haven't done so-- the support plugins require them. I assume you're using Avisynth 2.6, not the "MT" versions.

Quote:

Originally Posted by koberulz (Post 44744)
But if I keept screwing with the colors, it gets worse/comes back. So how do I tweak the colors the way I want without introducing the posterizing effect?

Multiple copies of the HSI filter and too much desaturation cause problems with that filter. I used only one HSI filter to lower saturation on two colors at the same time, then fixed the rest with COlorMill and gradation curves. You might be trying to get too much out of that paricular video. I'll have to show you what I did (which, in the end, still wasn't quite right for that logo).

[EDIT] Correcting myself here. I used FixChromaBleeding on Original3.avi.

koberulz 06-28-2016 08:59 AM

Quote:

Originally Posted by sanlyn (Post 44746)
You shouldn't have to copy and paste avs files into your script anyway, unless you just want it that way. See "Import" in the script below.

I don't have an AVS for FCB, I just found the code on the AviSynth wiki and copied it across. There was no download anywhere that I could see.

Quote:

I don't think I used FixChromaBleeding on any of the samples, perhaps only one if I did. For one thing, in this case it desaturates everything, not just one color, and you can't control the strength of desaturation.
Quote:

For color bleed and chroma shift I used Avisynth's FixChromaBleeding and ChromaShift filters, then added awarpsharp2 on Chroma only
I actually don't mind the desaturation too much, TBH. I was desaturating everything, then desaturating red, yellow, cyan, and blue even more. So pumping a bit of the saturation up instead of down gets to a pretty similar spot.

Quote:

Stacking before and after is one way of comparing results, but I'd find it very difficult to work with both frames in Virtualdub and slows processing.
If I drop zoom to 75% I can see all of all four things. I've never used any of these filters or anything before, so a before-and-after is helpful.

Quote:

If you still get the CACHE_GETCHILD_CACHE_MODE error, you can sometimes ignore it but it's not safe.
I can't ignore it, because it refuses to open the AVS file.

Quote:

I assume you're using Avisynth 2.6, not the "MT" versions.
Actually, I think moving to an MT version might have been what broke it. It was definitely working at some point, but I upgraded from 2.5.8 MT to 2.6, then 2.6 to 2.6 MT, and made some changes to the script and at some point in there it all died.

Quote:

Multiple copies of the HSI filter and too much desaturation cause problems with that filter. I used only one HSI filter to lower saturation on two colors at the same time, then fixed the rest with COlorMill and gradation curves. You might be trying to get too much out of that paricular video. I'll have to show you what I did (which, in the end, still wasn't quite right for that logo).
ColorMill and Curves affect everything, though, so it's touchier. Whereas with HSI I can do basically anything with any color.

After running FCB, I've got everything saturated up to 1.05, then red and yellow saturated down to 0.94. They're in separate filters, though, because I've got the red hue at +5 and the yellow hue at -7. And I've kept the cyan+green hue at +14. Not sure if that's causing posterizing problems or not though.

The other issue I'm having is cropping. I dropped that into the AviSynth script as well: Crop(6,12,-28,-12) and then AddBorders(16,12,18,12). But I seem to be getting more of that fuzzy right edge than I did when I did the crop-and-borders in VDub. Am I wrong in thinking that AviSynth code is the same as cropping 6 and 28X and 12 and 12Y in VDub, then using resize to letterbox/crop to 720x576 with 'multiples of 2' selected?

EDIT: And now I've got the left-hand keyway almost perfect (or as close as I think I can get, at least), but the right-hand keyway looks awful. If I ever find the people who put this broadcast together back in '95...

sanlyn 06-28-2016 09:30 AM

Quote:

Originally Posted by koberulz (Post 44749)
I don't have an AVS for FCB, I just found the code on the AviSynth wiki and copied it across. There was no download anywhere that I could see.

Yes, it's posted as the text of the plugin, like many others. Another is GradFun2DBmod, if you care to paste 428 lines of text into your scripts, and it's used very often. I used it with Original3.avi and will post it later.

You can paste the FixChromaBleeding text into a file in Notepad (don't use Word Wrap!!!), save it as an .avs file, and copy it to your plugins. Or with this little critter, you can save it as .avsi and it will load automatically. I've done that with several such posted plugins.

Quote:

Originally Posted by koberulz (Post 44749)
Actually, I think moving to an MT version might have been what broke it. It was definitely working at some point, but I upgraded from 2.5.8 MT to 2.6, then 2.6 to 2.6 MT, and made some changes to the script and at some point in there it all died.

Yes, MT would do it. I confess that I gave up on MT, no patience to hassle with it and hunt down user settings in posts all over the world. QTGMC has a modified MT download but only works with one MT version, and you can browse dozens of forum pages trying to figure it out. So if it takes 45 minutes to inverse telecine a 90-minute movie, so be it. Anyway, some filters don't give a speed increase no matter what you do. A great many "ancient" pre-MT plugins are still very widely used that either ignore MT or just crash.

Quote:

Originally Posted by koberulz (Post 44749)
ColorMill and Curves affect everything, though, so it's touchier. Whereas with HSI I can do basically anything with any color.

ColorMill works with individual colors and brightness ranges, while curves can be more specific. With HSI, if you lower saturation/intensity with any color, it affects the entire range. But I did use it sparingly on the samples. I'll be posting samples of what I used -- even if they're not be exactly what you want they'll give you some ideas.

The other issue I'm having is cropping. I dropped that into the AviSynth script as well: Crop(6,12,-28,-12) and then AddBorders(16,12,18,12). But I seem to be getting more of that fuzzy right edge than I did when I did the crop-and-borders in VDub. Am I wrong in thinking that AviSynth code is the same as cropping 6 and 28X and 12 and 12Y in VDub, then using resize to letterbox/crop to 720x576 with 'multiples of 2' selected?[/quote]However you do it, take care with the rules for different colorspaces and frame structure.

Back again a little later.

koberulz 06-28-2016 10:19 AM

2 Attachment(s)
Quote:

Originally Posted by sanlyn (Post 44750)
Yes, MT would do it.

Yep, reinstalling AviSynth fixed the problem.

Quote:

ColorMill works with individual colors and brightness ranges, while curves can be more specific. With HSI, if you lower saturation/intensity with any color, it affects the entire range. But I did use it sparingly on the samples. I'll be posting samples of what I used -- even if they're not be exactly what you want they'll give you some ideas.
But with HSI, I can use the blues and Cyans to make the two-point area really blue, without damaging any other colors:
Attachment 6324

Whereas with ColorMill, it completely breaks everything and it's still greener than the HSI example:
Attachment 6323

(Color correction intentionally extreme for the sake of example)

I changed it up so I've got the yellow and red desaturation in one filter, then handled the hue in each separately. Which is more total filters, but fewer filters concerned with saturation. It did seem to make Crawford's arm look smoother, but the FIBA logo behind him is still posterizing horribly. Although it does also seem to be present in the original, so fiddling with HSI may do nothing.

sanlyn 06-28-2016 11:08 AM

7 Attachment(s)
Indeed, with this recording you have some work cut out for you. I've been there -- in fact I'm still there this month with 72 straight hours of botched-up tapes I recorded on 911 in New York on two cheap (really cheap!) VCRs, first with a bad antenna starting 8:48 A.M. that disappeared when one tower fell and then with a bad cable quickie connect that would only get a dim Channel 2 for the first 48 hours.

Here is the script I used for my work on Original3.avi.
I've commented-out the cropping, so the script will output uncropped.
I used Import() for FixChromaBleeding, but you can paste the script into at the bottom below the "return last" line if you like.
There are also three mainstay Avisynth plugins in the script. I'm attaching them as well, with notes below.
NOTE: You must modify the path statements to match locations in your system.

Code:

Import("D:\Avisynth 2.6\plugins\FixChromaBleeding.avs")
Import("D:\Avisynth 2.6\plugins\LimitedSharpenFaster.avs")

AviSource("E:\forum\faq\koberulz\B\Original3.avi")
 # Crop(8,12,-34,-10).AddBorders(12,12,14,10)
ColorYUV(Off_y=-10)
ConvertToYV12(interlaced=true)
SmoothLevels(16, 1.0,255,16,255,protect=4)
AssumeTFF()
QTGMC(preset="medium")
FixChromaBleeding()
ChromaShift(C=2)
SmoothUV()
MergeChroma(awarpsharp2(depth=30))
LimitedSharpenFaster()
GradFun2DBmod(thr=1.5)
AddGrainC(1.0,1.0)

SeparateFields().SelectEvery(4,0,3).Weave()
ConvertToRGB32(matrix="Rec601",interlaced=false)
return last

I'm also attaching the results of this script as the lossless YV12 Lagarith avi from VirtualDub.

The script was run with VirtualDub filters loaded. I'm attaching the VirtualDub .vcf file with the filters and settings exactly as they were used. I don't know if you're using .vcf files (you said you were using VirtualDub "scripts", which I don't use). A good place to keep .vcf files is to copy them to the folder that contains your project. Don't keep them in your VirtualDub plugins. A .vcf file saves processing/filter settings. When you load the Avisynth script, go to "File..." -> "Load processing settings", find the .vcf file, and click Open, or OK, or whatever. The filters will load and the results will display in the output pane. Note that loading a .vcf overwrites any VDub filters you might already have loaded.

The Vdub filters used were:
- 2D Cleaner Optimized (Jim Casaburi add-in vdf)
- Temporal smoother (builtin)
- Hue/saturation/Intensity
- Gradation curves
- ColorMill
- ColorTools (loaded but disabled)

If you don't have casuburi's VirtualDub 2Dcleaner.vdf, it's attached.

The four Avisynth filters you likely don't have:

1. SmoothAdjust v2.80 (for Avisynth 2.5 and 2.6).

2. aWarpSharp2 2015 (required by several other plugins)

3. LimitedSharpenFaster.avs. NOTE: this is kept as an .avs and loaded manually with Import(). Reason: the later version LSFMOD.avsi is similar and required by other big plugins.

[EDIT] and 4. GradFun2DBmod.avsi + GradFun2db.dll

Any additional support plugins required by these filters are either included in the .zips or already supplied with the QTGMC package.

koberulz 06-28-2016 11:24 AM

Quote:

Originally Posted by sanlyn (Post 44752)
Code:

SmoothLevels(16, 1.0,255,16,255,protect=4)
MergeChroma(awarpsharp2(depth=30))
LimitedSharpenFaster()
GradFun2DBmod(thr=1.5)
AddGrainC(1.0,1.0)


Could you explain these a bit?

Quote:

I don't know if you're using .vcf files (you said you were using VirtualDub "scripts", which I don't use).
VDub replaced .vcf in 1.10 with .vdscript. They're the same thing as far as I can tell, just different extensions (and something internal, as changing the extension doesn't make them cross-compatible). I've dropped back down to 1.9, because 1.10 has all sorts of issues opening .avs files, so .vcf is what I need.

EDIT: I think you included the wrong 2d cleaner. I've got a '2d cleaner' from Jim Casaburi listed, but I get an error about '2d cleaner optimised' not being loaded.

sanlyn 06-28-2016 12:25 PM

Quote:

Originally Posted by koberulz (Post 44753)
I've dropped back down to 1.9, because 1.10 has all sorts of issues opening .avs files, so .vcf is what I need. Yes, lordsmurf discounted v.1.10 long ago.

SmoothLevels is a function in the SmoothAdjust plugin. The function "smooths" by using ordered dithering (deriving luma and color values from "gaps" in the perceived response curve, such as rough edges in large areas of color that should be smooth gradations). Also used to help reduce crushed darks and bright clipping by gradually pulling in super blacks and super brights to the y=16-235 range (or, as you can see from the first few numbers, you can modify the working range) without strong clamping of values at the extremes. It's one of several filters that can help prevent banding or help smooth the edges of hard hot spots, etc. "Protect=4" tells SmoothAdjust to ignore y=4 or darker, which includes black borders. To see other parameters, functions, and what the numbers mean, see the SmoothAdjust .txt doc in the .zip download.

MergeChroma(awarpsharp2(depth=30)) uses aWarpSharp2 to sharpen and tighten up fuzzy edges, such as where color bleeds over an object's borders. aWarpSharp2 sharpens both luma and chroma, but we only want to to sharpen chroma edges. So MergeChroma takes the luma values from the previous step and merges the chroma into the image from aWarpSharp's results. You could also use MergeLuma to take luminance from one step or another clip and merge it with the chroma from another source. http://avisynth.nl/index.php/Merge#MergeChroma, and in Avisynth's installed online help.

LimitedSharpenFaster is a sharpener (of course). It's designed to avoid artifacts. It used to be called LimitedSharpen. Its parameters let you adjust strength, areas you don't want sharpened (such as edges that too easily develop sharpening halos), and so forth. http://avisynth.nl/index.php/LimitedSharpen, a copy of which came with the .zip file.

GradFun2DBmod(thr=1.5) is an anti-banding filter. It can prevent banding and posterizing effects in hard edges and, if you're not afraid to soften the video too much, can help smooth bad banding effects that already exist. A more powerful version is GradFun3 in the Dither() plugin package that works with 16-bit dithering. For a demo of smoothing banding effects in a large background wall area: https://www.animemusicvideos.org/gui...l.html#banding

AddGrainC adds very fine barely imperceptible film-like grain to mask hard edges and other imperfections. If you want you can add enough grain to make it look like multicolored rough sand, or create a rainstorm. It's used by GradFun2DBmod and QTGMC, among others such as MCTemporalDenoise.

These filters are useful with denoisers, which remove grain. Remove the grain that defines fine, soft edges and gradients, and you'll get harder edges and contours that should be restored to a more natural state.

koberulz 06-28-2016 01:06 PM

Quote:

Originally Posted by sanlyn (Post 44755)
The function "smooths" by using ordered dithering (deriving luma and color values from "gaps" in the perceived response curve, such as rough edges in large areas of color that should be smooth gradations).

You've lost me.

The biggest problem I have with AviSynth is I can't drag sliders up and down to see what happens. I've tried commenting out the SmoothLevels line, and reloading the video in VDub, and going back and forth like that and I can't see a difference.

Quote:

MergeChroma(awarpsharp2(depth=30)) uses aWarpSharp2 to sharpen and tighten up fuzzy edges, such as where color bleeds over an object's borders. aWarpSharp2 sharpens both luma and chroma, but we only want to to sharpen chroma edges. So MergeChroma takes the luma values from the previous step and merges the chroma into the image from aWarpSharp's results. You could also use MergeLuma to take luminance from one step or another clip and merge it with the chroma from another source. http://avisynth.nl/index.php/Merge#MergeChroma, and in Avisynth's installed online help.
I've read the wiki page, but it was talking about using two video files and in this case there's only the one, and there was the awarpsharp thing in there, so the wiki wasn't really much help with understanding it.

Did you miss the edit in my earlier post about the 2D cleaner?

sanlyn 06-28-2016 02:02 PM

1 Attachment(s)
Quote:

Originally Posted by koberulz (Post 44757)
The biggest problem I have with AviSynth is I can't drag sliders up and down to see what happens. I've tried commenting out the SmoothLevels line, and reloading the video in VDub, and going back and forth like that and I can't see a difference.

I usually reload by changing the script and clicking F2 or "reopen video file", which reopens the current frame.

You can use sliders and whatnot in AvsPmod but it's a headache to set up and use, and you have to use VDub filters and preview separately. IMO it's one of those conveniences that can be very inconvenient. Or you can spend the next week setting up all your filters and Avisynth functions in AvsPmod, some of which will be recognized and run properly, some of which won't. AvsPmod users can advise here.

Quote:

Originally Posted by koberulz (Post 44757)
I've read the wiki page, but it was talking about using two video files and in this case there's only the one, and there was the awarpsharp thing in there, so the wiki wasn't really much help with understanding it.

"Two videos", or the result from the previous processing step and the result of the current processing step, would be the same thing. The previous processing step would be the line that precedes the MergeChroma line. The full syntax of MergeChroma would be, in English, "MergeChronma(take luma from the last step, take chroma from the current step). Video #1 comes from the last step, video #2 comes from the current step. The line could be written:
MergeChroima(last,(aWarpSharp2(depth=30))
and would mean the same thing.

You could also use this very complicated method:
source=last
b=source.aWarpSharp2(depth=30)
MergeChroma(source, b)

"source" and "b" in the above routine are effectively 2 different video placeholders in memory.

dithering (used by lots of filters, including QTGMC): Google immediately displays this quick definition of graphics dithering, which is used in your Windows desktop and on the web all the time:
Quote:

Dithering is used in computer graphics to create the illusion of "color depth" in images with a limited color palette - a technique also known as color quantization. In a dithered image, colors that are not available in the palette are approximated by a diffusion of colored pixels from within the available palette.
For more detail, https://en.wikipedia.org/wiki/Dither. For an extreme example, scroll down to here in the same article: https://en.wikipedia.org/wiki/Dither#Examples.

You can comment-out SmoothAdjust, but to me color looks a cleaner and more even in some areas.

Quote:

Originally Posted by koberulz (Post 44757)
Did you miss the edit in my earlier post about the 2D cleaner?

Looks as if I did, darn it. Wouldn't you know, there were 4 versions of 2DCleaner. I have them in 4 subfolders. Each original .zip has the same name, 2Dcleaner.zip. I found the correct version and renamed its .zip file, attached. Actually you can keep either of the 2D's if you want, the different versions have different .vdf names.

koberulz 06-28-2016 02:33 PM

1 Attachment(s)
Is there anything that can be done about how sharply the color inside the three-point line drops off? At the top of the arc and behind the NBA logo, there's a really sharp change of colour that looks absolutely awful.

sanlyn 06-28-2016 03:18 PM

That's chroma ghosting. You can try a different VCR, or take the rough path try to clean hat sort of thing with AfterEffects tracking or masking, but you're down to frame by frame work. You have a video hat can't take much filtering/sharpening on an automatic basis. Maybe another reader who's handy with masking work can come up with something, but with poor quality video there's an early point of diminishing returns. And I'd say some of that is a reflection from the floor and you can see remnants of the three "M"s in the ad on the side wall.

koberulz 06-29-2016 01:52 AM

12 Attachment(s)
Actually, looking at that frame from both VCRs...other than the horrible noise over the top of it, the older, more basic Panasonic VCR actually looks better. It's sharper, the colors are more accurate, and there's even more of the picture visible at the top.
Attachment 6334
Attachment 6335

-- merged --

So I started looking for new VCRs, when I remembered this comment:
Quote:

Originally Posted by lordsmurf (Post 44714)
Even the fixed clips have a chroma blooming problem. It's not the TBC, and my money is on the VCR.

I didn't use the AVT the first time I tried capturing from the Panasonic, just for the sake of speed. Figured it was worth a shot, so I shifted the entire process across into the other room, and here we go:
Attachment 6336

So, direct split-screen comparison:
Attachment 6337

That looks to me like it is the TBC.

-- merged --

Okay, here we go:
The Philips, with AVT (left) vs without AVT (right):
Attachment 6344

The Panasonic, without AVT (left) vs with AVT (right):
Attachment 6341

Captures through the AVT from the Philips (left) and the Panasonic (right):
Attachment 6338

Captures straight from the VCRs, without the AVT, from the Panasonic (left) and the Philips (right):
Attachment 6339

I've also attached full-screen versions of each.

sanlyn 06-29-2016 10:06 AM

Many performance factors shown here have been experienced by others, so don't feel alone. Readers are familiar with the way some tbc models pump upper midrange and brights -- behavior often fixed with the AVT's proc amp. Other external tbc's have their own effects, such as image softening.

The cheap Panasonic you mention has a sharper image at first glance, but mostly artificial oversharpening with bright edge halos, along with pumped up contrast and clipped brights, tracking error noise, line sync errors, and obvious dot crawl. The Philips, which is I think a rebranded JVC with line tbc and dnr, avoids some of those errors but blurs detail and smears chroma (both VCRs smear chroma, but in different ways with different colors). If you had to make a choice the Philips would be an easier cleanup job. The cheap Panasonic is useless without tracking repair and a pass-thru line tbc. Average budget Panasonics made after 1996 pump contrast and oversharpen. But with or without the tbc, the Philips has oversaturated red with this tape. In the Panasonic reds look purplish. Because of the way the AVt responds to this tape and the players, it can look worse.

With bad, damaged, or really noisy tape a high-end Panasonic (not a cheapie) would usually give cleaner images. But the results would still be imperfect and require post processing. Many users have the same opinion. They also know that different VCR-TBC combinations behave differently, and different VCRs will track certain tapes better or worse than other players (which is why many users have more than one VCR). Others have devised various workarounds for some tbc problems, such as turning off the tbc in a player or using a non-tbc player and/or turning off dnr, then removing the external tbc, and using a recommended DVD player pass-thru device with different tbc characteristics -- a solution that has its own faults but can sometimes give more workable results even if they're a headache to clean.

Some tapes are so awful to begin with, a good capture service using pro (and very expensive) shop gear is needed to get a better lossless capture. I've gone through that myself at digitalfaq, even if I do have equipment that gives decent performance otherwise.

As lordsmurf said elsewhere, analog video is visual chaos. There are so many ugly captures in these forums it's a wonder how other readers were able to process for better results. There are also cases where the source was simply dreadful, period, so that very little could be done.

My experience with external tbc's:

My first was a DataVideo TBC-1000 in 2004. It worked well for a few weeks. But soon it would shut down mid-capture. I finally found a fix by turning it off for an hour, but this took too long. If it shut down I'd place it in the refrigerator for 15 minutes. Being impatient with this and not willing to hassle with returns/repairs, etc., I ditched it. Anyway, I thought it softened too much. I tried another TBC-1000 years later, but it still looked too soft IMO.

Later in 2004 I bought the AVT-8710. It has worked with clean output, very slight raised gamma, no pumping except with some flavors of Macrovision, where highlights were visibly over-bright and fixed with its proc amp. But that in itself is often a Macrovision side effect. Over the years it was dropped on the floor a few of times (!) after I accidentally yanked a connecting wire. Thus, it will occasionally display pink video or visible dot crawl and herringbone when turned on. Solution: unplug it, reverse the power adapter plugs in the A.C. socket, then back on. Voila! This happens every few months or so although for a couple of years it never occurred. I tried a newer AVT several years later but it had bad posterizing with all tapes. So I returned it to B&H Photo and I'm sticking with my original. I've captured over 300 tapes with it, including a long sample from a poor retail tape film transfer capped with the AVT, posted a few days ago. When I don't use the AVT I use a Panasonic ES10 or ES15 as a tbc pass-thru device. But those don't defeat Macrovision.

Everyone has these hassles with analog tape and capture hardware. We all keep plugging away and learning.

koberulz 06-30-2016 01:48 AM

Okay, I've picked up a Panasonic NV-HS1000 from eBay. It mentions in the buying guide that those are 'full-field', which I initially confused with 'full-frame' and thought I might then need an ES10 as a line TBC if I were going to go that way. But there was a really cheap ES10 available (who said Brexit was all bad?), so I ended up jumping on it anyway. Might come in handy.

I also found a TBC-1000 while I was trawling eBay, so I picked that up as well.

Now the waiting game begins anew, but in the meantime: what is the difference between the JVC and Panasonic TBCs?

lordsmurf 06-30-2016 04:33 AM

Quote:

Originally Posted by koberulz (Post 44773)
Okay, I've picked up a Panasonic NV-HS1000 from eBay. It mentions in the buying guide that those are 'full-field', which I initially confused with 'full-frame' and thought I might then need an ES10 as a line TBC if I were going to go that way. But there was a really cheap ES10 available (who said Brexit was all bad?), so I ended up jumping on it anyway. Might come in handy.
I also found a TBC-1000 while I was trawling eBay, so I picked that up as well.
Now the waiting game begins anew, but in the meantime: what is the difference between the JVC and Panasonic TBCs?

To answer you quickly...

line TBC
< field TBC (multi-line)
< frame TBC (multi field/line)

In terms of the full-field vs line TBC in the S-VHS VCRs, there really is no discernable difference. Only in some rare situations can you see a difference. And the tape generally is so bad that neither will do much anyway.

The ES10 is for special needs only (tearing), and makes for a lousy general TBC.

koberulz 06-30-2016 05:34 AM

1 Attachment(s)
You mean this tape, or a tape that would create a difference between full-field and line TBCs?

Am I going to need to go on a power adapter hunt again with the TBC-1000? And is the converter issue also a problem with the VCR itself? The Philips has a European plug, and I've had it going through a converter, but the plug is part of the VCR so it doesn't seem possible to replace with an alternative anyway. Not sure if that will be the case with the NV-HS and ES10. I also picked up the SR388E I mentioned in the OP because it was really cheap, and I already have other functioning machines, so it's not too big a deal if it's in bad nick.

-- merged --

What's the story with the audio on this one? Is different equipment likely to get a better result? Is there anything I can do in software to fix it? Is it likely that the person who came up with the formula to determine Madrid's free-throw percentage was in charge of the rest of the broadcast?

The other thing I notice looking at that is how noisy it is, but then if you apply denoising everything slows down, so it's harder to actually see.

-- merged --

Quote:

Originally Posted by koberulz (Post 44775)
Am I going to need to go on a power adapter hunt again with the TBC-1000?

On this subject...is the power adapter port on the AVT-8710 the same size as the one on the TBC-1000? The eBay listing for the 1000 I bought shows the back, which has the specs for the power adapter, which match the replacement AVT unit I got that only suits the new AVTs and not the old AVTs. So if the plugs are the same size, I've already got a spare Australian power adapter that should do the trick.

lordsmurf 07-01-2016 03:54 AM

stats.avi has an audio problem because tracking is off on playback. It's jumping from HiFi to linear playback

A really bad tape can show differences in that exact TBC comparison. The tape doesn't affect the TBC in any way. TBC always affects a tape. And in this case, the TBC will fail at some point. 2mb vs 4mb for JVC can also make a difference, but also only seen on really bad tapes. It's all about errors exceeding ability, and it fails to fix errors at some point.

I don't remember AVT/Cypress and DataVideo using like power adapters, no. But I can try to check. We have VP-299, but not TBC-1000 (so it may be different). And TBC-3000. No 1000.

The official DataVideo manual may have it. Download it on this site, if you do not have it.

koberulz 07-01-2016 11:08 AM

Quote:

Originally Posted by lordsmurf (Post 44786)
stats.avi has an audio problem because tracking is off on playback. It's jumping from HiFi to linear playback

A really bad tape can show differences in that exact TBC comparison. The tape doesn't affect the TBC in any way. TBC always affects a tape. And in this case, the TBC will fail at some point. 2mb vs 4mb for JVC can also make a difference

I don't really follow this.

Quote:

I don't remember AVT/Cypress and DataVideo using like power adapters, no. But I can try to check. We have VP-299, but not TBC-1000 (so it may be different). And TBC-3000. No 1000.

The official DataVideo manual may have it. Download it on this site, if you do not have it.
They're not the same plugs, the TBC is 1.2A and the AVT is 1.25A, but we've established that doesn't matter. They're both 12V centre-positive. The only question is whether the AVT adapter physically fits into the TBC.

lordsmurf 07-01-2016 07:38 PM

I'm not sure how else to explain it.

Tracking affects both video and audio. VHS tapes almost always have a linear (usually mono, but not always) audio track. Many also have HiFi tracks. The VCR picks the best one available. When tracking is off, it bounces between them. HiFi also has the "bzzztt" static sounds, and mono has no static at all. Some higher-end VCRs let you select the desired track. (Note: JVC linear playback can be muffly. Panasonic better.)

The TBC differences are academic. Don't worry about them. You'll probably never see differences there. Don't confuse yourself needlessly here.

Okay, so volts and center-positive matches. But note that amps need to be minimums. However, 0.5A may not matter. I can go look at the size now...

.. and I can't find the VP-299 anywhere. The TBC-3000 plug is the same size as the Cypress/AVT TBC. Going from memory, and educated guess, it probably is the same physical size. (Note: The TBC-3000 power is much different.)

Trivia: The original idea was to merge a TBC-100 with a VP-299 to make our own TBC-1000. However, it's not easy, maybe impossible. It didn't work, it's been stored away for years, and has been moved 5-6 times. I probably need to list it for sale, as we'll never use it.

koberulz 07-02-2016 12:11 PM

Quote:

Originally Posted by lordsmurf (Post 44795)
Tracking affects both video and audio. VHS tapes almost always have a linear (usually mono, but not always) audio track. Many also have HiFi tracks. The VCR picks the best one available. When tracking is off, it bounces between them. HiFi also has the "bzzztt" static sounds, and mono has no static at all. Some higher-end VCRs let you select the desired track. (Note: JVC linear playback can be muffly. Panasonic better.)

So would I get a better result capturing that section with the linear track (I'm fairly sure my Philips can do that), and then combining the two audio captures myself in Premiere? Basically it'd just be the same thing minus the 'bzzztt' noises?

Quote:

Okay, so volts and center-positive matches. But note that amps need to be minimums. However, 0.5A may not matter. I can go look at the size now...
The power supply I have is the higher of the two, amps-wise, so all good (and it's 0.05A, not 0.5A).


All times are GMT -5. The time now is 04:40 PM

Site design, images and content © 2002-2026 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2026 Jelsoft Enterprises Ltd.