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 740325 - Add a setVideoSink() method to QGst::Ui::GraphicsVideoSurface
Add a setVideoSink() method to QGst::Ui::GraphicsVideoSurface
Status: RESOLVED WONTFIX
Product: GStreamer
Classification: Platform
Component: qt-gstreamer
git master
Other All
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-11-18 16:11 UTC by Jeremie Knuesel
Modified: 2018-05-04 14:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add a setVideoSink() method to QGst::Ui::GraphicsVideoSurface to allow the use of a pre-existing qtvideosink element (4.63 KB, patch)
2014-11-18 16:11 UTC, Jeremie Knuesel
none Details | Review

Description Jeremie Knuesel 2014-11-18 16:11:16 UTC
Created attachment 290927 [details] [review]
Add a setVideoSink() method to QGst::Ui::GraphicsVideoSurface to allow the use of a pre-existing qtvideosink element

The GraphicsVideoSurface class creates a qtvideosink element on demand to bind to a QGraphicsView. The API doesn't allow using a pre-existing qtvideosink created independently from a GraphicsVideoSurface. For example one cannot bind to an element created with QGst::Parse::launch. The proposed patch adds a setVideoSink() method to GraphicsVideoSurface to provide this flexibility.
Comment 1 George Kiagiadakis 2018-05-04 14:56:16 UTC
Thank you for that patch. However, I don't find it suitable for merging. The reason why it is not allowed to set the element on this class is because it's too error prone. There are several ways the internal state of the various components can get messed up and it requires a lot of checks, which are not in your patch. I don't think that using the internal element is too much of an annoyance.