VideoHelp Forum

Our website is made possible by displaying online advertisements to our visitors. Consider supporting us by disable your adblocker or Try ConvertXtoDVD and convert all your movies to DVD. Free trial ! :)
+ Reply to Thread
Results 1 to 16 of 16
Thread
  1. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    I've been getting my toes wet in Avisynth and trying to deinterlace some Capture footage from NTSC 29.970 sources. I've been capturing with UT video's YUV422 codec which I think is the right colorspace for NTSC cable.

    From the interlaced source, captured as avi in Virtualdub, I've been using this basic approach:
    Code:
    DirectshowSource("C:\New Folder\Source.avi")
    TFM()
    TDecimate(Mode=1)
    QTGMC( Preset="Slow" )
    SelectEven()
    LanczosResize(640,480)
    AssumeFPS(23.976)
    From a quality standpoint I've been pleased with general detail (although I would gladly accept tips on improving the results!), but in the process of deinterlacing and IVTC it seems that it leaves behind a blue/red tinged ghost in the process. This is most evident when things are in motion and result in artifacts like this:
    http://i44.tinypic.com/1183e5z.jpg
    http://i40.tinypic.com/15pr5hc.jpg

    I've also attached a clip encoded in xvid of the above script. Any ideas on how to reduce or remove that because it's visible enough to be distracting. I'm very new to Avisynth so it's probably a problem in my application of the plugins or missing some extra steps.

    Any help is appreciated, thanks!
    Image Attached Files
    Quote Quote  
  2. Originally Posted by spinmonk View Post
    I've been getting my toes wet in Avisynth and trying to deinterlace some Capture footage from NTSC 29.970 sources. I've been capturing with UT video's YUV422 codec which I think is the right colorspace for NTSC cable.

    From the interlaced source, captured as avi in Virtualdub, I've been using this basic approach:
    Code:
    DirectshowSource("C:\New Folder\Source.avi")
    TFM()
    TDecimate(Mode=1)
    QTGMC( Preset="Slow" )
    SelectEven()
    LanczosResize(640,480)
    AssumeFPS(23.976)
    From a quality standpoint I've been pleased with general detail (although I would gladly accept tips on improving the results!), but in the process of deinterlacing and IVTC it seems that it leaves behind a blue/red tinged ghost in the process. This is most evident when things are in motion and result in artifacts like this:
    http://i44.tinypic.com/1183e5z.jpg
    http://i40.tinypic.com/15pr5hc.jpg

    I've also attached a clip encoded in xvid of the above script. Any ideas on how to reduce or remove that because it's visible enough to be distracting. I'm very new to Avisynth so it's probably a problem in my application of the plugins or missing some extra steps.

    Any help is appreciated, thanks!

    You normally wouldn't IVTC and deinterlace. It's either one or the other . If it's a film source, you would IVTC only.

    A sample of the source would help; a sample of the encode - not so much
    Quote Quote  
  3. This is a film source (hard telecined, "24p in 60i"), but there are chroma errors in the source - it lags behind in some fields

    Either there is a broadcast problem, or a recording problem. Maybe you can provide more details on your setup



    Don't use directshowsource() , it's not necessarily frame accurate (only use as a last resort)

    AVISource() is preferred for AVI sources.



    Normally , TFM().TDecimate() should be all you need for a telecined film source, but there are chroma errors

    Don't deinterlace progressive material - you practically cut the resolution in 1/2 right off the bat
    Quote Quote  
  4. I noticed you use ULY0 - thats the 4:2:0 variant of UT Video Codec - that might cause interlaced chroma issues, or if you used full processing mode in vdub with 4:2:0 interlaced material => vdub will upsample interlaced YV12 as progressive causing chroma artifacts . Was there a mistake in workflow/processing somewhere? Can you describe how that sample was made and your capture workflow / hardware setup
    Quote Quote  
  5. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    Sure, I'll try and be as detailed as I can. From USB capture, I'm using VirtualDub with SVideo source. Under Format I've got 720x480 with YUY2. Under Compression I've got UT Video Codec YUV422 with Frame Divide Count 2 (default) Optimize for Decoding Speed (default), and Assume Interlaced checked.

    For the resulting AVI, I'd open that in Virtualdub using the AVS script and do a basic Xvid encode at 2000 kbps to see the results.
    Here's a new example just in case I'm messing anything up so it's triple checked to match these settings. This is just a random capture with some action to make things clearer.

    Source: http://www.mediafire.com/file/4xz8q48zazv9zcr/ExampleJan19Source.avi

    I made two Xvid conversions. The first with the script above which includes both deinterlacing and IVTC and the second just using deinterlacing. Both seem to have the ghosting.
    Image Attached Files
    Quote Quote  
  6. It has nothing to do with the script or whether you ivtc or deinterlace. The source is the problem (or how it's recorded) ; that impacts everything else, no matter what you do

    If you use

    Code:
    AVISource()
    AssumeTFF()
    SeparateFields()
    and then step through the fields in vdub or avspmod, you will see that individual fields have the chroma delay.

    Can you try something else like huffyuv to capture - if that's ok, then it's a ut video issue. If it's not ok, then it's likely a hardware setup issue
    Quote Quote  
  7. As poisondeathray pointed out, the problem is already in your AVI files. I suspect UT Video Codec converted YUY2 (YUV 4:2:2) to ULY0 (YUV 4:2:0) assuming progressive frames, not interlaced frames. Make sure it is set to interlaced mode when capturing. Better yet, capture as YUY2, compress as YUY2 (or equivalent YUV 4:2:2 format). Then if you need 4:2:0 in AviSynth use ConvertToYV12(interlaced=true).
    Last edited by jagabo; 19th Jan 2012 at 20:11.
    Quote Quote  
  8. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    Here's one with HuffyUV v2.1.1 using the default settings.

    http://www.mediafire.com/file/f4z1g5er962jv32/ExampleJan19SourceNo2.avi

    Edit: I tried an encode of it and the results seem similar, which suggests a hardware problem of sorts right?
    Last edited by spinmonk; 19th Jan 2012 at 20:19.
    Quote Quote  
  9. Yes, the problem is in that clip too. But here's a possible workaround:

    Code:
    AviSource("ExampleJan19SourceNo2.avi") 
    AssumeTFF()
    ConvertToYV12(interlaced=true)
    Yadif(order=1, mode=1) # or QTGMC()
    SelectEven()
    TDecimate()
    Quote Quote  
  10. AVISource("E:\Test\ExampleJan19SourceNo2.avi")
    AssumeTFF()
    TFM(Clip2=Nnedi3,Chroma=True)
    TDecimate()

    seems to work on the second sample pretty well. It should work on the first one but I don't have whatever it is I need to open ULY0. You need to load both TIVTC and Nnedi3.
    Quote Quote  
  11. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    jagabo and manono, both of those work very well! Thank you very much!

    As a matter of learning, the approach using TFM converts the source via IVTC and the approach using ConverttoYV12 uses deinterlacing, right? So if I'm capturing a natively 29.97 source, I'd want to use the one that uses QTGMC because there wouldn't be any telecining. But if the source is a movie (being played on TV so it's been telecined), I'd want to use IVTC instead?
    Quote Quote  
  12. Originally Posted by spinmonk View Post
    As a matter of learning, the approach using TFM converts the source via IVTC and the approach using ConverttoYV12 uses deinterlacing, right?
    No, converting the colorspace has nothing to do with how it's made progressive again. My guess (correct me, jagabo, if I'm wrong) is that the ConvertToYV12 line was left over from your first sample which used a weird colorspace.
    So if I'm capturing a natively 29.97 source, I'd want to use the one that uses QTGMC because there wouldn't be any telecining.
    No again, not if you follow his script strictly, since it decimated one frame in five to return it to 23.976fps. It was telecined. If the thing was shot on video you might use QTGMC().SelectEven() without the decimation line.
    But if the source is a movie (being played on TV so it's been telecined), I'd want to use IVTC instead?
    Usually, yes.
    Quote Quote  
  13. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    Gotcha, thanks very much. Using your TFM script the overall results are pleasing and solved the ghosting problem while seeming pretty much on target.
    Image Attached Files
    Quote Quote  
  14. Originally Posted by manono View Post
    My guess (correct me, jagabo, if I'm wrong) is that the ConvertToYV12 line was left over from your first sample which used a weird colorspace.
    Something didn't like YUY2 so I converted to YV12.

    I didn't think TFM() would work so I didn't even try it! I did see a few frames with some problems after the TFM() script though. Note the woman in red in frame 59 for example.
    Last edited by jagabo; 20th Jan 2012 at 06:19.
    Quote Quote  
  15. Member
    Join Date
    Aug 2009
    Location
    United States
    Search Comp PM
    Just wanted to chime in that I've been using these scripts (most recently jagabo's variant because of the additional quality processing QTGMC provides) and I'm very happy with the results. They're miles away better than the results the bundled software could provide and all of the ghosting problems have gone away.

    Thanks to all who helped!
    Quote Quote  



Similar Threads