[Vorbis-dev] VQ and Huffman codebooks creation

Jesús Díaz Vico jesus.diaz.vico at gmail.com
Mon Aug 17 02:21:02 PDT 2009


Ok, thanks for your answers, they've been all very helpfull.

But

"currently the codebook is constant over all of the encoded files. It's an
> average case codebook, statically compiled against a typical training set of
> tracks,"
>

actually poses me a new question, of a more _philosophical_ nature. If the
codebooks are obtained in that way, why don't just say "I'm using codebook
N" instead of packing the whole codebook within the setup header? I suppose
the reason is to let people create their own codebooks (may be specialized
in some specific kind of audio) and therefore obtain standalone audio files.
Am I right?

Thank you again.

Jesús

On Sun, Aug 16, 2009 at 11:15 PM, Gregory Maxwell <gmaxwell at gmail.com>wrote:

> On Sun, Aug 16, 2009 at 3:58 PM, Sampo Syreeni<decoy at iki.fi> wrote:
> > On 2009-08-16, Ralph Giles wrote:
> >
> >> In the libvorbisenc implementation the codebooks are pre-generated
> >> based on training data, and a set are selected based on the quality
> >> setting.
> >
> > Or in other words, while Vorbis allows variable codebooks, currently the
> > codebook is constant over all of the encoded files. It's an average case
> > codebook, statically compiled against a typical training set of tracks,
> > not something that is adapted separately to each and every encoded
> > track. Adapting the codebook on the fly would be something of a research
> > challenge.
>
> Adjusting the huffman tables on the fly, OTOH, would be pretty
> straight forward. But there are downsides... like the inability to
> simply convert chained streams into non-chained ones. The savings is
> pretty small too.
> _______________________________________________
> Vorbis-dev mailing list
> Vorbis-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/vorbis-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/vorbis-dev/attachments/20090817/b3daaaf8/attachment.htm 


More information about the Vorbis-dev mailing list