[theora-dev] Bitstream encoded huffman tables always the same

Timothy B. Terriberry tterribe at xiph.org
Fri Dec 10 08:05:09 PST 2010

> figure myself who is calling it using what parameter. Is that true that
> libtheora will always set the huffman codes to the same ones? Isn't this

Unless the user manually overrides them, yes. There is a rehuff example 
in http://svn.xiph.org/trunk/theora-exp/examples/ which can be used to 
compute optimized tables for a specific video file, after encoding. It 
typically saves between 1-2% in file size.

We have long planned to update the default tables as part of the 1.2 
release, but initial experiments (back in 2007 with the old 1.0 encoder) 
found that using insufficient training data (in that case 4 400-600 
frame 1080p sequences) produces tables that are significantly _worse_, 
on average, when used on files that were not in the training set. Greg 
Maxwell thinks he can do better now, and we have more training data than 
we did then, but improvements have yet to be demonstrated.

More information about the theora-dev mailing list