<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>PulseAudio: volume.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.5 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="classes.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> </div> <div class="contents"> <h1>volume.h File Reference</h1>Constants and routines for volume handling. <a href="#_details">More...</a> <p> <p> <a href="volume_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpa__cvolume.html">pa_cvolume</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A structure encapsulating a per-channel volume. <a href="structpa__cvolume.html#_details">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#ded56902e68e0f8ab576339bde55960e">PA_VOLUME_NORM</a> (0x10000)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Normal volume (100%). <a href="#ded56902e68e0f8ab576339bde55960e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#9e6e4562a3be216d39ad2246f0339f4c">PA_VOLUME_MUTED</a> (0)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Muted volume (0%). <a href="#9e6e4562a3be216d39ad2246f0339f4c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#a2701828c290031c9bca9036f5148c72">pa_cvolume_reset</a>(a, n) pa_cvolume_set((a), (n), PA_VOLUME_NORM)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the volume of all channels to PA_VOLUME_NORM. <a href="#a2701828c290031c9bca9036f5148c72"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#04805cb4b83ded75deca9c122977d8fb">pa_cvolume_mute</a>(a, n) pa_cvolume_set((a), (n), PA_VOLUME_MUTED)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the volume of all channels to PA_VOLUME_MUTED. <a href="#04805cb4b83ded75deca9c122977d8fb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#4162617e79bec0c7972326cf28a98712">PA_CVOLUME_SNPRINT_MAX</a> 64</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Maximum length of the strings returned by <a class="el" href="volume_8h.html#99f2e389f425b888d3a02ade86d7c85f" title="Pretty print a volume structure.">pa_cvolume_snprint()</a>. <a href="#4162617e79bec0c7972326cf28a98712"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#6b8766a2f30420a83457d2e1f0f139b2">pa_cvolume_is_muted</a>(a) pa_cvolume_channels_equal_to((a), PA_VOLUME_MUTED)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 if the specified volume has all channels muted. <a href="#6b8766a2f30420a83457d2e1f0f139b2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#0b374bbe16de9ac047fc4e5f6994390c">pa_cvolume_is_norm</a>(a) pa_cvolume_channels_equal_to((a), PA_VOLUME_NORM)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 if the specified volume has all channels on normal level. <a href="#0b374bbe16de9ac047fc4e5f6994390c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#e0b917d42c58310ed848916058d75f27">PA_DECIBEL_MININFTY</a> (-200)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This value is used as minus infinity when using pa_volume_{to,from}_dB(). <a href="#e0b917d42c58310ed848916058d75f27"></a><br></td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Volume specification: PA_VOLUME_MUTED: silence; < PA_VOLUME_NORM: decreased volume; PA_VOLUME_NORM: normal volume; > PA_VOLUME_NORM: increased volume. <a href="#6d671c65284ff2e94d3773c7368a0352"></a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#84b52cdbff47aad9c058df783f342b57">pa_cvolume_equal</a> (const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *a, const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *b) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return non-zero when *a == *b. <a href="#84b52cdbff47aad9c058df783f342b57"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#0777581d85a1d4bf9c831bdacaac51ac">pa_cvolume_set</a> (<a class="el" href="structpa__cvolume.html">pa_cvolume</a> *a, unsigned channels, <a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> v)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the volume of all channels to the specified parameter. <a href="#0777581d85a1d4bf9c831bdacaac51ac"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#99f2e389f425b888d3a02ade86d7c85f">pa_cvolume_snprint</a> (char *s, size_t l, const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pretty print a volume structure. <a href="#99f2e389f425b888d3a02ade86d7c85f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#0f34f2c6d1b4738bf7f11ff06775dc1f">pa_cvolume_avg</a> (const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *a) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the average volume of all channels. <a href="#0f34f2c6d1b4738bf7f11ff06775dc1f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#ba14d00682b29838ef39ca5a9afe8972">pa_cvolume_valid</a> (const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *v) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return TRUE when the passed cvolume structure is valid, FALSE otherwise. <a href="#ba14d00682b29838ef39ca5a9afe8972"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#2dd140d5c2fadd1d8cb7aa0eace05109">pa_cvolume_channels_equal_to</a> (const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *a, <a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> v) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return non-zero if the volume of all channels is equal to the specified value. <a href="#2dd140d5c2fadd1d8cb7aa0eace05109"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#1ca01f5bd640e7c5b2d3a6dad9093226">pa_sw_volume_multiply</a> (<a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> a, <a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> b) PA_GCC_CONST</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply two volumes specifications, return the result. <a href="#1ca01f5bd640e7c5b2d3a6dad9093226"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#3055944924cfb464d1745c8eaf800314">pa_sw_cvolume_multiply</a> (<a class="el" href="structpa__cvolume.html">pa_cvolume</a> *dest, const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *a, const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> *b) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply to per-channel volumes and return the result in *dest. <a href="#3055944924cfb464d1745c8eaf800314"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#d638dfbc737f126e743584665ea8f557">pa_sw_volume_from_dB</a> (double f) PA_GCC_CONST</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a decibel value to a volume. <a href="#d638dfbc737f126e743584665ea8f557"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#297851419c1e994d9fd2cfbb49aa480a">pa_sw_volume_to_dB</a> (<a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> v) PA_GCC_CONST</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a volume to a decibel value. <a href="#297851419c1e994d9fd2cfbb49aa480a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#afb4825a03178ee327e55ae0866b7471">pa_sw_volume_from_linear</a> (double v) PA_GCC_CONST</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a linear factor to a volume. <a href="#afb4825a03178ee327e55ae0866b7471"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="volume_8h.html#04da6c4572a758a0244bbfc81d370cfb">pa_sw_volume_to_linear</a> (<a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> v) PA_GCC_CONST</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a volume to a linear factor. <a href="#04da6c4572a758a0244bbfc81d370cfb"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Constants and routines for volume handling. <p> <hr><h2>Define Documentation</h2> <a class="anchor" name="6b8766a2f30420a83457d2e1f0f139b2"></a><!-- doxytag: member="volume.h::pa_cvolume_is_muted" ref="6b8766a2f30420a83457d2e1f0f139b2" args="(a)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pa_cvolume_is_muted </td> <td>(</td> <td class="paramtype">a </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> pa_cvolume_channels_equal_to((a), PA_VOLUME_MUTED)</td> </tr> </table> </div> <div class="memdoc"> <p> Return 1 if the specified volume has all channels muted. <p> </div> </div><p> <a class="anchor" name="0b374bbe16de9ac047fc4e5f6994390c"></a><!-- doxytag: member="volume.h::pa_cvolume_is_norm" ref="0b374bbe16de9ac047fc4e5f6994390c" args="(a)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pa_cvolume_is_norm </td> <td>(</td> <td class="paramtype">a </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> pa_cvolume_channels_equal_to((a), PA_VOLUME_NORM)</td> </tr> </table> </div> <div class="memdoc"> <p> Return 1 if the specified volume has all channels on normal level. <p> </div> </div><p> <a class="anchor" name="04805cb4b83ded75deca9c122977d8fb"></a><!-- doxytag: member="volume.h::pa_cvolume_mute" ref="04805cb4b83ded75deca9c122977d8fb" args="(a, n)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pa_cvolume_mute </td> <td>(</td> <td class="paramtype">a, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">n </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> pa_cvolume_set((a), (n), PA_VOLUME_MUTED)</td> </tr> </table> </div> <div class="memdoc"> <p> Set the volume of all channels to PA_VOLUME_MUTED. <p> </div> </div><p> <a class="anchor" name="a2701828c290031c9bca9036f5148c72"></a><!-- doxytag: member="volume.h::pa_cvolume_reset" ref="a2701828c290031c9bca9036f5148c72" args="(a, n)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pa_cvolume_reset </td> <td>(</td> <td class="paramtype">a, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">n </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> pa_cvolume_set((a), (n), PA_VOLUME_NORM)</td> </tr> </table> </div> <div class="memdoc"> <p> Set the volume of all channels to PA_VOLUME_NORM. <p> </div> </div><p> <a class="anchor" name="4162617e79bec0c7972326cf28a98712"></a><!-- doxytag: member="volume.h::PA_CVOLUME_SNPRINT_MAX" ref="4162617e79bec0c7972326cf28a98712" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_CVOLUME_SNPRINT_MAX 64 </td> </tr> </table> </div> <div class="memdoc"> <p> Maximum length of the strings returned by <a class="el" href="volume_8h.html#99f2e389f425b888d3a02ade86d7c85f" title="Pretty print a volume structure.">pa_cvolume_snprint()</a>. <p> </div> </div><p> <a class="anchor" name="e0b917d42c58310ed848916058d75f27"></a><!-- doxytag: member="volume.h::PA_DECIBEL_MININFTY" ref="e0b917d42c58310ed848916058d75f27" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_DECIBEL_MININFTY (-200) </td> </tr> </table> </div> <div class="memdoc"> <p> This value is used as minus infinity when using pa_volume_{to,from}_dB(). <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.4 </dd></dl> </div> </div><p> <a class="anchor" name="9e6e4562a3be216d39ad2246f0339f4c"></a><!-- doxytag: member="volume.h::PA_VOLUME_MUTED" ref="9e6e4562a3be216d39ad2246f0339f4c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_VOLUME_MUTED (0) </td> </tr> </table> </div> <div class="memdoc"> <p> Muted volume (0%). <p> </div> </div><p> <a class="anchor" name="ded56902e68e0f8ab576339bde55960e"></a><!-- doxytag: member="volume.h::PA_VOLUME_NORM" ref="ded56902e68e0f8ab576339bde55960e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_VOLUME_NORM (0x10000) </td> </tr> </table> </div> <div class="memdoc"> <p> Normal volume (100%). <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a5">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a4">paplay.c</a>.</dl> </div> </div><p> <hr><h2>Typedef Documentation</h2> <a class="anchor" name="6d671c65284ff2e94d3773c7368a0352"></a><!-- doxytag: member="volume.h::pa_volume_t" ref="6d671c65284ff2e94d3773c7368a0352" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef uint32_t <a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Volume specification: PA_VOLUME_MUTED: silence; < PA_VOLUME_NORM: decreased volume; PA_VOLUME_NORM: normal volume; > PA_VOLUME_NORM: increased volume. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a4">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a3">paplay.c</a>.</dl> </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="0f34f2c6d1b4738bf7f11ff06775dc1f"></a><!-- doxytag: member="volume.h::pa_cvolume_avg" ref="0f34f2c6d1b4738bf7f11ff06775dc1f" args="(const pa_cvolume *a) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> pa_cvolume_avg </td> <td>(</td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>a</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the average volume of all channels. <p> </div> </div><p> <a class="anchor" name="2dd140d5c2fadd1d8cb7aa0eace05109"></a><!-- doxytag: member="volume.h::pa_cvolume_channels_equal_to" ref="2dd140d5c2fadd1d8cb7aa0eace05109" args="(const pa_cvolume *a, pa_volume_t v) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_cvolume_channels_equal_to </td> <td>(</td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>v</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return non-zero if the volume of all channels is equal to the specified value. <p> </div> </div><p> <a class="anchor" name="84b52cdbff47aad9c058df783f342b57"></a><!-- doxytag: member="volume.h::pa_cvolume_equal" ref="84b52cdbff47aad9c058df783f342b57" args="(const pa_cvolume *a, const pa_cvolume *b) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_cvolume_equal </td> <td>(</td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return non-zero when *a == *b. <p> </div> </div><p> <a class="anchor" name="0777581d85a1d4bf9c831bdacaac51ac"></a><!-- doxytag: member="volume.h::pa_cvolume_set" ref="0777581d85a1d4bf9c831bdacaac51ac" args="(pa_cvolume *a, unsigned channels, pa_volume_t v)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structpa__cvolume.html">pa_cvolume</a>* pa_cvolume_set </td> <td>(</td> <td class="paramtype"><a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned </td> <td class="paramname"> <em>channels</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>v</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set the volume of all channels to the specified parameter. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a57">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a38">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="99f2e389f425b888d3a02ade86d7c85f"></a><!-- doxytag: member="volume.h::pa_cvolume_snprint" ref="99f2e389f425b888d3a02ade86d7c85f" args="(char *s, size_t l, const pa_cvolume *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char* pa_cvolume_snprint </td> <td>(</td> <td class="paramtype">char * </td> <td class="paramname"> <em>s</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>l</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>c</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Pretty print a volume structure. <p> </div> </div><p> <a class="anchor" name="ba14d00682b29838ef39ca5a9afe8972"></a><!-- doxytag: member="volume.h::pa_cvolume_valid" ref="ba14d00682b29838ef39ca5a9afe8972" args="(const pa_cvolume *v) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_cvolume_valid </td> <td>(</td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>v</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return TRUE when the passed cvolume structure is valid, FALSE otherwise. <p> </div> </div><p> <a class="anchor" name="3055944924cfb464d1745c8eaf800314"></a><!-- doxytag: member="volume.h::pa_sw_cvolume_multiply" ref="3055944924cfb464d1745c8eaf800314" args="(pa_cvolume *dest, const pa_cvolume *a, const pa_cvolume *b) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structpa__cvolume.html">pa_cvolume</a>* pa_sw_cvolume_multiply </td> <td>(</td> <td class="paramtype"><a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>dest</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structpa__cvolume.html">pa_cvolume</a> * </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Multiply to per-channel volumes and return the result in *dest. <p> This is only valid for software volumes! </div> </div><p> <a class="anchor" name="d638dfbc737f126e743584665ea8f557"></a><!-- doxytag: member="volume.h::pa_sw_volume_from_dB" ref="d638dfbc737f126e743584665ea8f557" args="(double f) PA_GCC_CONST" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> pa_sw_volume_from_dB </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>f</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Convert a decibel value to a volume. <p> This is only valid for software volumes! <dl class="since" compact><dt><b>Since:</b></dt><dd>0.4 </dd></dl> </div> </div><p> <a class="anchor" name="afb4825a03178ee327e55ae0866b7471"></a><!-- doxytag: member="volume.h::pa_sw_volume_from_linear" ref="afb4825a03178ee327e55ae0866b7471" args="(double v) PA_GCC_CONST" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> pa_sw_volume_from_linear </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>v</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Convert a linear factor to a volume. <p> This is only valid for software volumes! <dl class="since" compact><dt><b>Since:</b></dt><dd>0.8 </dd></dl> </div> </div><p> <a class="anchor" name="1ca01f5bd640e7c5b2d3a6dad9093226"></a><!-- doxytag: member="volume.h::pa_sw_volume_multiply" ref="1ca01f5bd640e7c5b2d3a6dad9093226" args="(pa_volume_t a, pa_volume_t b) PA_GCC_CONST" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> pa_sw_volume_multiply </td> <td>(</td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Multiply two volumes specifications, return the result. <p> This uses PA_VOLUME_NORM as neutral element of multiplication. This is only valid for software volumes! </div> </div><p> <a class="anchor" name="297851419c1e994d9fd2cfbb49aa480a"></a><!-- doxytag: member="volume.h::pa_sw_volume_to_dB" ref="297851419c1e994d9fd2cfbb49aa480a" args="(pa_volume_t v) PA_GCC_CONST" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double pa_sw_volume_to_dB </td> <td>(</td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>v</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Convert a volume to a decibel value. <p> This is only valid for software volumes! <dl class="since" compact><dt><b>Since:</b></dt><dd>0.4 </dd></dl> </div> </div><p> <a class="anchor" name="04da6c4572a758a0244bbfc81d370cfb"></a><!-- doxytag: member="volume.h::pa_sw_volume_to_linear" ref="04da6c4572a758a0244bbfc81d370cfb" args="(pa_volume_t v) PA_GCC_CONST" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double pa_sw_volume_to_linear </td> <td>(</td> <td class="paramtype"><a class="el" href="volume_8h.html#6d671c65284ff2e94d3773c7368a0352">pa_volume_t</a> </td> <td class="paramname"> <em>v</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Convert a volume to a linear factor. <p> This is only valid for software volumes! <dl class="since" compact><dt><b>Since:</b></dt><dd>0.8 </dd></dl> </div> </div><p> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Wed Mar 26 12:02:40 2008 for PulseAudio by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address> </body> </html>