]> code.delx.au - pulseaudio/commitdiff
modargs: Add pa_modargs_get_resample_method()
authorPeter Meerwald <p.meerwald@bct-electronic.com>
Thu, 8 Aug 2013 06:19:33 +0000 (08:19 +0200)
committerTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Tue, 29 Oct 2013 17:26:58 +0000 (19:26 +0200)
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
src/pulsecore/modargs.c
src/pulsecore/modargs.h

index 7665b91b88343bcfb53997d3dda0f0a1d746366b..8333de7d62eac488f1b45fa3f7dcd72aa55c2833 100644 (file)
@@ -428,6 +428,24 @@ int pa_modargs_get_channel_map(pa_modargs *ma, const char *name, pa_channel_map
     return 0;
 }
 
+int pa_modargs_get_resample_method(pa_modargs *ma, pa_resample_method_t *rmethod) {
+    const char *m;
+
+    pa_assert(ma);
+    pa_assert(rmethod);
+
+    if ((m = pa_modargs_get_value(ma, "resample_method", NULL))) {
+        pa_resample_method_t method = pa_parse_resample_method(m);
+
+        if (method == PA_RESAMPLER_INVALID)
+            return -1;
+
+        *rmethod = method;
+    }
+
+    return 0;
+}
+
 int pa_modargs_get_sample_spec_and_channel_map(
         pa_modargs *ma,
         pa_sample_spec *rss,
index 95be54d8fbe544922411d9c76a798889e0f7f591..274e943061b102f5f9cd8dbb2395a135eb8a7103 100644 (file)
@@ -28,6 +28,7 @@
 #include <pulse/proplist.h>
 #include <pulse/volume.h>
 #include <pulsecore/macro.h>
+#include <pulsecore/resampler.h>
 
 typedef struct pa_modargs pa_modargs;
 
@@ -58,6 +59,9 @@ int pa_modargs_get_sample_spec(pa_modargs *ma, pa_sample_spec *ss);
 /* Return channel map data from the argument "channel_map" if name is NULL, otherwise read from the specified argument */
 int pa_modargs_get_channel_map(pa_modargs *ma, const char *name, pa_channel_map *map);
 
+/* Return resample method from the argument "resample_method" */
+int pa_modargs_get_resample_method(pa_modargs *ma, pa_resample_method_t *method);
+
 /* Combination of pa_modargs_get_sample_spec() and
 pa_modargs_get_channel_map(). Not always suitable, since this routine
 initializes the map parameter based on the channels field of the ss