After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 795032 - h265parse: Make caps writable before modifying them
h265parse: Make caps writable before modifying them
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 1.14.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-04-06 14:28 UTC by Seungha Yang
Modified: 2018-04-12 02:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
h265parse: Make caps writable before modifying them (1.17 KB, patch)
2018-04-06 14:29 UTC, Seungha Yang
committed Details | Review

Description Seungha Yang 2018-04-06 14:28:40 UTC
Fix following assertion failure
GStreamer-CRITICAL **: gst_structure_remove_field: assertion 'IS_MUTABLE (structure)' failed
Comment 1 Seungha Yang 2018-04-06 14:29:44 UTC
Created attachment 370589 [details] [review]
h265parse: Make caps writable before modifying them
Comment 2 Seungha Yang 2018-04-06 14:33:48 UTC
Can reproduce

gst-launch-1.0 souphttpsrc location=http://media.w3.org/2010/05/sintel/trailer.mp4 ! qtdemux ! h264parse ! queue ! avdec_h264 ! queue !  videoconvert ! x265enc ! h265parse ! mpegtsmux ! fakesink
Comment 3 Nicolas Dufresne (ndufresne) 2018-04-06 19:04:41 UTC
I see that in 1.14 too, just saying so we don't forget to backport.
Comment 4 Nicolas Dufresne (ndufresne) 2018-04-06 19:06:56 UTC
Review of attachment 370589 [details] [review]:

::: gst/videoparsers/gsth265parse.c
@@ +2270,2 @@
   /* Try if we can put the downstream caps first */
+  pcopy = gst_caps_copy (peercaps);

There was I guess a reason to no use gst_caps_make_writable() ?
Comment 5 Seungha Yang 2018-04-08 05:29:34 UTC
(In reply to Nicolas Dufresne (stormer) from comment #4)
> Review of attachment 370589 [details] [review] [review]:
> 
> ::: gst/videoparsers/gsth265parse.c
> @@ +2270,2 @@
>    /* Try if we can put the downstream caps first */
> +  pcopy = gst_caps_copy (peercaps);
> 
> There was I guess a reason to no use gst_caps_make_writable() ?

Both gst_caps_make_writable() and gst_caps_copy() work well, but I just followed the h264parse version patch for consistency. 

https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=c0226e08e324fb416c2bb8eb95bb690152397f84
Comment 6 Nicolas Dufresne (ndufresne) 2018-04-12 02:48:55 UTC
Queued for 1.14.1
Attachment 370589 [details] pushed as c65a537 - h265parse: Make caps writable before modifying them

commit 3caf16a1994b55b4ca19e2d5802b6a60e0a1149c (HEAD -> master, origin/master, origin/HEAD)
Author: Seungha Yang <pudding8757@gmail.com>
Date:   Fri Apr 6 23:22:39 2018 +0900

    h265parse: Make caps writable before modifying them
    
    Fix following assertion failure
    GStreamer-CRITICAL **: gst_structure_remove_field: assertion 'IS_MUTABLE (structure)' failed
    
    https://bugzilla.gnome.org/show_bug.cgi?id=795032