Re: Streaming of WebVTT

Le 7/26/2012 3:26 AM, Silvia Pfeiffer a écrit :
> On Thu, Jul 26, 2012 at 12:52 AM, Cyril Concolato
> <cyril.concolato@telecom-paristech.fr> wrote:
>> Le 7/25/2012 4:40 PM, Glenn Maynard a écrit :
>>
>> On Wed, Jul 25, 2012 at 9:18 AM, Cyril Concolato
>> <cyril.concolato@telecom-paristech.fr> wrote:
>>> I'm trying to integrate WebVTT content in streaming context (MP4, RTP,
>>> DASH, MPEG-2 ...) in general. Aside from the problem of random access points
>>> that I mentionned in my previous email [1], there is a problem with the fact
>>> that the "WEBVTT" string has to be at the beginning of the file. Consider
>>> the following case, I have a live event and I want client to connect to an
>>> HTTP-delivered WebVTT resource, I'd like to update that resource from time
>>> to time (removing old cues, adjusting times and adding new cues) and enable
>>> both clients already connected to get the update and for new clients to get
>>> the new content. That same file has to have the "WEBVTT" string for new
>>> clients, but cannot be used as is for the already connected client (I'll
>>> have to strip off the "WEBVTT" string). What is the use of that string? Is
>>> it really needed given that many resources on the web don't use magic
>>> numbers (HTML, XML, SRT, SVG, ...)?
>>
>> You'll need the ability to deal with "header" data anyway.  There have been
>> proposals for adding headers for metadata, default cue settings, inline CSS,
>> and so on.  It may be a while if any of them are implemented, but please try
>> to avoid designing a system that expects WebVTT to be a headerless format.
>>
>> Thanks for your comment. I wasn't aware of these proposals. Would you have a
>> link to them?
>> Of course, if the header is meaningful, I agree it makes sense to keep it.
>> In all the technologies I mentioned, there is a way to carry headers (stsd,
>> sdp, initialization segment, descriptors ...). I was just wondering if there
>> was a real need to have it for WebVTT. If I'm correct, according to the
>> current syntax in WebVTT, the header can only be one line of text. Is that
>> correct?
> No, not quite. Everything until the first empty line is regarded as
> the header.
I don't understand. The syntax (http://dev.w3.org/html5/webvtt/#syntax) 
says that the "WEBVTT" string can optionally be followed by "either a 
U+0020 SPACE character or a U+0009 CHARACTER TABULATION (tab) character 
followed by any number of characters that are not U+000A LINE FEED (LF) 
or U+000D CARRIAGE RETURN (CR) characters.". Since it says "that are not 
LF or CR" you can't have text on another line. The line starting with 
"WEBVTT" must be followed by an empty line. This seems to be also the 
interpretation of Anne's validator, which says "no blank line after the 
signature". But this does not change the fact that the header, indeed, 
may carry interesting things.

> There is likely setup information in there as for any
> other codec. You're best off defining a streaming approach similar to
> how you do it with a/v streaming formats.
Right. So what about the Random Access Point problem that I mentionned 
in a my previous email? Don't you think it should possible to rewrite 
any WebVTT file such that any (or some) cue doesn't need information 
from previous cues to be processed? Just like you can re-encode a video 
to have all (or some) frames to be an I frame?

Cyril

-- 
Cyril Concolato
Maître de Conférences/Associate Professor
Groupe Multimedia/Multimedia Group
Telecom ParisTech
46 rue Barrault
75 013 Paris, France
http://concolato.wp.mines-telecom.fr/

Received on Thursday, 26 July 2012 09:34:32 UTC