libvorbisenc documentation | libvorbisenc release 1.1 - 20040709

# vorbis_encode_setup_vbr

declared in "vorbis/libvorbisenc.h";

This function performs step-one of a three-step variable bitrate (quality-based) encode setup. It functions similarly to the one-step setup performed by vorbis_encode_init_vbr() but allows an application to make further encode setup tweaks using vorbis_encode_ctl() before finally calling vorbis_encode_setup_init() to complete the setup process.

Before this function is called, the vorbis_info struct should be initialized by using vorbis_info_init() from the libvorbis API. After encoding, vorbis_info_clear should be called.

    extern int vorbis_encode_init_vbr(vorbis_info *vi,
                                  long channels,
                                  long rate,

                                  float base_quality);

### Parameters

vi
  File pointer to an initialized vorbis_info struct.
channels
  The number of channels to be encoded.
rate
  The sampling rate of the source audio.
base_quality
  Desired quality level, currently from -0.1 to 1.0 (lo to hi).

### Return Values

> - 0 for success
> - less than zero for failure:
> - OV_EFAULT - Internal logic fault; indicates a bug or heap/stack corruption.
> - OV_EINVAL - Invalid setup request, eg, out of range argument.
> - OV_EIMPL - Unimplemented mode; unable to comply with quality level request.

copyright © 2004 xiph.org | Ogg Vorbis team@vorbis.org
libvorbisenc documentation | libvorbisenc release 1.1 - 20040709