[theora-dev] Re: RFC3533

Silvia.Pfeiffer at csiro.au Silvia.Pfeiffer at csiro.au
Tue May 20 19:34:37 PDT 2003

Hi John,

I'm forwarding this email to the relevant developer lists at Xiph.Org, 
where the format was created and where the experts gather.

I'm certain there is a design reason for putting the bos pages of all 
logical bitstreams together at the start. My guess is that with digital 
media you usually have a delay time for setting up the decoders for a 
specific format and by clustering the required set-up information at the 
beginning of the bitstream you can get the se-up done without delaying 
decoding, potentially even in parallel for several different codecs.

As for your particular application - I cannot currently see a way around 
this restriction, but I have a feeling there is one. Hmm...



J C Fitzgerald wrote:
> Hi Silvia,
> I have a question about the positioning of multiplexed logical bitstreams
> in the Ogg physical bitstream.
> For some time I've been looking for a standard wrapper for ASN.1
> request/response protocols.  The ASN.1 encodings provide no mechanism
> for resynchronisation or seeking without decoding the ASN.1 data.
> Ogg seemed to be the answer to my needs... until about five minutes ago.
> The typical application has one physical (socket) connection between
> a client and a server over which ASN.1 encoded requests and responses
> (PDUs) flow.  Within this flow, there are sequences of PDUs which form
> logical groupings (sessions).  Sessions may start and stop at any time,
> and multiple sessions may be in progress at one time.
> This maps well to Ogg, with the entire socket traffic mapping to a
> physical bitstream, each session mapping to a logical bitstream and the
> individual PDUs mapping to granules.
> However, according to RFC 3533:
>    "In grouping, all bos pages of all logical bitstreams MUST appear
>    together at the beginning of the Ogg bitstream."
> This makes it unusable for long-lived physical bitstreams carrying
> multiple logical bitsreams which appear and disappear over its lifetime.
> It seams to me that "Grouping" and "Chaining" are, from the wrapper's
> point of view, just two manifestations of the same multiplexing
> mechanism with "Chaining" merely being the special case of "Grouping"
> where the logical bitstreams happen to appear sequentially.
> (There may well be sequencing requirements imposed by the client codecs,
> but this should be transparent to Ogg.)
> With this background, my question is this:  Is there really any technical
> reason why the two types of multiplexing should be distinguished Ogg
> standard (except to provide a common nomenclature for client codecs),
> and, more particularly, why should all logical bitstreams be restricted
> to either starting (having their bos pages appear) either all at the
> start of the physical bitstream or all strictly sequentially within it?
> (Obviously this is a concern specific to my case, but I can envisage
> many situations where this apparently unnecessary - as far as I can see
> - restriction will disqualify Ogg as a suitable wrapper.  For example,
> multiplexing radio and telephone traffic across a common carrier,
> wrappering concurrent database transactions, and occasional monitoring
> of remote sensing devices.)
> Regards,
> John Fitzgerald.

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'theora-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Theora-dev mailing list