This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 26066 - Enhance language around edit list in BMFF bytestream spec
Summary: Enhance language around edit list in BMFF bytestream spec
Status: RESOLVED FIXED
Alias: None
Product: HTML WG
Classification: Unclassified
Component: Media Source Extensions (show other bugs)
Version: unspecified
Hardware: PC All
: P2 normal
Target Milestone: CR
Assignee: Aaron Colwell
QA Contact: HTML WG Bugzilla archive list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-06-12 06:46 UTC by Steven Robertson
Modified: 2014-06-20 17:17 UTC (History)
6 users (show)

See Also:


Attachments

Description Steven Robertson 2014-06-12 06:46:20 UTC
In private correspondence, it was suggested that the language around edit lists in the BMFF spec for MSE is underspecified.

The full extent of edit lists are a pain to get right and difficult to test. I suggest that we narrow the language to support for the one case that's actually required for proper operation of most existing MSE-compatible media corpora.

From ISO 14496-12:2012:

"""
A non-empty edit may insert a portion of the media timeline that is not present in the initial movie, and is present only in subsequent movie fragments. Particularly in an empty initial movie of a fragmented movie file (when there are no media samples yet present), the segment_duration of this edit may be zero, whereupon the edit provides the offset from media composition time to movie presentation time, for the movie and subsequent movie fragments. It is recommended that such an edit be used to establish a presentation time of 0 for the first presented sample, when composition offsets are used. 
"""

From the current MSE BMFF spec:

"""
The user agent must handle Edit Boxes (edts), in initialization segment, which provide a mapping of composition times for each track to the global presentation time.
"""

Proposed revised text:

"""
The user agent must support setting the offset from media composition time to movie presentation time by handling an Edit Box (edts) with an Edit List (elst) element that contains an non-empty edit list with a duration of 0 (indicating that it spans all subsequent media).
"""

This does not preclude a UA from implementing more complete support, but clarifying the (pretty simple) minimum requirement makes it more likely for that minimum baseline to be implemented IMO.
Comment 1 Mark Watson 2014-06-12 15:11:11 UTC
I agree with the proposal to restrict the requirement to the simple cases. It is also possible, though, that the segment_duration of the single edit is non-zero, if the total movie duration, including fragment, was known when the edit list was created.

So, I would suggest:

"""
The user agent must support setting the offset from media composition time to movie presentation time by handling an Edit Box (edts) containing a single Edit List Box (elst) that contains a single edit with media rate one. This edit may have a duration of 0 (indicating that it spans all subsequent media) or may have a non-zero duration (indicating the total duration of the movie including fragments).
"""
Comment 2 Aaron Colwell 2014-06-20 17:17:29 UTC
Change committed.
https://dvcs.w3.org/hg/html-media/rev/0505b9684488