opensles: Explicitly specify layout=interleaved in caps
authorArun Raghavan <arun@centricular.com>
Wed, 8 Apr 2015 05:22:17 +0000 (10:52 +0530)
committerArun Raghavan <git@arunraghavan.net>
Wed, 8 Apr 2015 10:08:17 +0000 (15:38 +0530)
This is fine to hard-code. Section 9.1.8 of the OpenSL ES 1.1
specification, it is expected that multi-channel audio is always
interleaved.

sys/opensles/openslessink.c
sys/opensles/openslessrc.c

index 266174a..236f8b3 100644 (file)
@@ -65,7 +65,8 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
     GST_PAD_ALWAYS,
     GST_STATIC_CAPS ("audio/x-raw, "
         "format = (string) { " GST_AUDIO_NE (S16) ", " GST_AUDIO_NE (U8) "}, "
-        "rate = (int) { " RATES "}, " "channels = (int) [1, 2]")
+        "rate = (int) { " RATES "}, " "channels = (int) [1, 2], "
+        "layout = (string) interleaved")
     );
 
 #define _do_init \
index 3fd9cb2..18db5eb 100644 (file)
@@ -48,7 +48,8 @@ static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src",
     GST_STATIC_CAPS ("audio/x-raw, "
         "format = (string) " GST_AUDIO_NE (S16) ", "
         "rate = (int) 16000, "
-        "channels = (int) 1")
+        "channels = (int) 1, "
+        "layout = (string) interleaved")
     );
 /* *INDENT-ON* */