<html> <head> <title>libvorbisenc - Documentation</title> <link rel=stylesheet href="style.css" type="text/css"> </head> <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff"> <table border=0 width=100%> <tr> <td><p class=tiny>libvorbisenc documentation</p></td> <td align=right><p class=tiny>libvorbisenc release 1.1 - 20040709</p></td> </tr> </table> <h1>Libvorbisenc API changes 1.0 through 1.1</h1> This document describes API additions to libvorbisenc between release 1.0 and 1.1. <h2>1.0.1</h2> The programming API and binary application ABI are unchanged and fully forward/backward compatible between release 1.0 and 1.0.1. Libvorbis, libvorbisenc and libvorbisfile must match versions amongst themselves, however. <h2>1.1</h2> The binary ABI from release 1.0.1 to 1.1 is backward compatible; applications linked against libvorbis/libvorbisenc 1.0 and 1.0.1 will continue to function correctly when upgrading the libvorbis and libvorbisenc dynamic libraries without re-linking. <p> Release 1.1 adds several possible requests to the libvorbisenc <a href="vorbis_encode_ctl.html">vorbis_encode_ctl()</a> call in order to reflect the shift to <a href="overview.html#BBR">bit-reservoir style bitrate management</a>. In addition, several <a href="vorbis_encode_ctl.html">vorbis_encode_ctl()</a> requests are deprecated (but functional) as they are redered semantically obsolete by the <a href="overview.html#BBR">new bitrate management</a>.<p> <h3>Deprecated in 1.1</h3> These calls are still available to older codebases to preserve compatability; the fields of the <a href="ovectl_ratemanage_arg.html">ovectl_ratemanage_arg</a> argument are mapped as closely as possible to the fields of the new <a href="ovectl_ratemanage2_arg.html">ovectl_ratemanage2_arg</a> structure. <dl> <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE_GET">OV_ECTL_RATEMANAGE_GET</a>:<dd> Use <a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_GET">OV_ECTL_RATEMANAGE2_GET</a> instead. <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE_SET">OV_ECTL_RATEMANAGE_SET</a>:<dd> Use <a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_SET">OV_ECTL_RATEMANAGE2_SET</a> instead. <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE_AVG">OV_ECTL_RATEMANAGE_AVG</a>:<dd> Use <a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_SET">OV_ECTL_RATEMANAGE2_SET</a> instead. <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE_HARD">OV_ECTL_RATEMANAGE_HARD</a>:<dd> Use <a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_SET">OV_ECTL_RATEMANAGE2_SET</a> instead. </dl> <h3>Newly added in 1.1</h3> The following calls are added in 1.1 to semantically reflect movement to a <a href="overview.html#BBR">bit-reservoir-based bitrate management</a> scheme by introducing the <a href="ovectl_ratemanage2_arg.html">ovectl_ratemanage2_arg</a> structure in order to better represent the abilities of the bitrate manager.<p> <dl> <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_GET">OV_ECTL_RATEMANAGE2_GET</a><dd> Used to query the current state of bitrate management setup. <dt><a href="vorbis_encode_ctl.html#OV_ECTL_RATEMANAGE2_SET">OV_ECTL_RATEMANAGE2_SET</a><dd> Used to set or alter bitrate management settings. </dl> <br><br> <hr noshade> <table border=0 width=100%> <tr valign=top> <td><p class=tiny>copyright © 2000-2004 vorbis team</p></td> <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td> </tr><tr> <td><p class=tiny>libvorbisenc documentation</p></td> <td align=right><p class=tiny>libvorbisenc release 1.1 - 20040709</p></td> </tr> </table> </body> </html>