Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1158676 - cogl-gst: coglsink has a higher rank than cluttersink
Summary: cogl-gst: coglsink has a higher rank than cluttersink
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: cogl
Version: 21
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Peter Robinson
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-10-29 20:37 UTC by Fabrice Bellet
Modified: 2014-11-16 14:44 UTC (History)
3 users (show)

Fixed In Version: cogl-1.18.2-8.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-16 14:44:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Fabrice Bellet 2014-10-29 20:37:38 UTC
Hi!

I noticed that the coglsink elements has a higher rank than cluttersink, since it is enabled in the cogl built. so it becomes preferred in gstreamer pipelines, when using the autovideosink element. I'm not sure this is a desired move (gnome bug #730337). For example in Fedora 21, it causes errors in pipepiles using hardware decoders, banshee fails to play videos too.

$ wget -O /tmp/NeroAVC.mp4 http://samples.mplayerhq.hu/V-codecs/h264/NeroAVC.mp4
$ gst-launch-1.0 filesrc location=/tmp/NeroAVC.mp4 ! qtdemux ! h264parse ! vaapidecode ! videoconvert ! cluttersink

 -> it works fine

$ gst-launch-1.0 filesrc location=/tmp/NeroAVC.mp4 ! qtdemux ! h264parse ! vaapidecode ! videoconvert ! coglsink
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: User requested driver 'vdpau'
libva info: Trying to open /usr/lib64/dri/vdpau_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed
ERROR: from element /GstPipeline:pipeline0/GstQTDemux:qtdemux0: GStreamer encountered a general stream error.

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed
Additional debug info:
qtdemux.c(4434): gst_qtdemux_loop (): /GstPipeline:pipeline0/GstQTDemux:qtdemux0:
streaming stopped, reason not-negotiated

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(gst-launch-1.0:20810): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed
Freeing pipeline ...

So, maybe the rank of the cogl gst element could be tweaked, so cluttersink remains the default videosink ?

Comment 1 Kalev Lember 2014-11-09 19:46:58 UTC
Would it make sense to completely disable the cogl gst element for F21? Do you know of any programs that actually need it?

I believe it might be needed for clutter-gst 3, but we aren't shipping that in  Fedora yet and all GNOME 3.14 modules are still using clutter-gst 2.0.x, so that shouldn't be a concern.

Comment 2 Fabrice Bellet 2014-11-12 11:37:36 UTC
I made a local rebuilt, with the cogl gst element disabled for F21, and it works fine for me (banshee, totem). But I don't use much other apps that require a gst pipeline, so my use case can not speak for others.

Comment 3 Kalev Lember 2014-11-13 08:31:30 UTC
OK, I've done a cogl build that disables cogl-gst. Sounds like the best option for F21.

Comment 4 Fedora Update System 2014-11-13 08:39:53 UTC
cogl-1.18.2-8.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/cogl-1.18.2-8.fc21

Comment 5 Fedora Update System 2014-11-14 12:03:58 UTC
Package cogl-1.18.2-8.fc21:
* should fix your issue,
* was pushed to the Fedora 21 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing cogl-1.18.2-8.fc21'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-15014/cogl-1.18.2-8.fc21
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2014-11-16 14:44:25 UTC
cogl-1.18.2-8.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.