#1  
01-16-2019, 06:28 AM
stb2000 stb2000 is offline
Free Member
 
Join Date: Aug 2018
Posts: 4
Thanked 0 Times in 0 Posts
Hi!

When trying to deinterlace PAL DV-AVI with QTGMC (using VirtualDub), I get horizontal stuttering (that is, the whole frame jumps rapidly back and forth) whenever there is a gap in the timecode. While the interlaced clip will just show a still frame, the frame doubled deinterlaced version will stutter badly.

See attached clips.

This happens on all dv tapes. It does not matter whether I cap in WinDV or Premiere. I get the same stuttering when trying to deinterlace VHS tapes capped with Virtualdub whenever Virtualdub has inserted frames.

The stuttering does not occur when I do Yadif+Bob in Handbrake, but then the quality of the deinterlacing is crap.

Is there a way to achieve the quality of QTGMC while avoiding this stuttering problem?


Attached Files
File Type: avi DV08-test2-interlaced.avi (8.11 MB, 8 downloads)
File Type: avi DV08-test2-deinterlaced-QTGMC.avi (37.36 MB, 6 downloads)
Reply With Quote
Someday, 12:01 PM
admin's Avatar
Ads / Sponsors
 
Join Date: ∞
Posts: 42
Thanks: ∞
Thanked 42 Times in 42 Posts
  #2  
01-16-2019, 07:05 AM
NJRoadfan NJRoadfan is offline
Premium Member
 
Join Date: Sep 2010
Posts: 1,155
Thanked 357 Times in 293 Posts
Check your field order. I think DV-AVI defaults to bottom field first unlike most AVI container codecs. You may need to add "AssumeBFF" to your AVIsynth script.

VHS captures using HuffYUV should always be top field first. Don't know why they would shudder with a default setup.
Reply With Quote
The following users thank NJRoadfan for this useful post: stb2000 (01-16-2019)
  #3  
01-16-2019, 08:58 AM
hodgey hodgey is offline
Free Member
 
Join Date: Dec 2017
Location: Norway
Posts: 1,680
Thanked 446 Times in 383 Posts
I've also found that QTGMC can does this on "still" frames. It can often help to use a different preset, though I don't remember which one worked best.

Also for DV captures, it seems some cameras output a still frame on gaps, while others don't output anything when there's nothing on the tape, so the final file will simply transition from one clip to the next.
Reply With Quote
The following users thank hodgey for this useful post: stb2000 (01-16-2019)
  #4  
01-16-2019, 05:56 PM
stb2000 stb2000 is offline
Free Member
 
Join Date: Aug 2018
Posts: 4
Thanked 0 Times in 0 Posts
The field order is correct. If the field order was incorrect, the whole clip would stutter. It only happens on the transition from one recording to the next, where there is a break or a gap in the timecode and the interlaced 25fps clip displays a still image for a few seconds. In the deinterlaced 50fps version, the still image does not remain stationary but moves back and forth, creating a very noticeable stuttering effect. Of course, it can be edited out, but finding all the instances of stutter is very time consuming.

Considering the seeming popularity of QTGMC, I find it strange that no one has had this problem, because it seems to happen on most every DV tape, as well as VHS tapes containing errors which cause Virtualdub to insert frames. Could it be a PAL-only problem?

Different presets do not seem to make a difference, unfortunately.
Reply With Quote
  #5  
01-16-2019, 06:28 PM
hodgey hodgey is offline
Free Member
 
Join Date: Dec 2017
Location: Norway
Posts: 1,680
Thanked 446 Times in 383 Posts
Ah sorry I misunderstood what it was when writing my previous post. I was thinking of a still image like a full screen logo or something.

In the transition clips there will be two fields with movement repeating which does confuse the deinterlacer as it will think the objects are moving back and forth. yadif and bob seems to do the same if set to double frame rate output, at least when previewing in VLC.

What you can do is to try something like http://avisynth.nl/index.php/ExactDedup to remove the gaps on the DV streams at least. May not be ideal on the VHS caps since the inserted frames may contain audio. It should in theory be possible with some avisynth script-fu to e.g conditionally disable deinterlacing or doing something else when encountering the duplicate fields but I don't know any existing scripts that does this.
Reply With Quote
The following users thank hodgey for this useful post: stb2000 (01-18-2019)
  #6  
01-18-2019, 07:34 AM
lordsmurf's Avatar
lordsmurf lordsmurf is offline
Site Staff | Video
 
Join Date: Dec 2002
Posts: 13,503
Thanked 2,448 Times in 2,080 Posts
You see reversing field orders in broadcast as well. It'll be TFF for a show, BFF for a commercial, TFF for next commercial, back to show at BFF. It's a processing error that drops a field, makes a mess.

Another reason to dislike DV via Firewire transfer/capture.

- Did my advice help you? Then become a Premium Member and support this site.
- For sale in the marketplace: TBCs, workflows, capture cards, VCRs
Reply With Quote
The following users thank lordsmurf for this useful post: stb2000 (01-18-2019)
  #7  
01-18-2019, 12:56 PM
stb2000 stb2000 is offline
Free Member
 
Join Date: Aug 2018
Posts: 4
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by hodgey View Post

Yadif and bob seems to do the same if set to double frame rate output, at least when previewing in VLC.
Yes, I just tested this, and you are right. It would seem all avisynth implementations of bob deinterlacing do this. FFmpeg does not, however. Hence, I may just end up using bwdif (Bob Weaver Deinterlacing Filter) in FFmpeg unless I can find a better solution. It is not as good as QTGMC, but at least it is not awful.

Quote:
Originally Posted by hodgey View Post
What you can do is to try something like http://avisynth.nl/index.php/ExactDedup to remove the gaps on the DV streams at least. May not be ideal on the VHS caps since the inserted frames may contain audio. It should in theory be possible with some avisynth script-fu to e.g conditionally disable deinterlacing or doing something else when encountering the duplicate fields but I don't know any existing scripts that does this.
Thanks for the suggestion. I tried ExactDedup, and it did indeed manage to remove the problematic parts, but the sound was out of sync. A possible explanation for this is that the people I am currently digitizing for loved to use the oh-so-very useful photo function of their camera. You know, the one which creates a still image on the tape (which, incidentally, don't stutter when deinterlaced). Besides, the process was somewhat cumbersome, with two separate passes needed, which is ok for the odd file but not very practical when trying to achieve an efficient workflow.
Reply With Quote
  #8  
01-18-2019, 01:40 PM
hodgey hodgey is offline
Free Member
 
Join Date: Dec 2017
Location: Norway
Posts: 1,680
Thanked 446 Times in 383 Posts
I checked with ffmpeg. It seems that it reads some interlacing info from the input video, if field order is set to auto, it leaves the repeated frames alone, if I force it to bff, it doesn't. I don't know if that's something avisynth can do or not.

If you end up using the ffmpeg deinterlacers, there is also mcdeint, and if you have a recent version, nnedi, to check out. Both are really slow though.

Alternatively, you could use QTGMC in avisynth and use the fpsdivisor=2 parameter which will probably avoid the stuttering but only give you 25 fps output.

Quote:
You see reversing field orders in broadcast as well.
That's not the issue here, the problem is that the last frame of a clip is repeated when there is a break in the recording, and since this is interlaced video, this means the last two fields that are repeated over and over which causes stuttering if there was movement from one to the other. I've used an older JVC miniDV camera once that did this when playing back. Every other miniDV and digital8 device I've used (including a newer JVC cam) don't output anything over the firewire stream if there is nothing on the tape.
Reply With Quote
The following users thank hodgey for this useful post: stb2000 (01-21-2019)
  #9  
01-21-2019, 05:27 PM
stb2000 stb2000 is offline
Free Member
 
Join Date: Aug 2018
Posts: 4
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by hodgey View Post
I checked with ffmpeg. It seems that it reads some interlacing info from the input video, if field order is set to auto, it leaves the repeated frames alone, if I force it to bff, it doesn't. I don't know if that's something avisynth can do or not.
Interesting... Thanks for figuring that out! It doesn't look like there's any way of making avisynth behave that way, though.


Quote:
Originally Posted by hodgey View Post
Alternatively, you could use QTGMC in avisynth and use the fpsdivisor=2 parameter which will probably avoid the stuttering but only give you 25 fps output.
Yes, 25fps avoids the stutter problem, but the resulting video is considerably less smooth than the 50fps output, especially during pans, even with the ShutterBlur option set.

Quote:
Originally Posted by hodgey View Post
That's not the issue here, the problem is that the last frame of a clip is repeated when there is a break in the recording, and since this is interlaced video, this means the last two fields that are repeated over and over which causes stuttering if there was movement from one to the other. I've used an older JVC miniDV camera once that did this when playing back. Every other miniDV and digital8 device I've used (including a newer JVC cam) don't output anything over the firewire stream if there is nothing on the tape.
Well, at least now I know what is causing the problem. Still haven't found a solution, though. If avisynth cannot be prevailed upon to auto detect the field order instead of treating the whole thing as either BFF or TFF, I guess the best solution would be something along the lines of what you suggested: detecting and removing duplicate frames prior to deinterlacing. I've not been able to find a reliable way of doing that, however. So for now I guess I'll just leave the danged things in, even though they look like crap.

Or find a DV camcorder that doesn't output duplicate frames on timecode breaks. As my JVC cams and my two Sony HVR-M15s all do this, I figured DV camcorders / players were supposed to behave this way.
Reply With Quote
Reply




Similar Threads
Thread Thread Starter Forum Replies Last Post
Stutter with too much movement, convert Hi8 in VirtualDub? KoenDG Capture, Record, Transfer 1 12-13-2017 09:55 AM
Video stutter problem from VHS tape? SinghDk Capture, Record, Transfer 7 01-26-2017 12:32 PM
Question on timecode and capturing analog tapes moxiecat Capture, Record, Transfer 2 09-06-2011 11:05 AM
How to remove timecode from digital video? lounisproduction Restore, Filter, Improve Quality 2 08-20-2010 10:38 AM
What makes/breaks a DVD recorder admin Capture, Record, Transfer 0 11-17-2005 04:02 PM

Thread Tools



 
All times are GMT -5. The time now is 01:49 PM