cannam@86: cannam@86: cannam@86:
cannam@86:libvorbisenc documentation |
cannam@86: libvorbisenc version 1.3.2 - 20101101 |
cannam@86:
The following code examples prepare a cannam@86: vorbis_info structure for encoding cannam@86: use with libvorbis.
cannam@86: cannam@86:
cannam@86: vorbis_info_init(&vi); cannam@86: cannam@86: /********************************************************************* cannam@86: Encoding using a VBR quality mode. The usable range is -.1 cannam@86: (lowest quality, smallest file) to 1.0 (highest quality, largest file). cannam@86: Example quality mode .4: 44kHz stereo coupled, roughly 128kbps VBR cannam@86: *********************************************************************/ cannam@86: cannam@86: ret = vorbis_encode_init_vbr(&vi,2,44100,.4); cannam@86: cannam@86: /********************************************************************* cannam@86: do not continue if setup failed; this can happen if we ask for a cannam@86: mode that libVorbis does not support (eg, too low a quality mode, etc, cannam@86: will return 'OV_EIMPL') cannam@86: *********************************************************************/ cannam@86: cannam@86: if(ret) exit(1); cannam@86: |
cannam@86: vorbis_info_init(&vi); cannam@86: cannam@86: /********************************************************************* cannam@86: Encoding using an average bitrate mode (ABR). cannam@86: example: 44kHz stereo coupled, average 128kbps ABR cannam@86: *********************************************************************/ cannam@86: cannam@86: ret = vorbis_encode_init(&vi,2,44100,-1,128000,-1); cannam@86: cannam@86: /********************************************************************* cannam@86: do not continue if setup failed; this can happen if we ask for a cannam@86: mode that libVorbis does not support (eg, too low a bitrate, etc, cannam@86: will return 'OV_EIMPL') cannam@86: *********************************************************************/ cannam@86: cannam@86: if(ret) exit(1); cannam@86: |
cannam@86: vorbis_info_init(&vi); cannam@86: cannam@86: /********************************************************************* cannam@86: Encoding using a constant bitrate mode (CBR). cannam@86: example: 44kHz stereo coupled, average 128kbps CBR cannam@86: *********************************************************************/ cannam@86: cannam@86: ret = vorbis_encode_init(&vi,2,44100,128000,128000,128000); cannam@86: cannam@86: /********************************************************************* cannam@86: do not continue if setup failed; this can happen if we ask for a cannam@86: mode that libVorbis does not support (eg, too low a bitrate, etc, cannam@86: will return 'OV_EIMPL') cannam@86: *********************************************************************/ cannam@86: cannam@86: if(ret) exit(1); cannam@86: |
cannam@86: vorbis_info_init(&vi); cannam@86: cannam@86: /********************************************************************* cannam@86: Encode using a quality mode, but select that quality mode by asking for cannam@86: an approximate bitrate. This is not ABR, it is true VBR, but selected cannam@86: using the bitrate interface, and then turning bitrate management off: cannam@86: *********************************************************************/ cannam@86: cannam@86: ret = ( vorbis_encode_setup_managed(&vi,2,44100,-1,128000,-1) || cannam@86: vorbis_encode_ctl(&vi,OV_ECTL_RATEMANAGE2_SET,NULL) || cannam@86: vorbis_encode_setup_init(&vi)); cannam@86: cannam@86: /********************************************************************* cannam@86: do not continue if setup failed; this can happen if we ask for a cannam@86: mode that libVorbis does not support (eg, too low a bitrate, etc, cannam@86: will return 'OV_EIMPL') cannam@86: *********************************************************************/ cannam@86: cannam@86: if(ret) exit(1); cannam@86: |
copyright © 2000-2010 Xiph.Org |
cannam@86: cannam@86: |
libvorbisenc documentation |
cannam@86: libvorbisenc version 1.3.2 - 20101101 |
cannam@86: