[ogg-dev] Header packet multiplicity

xiphmont at xiph.org xiphmont at xiph.org
Wed Feb 13 17:25:25 PST 2008

> * Ogg requires some way to identify the codec from the first packet.

I have also mused on requiring that all 'shim' information be in the
first packet, but haven't gone that far officially.  Vorbis and Theora
headers were both designed with that eventual declaration in mind.
Ralph touched on that detail without being explicit.

There are requirements that Ralph didn't list:

* Ogg requires all first-headers appear in dedicated pages grouped
together before any other pages.

* Ogg requires all secondary headers appear before any data packets in
the physical stream link.

In short, all headers must preceed data or other.  Note that not all
packets must be 'data'; you can have multiple types of packet
data/metadata in a stream.  Headers are special in that they're read
first, necessary for parsing the data packets, and are [nearly] always
buffered by the implementation.


More information about the ogg-dev mailing list