View Full Version : Pulldown of 25 fps to NTSC
Pages :
1
2
3
4
5
6
[
7]
8
9
10
mpucoder
28th February 2005, 19:27
Just started reading this thread, so forgive me if I missed something in the 25 pages! Back around page 6 there was talk about the legal mpeg-2 framerates, and "how could you encode a 22fps source?". Are you guys aware of the frame_rate_extension data in the sequence_extension header? This allows you to alter the framerate by a ratio of n/d, where n can be from 1 to 4, and d is from 1 to 32. It's not legal in DVD, but it is for elementary streams that you might want to add pulldown to. You can't get exact, but 3/4 of 29.97 is close to 22 (22.4775). The lowest mpeg-2 can go is 24/32, or 3/4fps. The highest is 4*60.
Also pulldown can be done on a frame basis if the progressive sequence flag is set. This requires all pictures to be frame pictures, and progressive.
Guest
28th February 2005, 20:22
Originally posted by mpucoder
Just started reading this thread, so forgive me if I missed something in the 25 pages! Back around page 6 there was talk about the legal mpeg-2 framerates, and "how could you encode a 22fps source?". Are you guys aware of the frame_rate_extension data in the sequence_extension header? This allows you to alter the framerate by a ratio of n/d, where n can be from 1 to 4, and d is from 1 to 32. It's not legal in DVD, but it is for elementary streams that you might want to add pulldown to. You can't get exact, but 3/4 of 29.97 is close to 22 (22.4775). The lowest mpeg-2 can go is 24/32, or 3/4fps. The highest is 4*60. I assume the majority of users want this tool for making DVDs.
Also pulldown can be done on a frame basis if the progressive sequence flag is set. This requires all pictures to be frame pictures, and progressive. Yes, we discussed that.
mpucoder
28th February 2005, 21:13
Originally posted by neuron2
I assume the majority of users want this tool for making DVDs.
True, but wasn't there some discussion about home movies, old silent films, etc being converted to DVD and how to express their framerate, prior to pulldown, in mpeg-2?
manono
28th February 2005, 21:45
...but wasn't there some discussion about home movies, old silent films, etc...
That may have been me. Hi mpucoder. I was speculating that maybe 18fps home movies and silent films at any framerate could be DGPulldown'd for DVD, until I was set straight that the minimum was 20fps. Since then I've done one for 25->29.97fps, 1 for 22->29.97fps, and several for 20->29.97fps. All play fine on any DVD player I've tried, software or hardware.
I'm sorry, but I didn't understand most of what you wrote in your first post in this thread, but were you implying that it may be possible to create DVDs using framerates lower than 20fps? That is, store, for example, 18fps on the DVD, and then Pulldown to 29.97fps?
mpucoder
28th February 2005, 21:57
Originally posted by manono
were you implying that it may be possible to create DVDs using framerates lower than 20fps? That is, store, for example, 18fps on the DVD, and then Pulldown to 29.97fps? No, not under most circumstances. There were two things I was pointing out, one was how to express non-standard framerates so that a pulldown program would automatically know what to do.
The other was about progressive sequences, and that they can be used to convert from as low as 10fps to NTSC. But they are not practical, too many other conditions must be true to be able to use them.
manono
1st March 2005, 03:23
OK, thanks for the explanation, mpucoder.
I've used your MuxMan on a number of occasions, including several times when testing out neuron2's DGPulldown. Unless it was I that had screwed something up, it's always worked great. It's much appreciated.
digidragon
1st March 2005, 14:27
I notice that in the latest versions the 'Set timecodes' and 'Set drop frames' options are checked by default. Should these be left checked when converting for normal DVD playback?
Guest
1st March 2005, 14:46
Originally posted by digidragon
I notice that in the latest versions the 'Set timecodes' and 'Set drop frames' options are checked by default. Should these be left checked when converting for normal DVD playback? They're set for compatibility with some DVD authoring applications. I would leave them set unless they cause problems. I'm not aware of any cases where they cause any problems, however.
tyee
1st March 2005, 16:59
I would leave them set unless they cause problems. I'm not aware of any cases where they cause any problems, however
One thing that comes to mind is that if I import an m2v into my authoring application, once it finishes scanning it, it will show the full running time in either drop or non-drop timecode. Usually when using non-drop T/C, both the audio and video running times agree within a couple of frames, but if encoded with drop-frame T/C I believe the audio and video will show different values.
It's nice to have both show the same time. So my next question is if we use drop-frame for video, how do we get the audio timecode to show drop-frame also? Can it be done or shall we just not worry about it.
tyee
powderkegz
1st March 2005, 17:24
So I've been following this thread with great interest for quite a long time, and am extremely excited at what I've seen come out of it.
My question goes to the one-clickableness of this all now - would it now be possible to use this program in conjunction with DVD-Rebuilder to easily do a PAL->NTSC conversion? Is there a simple way to convert menus from PAL->NTSC? I thought I remembered someone mentioning a program to do this, but now I can't find that post .... Also, does the use of DGPulldown affect the timing of subtitles at all? Obviously, in converting PAL->NTSC, you deal with a lot of subtitled material.
Thanks for all the wonderful work you all have done - we really appreciate it.
Peace,
powderkegz
jptheripper
1st March 2005, 20:59
numenu4u will do pal to ntsc conversion i believe, however, if you have audio its an issue.
as for rebuilder, i would love this. the issue at the moment is the menus i think.
mrslacker
1st March 2005, 22:29
Yes, I think the integrated menu support would be necessary in DVD-RB before this pulldown technique could be used with Rebuilder. What good is an NTSC movie with a PAL menu? When and if Rebuilder gets support for menu processing, the world of standards conversion will be wide open. I guess conventional conversions can be done with the filter editor (??), but NuMenu4U seems to be the easiest or only way to handle the menus at the moment.
pipieye
2nd March 2005, 05:43
Originally posted by neuron2
Which version of mine? My version 1.0.1 incorporates Jetlag's most recent contributions, except that the dropframes checkbox is not AUTO3STATE.
Sorry for the delayed response.
Using 1.0.0 Beta8 with Maestro has perfect sync on subtitles, chapters and audio all using the 25fps with no timestretching.
I'm not sure with other authoring software...
I use this mainly to do PAL->NTSC conversion, now only needed to reencode @25fps with 720x480 without touching the rest.
Guest
2nd March 2005, 14:28
@pipieye
I don't use Maestro. I don't know what a chapter mark is, where it is stored, or how to change it. If you or Jetlag can assist in this regard I can make approriate changes, otherwise you'll just have to use the earlier version.
Paulcat
2nd March 2005, 22:34
Since this thread has a lot to do with converting from PAL to NTSC, I need help with an error I encountered today.
Using TMPGEnc to encode a 25 fps M2V file, and DGPulldown (1.0.2) to pull the framerate to 29.976, I tried to encode my file to DVD format only to be hit with a "Too long GOP" error. My settings in TMPGEnc indicate my max. frames per GOP is 18 (for NTSC DVD).
I tried loading the un-pulled down 25 fps file into my authoring software and got the same error (as well as a 720x480 resolution cannot be used with a framerate of 25 error!)
Is this a problem with the source material? The original, re-sized, and pulled-down M2V's all play fine. My authoring software will allow me to ignore this error and make a "non-standard" dvd...is this a good idea or will it be a coaster...
Any ideas out there?
Guest
2nd March 2005, 23:45
Load the pulled down M2V in DGIndex and generate a project. Then verify that the frame rate is detected as 29.97, the size is 720x480, and that none of the GOP lines in the D2V have more than 18 pictures. The first 6 numbers per GOP line should be skipped; the rest are pictures.
If they're all true, it can't hurt to try it. One coaster won't bankrupt you.
Which TMPGEnc version are you using? I've done this with 2.5 without any such problems. The fact that it happens with the unpulled-down M2V tends to exonerate DGPulldown.
Jeffster
3rd March 2005, 04:55
Your goal with TMPGenc is to encode a new PAL (25fps) video stream (which just happens to be 720x480). The max. GOP length for PAL is 15 (12 recommended).
Perhaps that is why you are getting that error because you are encoding your PAL stream with a GOP length of 18 which is illegal?
Guest
3rd March 2005, 05:32
Yeah, that sounds right. Just go ahead and force it.
Jeffster
3rd March 2005, 06:19
I just tested a thought I had...
Encoded a resized PAL stream with a GOP length of 15 (3/5).
After running DGPulldown on it and creating a d2v of the pulldowned file (29.970fps), it now has a GOP length of 18, checked with info of DGDecode.
So, I imagine if you encoded a PAL stream with a GOP length of 18 as you tried, the pulldowned file will be >18?
I can't check that because CCE won't allow me to set a GOP length greater than 15, but it seems logical :)
Guest
3rd March 2005, 09:14
That's not possible (for the GOP structure to be changed by pulldown).
Jeffster
3rd March 2005, 11:11
Originally posted by neuron2
That's not possible (for the GOP structure to be changed by pulldown).
ooops... I was just counting the number of frames to the next GOP change, watching the info from DGDecode (and not thinking) :o
What I was counting was the Display frames, and I didn't differentiate between that and the number of Encoded frames between GOP's which hasn't changed, of course. Sorry for the confusion. :scared:
Paulcat
3rd March 2005, 13:14
Thanks for the help. I changed my GOP settings one at a time, and checked each result with my authoring program, and once I got down to maximum 15 frames/GOP, everything worked.
It's odd, because although the SOURCE material was PAL, the final file is in NTSC, and should accept a maximum GOP size of 18.
Donald: I am using TMPGEnc Plus 2.524 (the latest version), and yes, your DGPulldown works fine!
What difference does the GOP size make to the final picture in any case? More I-frames, larger file size? What?
Guest
3rd March 2005, 15:50
You can force the GOP to 18. After pulldown, the frame rate, size and GOP structure will then be just right for DVD authoring. TMPGEnc is just warning you. He doesn't know you plan to pull it down subsequently!
Smaller GOP generally means more I frames and thus a larger encoded file.
mpucoder
3rd March 2005, 18:42
Originally posted by neuron2
That's not possible (for the GOP structure to be changed by pulldown).
Sure it is, GOP size is measured in displayed frames. Every rff adds a field to the GOP size.
JetlagMk2
3rd March 2005, 22:24
I added some more functionality.
* The timecode now starts at the same point as the input file OR whatever time you specify.
* Write timecode to a textfile.
* "No change" - Don't perform pulldown.
* "No output" - Don't write output.
With various combinations of the options all manner of silly things can now be done. Default settings are most likely what you need, though.
Maybe the first thing on the list will help rectify sub & chapter point problems. :confused:
http://jetlag.us/dgpulldown100sje3.zip
mpucoder, when muxman imports chapter points, is it looking for the encoded frame number, or the display frame number? What I mean is, would the numbers have to be changed after pulldown is run on a file?
Guest
3rd March 2005, 22:29
Originally posted by mpucoder
Sure it is, GOP size is measured in displayed frames. Every rff adds a field to the GOP size. I was clearly referring to the encoded GOP structure.
powderkegz
4th March 2005, 16:48
OK, now I've gotten a bit confused - would someone please explain to me the difference between jetlag's and neuron2's versions of DGPulldown?
Thanks,
pk
Guest
4th March 2005, 18:33
Jetlag has been contributing enhancements and improvements. Instead of sending me the changes he prefers to just release his own version. It causes confusion, but if he prefers it that way, it's fine by me. Right now, he's a version ahead with his sje3; I've incorporated changes up to and including sje2.
pipieye
5th March 2005, 06:38
Originally posted by JetlagMk2
Maybe the first thing on the list will help rectify sub & chapter point problems. :confused:
Hi Jetlag/Neuron:
Sample of Maestro chp file to import chapter points:
$Spruce_IFrame_List
00:00:00;00
00:03:05;04
00:05:58;21
00:08:55;07
...
Chapter points were created from the original 25fps IFO file.
Sample subtitle file to import into Maestro created using subrip:
st_format 2
Display_Start non_forced
TV_Type PAL <-- edit to NTSC
Tape_Type NON_DROP <-- edit to DROP
Pixel_Area (0 575) <-- edit to 479
Directory K:\Programs\Encode\demux\bmp
#
# Palette entries:
#
# 00 : RGB(255, 0, 0)
# 01 : RGB(255,255,255)
# 02 : RGB( 0, 0,255)
# 03 : RGB( 0, 0, 0)
#
SP_NUMBER START END FILE_NAME
Color (0 1 2 3)
Contrast (0 15 15 15)
Display_Area (000 000 719 479)
0001 00:00:22:08 00:00:28:00 test00001.bmp
Display_Area (000 000 719 479)
0002 00:00:28:02 00:00:31:10 test00002.bmp
I guess the important part is the timecode which gets manipulated and throws the sync off from 25fps to 29.976fps???
Pipi
JetlagMk2
5th March 2005, 16:37
I notice they both rely on timecodes, so messing with timecodes could certainly mess up the sync. beta 8 started timecodes at 00:00:00,00, which happens to coincide with your example, so the result would just happen to work. My first version started the timecode at 00:59:59,00, because that's what a lot my material was starting at. My second version was supposed to start there too but I broke it just before releasing it and didn't notice. :scared: My third revision now looks into the input file and takes note of where it starts and uses that (unless you manually override it). It *should* stay in sync now for any starting timecode as long as the length of the video is not changing (and it shouldn't change if you're just doing pulldown and not changing it on purpose).
DMagic1
5th March 2005, 20:04
I just did my first project with this. It worked perfectly. Very nice solution.
Zeul
6th March 2005, 20:50
Just wondering how far this can go for NTSC -> PAL ?
Guest
6th March 2005, 21:26
Originally posted by Zeul
Just wondering how far this can go for NTSC -> PAL ? Nowhere.
scharfis_brain
6th March 2005, 21:36
the only possible NTSC to PAL conversion is:
progressive NTSC-Film telecined to PAL
pipieye
7th March 2005, 00:36
A little off topic
My little contribution to this site...
Its a little app I wrote to batch modify the mbl files created by the export button option of DVDRemake to convert from PAL to NTSC.
For those movies with BOVs....
Sorry no help file... but should be easy to use.
Open the mbl and click convert.
Or click on batch and point to a folder with your mbl files.
A newmbl folder will be created.
Then import newmbl back to your NTSC created vobs.
edit: sorry the server complained file is too big to post. :(
Pipieye
spon
12th March 2005, 02:11
Hello all. I've read thru this entire thread and must admit that most of it is (way) above my head and I really appreciate all the hard work that went into this utility. I think it's something that a lot of people will find very useful. That being said, I'm having a problem with the audio sync.
In the past in order to convert PAL to NTSC i've had pretty good success using the assumefps (23.976) command in my script and then slowing down my audio in BeSweet to 23.976 also. works pretty good, but I thought I'd try this new technique.
I converted my PAL avi to a PAL mpeg 2 file using DVD2SVCD (settings on AVI2DVD). I then ran the m2v file thru DGPulldown with the default settings and 25fps -> 29.976.
I then loaded the resulting m2v file and the original AC3 audio file (which I demuxed from the original PAL avi file) into TMPGEnc DVD Author to author the DVD. The resulting picture looks great, however the audio is out of sync.
Any ideas?
Thanks
pipieye
12th March 2005, 03:37
@spon,
Before you demux your avi file, check to see the a/v delay in the original avi muxed file. Sometimes there is a delay offset.
Pipi
spon
12th March 2005, 03:55
thanks pipieye. this is going to be a stupid question, but how would I check that? I checked G Spot, Vdub and Vdub mod but don't see any indication of a delay. where would I look?
manono
12th March 2005, 10:38
HI-
I don't think it's just a delay issue (unless you're counting progressive asynch). You probably shouldn't be using DVD2SVCD for this, as it doesn't support DGPulldown. If you set it for PAL->NTSC, it'll give you a slowed down 720x480 .m2v. If you leave it at the PAL setting, it's going to give you an .m2v at the correct length and FPS for DGPulldown, but at 720x576. Neither is any good for the purposes of using DGPulldown to make a 25->29.97fps NTSC DVD.
What resolution is that .m2v? 720x576? If so, it wouldn't be NTSC compliant, and perhaps TMPGEnc DVD Author did something to it that screwed up the audio. I've used DVD2SVCD quite a bit, but I've never used TMPGEnc or TMPGEnc DVD Author, so I have no idea what it did to your .m2v, if anything.
You might compare the original AVI length, with the length of the authored DVD. If somewhere along the line the video got converted to 23.976fps, for every 100 minutes of movie, the NTSC version will be about 4 minutes longer, and the audio asynch will get worse (4 minutes worse eventually) as the movie goes along. But if your audio asynch is constant and small, then it can be fixed once you know the delay. Don't ask me how, though, as I don't know. Maybe pipieye does.
spon
14th March 2005, 04:56
thanks guys. believe it or not, I think the problem was that I simply had the wrong conversion button pressed or something. I ran my PAL m2v file thru again and this time it synced up perfectly.
In case anyone else wants to try this method, what I did in DVD2SVCD was simply click on the "edit before video encoding" button in the FrameServing tab. Then when the avisynth script opened up I changed the encoding size to 720*480. That way it produced a PAL video with NTSC size. Then after running it thru DGPulldown it worked great!
manono
14th March 2005, 05:17
Hi-
what I did in DVD2SVCD was simply click on the "edit before video encoding" button in the FrameServing tab. Then when the avisynth script opened up I changed the encoding size to 720*480.
Ahh, good thinking. I forgot about that. Glad you got it working OK. Another convert. :)
hoozdapimp
16th March 2005, 18:38
so what exactly would happen if you fed this thing a 25i source? I don't have any 25i to test it with. My severe lacking of knowledge regarding the mpeg2 standard leaves me no obvious answer to this question :)
Guest
16th March 2005, 20:24
Suppose you have this where the top line is the top field and each letter is a new picture:
A C E
B D F
If you pulldown the first frame, you get:
A A C E
B D F
...which gives a temporal sequence of:
A B A D C F E
...which is all screwed up. If you have progressive video it looks like this:
A A B C
A B C
which gives a temporal sequence of:
A A A B B C C
mpucoder
16th March 2005, 22:29
You would also have to encode it as progressive in order for the pulldown to work. rff can only be set for progressive frame pictures.
Rombaldi
20th March 2005, 20:36
Unintended benefit or stupid cockup??
I had been following this thread for a while with interest, and finally had a use to give it a try. Had the complete run of a US series that someone in the UK recorded for me (on DVD-R) that had been cut short over here (and several left unshown, and they were widescreen to boot over there.. but I digress) so I thought I would give this a go.
(wait till the end if you see this coming).
Extracted the MPEG program file from the DVD-R, edited the adverts, saved and split to M2V/AC3 files.
Procoder to do the re-encode for a 'quick' test.
Used it's adaptive deinterlace. Set the output to PAL/25FPS Progressive, overrode to make the output 720x480. Ran quickly with no problem. Checked the length of the program before and after encode. Same down the frame.
Ran it thru DGPULLDOWN... and the time came out 4% LONGER. 40:35:11 vs 42:19:44. Huh?
I had done three episodes at once, and checked them all, all came out 4% longer. Audio obviously way the smeg out of sync.
I did find it curious that it had (effectively) reversed the 'PAL Speedup' of the video (the episodes after Pulldown were the SAME LENGTH as a NTSC recording I had done of some of them). So I mentally said to myself "must be a Procoder 'glitch'" and for the heck of it, went AC3 > WAV on the audio, used CoolEdit to 'stretch' it back to the new length (and drop the pitch 4% in the process). Back to AC3, authored/burned the discs and threw them in the player.
PERFECTION! Smooth picture, no jerkyness or stutter, audio synced up perfectly all the way thru... tried it on several different players (including a finicky Panasonic DVD-Recorder) and no problems anywhere, you could not tell them from a 'native' NTSC disc.
I started the next batch, encoded the same way, using the same version of DGPULLDOWN...
...and this batch, the time didn't change on the PD'ed files. The new files matched the length of the original files and the same length as the PAL audio track.
WTF?
After several hours of re-encoding, pulldown and experimentation, I found what I had done 'wrong' the first time.
Instead of having DGPulldown set to 25 -> 29.97, I had neglected to change it from the default of 23.976 -> 29.97. Every time I ran it that way, the run time went 'up' by 4%.
So, instead of taking a changing a 25fps stream to 29.97fps, it was taking a 25fps stream, assuming it was 23.976fps and changing that to 29.97fps.
The problem is, it dosen't appear to 'hurt' anything, and has the unxpected benefit of 'undoing' the PAL speedup. Sure, I have to dink with the audio track, but I had planned to at least do the 4% pitch correction to bring the sound back down to 'normal' from munchkin talk.
I'm SURE this will only work this way on NTSC material that was converted to PAL (and now effectively being converted back), but the question is...
.. did I do something 'wrong' or was this one of those 'ah ha' moments where something 'good' happens when you don't expect it? Or is it something that will bite me in the butt when I least expect it?
I guess it's true that me most interesting words in research aren't "EUREKA!" but "hmmm.. that's strange...".
DMagic1
21st March 2005, 08:03
Is there any way to do a batch process with this? I'd like to do multiple files at once.
Guest
21st March 2005, 14:47
@DMagic1
Not at this time.
Guest
21st March 2005, 14:51
@Rombaldi
Yes, you can use the tool that way. Most people prefer not to have to process the audio, but if you prefer that approach, go for it.
Rombaldi
21st March 2005, 19:57
@neuron2
Coolness... it only takes me about 5 minutes to 'stretch' an audio file so it's not a biggie. For stuff that is PAL in origin then there (appears) to be no need to do it, but for the NTSC>PAL>NTSC trip it makes a big diff..
Kudos to all involved for such a great tool, it's working like a charm!
scotty47
26th March 2005, 22:45
I am new to burning movies, when i tried to join 3 files in Lab pro the files are mpeg, it would not join them and said they were pal format, how can I check if something is in pal. thanks.......scotty
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.