modargs: Add pa_modargs_get_sample_rate()

return sample rate from the "rate" module argument

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
This commit is contained in:
Peter Meerwald 2013-08-08 08:19:34 +02:00 committed by Tanu Kaskinen
parent 22ee1b9d53
commit 832ad693f5
2 changed files with 18 additions and 0 deletions

View file

@ -364,6 +364,21 @@ int pa_modargs_get_value_volume(pa_modargs *ma, const char *key, pa_volume_t *va
return 0;
}
int pa_modargs_get_sample_rate(pa_modargs *ma, uint32_t *rate) {
uint32_t rate_local;
pa_assert(rate);
if ((pa_modargs_get_value_u32(ma, "rate", &rate_local)) < 0 ||
rate_local <= 0 ||
rate_local > PA_RATE_MAX)
return -1;
*rate = rate_local;
return 0;
}
int pa_modargs_get_sample_spec(pa_modargs *ma, pa_sample_spec *rss) {
const char *format;
uint32_t channels;

View file

@ -53,6 +53,9 @@ 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 rate from the "rate" argument */
int pa_modargs_get_sample_rate(pa_modargs *ma, uint32_t *rate);
/* 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);