VideoHelp Forum




+ Reply to Thread
Results 1 to 9 of 9
  1. I'm still a pretty big newb at video processing, but long story short, I have been using Handbrake for quite a few years to deinterlace/detelecine my videos, and a few months ago I decided to try my hand at avisynth to get better quality out of my encodes. Right now I have an animated source that I am trying to process using QTGMC, but I have encountered an issue with the multithreading feature. Basically, when I go above Prefetch(3) the output jerks on playback, similar to when you set the field order wrong. I am still not sure what is going on after reading up on QTGMC and multithreading, and would like to know if this is a case of user error (heh), a bug, or if my hardware is just limited to 3 threads when multithreading.

    Here is my avisynth+ script for reference:

    Code:
    SetFilterMTMode("QTGMC", 2)
    FFMPEGSource2("Episode 14.mkv", atrack=-1) #I map the original MKV's audio and subtitle tracks to the output using FFMPEG
    AssumeBFF()
    QTGMC(preset="Medium", EdiThreads=3)
    Prefetch(4)
    FYI, I've already tried setting AssumeTFF(), but that just results in actual field-order problems, so I'm pretty sure my source is BFF at this point. Also, the output looks fine when I set Prefetch to less than 4, but it is pretty slow and would like to improve my encoding speed if I can, hence my post. CPU usage at Prefetch(3) is around 50-60%, and 70%+ at higher Prefetch numbers. Anywho, thanks for the help! If I need to post more info, just let me know!
    Quote Quote  
  2. There can be an issue with ffms2 and autothreads and certain prefetch values on some setups, it's not always frame accurate. Try FFMPEGSource2(threads=1) , or use Lsmash instead

    If it's a MPEG2 source (e.g. from a DVD), it's more reliable to use MPEG2Source (demux, index with DGIndex) . Or use DGSource which supports MKV (not free)

    Animated sources will rarely be interlaced. Usually you wouldn't deinterlace with QTGMC
    Quote Quote  
  3. That's got QTGMC running perfectly. Thanks much for the help.

    Animated sources will rarely be interlaced. Usually you wouldn't deinterlace with QTGMC
    I've been trying to IVTC with strange results, so I just tried deinterlacing to see what would happen. The source is NTSC but has a PAL colorspace, at least according to MediaInfo, and I'd swear it looks telecined when stepped through in avidemux, but doing an IVTC causes chroma ghosting/combing that I can't seem to find an antidote for. I've wondered if the source could be field-blended, but I don't know enough about this topic yet to be able to say one way or the other. Anyway, I tried deinterlacing on a lark, and what do you know, it looks pretty darned good, and the audio seems more synched up than it did IVTC'd, but that could be the placebo effect. Anyway, if you want to take a look at a sample clip, I can upload one.
    Quote Quote  
  4. If you upload a clip someone will look at it and provide suggestions
    Quote Quote  
  5. Okay, here's a couple of samples, hopefully enough to see what I'm talking about.

    animesample.mkv is a short clip from the original file, and sampleIVTC.mkv is that clip processed with these settings:

    Code:
    TFM(order=0, mode=0)
    TDecimate(mode=1)
    It looks like the IVTC'd file has some ghosting and combing artifacts in some frames, and I have no idea how to handle those. Any help would be appreciated, even if it's just to help me understand why this is happening, and how I ought to be handling these files.
    Image Attached Files
    Quote Quote  
  6. There is field "ghosting" or blending in the chroma, different than luma

    Use this script with mpeg2source
    https://forum.doom9.org/showthread.php?p=1582950#post1582950

    You can add other filters to clean up if you want, but because it relies on srestore, you have to preview or process linearly. You cannot jump around
    Quote Quote  
  7. Oh wow, I've actually tried that script before, but I didn't realize I needed mpeg2source to make it work. Now, will I be able to use DGIndex with the mkv that I have, or will I need to use another filetype, such as vob? I'm seeing conflicting info (opinion?) on whether its a good idea to use an mkv containing mpeg2 video with DGIndex.

    And when you say I'll need to process the video linearly, does that mean without multithreading? Sorry if that's a dumb question.
    Quote Quote  
  8. MPEG2 in MKV can be problematic for other source filters, they are less reliable. Certain versions might be ok in certain circumstances with threads=1, but not ok in others. Don't take that chance. Just get it right the 1st time.

    DGIndex does not support MKV container. It requires you to demux the mkv (using mkvextract or one of the GUI's for it). Or you can use it on a VOB directly . DGIndexNV (not free) can work on MKV directly

    linearly means don't jump around to preview (you'll get mixed up frames). Go from start to end. Srestore does not work well with multithreading
    Quote Quote  
  9. Great! I've had to demux/remux MKVs before, so that shouldn't be an issue to figure out.

    Thanks again, poisondeathray, really appreciate the help with this.

    Edit: Just wanted to update to say I got the script working, and the output looks great now! (Note to other newbs needing mpeg2source: download DGDecode, and put DGDecode.dll in the appropriate avisynth+ plugin folder) Thanks again, again!
    Last edited by yesyesnoyes; 14th Dec 2020 at 02:20. Reason: Update: Issue Resolved
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!