raop: Don't use incompatible default sample spec parameters
authorTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Tue, 19 Aug 2014 11:08:34 +0000 (14:08 +0300)
committerTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Sun, 24 Aug 2014 09:08:12 +0000 (12:08 +0300)
Since the RAOP sink supports only some formats and channel counts, we
shouldn't blindly use pa_core.default_sample_spec. This patch changes
things so that we default to PA_SAMPLE_S16NE and 2 channels, and only
take the sample rate from pa_core.default_sample_spec.

src/modules/raop/module-raop-sink.c

index 2d08645..13036d9 100644 (file)
@@ -518,15 +518,17 @@ int pa__init(pa_module*m) {
         goto fail;
     }
 
-    ss = m->core->default_sample_spec;
+    ss.format = PA_SAMPLE_S16NE;
+    ss.channels = 2;
+    ss.rate = m->core->default_sample_spec.rate;
     if (pa_modargs_get_sample_spec(ma, &ss) < 0) {
         pa_log("invalid sample format specification");
         goto fail;
     }
 
-    if ((/*ss.format != PA_SAMPLE_U8 &&*/ ss.format != PA_SAMPLE_S16NE) ||
+    if ((ss.format != PA_SAMPLE_S16NE) ||
         (ss.channels > 2)) {
-        pa_log("sample type support is limited to mono/stereo and U8 or S16NE sample data");
+        pa_log("sample type support is limited to mono/stereo and S16NE sample data");
         goto fail;
     }