[Vorbis] Encoding multiple tiny audio files

Michał Czuczman mczuczman at ivosoftware.com
Mon Mar 30 01:52:05 PDT 2009


Hi all,

I want to make a static database containing hundreds of thousands of very 
short audio files, each having not more than 100 milliseconds. These are made 
by splitting larger audio files into tiny pieces.

I encode all the little files separately, but do not store 3 vorbis header 
packets, which are the same for all the files. I do not use ogg stream, only 
store plain vorbis packets.

When I encode the longer files, which altogether have the same audio length,
I get 20% higher compression ratio. However, in order to have fast lookup 
times, I cannot deal with decoding such large files, only to get a little 
chunk in them.

Do you know of a way to compress the little chunks, but achieve compression 
ratio of those primary audio files? Where does the difference in compression 
rate come from?

Is it possible to get even higher compression rates without quality loss,
by tweaking any parameters or blocksizes hardcoded in libvorbis source?

Thanks,

Michał


More information about the Vorbis mailing list