summaryrefslogtreecommitdiffstats
path: root/src/gsttools/qgstreamervideowidget.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Updated license headersAntti Kokko2016-01-191-14/+20
| | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I324f65c61171f36641472964d095d72e452afb3a Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* GStreamer: refactored widget and window control.Yoann Lopes2015-08-181-169/+81
| | | | | | | | | | | | | | | | | | | Instead of always using xvimagesink as GStreamer backend for the widget and window control (works only with X11), we now try to pick a video sink that fits the current configuration. It first tries a set of known video sinks that can work with the Qt platform plugin in use. If none is available, it dynamically picks a video sink available on the system that can be used with our backend. Even if the video sink is now picked in a smarter way, xcb is still the only supported platform plugin. The reason is that it's the only Unix plugin which can provide a valid native window handle. Additional work is needed to support other plugins like wayland or directfb. Change-Id: I3843dea363d6a0b85a6cc1f2952783b743e48ac6 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* GStreamer: don't use xvimagesink when Qt is not using Xcb.Yoann Lopes2015-05-261-1/+4
| | | | | | | | | | | | | We need a native X window handle to be able to use xvimagesink. If Qt doesn't use the Xcb platform plugin, don't try to use that element. This patch makes QVideoWidget usable when the system doesn't run X11 but xvimagesink is installed anyway. Widget and window controls become invalid and the plugin therefore falls back to the renderer control. Change-Id: I6efd410508f35b06f00f6e4e5149c97cbd280d0d Task-number: QTBUG-46169 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Liang Qi2015-04-151-3/+0
|\ | | | | | | | | | | | | | | Conflicts: src/multimedia/playback/playlistfileparser.cpp src/plugins/windowsaudio/qwindowsaudiodeviceinfo.cpp Change-Id: I52950def2b8283ae15797d05d4ead6a1256eba19
| * GStreamer: don't use ximagesink in QGstreamerVideoWidget.Yoann Lopes2015-03-241-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When xvimagesink is not available, we were falling back to ximagesink. That element doesn't provide some important features: it doesn't scale frames to the window size and doesn't support brightness, contrast, hue and saturation adjustments. That kind of makes it useless, at least on its own. We would need to use at least a 'videoscale' element together with it to have it working properly. We're better off letting QVideoWidget fall back to QVideoRendererControl when xvimagesink is not available. Change-Id: Ic8c62fbefa3227430e3bae24630c8b3944aabb47 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-02-241-20/+17
|\| | | | | | | | | | | | | | | | | Conflicts: qtmultimedia.pro src/gsttools/qgstreamervideowidget.cpp src/plugins/gstreamer/camerabin/camerabinservice.cpp Change-Id: I883f20dc17924ab42514a1aa00d16675a0f13d99
| * GStreamer: improved logic for window and widget controls usage.Yoann Lopes2015-02-181-22/+17
| | | | | | | | | | | | | | | | | | | | Provide these controls only when the xvimagesink gstreamer element is available. This allows QVideoWidget to fallback to QVideoRendererControl when xvimagesink is not available. Task-number: QTBUG-41618 Change-Id: I59f90ea8857c7ec0ffa08be9804e5458d95b79c4 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Update copyright headersAntti Kokko2015-02-121-7/+7
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I1c6faa4f59f8eca54f01ef20941fa60161dd7872 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | GStreamer: port to 1.0.Yoann Lopes2014-11-271-5/+24
|/ | | | | | | | | | | | | | | 0.10 is still used by default. To enable GStreamer 1.0, pass GST_VERSION=1.0 to qmake for qtmultimedia.pro. Contributions from: Andrew den Exter <andrew.den.exter@qinetic.com.au> Ilya Smelykh <ilya@videoexpertsgroup.com> Jim Hodapp <jim.hodapp@canonical.com> Sergio Schvezov <sergio.schvezov@canonical.com> Change-Id: I72a46d1170a8794a149bdb5e20767afcc5b7587c Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* Update license headers and add new license filesAntti Kokko2014-08-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: Ied06887225df341064c12bcc14c259ae74116f2e Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* GStreamer: fix memory leaks.Yoann Lopes2014-03-211-2/+2
| | | | | | | Many GStreamer objects were not properly managed or never released. Change-Id: I38b3854e8b9e2264b5b647f331d3bb16b886e2d6 Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* whitespace fixesOswald Buddenhagen2014-01-301-1/+1
| | | | | | | | remove trailing spaces & expand tabs. Change-Id: I05ef110abed90f13b47752760ffb4567a11a6a5e Reviewed-by: Yoann Lopes <yoann.lopes@digia.com> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
* Some cleanup in the GStreamer plugin.Yoann Lopes2013-09-201-3/+0
| | | | | | | | | | | | Removed QGstreamerVideoOverlay and related classes. It was used as 'Window' control but performs worse than QGstreamerVideoWindow which does basically the same thing using GStreamer ready-made components instead. Removed X11 dependencies and related configuration tests. It was only needed for QGstreamerVideoOverlay. Change-Id: I2ad2636ccf0060e56cd64f3d9e5b3c24dc75f5a3 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | Change-Id: Ia8c1c38aba1544603fada8c414cc856f365fd15b Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-241-24/+24
| | | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Id77334cfb15de096941c88e32d04ca07b4eb4709 Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Remove the WA_PaintOnScreen widget attribute for vide widgetsLars Knoll2012-08-081-1/+0
| | | | | | | | | This attribute doesn't quite do what it used to do in Qt 4.x anymore, and will lead to Qt not painting the video at all. Change-Id: I2338815756cab82ae152058ff5a7b5f14e07001e Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* syncX() doesn't do anything anymore. Remove it.Thiago Macieira2012-06-261-3/+0
| | | | | Change-Id: Id15af428e1d04606564bad093847b3dc5a731e85 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
* Fix namespace compilation.Toby Tomkins2012-06-251-0/+4
| | | | | | Change-Id: Id8d71a48df20da16647834e8f9732012f26f928f Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Split gstreamer plugin into smaller plugins providing fewer servicesJonas Rabbe2012-04-271-0/+352
The gstreamer blob has been split into four plugins: audiodecoder, camerabin, mediacapture, and mediaplayer. Note: camerabin is still disabled because it is untested camerabin2 implementation. A new qmake configuration use_gstreamer_camera has been introduced and is needed for the mediacapture plugin to expose the camera service. This configuration has been disabled by default. Shared functionality has been moved to the internal gsttools library. Change-Id: Ifb2604f440cfa97513d39f5d7978766c88eaec45 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>