[vorbis] Rgenerating headers

Michael Smith msmith at xiph.org
Sat Nov 23 16:33:55 PST 2002



>Yes, of course - I just failed to read what I had actually written.
>Stupid me.
>
>Now I'm not suggesting  you to drop the headers, just trying to
>see where and when corners can be cut. That said, the headers
>are for sure a pain trying to combine ultra large scale multicast
>with chained Ogg/Vorbis.

Yes, they are. It's a drawback, but not one we can remove (reduce,
perhaps, but not remove).

>
>Wrt. players being without encoders, that might be true. On the other hand,
>the code to generate the headers does not take up much space, but that
>is not the only option.

The code to generate the headers DOES take up a lot of space. As a rough
estimate, about a megabyte. That's not insignificant, even these days.

>
>If the encoder and the decoder can ask the vorbis library for a major and
>minor version number, then if the version number of the encoder is
>passed out of band to the decoder, then the decoder can look in a sort
>of header cache for the appropriate header and only download (or generate new)
>headers if they are not present in the cache.

Version number is insufficient, since different encoders can exist,
etc. A better way to do this would be to transmit a hash (MD5, or
whatever else you prefer) of the codebook header. THIS can easily
be looked up in your cache (generating new ones isn't possible with
this approach, but that's probably a good things, since it's horribly
failure-prone to do so).

With this, the player only needs to obtain the large header once, then
cache it locally. You can do the same with the primary header, but it's
small enough that it may not be neccesary.

>
>So access from the application to a detailed version number in the vorbis
>library would be appreciated.

There's no direct access to it, but the vendor string in the comment header
contains a detailed version number (however, the codebooks often change
without changes to this number, at least during periods of heavy 
development).

Michael

<p>--- >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 'vorbis-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 Vorbis mailing list