Re: Metadata in the VTT file header (bug 15851), use cases (and a need to close this)

On Thu, 13 Sep 2012 05:46:51 +0200, Dave Singer <singer@apple.com> wrote:

>> I've just tested what Simon suggested earlier in Google Chrome, Opera
>> Next and Safari and they can all deal with it:
>>
>> WEBVTT
>> language: fr
>> kind: subtitles
>>
>> STYLE
>> #foo { color:green }
>> i { font-family:serif }
>>
>> #bar { color:red }

Hmmm. Well, you know, we *could* say that "unknown" blocks just get  
appended as value to the previous block. It would not be particularly  
forwards compatible with introducing new headers, though, unless we say  
that it has to have a particular syntax like end with a colon:

WEBVTT
language: fr
kind: subtitles

style:
#foo { color:green }
i { font-family:serif }

#bar { color:red }

this garbage still gets added to the style.

unknown:
this is a new header.


If we're smart, we could even drop the empty line before "style:" and have  
it be equivalent.

Basically, we can make empty lines be "supported" in the header part of  
the file, and say that the header part is finished when the first cues  
gets seen (first line with --> in it, or if you really want to be able to  
use --> in headers, the parser could look for something that looks like a  
timestamp and --> and another timestamp or so). We'd need to make sure the  
id line doesn't get lost, but it seems doable.

>> foo
>> 00:00:00.000 --> 00:00:05.000
>> testing <i>testing</i>
>>
>> It's pretty and browsers can deal with it.
>
>
> It has a HUGE problem that I layer out in my previous email.  People  
> will write
>
> header
> cue
> cue
> style
> cue
> cue
>
> because they can.

It seems equally likely people will do that even if you go with the  
"header syntax". The best way to make it a non-issue is to make it do  
nothing in implementations.

-- 
Simon Pieters
Opera Software

Received on Thursday, 13 September 2012 06:46:21 UTC