[FFmpeg-devel] [PATCH] SubRip decoder

Aurelien Jacobs aurel
Fri Dec 10 14:33:04 CET 2010


On Thu, Dec 09, 2010 at 05:46:32PM -0500, Alexander Strange wrote:
> 
> On Dec 8, 2010, at 5:41 PM, Aurelien Jacobs wrote:
> 
> > On Wed, Dec 08, 2010 at 02:03:48AM -0500, Alexander Strange wrote:
> >> 
> >> On Dec 4, 2010, at 9:58 AM, Aurelien Jacobs wrote:
> >> 
> >>> On Sun, Nov 28, 2010 at 05:53:04PM -0500, Alexander Strange wrote:
> >>>> 
> >>>> On Nov 28, 2010, at 5:31 PM, Aurelien Jacobs wrote:
> >>>> 
> >>>>> Hi,
> >>>>> 
> >>>>> $subject
> >>>>> 
> >>>>> This SubRip decoder supports all the SubRip features that I know about.
> >>>>> It especially support everything tested by the sample files from
> >>>>> http://ale5000.altervista.org/subtitles.htm
> >>>> 
> >>>> [...]
> >>>> 
> >>>>> +    snprintf(header, sizeof(header),
> >>>>> +             "[Script Info]\r\n"
> >>>>> +             "ScriptType: v4.00+\r\n"
> >>>>> +             "\r\n"
> >>>>> +             "[V4+ Styles]\r\n"
> >>>> 
> >>>> Watch out for the weird default PlayRes* values.
> >>> 
> >>> The default is 384x288.
> >>> Do you think I should choose another default value ?
> >> 
> >> If you're happy with the current font size, I guess it's OK.
> >> 
> >> But actually there's another problem - this sets a hardcoded style
> >> named Default,
> > 
> > Yes.
> > 
> >> so players will render with that style.
> > 
> > No. At least that's not what the ASS spec says:
> > 
> > 5. Dialogue event lines, [Events] section
> > [...]
> > Field 4: Style
> >         Style name. If it is "Default", then your own *Default style
> >         will be subtituted.
> >         However, the Default style used by the script author IS stored
> >         in the script even though SSA ignores it - so if you want to
> >         use it, the information is there - you could even change the
> >         Name in the Style definition line, so that it will appear in
> >         the list of "script" styles.
> > 
> > So we store the Default style of the "authoring software" in the script,
> > as a reference (or for non-compilant software) but the player should
> > ignore it and use its own default style.
> 
> Well, usually ass-spec.doc isn't too far wrong, but VSFilter doesn't do this at all.
> It sets a style named "Default" before loading the file, and then sets the styles in the file over that. It ignores * as the first character of all style name definitions(!) but doesn't otherwise have a style named *Default.
> 
> >> I think it's expected that srt should be rendered with the "default"
> >> style of the player.
> > 
> > Yes,and that's exactly how the generated ASS should be rendered too.
> > 
> >> How about not emitting a Style: line at all, and setting the style
> >> of each subtitle to "*Default" (IIRC what the built-in default ASS
> >> style is called)?
> > 
> > I'm pretty certain this would break some renderer.
> 
> Looks like the style per-subtitle should be Default with no Style:
> line. That definitely works with VSFilter, and therefore every other
> renderer (which is just Perian and libass).

OK. Then I guess I can drop the entire [V4+ Styles] section, right ?

Aurel



More information about the ffmpeg-devel mailing list