[Bug 729114] New: audiodecoder: default caps nego will manually fixate non-mutable caps

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Apr 28 08:07:26 PDT 2014


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

           Summary: audiodecoder: default caps nego will manually fixate
                    non-mutable caps
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: haakon.sporsheim at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=275355)
 View: https://bugzilla.gnome.org/attachment.cgi?id=275355
 Review: https://bugzilla.gnome.org/review?bug=729114&attachment=275355

Simple oneliner to make caps writable.

gst_audio_decoder_negotiate_default_caps iterates over allowed caps and
manually
fixates audio channels and rate using either gst_structure_set or
gst_structure_fixate_field_nearest_int.

The latter asserts that the structure (parent caps) is mutable, which can fail.

Attached is a patch that makes the caps writable before manually fixating.
You might want to rewrite the whole function. Iterating over all internal
structures before calling gst_caps_fixate which will truncate the caps anyway
seems a bit of a waste.

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