Bug 1149885

Summary: Qt5 multimedia and webkit depend on conflicting GStreamer versions
Product: [Fedora] Fedora Reporter: Vesa Halttunen <vesuri>
Component: qt5-qtmultimediaAssignee: Rex Dieter <rdieter>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 20CC: jgrulich, jreznik, kevin, ltinkl, rdieter, rnovacek, than
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-06-30 01:10:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1092641    
Attachments:
Description Flags
Test case for the problem none

Description Vesa Halttunen 2014-10-06 20:16:20 UTC
Created attachment 944371 [details]
Test case for the problem

Description of problem:
qt5-qtmultimedia and qt5-qtwebkit are built in such a way that using both of them in the same application is not possible. When executing an application that uses both of them, the output shows

GLib-GObject-WARNING **: cannot register existing type 'GstObject'

and the application does not work properly. This happens because qt5-qtwebkit is built against GStreamer 1.x and qt5-qtmultimedia is built against GStreamer 0.x:

$ ldd /usr/lib/libQt5WebKitWidgets.so.5 | grep gstreamer
	libgstreamer-1.0.so.0 => /lib/libgstreamer-1.0.so.0 (0xb3cc1000)
$ ldd /usr/lib/qt5/plugins/mediaservice/libgstmediaplayer.so | grep gstreamer
	libgstreamer-0.10.so.0 => /lib/libgstreamer-0.10.so.0 (0xb7575000)

Version-Release number of selected component (if applicable):
5.3.2, also applies to earlier versions

How reproducible:
100%

Steps to Reproduce:
1. Write a Qt application with QT += webkitwidgets multimediawidgets in the .pro file
2. Instantiate QMediaPlayer and QGraphicsWebView in the application
3. Run the application

Actual results:
The application does not function correctly. Output:
(qtbug:7505): GLib-GObject-WARNING **: cannot register existing type 'GstObject'

(qtbug:7505): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(qtbug:7505): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed

(qtbug:7505): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(qtbug:7505): GStreamer-CRITICAL **: gst_element_class_set_details_simple: assertion 'GST_IS_ELEMENT_CLASS (klass)' failed

(qtbug:7505): GStreamer-WARNING **: static caps 0xb1ebd7ec string is NULL

(qtbug:7505): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(qtbug:7505): GStreamer-WARNING **: static caps 0xb1ebd7ac string is NULL

(qtbug:7505): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(qtbug:7505): GStreamer-WARNING **: static caps 0xb1ebd7ec string is NULL

(qtbug:7505): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed

Expected results:
The application functions correctly. No output.

Comment 1 Kevin Kofler 2014-10-06 23:59:27 UTC
We cannot fix this until upstream ports QtMultimedia to GStreamer 1. If / as long as that doesn't happen, consider QtMultimedia (both the Qt 4 and Qt 5 versions) basically no longer supported under Fedora.

Comment 2 Kevin Kofler 2014-10-07 00:02:03 UTC
PS: For developers, we strongly recommend using kf5-phonon (or for Qt 4, the original phonon) instead, which is actually actively maintained and supports GStreamer 1.

Comment 3 Kevin Kofler 2014-10-07 03:05:28 UTC
For qt5-qtmultimedia, there's some code in wip/gstreamer-1.0, I don't know what the status is though.

Comment 4 Kevin Kofler 2014-10-07 03:07:31 UTC
The Jolla people, who have been doing the port, have this to say:
https://together.jolla.com/question/54393/please-release-gstreamer-10/
> QtMultimedia patches have been submitted and waiting for review.

So it looks like that stuff might already be shippable, we should consider it.

Comment 6 Rex Dieter 2014-10-07 04:27:24 UTC
Either that, or we set qt5-qtwebkit to use gst-0.10 for fedora <= 20

Comment 7 Kevin Kofler 2014-10-19 17:34:55 UTC
For Fedora <= 20, that (using GStreamer 0.10 in qt5-qtwebkit) might possibly make sense (also because Phonon is also using 0.10 there), but surely not for F21+ where we moved everything to GStreamer 1.

Comment 8 Rex Dieter 2014-10-31 16:09:48 UTC
Working on merging the gstreamer-1.0 branch patches now.

Comment 9 Fedora End Of Life 2015-05-29 13:02:06 UTC
This message is a reminder that Fedora 20 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 20. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '20'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 20 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 10 Fedora End Of Life 2015-06-30 01:10:05 UTC
Fedora 20 changed to end-of-life (EOL) status on 2015-06-23. Fedora 20 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.