Log in

View Full Version : MaestroSBT Creates DeSync Subs?


LB
1st June 2003, 00:42
This is strange. I'm trying to make my first softsub DVD and am finding that the subtitles are gradually desyncing as I skip through it. The source is a R2 DVD which I have made subs for myself and since I usually hardcode the subs, I know that this is 100% timed perfectly. If I were to hardcode the subs there would be no desync. That said, I opened the SSA using MaestroSBT (The program that takes a SSA file and outputs Maestro compatible .bmps). I added it into the project, compiled, but get this desync?

Any ideas, thoughts? I've tried selecting the FPS as (in=23.976) and (out=29.97) and all variations inbetween but that doesn't solve anything.

LB

UPDATE:

Well I finally figured it out. When you do a pulldown, you have to enable "DROP FRAMES". In addition, when converting your subs you have to enable "DROP FRAMES". By doing both, you will then never run into de-sync issues. Interesting eh? Now, I still have no idea what a drop frame is, but as long as it works, that's all that matters I suppose.

oddyseus
1st June 2003, 22:27
It seems that u have undertaken a Pal to NTSC conversion without actually became aware of it.

A R2 dvd is a PAL one with speed of 25fps and no drop frames at all.

U were not supposed to resort to drop frames issues had u kept the speed at 25fps for video, audio and the subs.

I would like to know how exactly u did it.

mpucoder
1st June 2003, 22:56
Not all R2 DVDs are PAL - Japan is R2, and definately NTSC.

oddyseus
2nd June 2003, 09:00
Oh :o

LB is Japaneese? I should have guessed better.

Silly me!

odedia
2nd June 2003, 23:39
Just a tip - why bother with all those BMP's and SSA's?

Maestro supports the formal .STL, which is a simple text format file. you can convert to this format using dvd subtitle workshop or submax.

Another advantage for this is that you can set the font size/color/type directly inside maestro, and best of all - you don't have any background/foreground problems in the subtitles. no need for and silly palette or whatever. it's just the text :) maestro will convert this himself.

Oded S.

LB
5th June 2003, 04:06
Originally posted by oddyseus
It seems that u have undertaken a Pal to NTSC conversion without actually became aware of it.

A R2 dvd is a PAL one with speed of 25fps and no drop frames at all.

U were not supposed to resort to drop frames issues had u kept the speed at 25fps for video, audio and the subs.

I would like to know how exactly u did it.

Yo!

Actually, it isn't a pal DVD. It's NTSC. Most anime, I'll take a stab and say 99% of it produced in Japan, is originally created at 23.976 FPS and then obviously 3:2'd to 29.97. I did a lot of reading on VCDHELP.COM and it just seems that this is some bug with maestro. Simply stated, applying an IVCT, encoding, doing a normal pulldown with pulldown.exe with no flags enabled produces a video of the correct length but the subs do not match up ** IF SOFTSUBBED through Maestro ***. Also please note, I tried the sub conversion in MaestroSBT many ways:

23.976 -> 29.97
29.97 -> 29.97
23.967 - 23.976

(I have never run into a situation where I ever had to apply some disfunctional ;p framerate hocus-pocus on my subtitles). I know this needs to be done with PAL, but then again, I'm not dealing with PAL. So finally, to re-iterate my answer since I am sure many people probably are running into the same dillema. If you intend to use your own subtitles in Maestro you need to do two things:

1. Use MaestroSBT to convert your SSA (If that's what you are using) to the proper .bmp files, but in the framerate area for the subtitles select SOURCE=23.967 and leave the output BLANK, just click the option "DROP FRAMES."

2. Dowload the pulldown GUI from doom. Very handy. Make sure you (a) enable the pulldown; and (b) select "DROP FRAMES."

This will give you NO gradual desync and NO desync at all for your video. Granted, you must have your subs originally in sync to begin with ;p Finally, I have no idea what drop frames means but maybe some rainy day I'll check into it. But for the time being, here is the solution to everyones problem if you ever run into it. Oh and I'm American, but at times I think being Japanese would be cool. Why? They have cool spikey hair! I'd never have to buy gel again!!

ihgl
12th December 2003, 01:01
Funny. I have had exactly the same problem with 23,976 NTSC movie to 29,97 with pulldown.exe. MaestroSbt gradually put the subs out of sync in DVDMaestro. But everything turned out perfectly setting the timing to: 23,976 in and 24 out. That gave me a perfect sync. And this is not the first movie that has worked that way. Do not ask me why this works. But it is worth a try.

SomeJoe
12th December 2003, 01:17
There is no bug in DVD Maestro. Slowly desynchronizing subs are a symptom of timecode format mismatch between your .m2v and your subtitle file (.stl). They either both have to be drop-frame or both have to be non-drop-frame.

DVD Maestro is well aware of the differences between the two timecode formats, and will religiously place subtitles exactly where the timecode says they should go. It is up to you to make sure that your MPEG encoding tool and subtitle script encoding tool generate compatible output.

ihgl
12th December 2003, 14:01
Originally posted by SomeJoe
There is no bug in DVD Maestro. Slowly desynchronizing subs are a symptom of timecode format mismatch between your .m2v and your subtitle file (.stl). They either both have to be drop-frame or both have to be non-drop-frame.

DVD Maestro is well aware of the differences between the two timecode formats, and will religiously place subtitles exactly where the timecode says they should go. It is up to you to make sure that your MPEG encoding tool and subtitle script encoding tool generate compatible output.

You are probably perfectly right. I must admit I do not quite understand though. The source is a perfect 23,976 AVI encoded in CCE to an m2v-stream. Then pulldown.exe with no switches is used to make DVDMaestro load it as a NTSC. This give you gradually delayed subs made the standard way in MaestroSBT (no drop frame). If you use the switch drop frame with pulldown.exe and the same with MaestroSBT subs are running far too fast. So either way it does not work. On the other hand, if you use DoPulldown(GUI) and the switch "No timecodes" everything works perfect the standard way. The very same is a fact if you make the timing 23,976 in and 24 fps out in MaestroSBT. As I said it is not the first time this has happened to me. And I do not really understand what is happening here. Is it maybe some timecode screw-up in the original 23,976 AVI-file??

SomeJoe
12th December 2003, 19:45
Here's the deal:

1. .m2v files have an embedded time code. Maestro attempts to use the embedded timecode as the reference for where to put your subs from .stl file.

2. There are two NTSC timecode formats - drop-frame (DF) and non-drop-frame (NDF). The important thing to remember is that any timecode is just a label, like a frame number. If you change the timecode format, that doesn't change the video at all. The video still runs in the same amount of wall-clock time, still runs at the same frame rate (29.97 fps of real display), and still has the same number of frames in the file.

3. The non-drop-frame timecode format is very simple. It counts the two least significant digits up by one every frame. When it reaches 29, it rolls over to 00 and adds one to the next two signinifant digits. This timecode would correspond exactly to wall-clock time in hh:mm:ss:ff IF the video was running at 30.00 fps. But it's not. The NTSC video is actually running at 29.97 fps, so this timecode does not correspond to wall-clock time. It gets behind by about 3.5 seconds per hour. (In other words, when the timecode says 1:00:00:00, the actual elapsed wall-clock time is 1:00:03:18).

4. The drop-frame timecode format is more complicated. When counting in the drop-frame format, certain timecode values are skipped in the counting sequence. This allows the timecode to maintain synchronization with actual wall-clock time. The way that this is done is that the xx:xx:xx;00 and xx:xx:xx;01 timecodes are skipped every minute, except for multiples of 10 minutes. So, to count in drop-frame format:

00:08:59;29, 00:09:00;02, 00:09:00;03, etc.
00:09:59;29, 00:10:00;00, 00:10:00;01, etc.

5. Notation. Non-drop-frame timecodes use all colons ( : ) to separate the values. Drop-frame timecodes use a semicolon ( ; ) to separate seconds and frames. (BTW, Maestro is aware of this notation! .stl files will be interpreted differently depending on ; or :. .chp files work this way too! In your asset bin, the timecode displayed has : or ; to note whether the asset is embedded with non-drop-frame or drop-frame timecode. Be aware that non-drop-frame timecodes don't correspond to real wall-clock time!)

Originally posted by ihgl
The source is a perfect 23,976 AVI encoded in CCE to an m2v-stream. Then pulldown.exe with no switches is used to make DVDMaestro load it as a NTSC. This give you gradually delayed subs made the standard way in MaestroSBT (no drop frame). If you use the switch drop frame with pulldown.exe and the same with MaestroSBT subs are running far too fast. So either way it does not work. On the other hand, if you use DoPulldown(GUI) and the switch "No timecodes" everything works perfect the standard way. The very same is a fact if you make the timing 23,976 in and 24 fps out in MaestroSBT.

Now, what this tells me is the following:

1. CCE created the 23.976 file with embedded non-drop-frame timecodes, which is it's default. Note that the embedded timecodes for each frame are approximate because the timecode counter is based on 29.97-fps, not 23.976. So embedded timecodes will skip several values.

2. MaestroSBT is not properly creating non-drop-frame timecodes. It's either computing the timecode incorrectly, using the wrong notation in the .stl file, or both.

3. Running pulldown.exe and setting the -drop-frame is not a correct action to take on a 23.976 file. The embedded timecodes will now be WAY off because the frame rate is not correct for the timecodes that pulldown is writing in there.

4. Using no timecodes in PulldownGUI will remove all timecodes from the .m2v file. Maestro will then not try to sync the subs by timecode, but instead will just use frame rate to compute where the subs should go. This will work but isn't the preferred method because it is not frame-accurate.

5. Making the timing 23.976 in and 24 fps out in MaestroSBT essentially causes MaestroSBT to generate timecodes that correspond with non-drop-frame timecodes. Naturally this will sync properly to the non-drop-frame timecodes embedded in the .m2v. However it still won't be precisely frame-accurate. It's better than solution 4, though.


Solutions

Work-Arounds

#5 above will work. #4 will work also but is not preferable.

Better Work-Around

Use CCE to generate the compressed .m2v with drop-frame timecodes.

Long-Term Solution

MaestroSBT needs to have it's bug fixed to generate proper timecodes with correct notation.

ihgl
13th December 2003, 02:02
Thanks very much for your exellent schoolbook. Things are sorted out and I am very much obliged. I think I know now quite well what it is all about. Just one simple question: How to make CCE produce drop-frame timecodes??

SomeJoe
13th December 2003, 04:53
Originally posted by ihgl
Just one simple question: How to make CCE produce drop-frame timecodes??

In CCE 2.62 through 2.64, there is a checkbox option for "Drop frame timecodes". It should be on the same options page as "DVD Compliant", "Progressive Frame", etc.

I'm not sure, but CCE 2.50 may not have the Drop Frame option.

CCE 2.66 and 2.67 have a "DF" checkbox next to the starting timecode value. If checked, timecodes will be drop-frame.


Incidentally, some compressed audio formats, like Dolby Digital/AC3, also have an embedded timecode. A secret to perfectly synced audio is to make sure that the .m2v and the .ac3 have identical timecode formats, and Maestro will use the embedded timecodes to sync. :) Be aware that Soft Encode generates embedded .ac3 timecodes incorrectly. :( Sonic Foundry's 5.1 plug-in pack for ACID and Vegas Video generates them correctly, but only in non-drop-frame format.

ihgl
13th December 2003, 18:30
Thanks a lot. That is why I did not find the option in CCE 2.50. I will try 2.67 instead. Also thank you for the information about Soft Encode. Have made lots of DD5/DVD:s using this program and never encountered any problems. But I will have this in mind. ;-)

LB
20th January 2004, 06:29
Originally posted by SomeJoe
Here's the deal:

4. Using no timecodes in PulldownGUI will remove all timecodes from the .m2v file. Maestro will then not try to sync the subs by timecode, but instead will just use frame rate to compute where the subs should go. This will work but isn't the preferred method because it is not frame-accurate.


Hmm, but isn't this the best way to go? Do this method, then use a subtitle converter to change the subtitles from 23.976 to 30fps (NOT 29.76fps)... Sounds correct and best to me, right?

By the way, regarding CCE's DropFrame option. Does anyone else find it doesn't work? I mean, I check it but when I import it into maestro it doesn't say drop frame. The only way I can get this to appear is by doing the drop frame in the pulldown file, seperate from CCE. (maybe it doesn't work because the mpv needs to be at 29.97 to insert drop frame timecodes, and if I'm processing a 23.976fps file, then it won't work in CCE, hmm?)