This registry defines the byte stream formats for use with the [[[MEDIA-SOURCE]]] specification [[MEDIA-SOURCE]].

This registry is non-normative.

The working group maintains a list of all bug reports that the editors have not yet tried to address; there may also be related open bugs in the GitHub repository of the [[[MEDIA-SOURCE]]] specification.

Purpose

This registry is intended to enhance interoperability among implementations and users of {{SourceBuffer}} objects described in the [[[MEDIA-SOURCE]]] specification. In particular, this registry provides the means (1) to identify and avoid MIME-type collisions among byte stream formats, and (2) to disclose information about byte stream formats accepted by MSE implementations to promote interoperability.

Organization

The registry maintains a mapping between MIME-type/subtype pairs and byte stream format specifications. The byte stream format specifications describe the structure and semantics of byte streams accepted by {{SourceBuffer}} objects created with the associated MIME-type/subtype pair.

This registry is not intended to include any information on whether a byte stream format is encumbered by intellectual property claims. Implementors and users are advised to seek appropriate legal counsel in this matter if they intend to implement or use a specific byte stream format.

Registration Entry Requirements

  1. Each entry must include a unique MIME-type/subtype pair. If the byte stream format is derived-from an existing file format, then it should use the MIME-type/subtype pairs typically used for the file format.
  2. Each entry must include a {{SourceBuffer/[[generate timestamps flag]]}} value that must be used by {{SourceBuffer}} when handling the byte stream format.
  3. Each entry must include a link that references a publically available specification. It is recommended that such a specification be made available without cost (other than reasonable shipping and handling if not available by online means).
  4. The referenced specification for each entry must comply with all requirements outlined in the Byte Stream Formats section of the [[[MEDIA-SOURCE]]] specification [[MEDIA-SOURCE]].
  5. Candidate entries must be announced by filing an issue in the Media Source Extensions Byte Stream Format Registry GitHub issue tracker so they can be discussed and evaluated for compliance before being added to the registry. The Media Working Group may seek expertise from outside the Working Group as part of its evaluation, e.g., from the codec specification editors or relevant standards group. If the Media Working Group reaches consensus to accept the candidate, a pull request should be drafted (either by editors or by the party requesting the candidate registration) to register the candidate. The registry editors will review and merge the pull request.
  6. If a registration fails to satisfy a mandatory requirement specified above, then it may be removed from the registry (without prejudice). Existing entries cannot be deleted or deprecated otherwise.
  7. Existing entries may be changed after being published through the same process as candidate entries. Possible changes include modification of the link to the publically available specification.

Registry

MIME type/subtype Public Specification(s) Generate Timestamps Flag
audio/webm
video/webm
[[[MSE-BYTE-STREAM-FORMAT-WEBM]]] [[MSE-BYTE-STREAM-FORMAT-WEBM]] false
audio/mp4
video/mp4
[[[MSE-BYTE-STREAM-FORMAT-ISOBMFF]]] [[MSE-BYTE-STREAM-FORMAT-ISOBMFF]] false
audio/mp2t
video/mp2t
[[[MSE-BYTE-STREAM-FORMAT-MP2T]]] [[MSE-BYTE-STREAM-FORMAT-MP2T]] false
audio/mpeg
audio/aac
[[[MSE-BYTE-STREAM-FORMAT-MPEG-AUDIO]]] [[MSE-BYTE-STREAM-FORMAT-MPEG-AUDIO]] true