[Bug 751144] New: Playing 2 channel mulaw/alaw clips with pulsesink, only 1 channel output can be heard

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Jun 18 03:03:59 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=751144

            Bug ID: 751144
           Summary: Playing 2 channel mulaw/alaw clips with pulsesink,
                    only 1 channel output can be heard
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: lyon.wang at freescale.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Created attachment 305524
  --> https://bugzilla.gnome.org/attachment.cgi?id=305524&action=edit
mulaw clip for reproducing the issue.

When we played 2 channel mulaw wav clips with pulsesink as below command line:
 gst-launch-1.0 filesrc location=Mulaw_22.05khz_353kbps_2_8bit.wav ! wavparse !
pulsesink

There is only 1 channel output can be heard.  (please see attached file for the
mulaw clip)


Checked pulsesink plugin, it will invoke gst_pulse_gst_to_channel_map() to map
the gst channel position to pulse channel position.
However, when playing mulaw clips,, the position array's value in audioinfo
sturcture is all 0 (not initialized to default value), so that when mapping to
pulse channel postion, it will both be considered as FRONT_LEFT channel. hence,
only left channel can be heard.

Checked the pulsesink plugin, it will call gst_audio_ring_buffer_parse_caps()
in which it will set audioinfo from caps, but in this function only audio/x-raw
clips set the audio_info and initialized position array.

Attached a patch for this issue. when in gst_audio_ring_buffer_parse_caps(),
need initialize audioinfo channel position array when mime type is audio/x-alaw
and audio/x-mulaw

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list