23.976 FPS file and .sub (microdvd) subtitles = no GO

Microsoft Windows specific usage questions
Forum rules
Please post only Windows specific questions in this forum category. If you don't know where to post, please read the different forums' rules. Thanks.
Guest

23.976 FPS file and .sub (microdvd) subtitles = no GO

Postby Guest » 13 May 2006 14:00

It doesn't work
first report in
viewtopic.php?t=18944&postdays=0&postorder=asc&start=15&
here by Boba.
On 25 FPS material .sub files work okay.
Workaround is to convert .sub(microdvd) -> .srt(subrip) and use .srt file.
I tested with 0.8.2 and 0.8.5 both autoload and manual loading of subtitles.
Also skipping backwards and forwards gives "subtitle without a date" warnings.

Guest

Postby Guest » 13 May 2006 14:02

Subtitles do show up, but timing is wrong like Boba said.

dextrovert

Postby dextrovert » 19 May 2006 05:47

I've noticed this too. Can it be fixed?

Míra

Postby Míra » 23 May 2006 10:33

I have same problem :cry:

dextrovert

Postby dextrovert » 14 Jun 2006 19:02

Could one of the developers please add this one to the bug list

DJ
Cone Master
Cone Master
Posts: 8206
Joined: 01 Jan 2006 04:30
Location: Koloa, Hawaii USA

Postby DJ » 14 Jun 2006 20:24

Has anyone considered, the sub FPS may be wrong? This problem generally happens when the sub is not made for the video you are trying to use it with. VLC provides a sub slip feature, ctrl h subtitle delay up and ctrl j subtitle delay down if this bothers you then you should edit, convert the subtitle or find one that was specifically made for the video.

If you are also having problems with lines of the sub not showing up in 0.8.5 then use "Subtitles text encoding" in the advanced settings when you call the sub or permanently set it in preferences.

This may also be helpful

http://alis.isoc.org/codage/iso8859/jeuxiso.en.htm
ISO Standard for various characters sets

Boba
New Cone
New Cone
Posts: 6
Joined: 03 Apr 2006 14:37

Postby Boba » 14 Jun 2006 20:43

I experimented with every movie that I have (and believe me, I have them plenty :) ). VLC simply doesn't like non integer fps subtitles in MicroDVD format. Yes, I think subtitles are ok because every other player on Windows/Linux show them correctly. Another interesting thing is that even manualy forcing fps doesn't help, because it looks like that player simply rounds fps number. (I even used stopwatch to check that).

DJ
Cone Master
Cone Master
Posts: 8206
Joined: 01 Jan 2006 04:30
Location: Koloa, Hawaii USA

Postby DJ » 14 Jun 2006 21:21

You are correct, VLC only accepts valid FPS settings and not increments of valid frame rates. In 0.8.5 look at Settings and Media information for the frame rate of the video and enter this number for the frame rate of the sub.

If I remember correctly 23.976 would be entered as 23.97 in the preferences options, but you can try both. However 23.80 or 23.90 will not work.

The only other program I am aware of that supports nearly as many sub formats as VLC is Gabest's MPC and he also has notes regarding subs that were not made for videos, but provides no slip sync or correction method. In the latest version of MPC, he is beginning to drop support for his own vsfilter.dll this forces you to set vmr7 or 9 renderless to get the subs to display, but the video with subs is not as good on my machine and the number of supported formats has been reduced. He also provides a web site to download the proper sub, unfortunately the problem here is finding compatible choices and if you have renamed the video it will not work.

The VLC team has discussed a similar web site, but as to where this goes at the moment is anyones guess.

I'm aware of several other programs that support subs, but not the number of formats and I have had trouble with all of them in some regard.

Guest

Postby Guest » 14 Jun 2006 21:24

http://www.raiska.com/vlc/
you can load sample files from there.

subtest.avi 23.976 FPS avi file with numbers (Yes, it really is 34k)
subtest.sub is a .sub file which don't work okay as Boba said (subtítles are shown too early).
subtest2.srt is a .srt file which works okay

You can compare with Media Player Classic, or any other player.

DJ
Cone Master
Cone Master
Posts: 8206
Joined: 01 Jan 2006 04:30
Location: Koloa, Hawaii USA

Postby DJ » 14 Jun 2006 22:05

In your sub test files there in no frame rate specified and in the case of your .sub file there is no .idx file. But I have downloaded them and will try later in the day. I really don't expect it to work properly as most files without a specified frame rate are a problem over time for any player.

DJ
Cone Master
Cone Master
Posts: 8206
Joined: 01 Jan 2006 04:30
Location: Koloa, Hawaii USA

Postby DJ » 15 Jun 2006 04:25

OK! I tried your test.

The .srt file auto opened but was missing the first command, so the first line of the sub was missing. I believe this has been mentioned by others but is seldom that a video opens with a sub so is probably not a real problem. The timing looked good and seemed to play normally. But as I mentioned earlier it is missing the FPS specification and I would think it would try to default to the frame rate of the video, assuming of coarse the the sub timing matches the video (was made for the video).

MPC did NOT recognize the .srt file unless it was loaded manually and using vmr7 or 9 renderless. When I changed the name of the file it did autoload and also worked with VSFilter.dll. The first line of the sub was shown but was late. The rest seemed to appear on time.

The .sub file when first tested seemed to have two subtitle tracks the first one showed subs early. The second showed them on time. After looking at the file and seeing there was no second track I moved the other (.srt) sub file out of the directory and rebooted the machine. When I re-ran the test, VLC autoloaded the sub file and showed one subtitle track and again did not show the first line of the sub. The subs overall were early. Placing the subtitles delay about +350 using ctrl h and j seemed to correct the problem. Setting Preferences, Input/ Codecs, Demuxers, Subtitles "Subtitles delay" to "3" also seemed to resolve the problem. Setting the FPS to 23.97625 in Preferences, Input/ Codecs, Demuxers, Subtitles also seemed to resolve the issue. Setting the FPS to 23 or any other number in Open file Subtitles, advanced seemed to make the subs slightly late. Considering this type of file uses an .idx file for control suggests that all of the problems stem from this and the lack of a internal FPS specification. Over time I would expect that it will slip in time,because everything other than the real frame rate is an approximation. Setting the Preferences to 23.97625 did yield the best sync for playing normally.

Both MPC and VSFilter recognized the Subtitle file and again the first sub was late, but the rest played normally in sync.

Perhaps the best solution here would be to throw away all of the subtitles specifications and use the video frame rate for the sub because at the end of this discussion, this is what it needs to be. But I'm not sure the developers of VLC will agree to this as they tend to try following the specifications and FPS is a part of the specification.

There is of coarse another possibility, that all of the support for Subtitle formats were not written by one person and there interpretation of the specifications for any given format is showing up as inconsistencies in VLC. I'm sure at this point you are going to ask if this is a bug?? I would probably have to say, NO! Still I do believe, for user convenience, it should be changed.

Perhaps one of the developers will comment here.

I might offer a compromise here. If the FPS is missing, use the frame rate of the video and show a pop up saying "The FPS specification is missing from the subtitles file do you wish to continue?" If you say yes VLC will use the frame rate of the video. If you say no the sub will not be displayed. When the FPS is different than the frame rate of the video a warning pop up should say "This Subtitle was not made for the video, do you wish to continue?" If yes "Please enter the exact frame rate!" If No the sub will not be displayed. If the FPS of the subtitle matches the frame rate of the video no pop up is necessary. This satisfies the specification and the problem. I'm sure some users will complain about the pop up and want a switch in preferences to shut it off. :P But this would do away with most if not all the other methods of manually entering FPS or frame rate within VLC. :lol:

Guest

Postby Guest » 15 Jun 2006 22:26

sub+idx combos are for vobsub subtitles (image based), not for .sub on files (text) based.
Also .srt or .sub files don't have frame rate. .sub files numbers are timing codes, so {30}{60} means that subtitle line is shown between frames 30-60, .srt are time based, so 00:00:01,000 --> 00:00:02,000 means that subtitles are shown between 1-2 seconds.

So .srt files work regarding the FPS (23.976 vs 25) as long as video length on hours:minutes:seconds is same.
.sub files needs the video to have correct FPS value.

And timing on those sample files should be exact, so when number shows on screen subtitle file should show same number too, and change them on exactly same time (or close to that on .srt).

DJ
Cone Master
Cone Master
Posts: 8206
Joined: 01 Jan 2006 04:30
Location: Koloa, Hawaii USA

Postby DJ » 15 Jun 2006 22:39

Yes! I found this too doing a little research last night.

It would be very nice if all things were cut and dried. With a little more research, I found a Subtitle editor called SubEdit http://subedit.prv.pl

When I opened and played the test file. It auto loaded through VSFilter.dll and played in sync. However when I closed VSFilter and loaded the sub into the editor it was early just like VLC. When I asked it to write the FPS to the file, it did not to want to write 23.976 as it said there was nothing to change. So I let it write 25FPS. While it wrote the header it also changed all the times. So I copied the header into the original .sub file and changed the FPS to 23.976 and the editor and VSFilter agreed. I also found that by importing the .srt file I could convert it to a .sub file. It wrote the header and the times maintained. However the 25 frame time conversion is what made VLC correct. Changing the 0 to a 1 for the first start number is what makes the first sub text appear in VLC. It appears that VLC is not reading the FPS header correctly in this format and time must be offset to compensate as changing the header FPS manually within the .sub file did not seem to change the way VLC read the .sub file. Manually changing the header on the 25 FPS file did not seem to change VSFilter or MPC (always increasingly late) but it did change in the editor. I suppose it is possible this editor is not writing a correct header or MPC and VSFilter always use the video frame rate for this format.

I also converted to a .ssa file. Some minor etiting was necessary for the change in format and everything played correctly everywhere. I wanted to also write a .txt file but I couldn't get within .5 seconds in this format, making it rather useless tor this test.

It appears there is an inconsistency in the .sub format using VLC. This inconsistency does not appear in the sub editor or in other players assuming the header is written and the times are correct for the text within the subtitles file. Conclusion, VLC is reading a 23.976 FPS .sub file as though it were 25 FPS with or without FPS in the header information.


Return to “VLC media player for Windows Troubleshooting”

Who is online

Users browsing this forum: No registered users and 32 guests