roar_vs_volume_get(3) | RoarAudio Programmer's Manual | roar_vs_volume_get(3) |
roar_vs_volume_get, roar_vs_volume_mono, roar_vs_volume_stereo - Get or set volume for audio stream
#include <roaraudio.h>
int roar_vs_volume_get (roar_vs_t * vss, float * l, float * r, int * error);
int roar_vs_volume_mono (roar_vs_t * vss, float c, int * error);
int roar_vs_volume_stereo (roar_vs_t * vss, float l, float r, int * error);
Those functions are used to get or set volume for the given stream.
roar_vs_volume_get() gets the volume for the given stream in stereo form as a left and a right component (L/R). If you need the mono volume just divide the sum of both by two. See examples below.
roar_vs_volume_mono() sets the mono volume for the stream. Balance information is not kept.
roar_vs_volume_stereo() sets the stereo volume for the stream as left and right component (L/R).
Small numerical errors are detected and corrected. Bigger errors will result in a out of range error.
Note that to mute the stream you MUST NOT use volume setting but roar_vs_mute(3).
On success these calls return 0. On error, -1 is returned.
Getting mono volume:
float l, r, c;
int err;
if ( roar_vs_volume_get(vss, &l, &r, &err) == -1 ) {
/* handle error */
}
c = (l + r)/2.;
May 2011 | RoarAudio |