Replace time-windowed bitrate management setup with a one-pass
authorMonty <xiphmont@xiph.org>
Tue, 30 Dec 2003 11:02:22 +0000 (11:02 +0000)
committerMonty <xiphmont@xiph.org>
Tue, 30 Dec 2003 11:02:22 +0000 (11:02 +0000)
commit7bda064c9abe668e996cc5d41e4f51d3b3e3085e
tree06a2514a19e26451f9d1b8fb06cbd9906754f7ad
parent44ab215bdf57b19647d33fd912e6975b09531a45
Replace time-windowed bitrate management setup with a one-pass
'greedy' bit reservoir system.

Advantages:

no additional encoder latency
more predictable buffering
lower memory usage

These changes introduce two new vorbis_encode_ctls to get to the new
functionality.  The old ectl calls are still supported for
compatability and binary library compatability is not broken (but
libvorbis/file/enc need to be upgraded as a set).

...now going to update oggenc.

Monty

svn path=/trunk/vorbis/; revision=5726
13 files changed:
include/vorbis/vorbisenc.h
lib/analysis.c
lib/backends.h
lib/bitrate.c
lib/bitrate.h
lib/block.c
lib/codec_internal.h
lib/floor1.c
lib/highlevel.h
lib/info.c
lib/mapping0.c
lib/res0.c
lib/vorbisenc.c