I've been converting numerous DVDs to more portable digital formats for streaming and storing on external hard drives, and I've essentially done everything by feel and trial & error up to this point. These are all relatively old documentaries and non-fiction series from the 80s and 90s (some going back to the 60s) that were re-released on DVD some 20 years ago on average, both in NTSC and PAL formats. I've mostly been using MakeMKV to rip the videos and then Handbrake to transcode to x264 or x265, with some combination of LosslessCut and the ffmpeg CLI when I've needed to make edits.
My question is mainly concerning the framerate when going from interlaced MPEG-2 on DVD to progressive x264 or x265 via Handbrake or ffmpeg. When comparing numerous test clips, it's fairly obvious that doubling the DVD framerate produces much smoother motion on the transcoded video, but I've spent the last few days reading this forum and it seems like the consensus recommendation is to detelecine the DVD video in order to get the original 23.976 framerate and then encode the video at 23.976. There is obviously a massive difference between 59.94 (or 50) and 23.976, so I'm concerned that my practice of doubling the interlaced framerate is horribly wrong. Do I need to reassess my workflow and start from scratch? Can someone provide any insight on the matter? Thank you!
+ Reply to Thread
Results 1 to 22 of 22
-
-
There is a good chance that your DVDs were true interlaced. If so, double rate deinterlacing to 59.94 fps (NTSC) or 50fps (PAL) is perfect.
Only if a DVD content is telecined (usually soft telecined in case of DVD) you would have to IVTC (Inverse Telecine = "detelecine") rather than deinterlace it. Cinema films (originally shot at 24fps) are typically telecined on (NTSC) DVD. It is also possible that some other method of frame rate conversion (frame repetition, blending, motion interpolation) has been used for original film material, shot as 16fps or 18fps for example.
In case of mixed interlaced and telecined content double rate deintelcacing is a valid option as well.
If you are uncertain about the source format upload a few seconds of your unprocessed (.vob) source(s) or your .mkv rip. Select a scene with motion. So someone my check.Last edited by Sharc; 15th Jun 2025 at 02:31.
-
Well that's very reassuring to hear after all the self-doubt that swept over me after reading the forums. I've attached a couple of short clips straight from two DVDs issued about 15 years apart. And here's another clip that I uploaded to Mega because the forum only let me attach two files: https://mega.nz/file/b3QDVA6D#woAjgoWka7MgEP0MZqdlrqUw9R6jBWVx2_SV8KssDeE
How do you go about telling if a DVD video is truly interlaced? I'm assuming that MediaInfo is incorrectly labeling some progressive videos as interlaced, which now makes sense given that I've come across videos labeled as interlaced but when turning on deinterlacing in IINA (or any video player), it made no difference and no interlacing artifacts were present. And if a DVD video is not truly interlaced, do you just encode at its current framerate? Are there any other things to take into account? Thank you very much for the assistance! -
Doh, I just took a quick look at your Crocs-sample: It is 2:3 (aka 3:2) hard-telecined, so this one would have to be IVTCed (aka "detelecined") rather than deinterlaced.
Easy check: Select a scene with motion, step manually through the frames and you will see a repetitive pattern of 2 combed (interlaced) frames followed by 3 clean (progressive) frames, like
IIPPPIIPPPIIPPP.......
Edit:
Same for the other 2 files. All are telecined.
IVTC in Avisynth:
Code:TFM() TDecimate() #returns progressive 23.976 fps film frames
Last edited by Sharc; 15th Jun 2025 at 03:48.
-
That's good to know. Is Avisynth the best tool for doing something like that? I'm usually on a Mac but I do have a Windows partition on an older machine with Avisynth+ installed, though my familiarity with the program is limited. Is going through the docs at avisynth.nl the best way to learn? What's interesting is that the crocs/Spain and Holland videos were released on two different continents about 15 years apart, yet they're all in the same format. Can you take a look at these two clips and let me know if they're in the same format? I'm trying to determine if there's any kind of pattern to how the various DVDs I have were set up. Thank you!
-
The dive sample (NTSC) is the same, telecined
The tiger-sample (PAL) is 25fps progressive, actually PsF (Progressive Segmented Frame). Nothing to IVTC or deinterlace. It is flagged and encoded as interlaced for DVD specs compliance only. But the video is progressive. Both fields are from the same instant in time.
You can IVTC in avisynth or ffmpeg, or use a GUI (which normally use Avisynth or ffmpeg under the hood).Last edited by Sharc; 15th Jun 2025 at 04:15.
-
Can PAL videos be telecined? And if so, is the original framerate also 23.976? I'm assuming that the video has to be re-encoded for the inverse-telecine operation, so is it best practice to get every other operation for converting DVD mpeg-2 to x264 or x265 done in the same string then?
-
Yes.
It can be. Or 24 fps.
The normal practice simple telecine (3:2:3:2:2 pulldown, 24 film frames becomes 50 fields) is TFM().TDecimate(Cycle=25, CycleR=1). But there are many variations. Another common one is for film to be hard telecined to 59.94 fields per second (stored as 29.97 frames per second when digitized) the converted to 50 fields per second (stored as 25 frames per second in digital files) with field blending. These require removal of the blended frames in addition to field matching and decimation. But there are many variations. -
I just realized that Handbrake has an inverse telecine option built in, which looks like it uses the ffmpeg pullup filter under the hood. Do you have any thoughts on pullup? Is it a viable option? I've attached a short clip of an original DVD version and how it looks encoded as x265 with the pullup filter at 23.976 fps. Does that look okay to you or did I mess something up? As always, the guidance is greatly appreciated!
-
And just to make sure that I've got the hang of recognizing whether a video is truly interlaced or telecined, am I right in thinking that the attached sample is truly interlaced and thus should be encoded at 59.94? I didn't see any repeating frames so I'm assuming it's not telecined.
-
I right in thinking that the attached sample is truly interlaced and thus should be encoded at 59.94? -
@franciscola
Handbrake can be a bit tricky with its settings IMO. Correct IVTC should be doable though ....
As you are not on Avisynth, here a basic ffmpeg commandline you may want to try for IVTCing your telecined NTSC videos:
Code:ffmpeg -i "your_source" -c:a aac -c:v libx264 -crf 18 -pix_fmt yuv420p -vf fps=30000/1001,fieldmatch=order=tff,decimate "out_IVTC.mp4"
Last edited by Sharc; 16th Jun 2025 at 03:02.
-
Nope. It's Telecined. I'd suggest you set up Virtual Dub so you can step through each frame in it's "raw" form. It is easy then to see that dog-sample is telecined, where there are three "clean" frames followed by two frames that show the interlacing jaggies (as described by Sharc above). An interlaced video will have jaggies on all areas where there is movement, in all frames.
I still have some questions regarding PAL though, particularly the malcolm-sample I've attached, which is part of a group of 60 or so videos. There are clearly jaggies present but I can't tell if it's interlaced, telecined, or just a poor job by the publisher of converting interlaced/telecined to progressive.
The second PAL video labeled timeless-sample I believe is progressive but labeled as interlaced for DVD compliance, correct? -
The jaggies on Malcolm are very slight; I would expect more pronounced ones if it were properly interlaced. For example, in frame 873, the branch has jaggies with virtually no movement but the spear, which is moving, doesn't have much at all. There is also a wobble in Malcolm, in the upper half of the picture; so I don't know what's up with that. It might just need a line TBC or stabiliser (Pioneer or Panny DVD-recorder or similar) to straighten out the top portion. One of the experts will hopefully weigh in on that.
Yes, Timeless is PSF (aka Progressive) as far as I can see. Nothing needs to be done to it.
Good old Mike and Mal! -
I've been playing around with the fieldmatch filter and it seems to be a great solution as far as I can tell. I do have a couple of questions about it though. In the description he mentions inserting yadif between fieldmatch and decimate in the filterchain in order to deinterlace any remaining (interlaced) frames before decimating, which again seems to be working well. In a 2-minute sample about 20 or so frames were left interlaced after fieldmatch, which I presume were then deinterlaced with yadif. This is how I have the filter set up:
Code:fieldmatch=order=auto:mode=pc_n_ub:combmatch=full, yadif=deint=interlaced, decimate, fps=24000/1001
-
The most reliable and safest method to determine true interlaced vs telecine etc. ist to analyze the fields sequence of the video. So one has to separate the fields first. You can do it in ffmpeg like
Code:ffplay -i "your_source" -an -sn -vf "setfield=tff,separatefields"
a,b,c,d,e ...... below represent the individual images (=fields, half-height frames) you will see. The comma stands for pressing the "s" key.
- If you see a pattern like a,a,b,b,c,c,d,d,e,e...... the video is progressive
- If you see a pattern like a,b,c,d,e ..... and the motion is "natural" the video is true interlaced, TFF
- If you see a pattern like a,b,c,d,e ..... and the motion is jerky like backwards-forwards-backwards-forwards .... the video is true interlaced but BFF
- If you see a pattern like a,a,b,b,b,c,c,d,d,d,e,e,f,f,f ...... the video is 2:3 telecined (typical for NTSC telecined films)
(There exist more telecine patterns for 24->25 or 24->29.97fps for example, those above are just the most common)
Lastly, if you see blended fields in the above exercise one would have to apply different restoring methods, or the video may just be totally borked.Last edited by Sharc; 17th Jun 2025 at 01:22.
-
Yes you can try out the various options. The pro's and con's are described in the docs. Eventually ensure that lipsync is kept intact.
There are various reasons for residual interlaced frames, like orphaned fields due to cutting/editing after telecining. There might also be false alarms to the sensitivity threshold setting.
I'd assume that BWDIF instead of yadif should work for post deinterlacing when configured correctly. However I doubt if it is really worth the efforts of finding the "best" deinterlacer for these few frames. -
Analizing the fields both videos are "progressive" (PsF), i.e. the two fields are from the same moment in time.
The first suffers of a horizontal distortion in one of the field (look to the pole on the rigth; bad master, bad A/D conversion, who knows) giving an overall dirty picture when the frames are built.
-
The Malcolm is a bit odd: It is progressive video (PsF) but with an insane skew/wiggle between the odd and even fields.
The horizontal wiggle can be reduced using
Code:ffmpeg -i "malcolm-sample.mkv" -c:a aac -c:v libx264 -crf 18 -vf "bwdif=mode=0:parity=tff:deint=interlaced, format=yuv420p, setsar=12/11" "malcolm_out.mp4"
Last edited by Sharc; 17th Jun 2025 at 03:24. Reason: file attached
-
Thank you for all your invaluable help on this. I have a printout of the thread and will be referring to it until I completely grasp recognizing telecined video. I've done a ton of testing on numerous videos so far and the fieldmatch filter has worked great, so I'm probably close to getting started on the full collection.
Regarding the Malcolm video, luckily this sample is part of probably the worst film in the set in terms of quality (both audio and video). It's almost 50 years old and was only published in Germany because the Australian rights seem to be muddy, so it may be the best they had, though your fix makes for a big improvement already. -
Code:
LWLibavVideoSource("malcolm-sample.mkv") ColorYUV(gain_y=50, off_y=-20) # levels adjustment # unshear the odd fields SeparateFields() e = SelectEven() o = SelectOdd().HShear(0.8) Interleave(e, o) Weave() # use QTGMC to clean things up QTGMC(FPSDivisor=2) # use stab to remove the vertical jitter Stab(dxmax=2, dymax=2) # clean up the borders Crop(8,2,-10,-2).AddBorders(0,2,2,2) PreFetch(8)
-
Similar Threads
-
H.265 (HEVC) and H.264 (AVC)
By Tafflad in forum Video ConversionReplies: 6Last Post: 28th Oct 2024, 16:33 -
How To Downscale 4K 2160p HEVC 10 bit Video To 2K 1080p AVC 10bit
By LouieChuckyMerry in forum Video ConversionReplies: 32Last Post: 26th May 2023, 02:07 -
Grainy HEVC to AVC
By Ygramul in forum Video ConversionReplies: 4Last Post: 5th May 2022, 01:21 -
Converting AVC To HEVC - is it really worth it.
By bridgyguy in forum Video ConversionReplies: 16Last Post: 5th Apr 2021, 09:33 -
Bitrate in AVC vs HEVC
By JosephTocco in forum Newbie / General discussionsReplies: 4Last Post: 25th Mar 2021, 03:09