modargs: Adding pa_modargs_get_value_volume()

This function gets a pa_volume_t from a string.
This commit is contained in:
Flavio Ceolin 2012-11-29 11:04:12 -02:00 committed by Tanu Kaskinen
parent 9e2b6a0b5c
commit f9beb8e867
2 changed files with 18 additions and 0 deletions

View file

@ -350,6 +350,20 @@ int pa_modargs_get_value_double(pa_modargs *ma, const char *key, double *value)
return 0;
}
int pa_modargs_get_value_volume(pa_modargs *ma, const char *key, pa_volume_t *value) {
const char *v;
pa_assert(value);
if (!(v = pa_modargs_get_value(ma, key, NULL)))
return 0;
if (pa_parse_volume(v, value) < 0)
return -1;
return 0;
}
int pa_modargs_get_sample_spec(pa_modargs *ma, pa_sample_spec *rss) {
const char *format;
uint32_t channels;

View file

@ -26,6 +26,7 @@
#include <pulse/sample.h>
#include <pulse/channelmap.h>
#include <pulse/proplist.h>
#include <pulse/volume.h>
#include <pulsecore/macro.h>
typedef struct pa_modargs pa_modargs;
@ -48,6 +49,9 @@ int pa_modargs_get_value_boolean(pa_modargs *ma, const char *key, pa_bool_t *val
/* Return a module argument as double value in *value */
int pa_modargs_get_value_double(pa_modargs *ma, const char *key, double *value);
/* Return a module argument as pa_volume_t value in *value */
int pa_modargs_get_value_volume(pa_modargs *ma, const char *key, pa_volume_t *value);
/* Return sample spec data from the three arguments "rate", "format" and "channels" */
int pa_modargs_get_sample_spec(pa_modargs *ma, pa_sample_spec *ss);