Log in

View Full Version : Subtitle won't go away - help!


colinhunt
6th June 2014, 13:20
Hello all,

I've spent a couple of hours tracing and debugging a dvd title authored with Apple's DVD Studio Pro, but I just can't figure out why the movie starts with subtitles when it shouldn't.

Title has 2 audio tracks and 3 subtitle tracks. No forced subs. Movie should play without subs by default - but no matter what I do, last sub track (english) is displayed.

When I open the title in PgcEdit, I get this:

Verify number of streams (in whole DVD)
There is one subpic stream defined for the Menu domain in the VMGM_MAT table of VMGM.
However, all PGCs of the domain are dummies.
The subpic definition should therefore be removed.
Fix the number of subpic streams in VMGM_MAT to 0?

It seems to make no difference to the problem if I select Yes or No.

By tracing with PgcEdit I found one, and only one, CMD instance of (SetSTN) which alters sprm(2): "Set Audio stream = 0 ; Sub-picture stream = 3, off", 51 00 00 80 83 00 00 00.
This CMD is run as one of the first things when disc is loaded.

Note that sub stream 3 is empty; the ones with actual subs on them are 0, 1 and 2. I've already tried setting the CMD to "Sub-picture stream = 0, off" but that did not help.

I've discovered that the displayed subtitle's language matches the language set in player as the default menu language. So even though the CMD above switches subs off, there's 1) something in the code which checks the player's default menu language and switches subs to match it, or 2) something missing from the code that would stop the player from selecting matching subs and displaying it.

Or it could be something else entirely, I really have no idea what.

Any help would be massively, massively appreciated. Thanks for taking the time to read this msg.

http://thumbnails111.imagebam.com/33136/e02ef0331353101.jpg (http://www.imagebam.com/image/e02ef0331353101)

r0lZ
6th June 2014, 14:31
I have already encountered once a similar authoring. If the subtitle stream is set to 3 by the SetSTN command AND that stream is empty, that means probably that it's the way to turn all forced subtitles off. It's necessary if all subtitle streams except #3 have some forced subtitles.

You wrote that there are no forced subtitles, but have you verified with DVDSubEdit? PgcEdit can't analyse if a stream has forced subs or not. (The "forced" label in Domain Streams Attributes is only an indication that the whole stream contains forced subs only, but it is not a flag telling the player to display the subtitles anyway. The real forced flag is in the subtitle stream itself, and can be on or off for any individual subtitle.)

So, IMO, you should leave the command that sets subtitle #3 off, and verify if it's still subtitle stream #3 that is "current" (on or off) when the title is playing. It's easy in trace mode: just have a look at the stream number displayed in the virtual player panel (aka the Trace Panel).

In trace mode, be sure to open the SPRM Watch window (Trace panel -> Watch menu -> SPRM), and verify also the value of SPRM 2 when the title is playing.

BTW, you can click the "2" in the Watch SPRM window to set a breakpoint when the value of SPRM 2 changes. (The 2 should turn red.) It's handy to examine when the subtitle stream is changed by a SetSTN command.

Also, select the main movie PGC and go to Info -> Streams, and copy and paste the information here.

colinhunt
6th June 2014, 15:48
You wrote that there are no forced subtitles, but have you verified with DVDSubEdit?
No, I haven't. The authoring company told me they had not set any forced subs. Of course I only have their word for it :)

Also, select the main movie PGC and go to Info -> Streams, and copy and paste the information here.
DVD: "X:\xxxxxxxxxx\xxx\VIDEO_TS/"
DVD-TEXT General Name: ""
Provider ID: "XXXXXXXXX"
Number of VTS: 4

VMG Menu streams attributes (VIDEO_TS.IFO): 0 Audio, 1 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Subpic: --, unspecified


VTS 1 Menu streams attributes (VTS_01_0.IFO): 1 Audio, 1 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Audio 0: --, unspecified, AC3 (2 channels), Unspecified application mode
- Subpic: --, unspecified

VTS 1 VOB streams attributes (VTS_01_0.IFO): 2 Audio, 3 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Audio 0: fi, unspecified, AC3 (6 channels), Unspecified application mode
- Audio 1: fi, unspecified, AC3 (2 channels), Unspecified application mode
- Subpic 0: fi, unspecified
- Subpic 1: sv, unspecified
- Subpic 2: en, unspecified


VTS 2 Menu streams attributes (VTS_02_0.IFO): 0 Audio, 1 Sub-picture streams.
- Video: 4:3 PAL (720x576,Camera), MPEG-2 (VBR)
- Subpic: --, unspecified

VTS 2 VOB streams attributes (VTS_02_0.IFO): 1 Audio, 0 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Audio 0: --, unspecified, AC3 (2 channels), Unspecified application mode


VTS 3 Menu streams attributes (VTS_03_0.IFO): 0 Audio, 1 Sub-picture streams.
- Video: 4:3 PAL (720x576,Camera), MPEG-2 (VBR)
- Subpic: --, unspecified

VTS 3 VOB streams attributes (VTS_03_0.IFO): 1 Audio, 0 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Audio 0: --, unspecified, AC3 (2 channels), Unspecified application mode


VTS 4 Menu streams attributes (VTS_04_0.IFO): 0 Audio, 1 Sub-picture streams.
- Video: 4:3 PAL (720x576,Camera), MPEG-2 (VBR)
- Subpic: --, unspecified

VTS 4 VOB streams attributes (VTS_04_0.IFO): 1 Audio, 0 Sub-picture streams.
- Video: 16:9 PAL (720x576,Camera), MPEG-2 (VBR), Automatic Letterbox (letterbox: not cropped)
- Audio 0: --, unspecified, AC3 (2 channels), Unspecified application mode

colinhunt
6th June 2014, 17:12
So, IMO, you should leave the command that sets subtitle #3 off, and verify if it's still subtitle stream #3 that is "current" (on or off) when the title is playing. It's easy in trace mode: just have a look at the stream number displayed in the virtual player panel (aka the Trace Panel).
I left the cmd as-is and traced the disc all the way to the movie playing. According to Watch, SPRM 2 still has the value of 3 when movie begins playing. And yet players display sub stream 2 if their menu language is set to English. If I set player menu language to either of the two sub stream languages (Swedish or Finnish), that sub stream is displayed.

I tested the disc on 10 players. PS3 and a cheap LG Blu-ray player were the only ones that played the movie without subs. One player displayed sub stream 0 instead of 2.

r0lZ
6th June 2014, 17:22
OK, I suppose the main movie is in VTS 1. There are only 3 subtitle streams in VTS 1, and therefore subtitle #3 doesn't exist. That may be the problem. Try to create a new (empty) subtitle stream like this:
Double-click the main movie PGC to open the PGC Editor. In the upper right corner, you should see the 3 subtitles with black numbers, and subtitle #3 with a greyed out "none". Click that "none" button, and set the sliders with a black label to 31. (Leave the sliders with a grayed out label to 0.) OK the two dialogs. Right-click on the main movie PGC and select Domain Stream Attributes. You should see this dialog:

*** Dialogue title: "Verify number of tracks (in current domain)"
*** Dialogue type: warning
*** Dialogue message:
There are 3 subpic tracks defined for the VTST domain
in the VTSI_MAT table of the VTST 1.
4 subpic tracks are really used by the PGCs.

Fix the number of subpic tracks in VTSI_MAT to 4?
*** Dialogue buttons: [Yes] [No]

Answer Yes.
In the Domain Stream Attributes dialog, you should now see a new subtitle track with an empty language code and "unspecified". OK the dialog as it is.
Now, as long as the SetSTN Subtitle #3, off command is still executed before the playback of the main movie (and of course no other SetSTN command), there should be no subtitle displayed during the playback of the movie. Verify with the trace or a good player.

colinhunt
6th June 2014, 17:49
Now, as long as the SetSTN Subtitle #3, off command is still executed before the playback of the main movie (and of course no other SetSTN command), there should be no subtitle displayed during the playback of the movie. Verify with the trace or a good player.
Thank you for the detailed and very easy to follow instructions. I followed them to the letter... but the movie still plays with English subs, i.e. sub stream 2.

This is quite a mystery!

r0lZ
6th June 2014, 19:20
I'm puzzled too.
If you wish, send me the PgcEdit backup (use File -> Backups -> Create Zip Backup) and send me the ZIP. You'll find my email address at the bottom of the PgcEdit home page. I will have a look, but I can't promise a solution.

Ghitulescu
7th June 2014, 06:46
Check the settings of your player - if it's a new generation it may start automatically with the subtitle set in its menu as default.

You should provide an inactivation command before the movie start.

r0lZ
7th June 2014, 06:52
What do you mean by "inactivation command"? Is it a SetSTN that turns the subtitles off? In that case, that command exists, and it's why there is something strange with that DVD, or the players used by colinhunt to test his DVD are not compliant with the DVD-Video specs.
By tracing with PgcEdit I found one, and only one, CMD instance of (SetSTN) which alters sprm(2): "Set Audio stream = 0 ; Sub-picture stream = 3, off", 51 00 00 80 83 00 00 00.
This CMD is run as one of the first things when disc is loaded.

r0lZ
7th June 2014, 06:58
I have received and analysed the IFOs of the DVD by email, and here is my reply to colinhunt, if you are interested:

OK, I have had a quick look, but I can't find something abnormal. You did the modification I have recommended perfectly, and when the title is played, it's stream #3 that is selected (but off). So, a player that closely follows the DVD-Video specs MUST show no subtitles at all.

Since you can see English subtitles anyway, there can be two reasons for that strange behaviour.

The subtitles can be hardcoded (aka "burned") on the movie. When it's the case, there is no way to turn them off, because they are part of the video stream. But I don't think it's the case here, since usually, with hardcoded subtitles, there is no reason to add additional subtitle streams, because it doesn't make much sense to display them over the hardcoded ones. Anyway, it's easy to verify. Use the PgcEdit preview to play a section of the movie with subtitles. The preview is unable to show the subtitles, so if you can see them that means that they are hardcoded.

The other reason that may explain the problem is that in the original DVD, the subtitle #3 was not defined. If, for any reason, the player "thinks" that it must ignore the SetSTN command if the subtitle doesn't exist, it can revert back to the normal behaviour when no subtitles have been selected with a SetSTN command. And in that case, it should use the default language defined in its settings. You told me that you have configured English, so that explanation is coherent with what you have seen. It's to prevent that (bad) behaviour that I have suggested to create the dummy subpic #3. Apparently, it's not sufficient, perhaps because the physical subtitle stream #31 does not exist in the VOB file, and the player continues to use the default behaviour. Anyway, I would try several things. Change the default subpic language in the player's settings and see if it displays another stream. If it's the case, that will confirm that your player(s) do not conform to the DVD-Video specs. You can also change the SetSTN command to set subpic #0, #1 or #2 off, and see if that helps. (You told me that you have tried, iirc, with #0, but try also the two other ones.) Normally, when a subpic is "current" (selected) but off, the player must display only the forced subtitles from that stream. If one of the existing streams has no forced subs but exists in the VOBs, it should be sufficient to select it to display nothing.

Also, it would greatly help if you could try to load the Title VOBs of VTS 1 in DVDSubEdit. In the "subtitle selection" dropdown selector, you should see tracks #0, #1 and #2. If one of them is missing, that can also explain some problems. Also, in DVDSubEdit, select stream #0 (English), and tick the "Only show forced subpics" option. If you can still see subtitles, that means that there are forced subtitles in stream #0. Try also to display the forced subs of streams #1 and #2. If there is a stream without forced subtitles, use it in the SetSTN command.

If that doesn't work, I don't think I'll have another way to fix the problem, except to recommend to use a better player. BTW, what players did you use to do your tests? Have you used MPC-HC, VLC, The KMPlayer, Zoom player, PowerDVD, WinDVD, or anything else? Also, have you tried to burn the DVD to play it on a standalone player?

colinhunt
7th June 2014, 17:41
Thank you for taking the time to analyze the IFOs, and thank you for the reply, r0lZ!

The subtitles can be hardcoded (aka "burned") on the movie.
These ones aren't, for sure, as they can be switched off by pressing the remote's Subtitle button.

Change the default subpic language in the player's settings and see if it displays another stream.
Yes, it does. If I set the player's menu language to Finnish, disc plays with Finnish subs. Ditto for Swedish. But the movie should play without subs by default.

what players did you use to do your tests?
MPC-HC, MPC-BE, PotPlayer, PowerDVD 13, PDVD12, PDVD9, ArcSoft TMT3, two old-ish DVD standalones, three Blu-ray standalones and PlayStation 3. PS3 was the only one that played the movie without subs. The rest displayed English subs, except the oldest DVD standalone: it displayed Finnish subs for some reason. Oh yeah, I think a couple of software players chose English subs but did not enable them.

Also, it would greatly help if you could try to load the Title VOBs of VTS 1 in DVDSubEdit. In the "subtitle selection" dropdown selector, you should see tracks #0, #1 and #2. If one of them is missing, that can also explain some problems. Also, in DVDSubEdit, select stream #0 (English), and tick the "Only show forced subpics" option.
All three subpic tracks are listed in the dropdown selector. No subs are displayed when "Only show forced subpics" is ticked.

I got a new version from authoring. This one works, in that no subs are displayed when the movie starts. The solution was a crude workaround: they removed the two-letter language codes from all three subtitle tracks. So PowerDVD, for example, no longer lists English, Finnish and Swedish languages in its menu; they are now "Invariant Language" or something like that.

r0lZ
7th June 2014, 18:16
That's really crazy! It's the first time something like that happens, and I have seen hundreds of DVDs. Your DVD seems completely standard, except perhaps the SetSTN command that sets subpic #3 that doesn't exist. Anyway, even if that command is changed to set subpic #0, #1 or #2, or if stream #3 is created, as long as the selected stream is OFF and there are no forced subpics, the players must not show any subtitle. It's a severe bug to show them regardless of the SetSTN command, and I can't understand why so many players do that error. It's really unbelievable.

Sorry, but I think I can't help more.

colinhunt
7th June 2014, 19:14
That's really crazy! It's the first time something like that happens, and I have seen hundreds of DVDs. Your DVD seems completely standard, except perhaps the SetSTN command that sets subpic #3 that doesn't exist. Anyway, even if that command is changed to set subpic #0, #1 or #2, or if stream #3 is created, as long as the selected stream is OFF and there are no forced subpics, the players must not show any subtitle. It's a severe bug to show them regardless of the SetSTN command, and I can't understand why so many players do that error. It's really unbelievable.
I've worked on thousands of DVD titles, and this is the first time I've seen this issue. It must be something in Apple DVD Studio Pro, because issues like this just don't pop up in ones authored in Scenarist, for example.

Sorry, but I think I can't help more.
No worries, I understand perfectly. Thank you for the time and effort you spent, regardless!

SeeMoreDigital
7th June 2014, 20:00
This reminds me of the time I got stumped by some 'closed captions' that were embedded within an MPEG-2 video stream ;)