[gstreamer-bugs] [Bug 606371] New: mpegdemux2 plugin doesn't work on some ARM CPU due to the guint32*'s alignment

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Thu Jan 7 18:54:39 PST 2010


https://bugzilla.gnome.org/show_bug.cgi?id=606371
  GStreamer | gst-plugins-bad | git

           Summary: mpegdemux2 plugin doesn't work on some ARM CPU due to
                    the guint32*'s alignment
    Classification: Desktop
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: pulq.ustc at gmail.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


guint32* address is required to align to int boundary, which will be 4x. Can't
get a correct int value with address offset 1,2,3.

I modified the original gstmpegdemux.c ( 
http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst/mpegdemux/gstmpegdemux.c)
by replacing:
"GUINT32_FROM_BE (*(guint32 *) data)" --> "GST_READ_UINT32_BE(data)" 
"GUINT32_FROM_BE (*(guint32 *) (data + 4))" ---> GST_READ_UINT32_BE((data + 4))

And it works well.

-- 
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