<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.12"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>gavl: Audio conversion options</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">gavl </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.12 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> $(function() { initMenu('',false,false,'search.php','Search'); }); </script> <div id="main-nav"></div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#groups">Modules</a> | <a href="#typedef-members">Typedefs</a> | <a href="#enum-members">Enumerations</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Audio conversion options<div class="ingroups"><a class="el" href="group__audio.html">Audio</a></div></div> </div> </div><!--header--> <div class="contents"> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a> Modules</h2></td></tr> <tr class="memitem:group__audio__conversion__flags"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__conversion__flags.html">Audio conversion flags</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:ga1667eb35773f94035acd0ba81cdada05"><td class="memItemLeft" align="right" valign="top">typedef struct gavl_audio_options_s </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a></td></tr> <tr class="memdesc:ga1667eb35773f94035acd0ba81cdada05"><td class="mdescLeft"> </td><td class="mdescRight">Opaque container for audio conversion options. <a href="#ga1667eb35773f94035acd0ba81cdada05">More...</a><br /></td></tr> <tr class="separator:ga1667eb35773f94035acd0ba81cdada05"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:ga7675efc0dadfb0f13cd5def14d16eac3"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a> { <br />   <b>GAVL_AUDIO_DITHER_NONE</b> = 0, <br />   <b>GAVL_AUDIO_DITHER_AUTO</b> = 1, <br />   <b>GAVL_AUDIO_DITHER_RECT</b> = 2, <br />   <b>GAVL_AUDIO_DITHER_TRI</b> = 3, <br />   <b>GAVL_AUDIO_DITHER_SHAPED</b> = 4 <br /> }<tr class="memdesc:ga7675efc0dadfb0f13cd5def14d16eac3"><td class="mdescLeft"> </td><td class="mdescRight">Dither mode. <a href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">More...</a><br /></td></tr> </td></tr> <tr class="separator:ga7675efc0dadfb0f13cd5def14d16eac3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga980691f2c8c3c77a45e959e433b80a1c"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a> { <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1cac630f7dae0e307a333abd9f3feb84e35">GAVL_RESAMPLE_AUTO</a> = 0, <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1ca748c06882eb6da67afdf31688aae1b97">GAVL_RESAMPLE_ZOH</a> = 1, <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1cab64c3b5e39489db00eeba97bc4c5b7c3">GAVL_RESAMPLE_LINEAR</a> = 2, <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1cafd1a6035ae2efdcc6460fa49d20507c2">GAVL_RESAMPLE_SINC_FAST</a> = 3, <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1cacd97ff82e1fd6220cf7bb1c8689d2c7d">GAVL_RESAMPLE_SINC_MEDIUM</a> = 4, <br />   <a class="el" href="group__audio__options.html#gga980691f2c8c3c77a45e959e433b80a1ca0e3af39db4a4f523aa4284806dfdf92f">GAVL_RESAMPLE_SINC_BEST</a> = 5 <br /> }<tr class="memdesc:ga980691f2c8c3c77a45e959e433b80a1c"><td class="mdescLeft"> </td><td class="mdescRight">Resample mode. <a href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">More...</a><br /></td></tr> </td></tr> <tr class="separator:ga980691f2c8c3c77a45e959e433b80a1c"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:gafa95f29c3f2a5bb75bf9c6693f96b8ea"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#gafa95f29c3f2a5bb75bf9c6693f96b8ea">gavl_audio_options_set_quality</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt, int quality)</td></tr> <tr class="memdesc:gafa95f29c3f2a5bb75bf9c6693f96b8ea"><td class="mdescLeft"> </td><td class="mdescRight">Set the quality level for the converter. <a href="#gafa95f29c3f2a5bb75bf9c6693f96b8ea">More...</a><br /></td></tr> <tr class="separator:gafa95f29c3f2a5bb75bf9c6693f96b8ea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3df9fcad6203a59bceaa5794ab4a681d"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga3df9fcad6203a59bceaa5794ab4a681d">gavl_audio_options_get_quality</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:ga3df9fcad6203a59bceaa5794ab4a681d"><td class="mdescLeft"> </td><td class="mdescRight">Get the quality level for a converter. <a href="#ga3df9fcad6203a59bceaa5794ab4a681d">More...</a><br /></td></tr> <tr class="separator:ga3df9fcad6203a59bceaa5794ab4a681d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga90ca06e9e71186501def737c9bc8aead"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga90ca06e9e71186501def737c9bc8aead">gavl_audio_options_set_dither_mode</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt, <a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a> mode)</td></tr> <tr class="memdesc:ga90ca06e9e71186501def737c9bc8aead"><td class="mdescLeft"> </td><td class="mdescRight">Set the dither mode for the converter. <a href="#ga90ca06e9e71186501def737c9bc8aead">More...</a><br /></td></tr> <tr class="separator:ga90ca06e9e71186501def737c9bc8aead"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga51006fccdbe80bd4625f0179dc7bd86f"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga51006fccdbe80bd4625f0179dc7bd86f">gavl_audio_options_get_dither_mode</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:ga51006fccdbe80bd4625f0179dc7bd86f"><td class="mdescLeft"> </td><td class="mdescRight">Get the dither mode for the converter. <a href="#ga51006fccdbe80bd4625f0179dc7bd86f">More...</a><br /></td></tr> <tr class="separator:ga51006fccdbe80bd4625f0179dc7bd86f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga19cb5d887992703cf237ede16e3f19d6"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga19cb5d887992703cf237ede16e3f19d6">gavl_audio_options_set_resample_mode</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt, <a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a> mode)</td></tr> <tr class="memdesc:ga19cb5d887992703cf237ede16e3f19d6"><td class="mdescLeft"> </td><td class="mdescRight">Set the resample mode for the converter. <a href="#ga19cb5d887992703cf237ede16e3f19d6">More...</a><br /></td></tr> <tr class="separator:ga19cb5d887992703cf237ede16e3f19d6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga897e99f898c8712067a841b5ecfd0e3a"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga897e99f898c8712067a841b5ecfd0e3a">gavl_audio_options_get_resample_mode</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:ga897e99f898c8712067a841b5ecfd0e3a"><td class="mdescLeft"> </td><td class="mdescRight">Get the resample mode for the converter. <a href="#ga897e99f898c8712067a841b5ecfd0e3a">More...</a><br /></td></tr> <tr class="separator:ga897e99f898c8712067a841b5ecfd0e3a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga817ed0e944d3fa4584d3185b4a7023b4"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga817ed0e944d3fa4584d3185b4a7023b4">gavl_audio_options_set_conversion_flags</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt, int flags)</td></tr> <tr class="memdesc:ga817ed0e944d3fa4584d3185b4a7023b4"><td class="mdescLeft"> </td><td class="mdescRight">Set the conversion flags. <a href="#ga817ed0e944d3fa4584d3185b4a7023b4">More...</a><br /></td></tr> <tr class="separator:ga817ed0e944d3fa4584d3185b4a7023b4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa5a958717b683f11090c79fe0ed11edb"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#gaa5a958717b683f11090c79fe0ed11edb">gavl_audio_options_get_conversion_flags</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:gaa5a958717b683f11090c79fe0ed11edb"><td class="mdescLeft"> </td><td class="mdescRight">Get the conversion flags. <a href="#gaa5a958717b683f11090c79fe0ed11edb">More...</a><br /></td></tr> <tr class="separator:gaa5a958717b683f11090c79fe0ed11edb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga86b295e9eab438f46d2c8b3547f4571c"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga86b295e9eab438f46d2c8b3547f4571c">gavl_audio_options_set_defaults</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:ga86b295e9eab438f46d2c8b3547f4571c"><td class="mdescLeft"> </td><td class="mdescRight">Set all options to their defaults. <a href="#ga86b295e9eab438f46d2c8b3547f4571c">More...</a><br /></td></tr> <tr class="separator:ga86b295e9eab438f46d2c8b3547f4571c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8b86d142de20ae4a7dda2d221604343c"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga8b86d142de20ae4a7dda2d221604343c">gavl_audio_options_set_mix_matrix</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt, const double **matrix)</td></tr> <tr class="memdesc:ga8b86d142de20ae4a7dda2d221604343c"><td class="mdescLeft"> </td><td class="mdescRight">Set a user defined mix matrix. <a href="#ga8b86d142de20ae4a7dda2d221604343c">More...</a><br /></td></tr> <tr class="separator:ga8b86d142de20ae4a7dda2d221604343c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga476fcaf23c89c45d9af3a47e138e2980"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC const double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga476fcaf23c89c45d9af3a47e138e2980">gavl_audio_options_get_mix_matrix</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:ga476fcaf23c89c45d9af3a47e138e2980"><td class="mdescLeft"> </td><td class="mdescRight">Get the mix matrix. <a href="#ga476fcaf23c89c45d9af3a47e138e2980">More...</a><br /></td></tr> <tr class="separator:ga476fcaf23c89c45d9af3a47e138e2980"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa0b881a1632ab23ef69ce032faddc3ee"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#gaa0b881a1632ab23ef69ce032faddc3ee">gavl_audio_options_create</a> ()</td></tr> <tr class="memdesc:gaa0b881a1632ab23ef69ce032faddc3ee"><td class="mdescLeft"> </td><td class="mdescRight">Create an options container. <a href="#gaa0b881a1632ab23ef69ce032faddc3ee">More...</a><br /></td></tr> <tr class="separator:gaa0b881a1632ab23ef69ce032faddc3ee"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4a9c0451ef538655c6f3c32d4ba8ae35"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#ga4a9c0451ef538655c6f3c32d4ba8ae35">gavl_audio_options_copy</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *dst, const <a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *src)</td></tr> <tr class="memdesc:ga4a9c0451ef538655c6f3c32d4ba8ae35"><td class="mdescLeft"> </td><td class="mdescRight">Copy audio options. <a href="#ga4a9c0451ef538655c6f3c32d4ba8ae35">More...</a><br /></td></tr> <tr class="separator:ga4a9c0451ef538655c6f3c32d4ba8ae35"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab989761a491dab46a6bfb67ff6e32d4f"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__audio__options.html#gab989761a491dab46a6bfb67ff6e32d4f">gavl_audio_options_destroy</a> (<a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> *opt)</td></tr> <tr class="memdesc:gab989761a491dab46a6bfb67ff6e32d4f"><td class="mdescLeft"> </td><td class="mdescRight">Destroy audio options. <a href="#gab989761a491dab46a6bfb67ff6e32d4f">More...</a><br /></td></tr> <tr class="separator:gab989761a491dab46a6bfb67ff6e32d4f"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <h2 class="groupheader">Typedef Documentation</h2> <a id="ga1667eb35773f94035acd0ba81cdada05"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga1667eb35773f94035acd0ba81cdada05">§ </a></span>gavl_audio_options_t</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct gavl_audio_options_s <a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a></td> </tr> </table> </div><div class="memdoc"> <p>Opaque container for audio conversion options. </p> <p>You don't want to know what's inside. </p> </div> </div> <h2 class="groupheader">Enumeration Type Documentation</h2> <a id="ga7675efc0dadfb0f13cd5def14d16eac3"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga7675efc0dadfb0f13cd5def14d16eac3">§ </a></span>gavl_audio_dither_mode_t</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a></td> </tr> </table> </div><div class="memdoc"> <p>Dither mode. </p> </div> </div> <a id="ga980691f2c8c3c77a45e959e433b80a1c"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga980691f2c8c3c77a45e959e433b80a1c">§ </a></span>gavl_resample_mode_t</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a></td> </tr> </table> </div><div class="memdoc"> <p>Resample mode. </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1cac630f7dae0e307a333abd9f3feb84e35"></a>GAVL_RESAMPLE_AUTO </td><td class="fielddoc"><p>Set from quality </p> </td></tr> <tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1ca748c06882eb6da67afdf31688aae1b97"></a>GAVL_RESAMPLE_ZOH </td><td class="fielddoc"><p>Zero order hold interpolator, very fast, poor quality. </p> </td></tr> <tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1cab64c3b5e39489db00eeba97bc4c5b7c3"></a>GAVL_RESAMPLE_LINEAR </td><td class="fielddoc"><p>Linear interpolator, very fast, poor quality. </p> </td></tr> <tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1cafd1a6035ae2efdcc6460fa49d20507c2"></a>GAVL_RESAMPLE_SINC_FAST </td><td class="fielddoc"><p>Band limited sinc interpolation, fastest, 97dB SNR, 80% BW. </p> </td></tr> <tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1cacd97ff82e1fd6220cf7bb1c8689d2c7d"></a>GAVL_RESAMPLE_SINC_MEDIUM </td><td class="fielddoc"><p>Band limited sinc interpolation, medium quality, 97dB SNR, 90% BW. </p> </td></tr> <tr><td class="fieldname"><a id="gga980691f2c8c3c77a45e959e433b80a1ca0e3af39db4a4f523aa4284806dfdf92f"></a>GAVL_RESAMPLE_SINC_BEST </td><td class="fielddoc"><p>Band limited sinc interpolation, best quality, 97dB SNR, 96% BW. </p> </td></tr> </table> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a id="gafa95f29c3f2a5bb75bf9c6693f96b8ea"></a> <h2 class="memtitle"><span class="permalink"><a href="#gafa95f29c3f2a5bb75bf9c6693f96b8ea">§ </a></span>gavl_audio_options_set_quality()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_quality </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>quality</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the quality level for the converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> <tr><td class="paramname">quality</td><td>Quality level (see <a class="el" href="group__quality.html">Quality settings</a>) </td></tr> </table> </dd> </dl> </div> </div> <a id="ga3df9fcad6203a59bceaa5794ab4a681d"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga3df9fcad6203a59bceaa5794ab4a681d">§ </a></span>gavl_audio_options_get_quality()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC int gavl_audio_options_get_quality </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the quality level for a converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Quality level (see <a class="el" href="group__quality.html">Quality settings</a>) </dd></dl> </div> </div> <a id="ga90ca06e9e71186501def737c9bc8aead"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga90ca06e9e71186501def737c9bc8aead">§ </a></span>gavl_audio_options_set_dither_mode()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_dither_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a> </td> <td class="paramname"><em>mode</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the dither mode for the converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> <tr><td class="paramname">mode</td><td>A dither mode </td></tr> </table> </dd> </dl> </div> </div> <a id="ga51006fccdbe80bd4625f0179dc7bd86f"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga51006fccdbe80bd4625f0179dc7bd86f">§ </a></span>gavl_audio_options_get_dither_mode()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga7675efc0dadfb0f13cd5def14d16eac3">gavl_audio_dither_mode_t</a> gavl_audio_options_get_dither_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the dither mode for the converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The dither mode </dd></dl> </div> </div> <a id="ga19cb5d887992703cf237ede16e3f19d6"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga19cb5d887992703cf237ede16e3f19d6">§ </a></span>gavl_audio_options_set_resample_mode()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_resample_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a> </td> <td class="paramname"><em>mode</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the resample mode for the converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> <tr><td class="paramname">mode</td><td>A resample mode </td></tr> </table> </dd> </dl> </div> </div> <a id="ga897e99f898c8712067a841b5ecfd0e3a"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga897e99f898c8712067a841b5ecfd0e3a">§ </a></span>gavl_audio_options_get_resample_mode()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga980691f2c8c3c77a45e959e433b80a1c">gavl_resample_mode_t</a> gavl_audio_options_get_resample_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the resample mode for the converter. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The resample mode </dd></dl> </div> </div> <a id="ga817ed0e944d3fa4584d3185b4a7023b4"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga817ed0e944d3fa4584d3185b4a7023b4">§ </a></span>gavl_audio_options_set_conversion_flags()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_conversion_flags </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>flags</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the conversion flags. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> <tr><td class="paramname">flags</td><td>Flags (see <a class="el" href="group__audio__conversion__flags.html">Audio conversion flags</a>) </td></tr> </table> </dd> </dl> </div> </div> <a id="gaa5a958717b683f11090c79fe0ed11edb"></a> <h2 class="memtitle"><span class="permalink"><a href="#gaa5a958717b683f11090c79fe0ed11edb">§ </a></span>gavl_audio_options_get_conversion_flags()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC int gavl_audio_options_get_conversion_flags </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the conversion flags. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Flags (see <a class="el" href="group__audio__conversion__flags.html">Audio conversion flags</a>) </dd></dl> </div> </div> <a id="ga86b295e9eab438f46d2c8b3547f4571c"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga86b295e9eab438f46d2c8b3547f4571c">§ </a></span>gavl_audio_options_set_defaults()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_defaults </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Set all options to their defaults. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> </div> </div> <a id="ga8b86d142de20ae4a7dda2d221604343c"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga8b86d142de20ae4a7dda2d221604343c">§ </a></span>gavl_audio_options_set_mix_matrix()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_set_mix_matrix </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const double ** </td> <td class="paramname"><em>matrix</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set a user defined mix matrix. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> <tr><td class="paramname">matrix</td><td>Mix matrix to use</td></tr> </table> </dd> </dl> <p>The matrix consists of coefficients, where matrix[i][j] is the factor for mixing input channel j to output channel i. The matrix is not copied, so it should be valid at least until the next call to <a class="el" href="group__audio__converter.html#ga993422a1776a20a3e0adf8134b1e5e54">gavl_audio_converter_init</a>.</p> <p>To clear a previously defined mix matrix (restoring gavls default behaviour) pass NULL.</p> <p>Since 1.1.2 </p> </div> </div> <a id="ga476fcaf23c89c45d9af3a47e138e2980"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga476fcaf23c89c45d9af3a47e138e2980">§ </a></span>gavl_audio_options_get_mix_matrix()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC const double** gavl_audio_options_get_mix_matrix </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the mix matrix. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The user defined mix matrix</dd></dl> <p>Since 1.1.2 </p> </div> </div> <a id="gaa0b881a1632ab23ef69ce032faddc3ee"></a> <h2 class="memtitle"><span class="permalink"><a href="#gaa0b881a1632ab23ef69ce032faddc3ee">§ </a></span>gavl_audio_options_create()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC <a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a>* gavl_audio_options_create </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Create an options container. </p> <dl class="section return"><dt>Returns</dt><dd>Newly allocated udio options with default values</dd></dl> <p>Use this to store options, which will apply for more than one converter instance. Applying the options will be done by gavl_*_get_options() followed by <a class="el" href="group__audio__options.html#ga4a9c0451ef538655c6f3c32d4ba8ae35" title="Copy audio options. ">gavl_audio_options_copy()</a>. </p> </div> </div> <a id="ga4a9c0451ef538655c6f3c32d4ba8ae35"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga4a9c0451ef538655c6f3c32d4ba8ae35">§ </a></span>gavl_audio_options_copy()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_copy </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>dst</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>src</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Copy audio options. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dst</td><td>Destination </td></tr> <tr><td class="paramname">src</td><td>Source </td></tr> </table> </dd> </dl> </div> </div> <a id="gab989761a491dab46a6bfb67ff6e32d4f"></a> <h2 class="memtitle"><span class="permalink"><a href="#gab989761a491dab46a6bfb67ff6e32d4f">§ </a></span>gavl_audio_options_destroy()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GAVL_PUBLIC void gavl_audio_options_destroy </td> <td>(</td> <td class="paramtype"><a class="el" href="group__audio__options.html#ga1667eb35773f94035acd0ba81cdada05">gavl_audio_options_t</a> * </td> <td class="paramname"><em>opt</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Destroy audio options. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opt</td><td>Audio options </td></tr> </table> </dd> </dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.12 </small></address> </body> </html>