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. |
|
|
Thread Tools | Search this Thread | Display Modes |
9th September 2014, 16:01 | #21 | Link | |
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Quote:
There are 2 constraints which always apply:
So you can soft-pulldown 16.666 progressive fps to 25 interlaced fps. Last edited by TheSkiller; 9th September 2014 at 16:51. |
|
9th September 2014, 16:25 | #22 | Link | |
Registered User
Join Date: Feb 2002
Location: California
Posts: 2,691
|
Quote:
The information I found is consistent: the MPEG-2 soft pulldown flag for DVD authoring only has two values: 3:2 which adds fields to 24p material so it plays correctly on a 60i NTSC TV set; and 2:2 which adds fields to achieve a 4% speedup to go from 24p to 50i PAL. I do not see anything, either in the spec, nor in any of my various MPEG-2 encoders, that permits any sort of arbitrary soft pulldown flag which would instruct the playback DVD device to add fields during playback to go from 16p or 18p to either 50i or 60i. If you can point to something that supports this, I would love to know because this is what I do for a living, and it would be great if I could deliver DVDs that contain 16p or 18p material in native format, and then have the DVD player add the pulldown fields. I'd get massively better encodes, and I could fit a lot more material on a DVD. Unfortunately, I've never seen this in any software I've ever used. |
|
9th September 2014, 17:09 | #23 | Link |
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Maybe you have better luck finding information about this if you're looking into the RFF flags rather than looking for pulldown in general, because that's essentially what's happening: the RFF flags tell a decoder to repeat fields. Those flags are set across the whole stream so that the desired output fps is reached (that's soft-pulldown at it's core). The decoder doesn't need to do anything different except repeating fields as instructed to output standard 25i or 29.97i. All MPEG2 decoders know the RFF flag, it's part of the MPEG spec. This exactly the way standard NTSC film telecine soft-pulldown works. It's not different at all.
Maybe search for threads related to "DGPulldown" here at doom9 for more information. As to why professional MPEG2 encoders do not have any options for this other than regular NTSC film telecine pulldown... I don't know. Maybe because it's so rarely used by professionals where hard-pulldown (like 16p -> 25i) is most probably applied much earlier in the production chain because common professional storage formats such as DigiBeta do not allow raw 16 fps. With every MPEG2 encoder to my knowledge you would have to encode a 16 fps source at 25 fps using AssumeFPS(25) and then afterwards use DGPulldown to apply the RFF flags and restore the original 16 fps playback speed. Some things need to be considered:
Last edited by TheSkiller; 9th September 2014 at 17:18. |
9th September 2014, 17:48 | #24 | Link |
Registered User
Join Date: Feb 2002
Location: California
Posts: 2,691
|
Hmmm ... I just read through a lot of that 25-page DGPulldown thread. As you say, it adds "pulldown" internally to the MPEG-2 file, rather than as a flag when the DVD is authored.
I decided to try it out, but could not find any MPEG-2 encoder in my kit that will encode a 16 fps 8mm film to 16 or 16.666 fps. I'll keep looking for a few more minutes ... |
9th September 2014, 18:06 | #25 | Link | |
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Quote:
When applying the RFF flags with DGPulldown you specify the real frame rate which restores the original playback speed. Last edited by TheSkiller; 9th September 2014 at 18:08. |
|
9th September 2014, 20:13 | #26 | Link | ||||
Moderator
Join Date: Oct 2001
Location: Hawaii
Posts: 7,406
|
You couldn't be more wrong. In fact, there is no better way to accomplish what the OP wants, and certainly not interpolation and reinterlacing as he said he plans on doing. In fact, if he applies a custom pulldown set for 16.667->25, he'll apply a 3:3 pulldown and rid himself of the jitter effects of a standard 3:2 pulldown in a standard NTSC DVD.
The others before me have explained it in detail, but for some more clarification: No, you can't encode for 16.667fps. You encode for 25fps and after applying the pulldown, the length becomes correct. At the same time, adjust the bitrates in the MPEG encoder by a factor of 1.5:1 (25/16.667). For example, if the average bitrate is to be 4000, make it 6000. If the usual max bitrate is 9000, make it 13,5000. It'll all be fine in the end. I've done this many many times myself. Don't use any Adobe products for authoring as they refuse some DVD-compliant streams. Otherwise I defy you to find any authoring program that won't author the result or player that won't play the result correctly. Quote:
Quote:
Quote:
Quote:
Last edited by manono; 9th September 2014 at 20:16. |
||||
9th September 2014, 21:09 | #27 | Link |
Registered User
Join Date: Feb 2002
Location: California
Posts: 2,691
|
OK, I now understand what DGPulldown does: it adds pulldown flags to the MPEG-2 encode itself rather than adding a pulldown flag during the DVD authoring stage. This provides a lot more flexibility for encoding native progressive footage from different frame rates (like 16 and 18 fps), as well as doing the 24p-->50i, and 25p-->60i conversions that were the original goal of the DGPulldown project.
Very clever, and I now fully understand why I didn't comprehend the initial claims that there were more pulldown flags than the two that are a hard-wired part of the DVD authoring process. However ... One problem in using this approach comes from the following restriction (quoted from the DGPulldown documentation): "The input frame rate can be freely chosen, but it must be greater than or equal to 2/3 of the output frame rate,and less than or equal to the output frame rate." Thus, you can take 16 fps material and use this technique to end up with 24 fps (this is exactly 3/2, or 2/3 depending on which way you look at it). However, you cannot go from 16 to 25 fps, and still maintain the correct playback speed. That ratio is greater than the 3/2 allowed, and DGPulldown simply gives you the 3/2 ratio, and nothing more (I just tried it, and that's what happens). The OP can get pretty close (16.67 fps), however (edit: which is what Manono said earlier). For me, in NTSC land, there is another, more subtle, issue. NTSC DVDs have to be either 23.976 with the pulldown flag set, or 29.97 interlaced. I don't believe that there is such a thing as a 23.976 DVD without pulldown. However, the only way to put that on a DVD is with the pulldown flag set. And that leads to this issue: when the DVD player puts its pulldown on top of the soft pulldown embedded in the MPEG-2 file, it will create a cadence that might not be optimal, and might be different from one player to the next. To see if this is a major issue I'm going to burn a few test DVDs and see what they look like on my old CRT NTSC monitor. If I had a progressive DVD player, I am pretty certain that these do permit the 23.976 progressive video to be played natively (they basically ignore the pulldown flag). So, if I had one of those, this scheme would work perfectly. I definitely learned something today. Last edited by johnmeyer; 9th September 2014 at 21:11. Reason: added: edit: which is what Manono said earlier |
9th September 2014, 21:16 | #28 | Link |
Moderator
Join Date: Oct 2001
Location: Hawaii
Posts: 7,406
|
No, as 23.976fps isn't DVD-compliant. You apply pulldown to get it to interlaced 29.97fps. As I already explained, for NTSC the lowest framerate on which you can use DGPulldown is 19.98. Anything lower you have to first bring it up to 19.98fps.
|
9th September 2014, 23:16 | #29 | Link | |
Registered User
Join Date: Feb 2002
Location: California
Posts: 2,691
|
Quote:
Since starting with 19.98 rather than 16 is going to be quite noticeable, this technique will not work for my application. Even for 18 fps, that would be a 10% increase in speed. For the OP, starting with 16.66 may be close enough, and therefore acceptable. Thanks again for the explanations. DGPulldown is still a very cool hack -- another great contribution from "Guest." |
|
9th September 2014, 23:18 | #30 | Link | |
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Quote:
A progressive scan player has to obey the RFF flags as well. They usually have a cadence detection which removes the pulldown fields after decoding and outputs non-interlaced 60 Hz or applies deinterlacing when detected. This is necessary because a stream can in theory happily switch between soft- and hard-pulldown and real 60i (video camera) constantly (uncommon but possible). There's no way of outputting native (pulldown-less) 23.976 fps from a DVD (except on a PC). |
|
10th September 2014, 00:23 | #31 | Link | |
Moderator
Join Date: Oct 2001
Location: Hawaii
Posts: 7,406
|
Quote:
If you don't know the script for interpolating the needed frames, just ask. |
|
10th September 2014, 00:35 | #32 | Link | |
Registered User
Join Date: Feb 2002
Location: California
Posts: 2,691
|
Quote:
The problem I have with interpolating low frame rate material is that the temporal gaps between frames is so large that it is really difficult for the motion estimation to do a good job creating the intermediate frames. As a result, the lower the frame rate, the more obvious the artifacts. The inverse (or is it converse?) of this logic is that if you start with really high framerates, like 60p, you can estimate upwards and get some really amazing slow motions. I do use interpolation during camera pans because the judder at 16 fps is something terrible to watch. So, my workflow at this point is to apply a "standard" pulldown to 16 fps or 18 fps to get 29.97, and render to an intermediate using a lossless codec. I then also render the same material using interpolation, usually using MVTools2, which for me seems to produce results I like. I then edit these two similar 29.97 videos like I would a two-camera shoot, cutting between the pulldown version and the interpolated version as needed. Panning usually interpolates almost perfectly, so I seldom have a problem with artifacts. However, since the difference in cadence between interpolated and pulldown versions is visually quite noticeable, I usually try to cut between them at scene changes, or when the camera gets bumped, or at some other discontinuity that "masks" the change. |
|
10th September 2014, 09:48 | #33 | Link | ||
Registered User
Join Date: May 2009
Location: Belgium
Posts: 1,743
|
Thanks all of you, there are amazing informations here !
I'm very astonsihed by the fact that the bitrate can reach 13 Mbps and stay dvd compliant. I guess it means that for the player, the bitrate is detected after applying the pulldown that decreases framerate from 25 to 16.667 which spills the bitrate in a longer duration and thus decreases the bitrate for each second. If yes, it's strange because before applying the pulldown, the player has to decode mpeg-2 stream and at this moment, the bitrate reaches 13 Mbps. Or it doesn't work like that ? There is something I don't understand about rff flags and encoding in 16.667 fps : at which framerate and speed will the video be sent by the player to the screen ? Will the player triple the framerate (like I could do with Interframe) ? If yes, I guess there will no be interpolation but just a tripling of each frame, which will not be very fluid. And does it mean the player decodes at 25 fps and then slow down to 16.667 fps ? I guess no because it would need to keep a lot of frames in memory and the player would be decoding the end of the movie when displaying the 2/3 of the movie, which is impossible. So I guess the player actually never reaches 25 fps in this case during the mpeg-2 decoding process. Quote:
Quote:
So I'm a little bit lost, what happens exactly with the solution you recommended me ? If a kind of assumefps is done, what happens with the sound ? About the way players handle 23.976 fps with 29.97 pulldown, I had asked years ago to Oppo how they did to allow 24p output for ntsc dvd (when encoded with soft pulldown) : they said the decoder didn't ignore the flag, but after converting in 29.97 fps, an IVTC was done to find again the original 23.976 frames. This seems complex but is actually simpler for the decoder. They also said that the pulldown flag was technically ignorable, but it would need another decoding architecture, a second clock IIRC. |
||
10th September 2014, 10:42 | #34 | Link | |||||
Moderator
Join Date: Oct 2001
Location: Hawaii
Posts: 7,406
|
Quote:
Quote:
Quote:
Quote:
Quote:
Last edited by manono; 10th September 2014 at 10:44. |
|||||
10th September 2014, 11:32 | #35 | Link | |||
Registered User
Join Date: May 2009
Location: Belgium
Posts: 1,743
|
Thanks !
Ok, I forgot you wrote it. I knew that Dvd/Divx players could play divx files with strange framerates but I didn't know a dvd player could do 3:3 pulldown with compliant dvd. Are you 100% certain it will play on all Pal dvd players ? Quote:
Quote:
And you prefer this lack of fluidity than interpolation made with Interframe (or other filter) ? Quote:
I guess no because dvd players are not supposed to allow 24p output, although some Blu-ray/dvd players can output ntsc movies in 24p but with a double conversion (as I explained above about Oppo). But this gives me another idea : could your trick work to encode 23.976fps onto Pal dvd (to encode a 23.976fps movie in 720*576 instead of 720*480) with a 25p flag and a rff flag to slow down it to 23.976 ? Mmmh, actually no, same problem than with ntsc dvd, a dvd player is not supposed to allow 24p output, whatever Pal or Ntsc, right ? And if it was allowed, the flag wouldn't be needed. Don't you mean common instead of legal ? Because if your trick works for 16.667fps, I guess this is not "illegal". Last edited by Music Fan; 10th September 2014 at 11:36. |
|||
10th September 2014, 11:36 | #36 | Link |
ангел смерти
Join Date: Nov 2004
Location: Lost
Posts: 9,558
|
It's field repeating, not frame repeating. For every single decoded frame, three fields are displayed, when you max out the pulldown like that. When displayed, every third frame is "interlaced" (Aa, Ab, Bb, CC, Cd, Dd, etc), but when you're watching on TV, that's as smooth as it's possible to get without blending or interpolating. If your player deinterlaces, you'll get even more extra fake smoothness; if it tries to IVTC, it'll almost certainly fail horribly, but most won't even attempt it with this pattern.
24 fps on 25 fps PAL is generally known as 2:2 pulldown, although it's really 2:2:...:3 (I forget exactly how many 2s). It repeats one field every 12 frames. No matter how small or large the framerate, the video can still only be 9 Mbps, because DVD is only specified to read data off the disc at 9 Mbps. Framerate has absolutely nothing to do with bitrate, other than if you change the framerate without changing anything else, you change the bitrate. Pulldown changes both the framerate and the frame count, though. Last edited by foxyshadis; 10th September 2014 at 11:39. |
10th September 2014, 11:52 | #37 | Link | ||||
Registered User
Join Date: May 2009
Location: Belgium
Posts: 1,743
|
Quote:
But if one has a flat scren, the best idea is to send the video in 1080p to allow a frame tripling by the player. Anyway I find this pattern doesn't look fluid : some fields are displayed 2 times and others 1 time. Quote:
Quote:
Quote:
|
||||
10th September 2014, 13:52 | #38 | Link | |||
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Quote:
Edit: 16.666 fps is not irregular. As explained by foxyshadis every frame is spread across 3 fields. It doesn't get anymore regular than that. Quote:
Quote:
So for progressive output formats the video runs through a player's deinterlacer which is not optimal but if you encoded the video with hard-pulldown instead this would be no different. It's Megabits per second at 25 fps. If you play the same stream at 16.666 fps the Bitrate per second declines by the same factor and thus stays within DVD spec. Last edited by TheSkiller; 10th September 2014 at 14:40. |
|||
10th September 2014, 14:58 | #39 | Link | |
Registered User
Join Date: May 2009
Location: Belgium
Posts: 1,743
|
I had understood it, that's what I said earlier. So there was no reason to say that the maximum bitrate is 9 Mbps, it's confusing in this particular case.
Quote:
Thus there will be judder added by the player actually, at least when output is interlaced. But even when output is progressive, I'm not sure the result can be similar to a simple frame tripling because of the intermediate 25i step. What is the utility of this kind of Euro-Pulldown ? If one frame is duplicated each second to get 25 frames from 23.976 encoding, it will be much less fluid than Pal speed-up encoding. The only advantage is to keep original duration and thus keep original sound without acceleration (even if compensation can be done, but it's not always done). Last edited by Music Fan; 10th September 2014 at 15:05. |
|
10th September 2014, 15:07 | #40 | Link | |
Registered User
Join Date: Dec 2007
Location: Germany
Posts: 632
|
Quote:
You already mentioned it, the audio does not need to be speed up. This technique can be used if the audio is of greater importance than the video quality, say a music video. Not 1 frame per second is duplicated but 1 field twice per second. So there are 2 slight hiccups every second. But it's not nearly as bad as duplicating a frame once per second (that's pretty much unwatchable). Last edited by TheSkiller; 10th September 2014 at 15:27. |
|
Thread Tools | Search this Thread |
Display Modes | |
|
|