diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base-1.4.5/0005-Fix_alaw_mulaw_channel_position.patch b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base-1.4.5/0005-Fix_alaw_mulaw_channel_position.patch new file mode 100644 index 000000000..066d9fcf6 --- /dev/null +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base-1.4.5/0005-Fix_alaw_mulaw_channel_position.patch @@ -0,0 +1,39 @@ +From: Lyon Wang +Date: Thu, 18 Jun 2015 17:38:09 +0800 +Subject: [PATCH] audioringbuffer: Fix alaw/mulaw channel positions + + For alaw/mulaw we should also try to initialize the channel positions in the + ringbuffer's audio info. This allow pulsesink to directly use the channel + positions instead of using the default zero-initialized ones, which doesn't + work well. + +Bugzilla URL: https://bugzilla.gnome.org/show_bug.cgi?id=751144 + +Upstream-Status: Backport [1.5.2] + +diff --git a/gst-libs/gst/audio/gstaudioringbuffer.c b/gst-libs/gst/audio/gstaudioringbuffer.c +index 7f4b17b017d6..66335250fc5c 100644 +--- a/gst-libs/gst/audio/gstaudioringbuffer.c ++++ b/gst-libs/gst/audio/gstaudioringbuffer.c +@@ -218,6 +218,10 @@ gst_audio_ring_buffer_parse_caps (GstAudioRingBufferSpec * spec, GstCaps * caps) + gst_structure_get_int (structure, "channels", &info.channels))) + goto parse_error; + ++ if (!(gst_audio_channel_positions_from_mask (info.channels, 0, ++ info.position))) ++ goto parse_error; ++ + spec->type = GST_AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW; + info.bpf = info.channels; + } else if (g_str_equal (mimetype, "audio/x-mulaw")) { +@@ -226,6 +230,10 @@ gst_audio_ring_buffer_parse_caps (GstAudioRingBufferSpec * spec, GstCaps * caps) + gst_structure_get_int (structure, "channels", &info.channels))) + goto parse_error; + ++ if (!(gst_audio_channel_positions_from_mask (info.channels, 0, ++ info.position))) ++ goto parse_error; ++ + spec->type = GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW; + info.bpf = info.channels; + } else if (g_str_equal (mimetype, "audio/x-iec958")) { diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bbappend b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bbappend new file mode 100644 index 000000000..a09cd519d --- /dev/null +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bbappend @@ -0,0 +1,5 @@ +# Copyright (C) 2015 Digi International + +FILESEXTRAPATHS_prepend := "${THISDIR}/${BP}:" + +SRC_URI += "file://0005-Fix_alaw_mulaw_channel_position.patch"