[Matroska-devel] Storage of WebVTT subtitles in Matroska
Denis Charmet via Matroska-devel
matroska-devel at lists.matroska.org
Mon Mar 14 15:54:42 CET 2016
Hi,
On 2016-03-14 11:24, Moritz Bunkus via Matroska-devel wrote:
> 3. NOTE blocks between entries
>
> A comment block ("NOTE …") can appear between subtitle entries (see
> above between example entries 1 and 2). We have to decide whether or
> not we want to keep them when muxing into Matroska. If we do we need
> to store them somehow.
>
> I defer a proposal until I've mentioned the remaining points.
I'd, personnaly, remove them.
> 4. tags/numbers preceding an entry
>
> Each entry always has a timestamp line, but that line may be preceded
> by a line containing an entry number (example entry 3) or a free-form
> tag of some kind (example entry 1). Those tags/numbers are irrelevant
> for playback, but they may convey information to a person editing the
> entries.
>
> We have to decide whether or not we want to keep them when muxing into
> Matroska. If we do we need to store them somehow.
>
> I defer a proposal until I've mentioned the remaining points.
>
That's basically useless... I'd remove it too, the less useless stuff
the decoder/muxer has to handle, the better.
>
> 5. cue settings
>
> These are the things listed after the timestamps (example entries 5
> and 6). They are very relevant to playback and must be included,
> either out of band or in band.
>
> I defer a proposal until I've mentioned the remaining points.
>
Why not using block additions to store cues? We can consider that style
is less important than data actual data and let a player treat it if it
can. This could even allow limited player to reuse their srt decoder to
support basic styleless webvtt.
> 6. cue timestamps in entries
>
> Cue timestamps occur within an entry (example entry 7) and tell the
> player to process parts of the entry only at a certain point in
> time. Cue timestamps are absolute, unfortunately, and not relative to
> the start of the entry itself. The example entry 7 contains two parts,
> one that is shown at 3:10, and the second part that's shown five
> seconds later.
>
> Storing such absolute timestamps in-band makes manipulation at the
> container level (e.g. applying some kind of delays or splitting and
> joining files) very difficult.
>
> I therefore propose that a muxer MUST change cue timestamps to be
> relative to the start of the entry during muxing and that a demuxer
> MUST change the cue timestamps back to be absolute during demuxing.
> As several other modifications of each entry's content will be
> necessary (see below) this should be OK.
>
Wouldn't it be easier to just create another block starting with the
new timestamp and ending with containing block end?
Regards,
--
Denis Charmet - TypX
Le mauvais esprit est un art de vivre
More information about the Matroska-devel
mailing list