[Bug 678021] New: The IEC 61937 payloader only supports bigendian output

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Jun 13 07:08:13 PDT 2012


https://bugzilla.gnome.org/show_bug.cgi?id=678021
  GStreamer | gst-plugins-base | 0.10.x

           Summary: The IEC 61937 payloader only supports bigendian output
    Classification: Platform
           Product: GStreamer
           Version: 0.10.x
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: n770galaxy at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


In order to add support for SPDIF output with directsoundsink and osxaudiosink
it is required to use the IEC 61937 payloader in -base.

That payloader is only able to generate a bigendian version of the payloaded
data and it doesn't match with the requirements for directsound and CoreAudio.

For directsound is exepcted to provide data in the native endianess.
For CoreAudio it could be big or little endian depending on the hardware and
the api has to queried on that.

The current workaround is to swap bytes again after payloading.

As an example the VLC payloader support both S16LE and S16BE formats for
payloading.

That means we should have a way to instruct the payloader in which format
should the payloaded data be provided.

As we discussed at #gstreamer the less intrussive (not breaking API or
behaviour) would be change the payloader to honour the bigend flag in the spec.

Also change the caps parser to set spec->bigend = TRUE for the compressed
formats and keep the current default behaviour.

Having this change in place would allow osxaudiosink and directsoundsink to
specify in which endianess data has to be payloaded.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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