Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 15th October 2019, 19:01   #1  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
QTGMC in VapourSynth without 2x Frame Rate

Hello,
I want to deinterlace a video with QTGMC but I want to keep original framerate. QTGMC automatically doubles the framerate. In Avisynth, all I had to do was write SelectEven() after QTGMC.
How do I do that in VapourSynth? I tried clip = havsfunc.SelectEven() and other combinations but nothing works.
Could you help me please?
expanseFan is offline   Reply With Quote
Old 15th October 2019, 19:11   #2  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,548
clip = clip[::2]
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 15th October 2019, 19:27   #3  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
Quote:
Originally Posted by Myrsloik View Post
clip = clip[::2]
Thank you VERY much!!!!! I can't believe it was this simple.
expanseFan is offline   Reply With Quote
Old 15th October 2019, 21:31   #4  |  Link
Jukus
Registered User
 
Join Date: Jul 2019
Location: Russia
Posts: 87
Damn, avisynth.nl/index.php/QTGMC does not currently work.
Alright, you only need to use 'FPSDivisor=2'.
Jukus is offline   Reply With Quote
Old 15th October 2019, 21:46   #5  |  Link
Cary Knoop
Cary Knoop
 
Cary Knoop's Avatar
 
Join Date: Feb 2017
Location: Newark CA, USA
Posts: 397
Quote:
Originally Posted by expanseFan View Post
I want to deinterlace a video with QTGMC but I want to keep original framerate.
If you want the original framerate you do nothing. Interlaced material is based on a field-based time resolution of half the frame's vertical resolution.

Quote:
Originally Posted by expanseFan View Post
QTGMC automatically doubles the framerate.
It doesn't!
It's you who wants to cut the framerate in half.

Last edited by Cary Knoop; 15th October 2019 at 22:10.
Cary Knoop is offline   Reply With Quote
Old 16th October 2019, 07:06   #6  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
I'm using VapourSynth with StaxRip and when I enable the QTGMC filter, the framerate of the result video is shown as having double the frame-rate. I want to keep original framerate. How am I supposed to do nothing? I see it with my own eyes that the end result is double frame-rate!
Also, when using QTGMC in VapourSynth I noticed that CPU Utilization is ~55%. How can I make encoding faster? I was originally using Avisynth but it was also slow with low cpu utilization and though that VapourSynth was faster but as it turns out it isn't. Is QTGMC multi-threaded? My CPU is AMD Ryzen 6-core/12-threads.
expanseFan is offline   Reply With Quote
Old 16th October 2019, 09:00   #7  |  Link
lansing
Registered User
 
Join Date: Sep 2006
Posts: 1,657
Quote:
Originally Posted by expanseFan View Post
I'm using VapourSynth with StaxRip and when I enable the QTGMC filter, the framerate of the result video is shown as having double the frame-rate. I want to keep original framerate. How am I supposed to do nothing? I see it with my own eyes that the end result is double frame-rate!
Also, when using QTGMC in VapourSynth I noticed that CPU Utilization is ~55%. How can I make encoding faster? I was originally using Avisynth but it was also slow with low cpu utilization and though that VapourSynth was faster but as it turns out it isn't. Is QTGMC multi-threaded? My CPU is AMD Ryzen 6-core/12-threads.
If your interlaced video is 30i, then its original frame rate is almost certainly 60fps, so by reducing it to 30fps, you're throwing away half of the information.
lansing is offline   Reply With Quote
Old 16th October 2019, 13:14   #8  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
Quote:
Originally Posted by lansing View Post
If your interlaced video is 30i, then its original frame rate is almost certainly 60fps, so by reducing it to 30fps, you're throwing away half of the information.
I didn't know that, thanks. One question though, why other deinterlacers like yadifmod if video was 30i, they deinterlace it and result in 30p instead of 60p?
If 30i is actually 60p, does that mean that videos were really filmed at 60fps and simply interlaced and reduced to 30fps?

Last edited by expanseFan; 16th October 2019 at 13:18.
expanseFan is offline   Reply With Quote
Old 16th October 2019, 14:29   #9  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 5,345
Quote:
Originally Posted by expanseFan View Post
I didn't know that, thanks. One question though, why other deinterlacers like yadifmod if video was 30i, they deinterlace it and result in 30p instead of 60p?
If 30i is actually 60p, does that mean that videos were really filmed at 60fps and simply interlaced and reduced to 30fps?
No, just the settings used for mode

Code:
####	mode -

		Controls double rate vs same rate output, and whether or not the spatial interlacing check is performed.

		0(default) = same rate, do spatial check
		1 = double rate, do spatial check
		2 = same rate, no spatial check
		3 = double rate, no spatial check
poisondeathray is offline   Reply With Quote
Old 16th October 2019, 14:55   #10  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
I want to convert an interlaced DVD to progressive. Should I convert it to progressive with double the frame rate or keep it at original frame rate?
If for example the dvd has a frame rate of ~29.9fps, should I let QTGMC give me a progressive video with ~59fps? If the DVD wasn't filmed at 59fps then, 59 fps wouldn't be true 59fps.
expanseFan is offline   Reply With Quote
Old 16th October 2019, 15:01   #11  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 5,345
Quote:
Originally Posted by expanseFan View Post
I want to convert an interlaced DVD to progressive. Should I convert it to progressive with double the frame rate or keep it at original frame rate?
If for example the dvd has a frame rate of ~29.9fps, should I let QTGMC give me a progressive video with ~59fps? If the DVD wasn't filmed at 59fps then, 59 fps wouldn't be true 59fps.
It depends on what the actual content is. Is it film "24p" content telecined, such as a theatrical "movie" ?

All DVD's are "interlaced", but they should not necessaily all be deinterlaced . In general, you should not deinterlace progressive content or you degrade it
poisondeathray is offline   Reply With Quote
Old 16th October 2019, 15:11   #12  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
Quote:
Originally Posted by poisondeathray View Post
It depends on what the actual content is. Is it film "24p" content telecined, such as a theatrical "movie" ?

All DVD's are "interlaced", but they should not necessaily all be deinterlaced . In general, you should not deinterlace progressive content or you degrade it
How do I learn to recognize if a video needs deinterlacing or not, if it also needs detelecine, etc? Any good tutorial, guide?

Video
ID : 1
Format : MPEG Video
Format version : Version 2
Format profile : Main@Main
Format settings : BVOP
Format settings, BVOP : Yes
Format settings, Matrix : Default
Format settings, GOP : M=3, N=13
Format settings, picture st : Field
Codec ID : V_MPEG2
Codec ID/Info : MPEG 1 or 2 Video
Bit rate mode : Constant
Bit rate : 5 000 kb/s
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Original display aspect rat : 4:3
Frame rate mode : Constant
Frame rate : 29.970 (30000/1001) FPS
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced
Scan order : Top Field First
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.483
Time code source : Group of pictures header
GOP, Open/Closed : Open
Color primaries : BT.601 NTSC
Transfer characteristics : BT.601
Matrix coefficients : BT.601
expanseFan is offline   Reply With Quote
Old 16th October 2019, 15:15   #13  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 5,345
If you double rate deinterlace it to 59.94, then step through frame by frame , look at the pattern during a scene with motion (such as a camera pan)

1) If there is motion every frame, then it's interlaced content (and you would want to use 59.94p when deinterlacing)
2) If you get duplicates , then it's 29.97p content (then should not deinterlace - you want to field match to 29.97p)
3) If you get 3:2 pattern of repeats, then it's 23.976p content (then you should not deinterlace - it needs to be IVTC'ed)

There are exceptions, and weird cadences, changing patterns, but those 3 should cover the majority of common scenarios

Last edited by poisondeathray; 16th October 2019 at 15:41.
poisondeathray is offline   Reply With Quote
Old 16th October 2019, 15:15   #14  |  Link
Cary Knoop
Cary Knoop
 
Cary Knoop's Avatar
 
Join Date: Feb 2017
Location: Newark CA, USA
Posts: 397
Quote:
Originally Posted by expanseFan View Post
I didn't know that, thanks. One question though, why other deinterlacers like yadifmod if video was 30i, they deinterlace it and result in 30p instead of 60p?
If 30i is actually 60p, does that mean that videos were really filmed at 60fps and simply interlaced and reduced to 30fps?
A video camera (not a film camera) that records interlaced takes a capture each 1/50th (PAL) or 1/60th (NTSC) of a second.

The time resolution is 50 and 60, not 25 or 30!

If you deinterlace correctly you should reconstruct the missing scan lines instead of trying to get scanlines from one time capture to consolidate with one from a different time capture.

And yes many "deinterlacers" do it completely wrong!

Last edited by Cary Knoop; 16th October 2019 at 15:40.
Cary Knoop is offline   Reply With Quote
Old 16th October 2019, 15:38   #15  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
if the content is not native progressive (fake interlace like telecine), I suggest that you do not waste your time trying to process it, it is already garbage.
feisty2 is offline   Reply With Quote
Old 16th October 2019, 15:55   #16  |  Link
expanseFan
Registered User
 
Join Date: Oct 2019
Posts: 10
Thank you everyone for your help, I think I now understand a lot better about when to use deinterlace, detelecine and such. I'll try to watch frame by frame to determine what needs to be done.
expanseFan is offline   Reply With Quote
Old 16th October 2019, 15:56   #17  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
before the time that modern digital cameras like Arri Alexa were introduced, the image quality of any non-film based material is basically garbage. back then you gotta use film cameras like Arriflex 435 to shoot high quality videos. since footages shot on film are apparently progressive, that leaves all native interlaced content nothing but abysmal quality, which is not worth saving anyways.
feisty2 is offline   Reply With Quote
Old 16th October 2019, 16:40   #18  |  Link
Cary Knoop
Cary Knoop
 
Cary Knoop's Avatar
 
Join Date: Feb 2017
Location: Newark CA, USA
Posts: 397
Quote:
Originally Posted by feisty2 View Post
before the time that modern digital cameras like Arri Alexa were introduced, the image quality of any non-film based material is basically garbage. back then you gotta use film cameras like Arriflex 435 to shoot high quality videos. since footages shot on film are apparently progressive, that leaves all native interlaced content nothing but abysmal quality, which is not worth saving anyways.
That's where I have to disagree with you. The quality may be dismal but quality is just one component. What is recorded may be interesting and valuable despite the bad quality.

So no, I disagree that some things are not worthy to be saved because of a bad quality.
Cary Knoop is offline   Reply With Quote
Old 16th October 2019, 20:25   #19  |  Link
Jukus
Registered User
 
Join Date: Jul 2019
Location: Russia
Posts: 87
Quote:
Originally Posted by expanseFan View Post
Also, when using QTGMC in VapourSynth I noticed that CPU Utilization is ~55%. How can I make encoding faster? I was originally using Avisynth but it was also slow with low cpu utilization and though that VapourSynth was faster but as it turns out it isn't. Is QTGMC multi-threaded? My CPU is AMD Ryzen 6-core/12-threads.
Maybe ~ 55% is used for filtering, others ~ 45% for encoding?
Jukus is offline   Reply With Quote
Old 2nd November 2019, 18:18   #20  |  Link
logicom
Registered User
 
logicom's Avatar
 
Join Date: Nov 2008
Posts: 6
FPSDivisor=2

check field order of the video and accordingly try
Code:
 haf.QTGMC(clip, Preset='Slower', FPSDivisor=2, TFF=False)
Keyword is FPSDivisor

Cheers!
logicom is offline   Reply With Quote
Reply

Tags
qtgmc, vapoursynth

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 09:22.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.