[vorbis-dev] rehuff

Segher Boessenkool segher at wanadoo.nl
Tue Jan 23 15:44:45 PST 2001

OmegaDan wrote:
> May I ask a question?
> Why is the vorbis code generating non-optimal huffman
> codes in the first palce?   I seem to recall there is
> a greedy algorithim that always produces an optimal
> huffman tree? ...

The encoder doesn't know what data it will need to encode;
streaming wouldn't work if it needed this info. The encoder
uses huffman books that are trained to optimally encode a
certain big, reprresentative data set. This is not optimal
for every stream, but close to it. Actually closer than
I thought before I wrote rehuff; rehuff will gain you 1-2%
on most streams, I thought it would be 5-10%.

rehuff is still useful for people who want the last few tiny
drops of compression gain, and for developers.



--- >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-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 Vorbis-dev mailing list