--- media-source.html.orig 2013-06-14 15:45:16.131216650 -0700 +++ media-source.html 2013-06-14 16:51:37.954372950 -0700 @@ -549,7 +549,7 @@ -

Table of Contents

+

Table of Contents

@@ -569,7 +569,7 @@
  • Define a splicing and buffering model that facilitates use cases like adaptive streaming, ad-insertion, time-shifting, and video editing.
  • Minimize the need for media parsing in JavaScript.
  • Leverage the browser cache as much as possible.
  • -
  • Provide byte stream definitions for WebM, the ISO Base Media File Format, and MPEG-2 Transport Streams.
  • +
  • Provide byte stream definitions for WebM, the ISO Base Media File Format, MPEG-2 Transport Streams, and Ogg.
  • Not require support for any particular media format or codec.
  • @@ -2404,7 +2404,7 @@

    12. Byte Stream Formats

    -

    The bytes provided through appendBuffer() and appendStream() for a SourceBuffer form a logical byte stream. The format of this byte stream depends on the media container format in use and is defined in a byte stream format specification. Byte stream format specifications based on WebM , the ISO Base Media File Format, and MPEG-2 Transport Streams are provided below. These format specifications are intended to be the authoritative source for how data from these containers is formatted and passed to a SourceBuffer. If a MediaSource implementation claims to support any of these container formats, then it must implement the corresponding byte stream format specification described below.

    +

    The bytes provided through appendBuffer() and appendStream() for a SourceBuffer form a logical byte stream. The format of this byte stream depends on the media container format in use and is defined in a byte stream format specification. Byte stream format specifications based on WebM, the ISO Base Media File Format, MPEG-2 Transport Streams, and Ogg are provided below. These format specifications are intended to be the authoritative source for how data from these containers is formatted and passed to a SourceBuffer. If a MediaSource implementation claims to support any of these container formats, then it must implement the corresponding byte stream format specification described below.

    Note

    The byte stream format specifications below are not intended to define new storage formats. They simply outline the subset of existing storage format structures that implementations of this specification will accept.

    @@ -2609,6 +2609,48 @@
    +
    +

    12.4 Ogg Byte Streams

    +

    This section defines segment formats for implementations that choose to support + Ogg byte streams specified in RFC 3533.

    + +
    +

    12.4.1 General

    +

    The following rules must apply to all Ogg segments:

    +
      +
    1. Segments must contain complete Ogg pages.
    2. +
    3. Segments must contain at least one complete Ogg packet from + each non-discontinuous stream.
    4. +
    +
    + +
    +

    12.4.2 Initialization Segments

    +

    The following rules apply to all initialization segments.

    +
      +
    1. An initialization segment must contain all BOS pages as well + as pages containing any codec-specific secondary header pages.
    2. +
    3. Serial numbers may not be reused in subsequent + initialization segments.
    4. +
    5. If a skeleton stream contains an index the index must be + accepted and ignored.
    6. +
    +
    + +
    +

    12.4.3 Media Segments

    +

    If a codec which uses sparse random access points is in use + the first complete packet for that stream in each media segment + should begin with a random access point for that stream.

    +
    + +
    +

    12.4.4 Random Access Points

    +

    Random access points are Ogg packets which meet codec-specific + criteria for random-access.

    +
    +
    +