summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Fix uninitialized memory reads in MFAudioDecoderControl.v5.5.0-alpha1Friedemann Kleint2015-03-101-2/+4
| | | | | | | | | | | | | | Initialize all members in constructor. [W] UMR: Uninitialized memory read in MFAudioDecoderControl::handleMediaSourceReady(void) {1 occurrence} Error location MFAudioDecoderControl::handleMediaSourceReady(void) [c:\qt\qt-55-32\qt-55-32\qtmultimedia\src\plugins\wmf\decoder\mfaudiodecodercontrol.cpp:254] [W] UMR: Uninitialized memory read in MFAudioDecoderControl::activatePipeline(void) {1 occurrence} MFAudioDecoderControl::activatePipeline(void) [c:\qt\qt-55-32\qt-55-32\qtmultimedia\src\plugins\wmf\decoder\mfaudiodecodercontrol.cpp:289] Task-number: QTBUG-40571 Change-Id: I6f97cf72284f739ceffcf65162963d00de979ea2 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* AVCaptureDeviceFormat - avoid duplicates (OS X/iOS)Timur Pocheptsov2015-03-106-93/+140
| | | | | | | | | | | Excluding video range (iOS) is not the right way to avoid "duplicates" - with other devices there can be also duplicates (formats with the same resolutions), but completely different pixel formats. Since we do not know what they will be in advance, we take the media subtype from the initial preset for a capture device and use it as a filter. Update viewfinder and image encoder settings controls. Change-Id: If20aea24b19b43574d5c3e9bf2ba85f50fc08916 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-03-031-1/+5
|\ | | | | | | | | | | | | Conflicts: src/gsttools/qgstutils.cpp Change-Id: Ic54ab6c6560ded0db4b98f83256d997bee828083
| * Check for the quick module before adding the videonode pluginAndy Shaw2015-02-271-1/+5
| | | | | | | | | | Change-Id: I050356086f5d82221968016754eb01c1b8f35490 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Image encoder control - version for OS X/iOSTimur Pocheptsov2015-03-028-6/+386
| | | | | | | | | | | | | | | | QImageEncoderControl - implementation for AVFoundation plugin (OS X/iOS, at the moment iOS >= 7.0). Change-Id: Ibc2c3ae48252dd4698e263f5abca5c328482d5e7 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Viewfinder settings control (1) for OS X/iOSTimur Pocheptsov2015-03-024-0/+184
| | | | | | | | | | | | | | | | | | QCameraViewfinderSettingsControl - version for AVFoundation plugin ('obsolete' viewfinder settings control interface, camera session uses v2 instead). v1 is implemented using v2 (the v2 object from camera service). Change-Id: I81207b52b0ba5a67e64465f0e5e0c80d7267df3e Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Viewfinder settings control (2) - version for iOS/OS XTimur Pocheptsov2015-03-029-3/+716
| | | | | | | | | | | | | | | | QCameraViewfinderSettingsControl2 - version for AV foundation plugin (the new settings control interface implemented). Change-Id: I3fbfb87925e57c914d43eb711fa5422e26981207 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Add AVF camera utilities - general aux. functions/classesTimur Pocheptsov2015-03-026-8/+430
| | | | | | | | | | | | | | | | | | Move configuration lock class into avfutility.h + add several standalone functions to work with AVCaptureDeviceFormat/AVCaptureDevice etc. - utility functions that are not specific to any class. Change-Id: Idba544248772a3b2a4e00dddb377b1c0e62b8085 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | DirectShow: implemented QCameraViewfinderSettingsControl2.Yoann Lopes2015-02-267-55/+284
| | | | | | | | | | Change-Id: I42ed49676e2fbc7207d8fe4579ad1fc0d62df138 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | ios: Enable volume and mute functionalityFrank Osterfeld2015-02-251-9/+21
| | | | | | | | | | | | | | | | | | | | | | AVPlayer::setVolume and setMute also exist on iOS, so no need to ifdef them to be OS X-only. As they require iOS 7.0, add runtime checks to ensure that the methods exist. Task-number: QTBUG-39240 Change-Id: I10810705cef8e5d8c18e4c79a15fa06425ea57f9 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com> Reviewed-by: James Turner <james.turner@kdab.com>
* | ios: Do not leak texture cache objectsFrank Osterfeld2015-02-251-9/+11
| | | | | | | | | | | | | | | | | | Do not recreate m_textureCache if it already exists. This changes the memory allocation behavior of a simple iOS example program from linearly increasing to constant over time. Change-Id: I6ff13b586c653fb7b4cadfa9f4ebf985b07ee455 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-02-246-5/+51
|\| | | | | | | | | | | | | | | | | 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-186-5/+51
| | | | | | | | | | | | | | | | | | | | 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>
* | Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/devSergio Ahumada2015-02-227-19/+29
|\ \
| * | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2015-02-137-19/+29
| |\| | | | | | | | | | Change-Id: I5575a4ba13212c9bfe73a3de3ef17c6528beafc3
| | * Android: fix adjusting camera viewfinder resolution.Yoann Lopes2015-02-111-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The viewfinder resolution must be in the same aspect ratio as the image capture resolution. When adjusting the viewfinder resolution to comply with that restriction, we assumed that the ratios had to be exactly equal. Though, in practice, there can be a small difference. For example for resolutions 2592x1952 (ratio=1.3278) and resolution 640x480 (ratio=1.3333). Task-number: QTBUG-37525 Change-Id: Ia5a6dd3a4a6d901b24bf74f8aa4e34bffe61f89b Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| | * Fix some typosSergio Ahumada2015-02-112-2/+2
| | | | | | | | | | | | | | | Change-Id: Iaf8f50741d3103480668b4a654a202d8a363bc45 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * Merge "Merge remote-tracking branch 'origin/5.4.1' into 5.4" into ↵Frederik Gladhorn2015-02-101-1/+1
| | |\ | | | | | | | | | | | | refs/staging/5.4
| | | * Merge remote-tracking branch 'origin/5.4.1' into 5.4Frederik Gladhorn2015-02-101-1/+1
| | | |\ | | | | | | | | | | | | | | | Change-Id: I4167d268505cbc0b7b57888928670ae05302f4cb
| | | | * Ensure the system libraries are linked when -opengl dynamic is usedv5.4.1Andy Shaw2015-02-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-43211 Change-Id: Id543c74233f547c61164b9d32a5f6a3f6d1bc1b3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * | | Encode urls passed to media player properlyJoni Poikelin2015-02-101-1/+1
| | |/ / | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-44383 Change-Id: I2c63d5530ad76474ccad8ad69493419dd46032fa Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * | directshow: Fix plugging/unplugging a second cameraSergio Martins2015-02-051-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When having more than 1 camera (like one laptop integrated webcam and a separate one) you had to restart the application for QCameraInfo::availableCameras() to work. Change-Id: I47cfa928cfd9500524b81a4bf8ec5ebff0b79879 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * | Fix memory leak in QWindowsAudioDeviceInfo::availableDevices().Friedemann Kleint2015-02-051-0/+2
| | |/ | | | | | | | | | | | | | | | Task-number: QTBUG-44305 Change-Id: I8c5afd6d5c77ef1ef81c3b752c6246dc50406794 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | | Remove BlackBerry PlayBook support.Rafael Roquetto2015-02-187-64/+6
| | | | | | | | | | | | | | | | | | Change-Id: I21f9c21bd3badd30f3a989ce3412c9ad03f5f21d Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | | GStreamer: some improvements with the camerabin's capture settings.Yoann Lopes2015-02-183-30/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't pretend we support changing the image or video capture settings while the camera is active. The pipeline needs to be restarted in order to renegotiate caps. - Improved retrieving the supported capture resolutions and frame rates when using wrappercamerabinsrc. We now always get the supported values directly from the video source. Change-Id: I107193288e370af105a25d16568a8f5a76022ada Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer: improve camerabin audio settings checking.Yoann Lopes2015-02-181-3/+3
| | | | | | | | | | | | | | | | | | | | | Don't try setting a sample rate or a channel count equal to 0. Change-Id: Ib2e1728f0d9af09df9c4d3fd1322b5cb174a2981 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer camerabin: don't recreate camera source on device change.Yoann Lopes2015-02-181-33/+34
| | | | | | | | | | | | | | | Change-Id: If62573b11c8e3112d386d93de9a504f49965d597 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer: remove unused function and enum.Yoann Lopes2015-02-182-12/+0
| | | | | | | | | | | | | | | Change-Id: I67b329784d94e60b94c10d4a8942d02b050e0b2c Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer: runtime check for controls that require GstPhotography.Yoann Lopes2015-02-184-21/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Exposure, Flash, Focus and Locks controls were always initialized, even when the GstPhotography interface was not available (on desktop for example), causing some warnings and fooling the user in believing that these features were available. These controls are now lazily initialized and only when GstPhotography is available. The zoom control is not compile-checked anymore since it doesn't actually require GstPhotography. Change-Id: I5e8315d796dd920c9c29ccfa4155707f5f0fd7dc Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer: implemented QCameraViewfinderSettingsControl2.Yoann Lopes2015-02-1810-137/+410
| | | | | | | | | | | | | | | Change-Id: I4436e39c152f6c251792c1504d4a7b57db7b9d9a Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | | GStreamer: fix camerabin state and status changes.Yoann Lopes2015-02-188-138/+152
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | Not all status changes where reported and setting the QCamera to LoadedState was not actually loading anything. State and status changes have been refactored. Camera status is now reported directly by the camera session. Setting the camera state to LoadedState now sets the camerabin to GST_STATE_READY, that allows to query for camera capabilities without having to start the camera (and have a valid viewfinder). Change-Id: I249b1ad32690679ff34a427410bc709ed3ab461c Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Update copyright headersAntti Kokko2015-02-12509-4290/+3858
| | | | | | | | | | | | | | | | | | 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>
* | Camera zoom control - version for the AVFoundation pluginTimur Pocheptsov2015-02-055-1/+294
| | | | | | | | | | | | | | | | AVFCameraZoomControl for AVFoundation plugin (videoZoomFactor in AVCaptureDeviceFormat). iOS only. Change-Id: I585b8df4c2a477971ada7bd81fabbd44f2371d98 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | AVFCameraExposureControl - exposure control for iOSTimur Pocheptsov2015-02-055-2/+756
| | | | | | | | | | | | | | | | Exposure control, version for AVFoundation plugin (this code is using quite a new API, iOS >=8 only). Change-Id: I6871a758e8dfb98ab46b66d91a44142163e0bb44 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | AVFCameraFocusControl - focus control for iOS / OS XTimur Pocheptsov2015-02-056-3/+474
| | | | | | | | | | | | | | Camera focus control for AVFoundation plugin (iOS/OS X). Change-Id: I0a79e7057ecbb66413debb8eac0f48ff679fc7ba Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | iOS video frame render implementation.James Turner2015-02-048-61/+575
| | | | | | | | | | | | | | | | | | | | | | | | Uses CVTextureCache, iOS only for now, OS-X code could be ported but will need further work to support TEXTURE_RECTANGLE in the QVideoNode classes. When we can’t share a context, falls back to an offscreen window, FBO rendering and grabbing a QImage. Change-Id: I23b831fdcc63aeb1b67b7741d8d56779470240d3 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Add video filtering support to VideoOutputLaszlo Agocs2015-02-038-52/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the QAbstractVideoFilter base class and integrate it with VideoOutput. This can be used to perform arbitrary filtering or image processing on the frames of a video stream of a VideoOutput element right before the OpenGL texture is provided to the scenegraph by the video node. This opens up the possibility to integrate computer vision frameworks or accelerated image processing with Qt Quick applications that display video streams using Qt Multimedia. Conceptually it is somewhat similar to QVideoProbe, this approach however allows modifying the frame, in real time with tight integration to the scenegraph node, and targets Qt Quick meaning setting up the filter and processing the results of the computations happen completely in QML. [ChangeLog] Added QAbstractVideoFilter that serves as a base class for QML video filtering elements that integrate compute, vision, and image processing frameworks with VideoOutput. Change-Id: Ice1483f8c2daec5a43536978627a7bbb64549480 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/devYoann Lopes2015-01-2312-43/+101
|\ \
| * | Merge remote-tracking branch 'origin/5.4' into devYoann Lopes2015-01-1912-43/+101
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/plugins/gstreamer/camerabin/camerabinsession.cpp Change-Id: I66a6f3efc5391013934b6b321073c31f25e1de26
| | * Add resolution and fps on mfw_v4lsrcLaszlo Agocs2015-01-123-5/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for changing resolution and frame rate with mfw_v4lsrc. This is essential for embedded applications that are not happy with the default VGA@30. This makes constructs like the following functional on devices like i.MX6 with MIPI cameras: Camera { viewfinder { resolution: "320x240"; maximumFrameRate: 15 } } Change-Id: Ia297afdb5ca51c6e55ad45dce37fdab7da3a5cfb Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| | * Support YUV420P in the i.MX6 video nodeLaszlo Agocs2015-01-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Camera input is often in this format. Until now the lack of GL_VIV_I420 (which was presumably missing in older versions of the extension?) in the format list resulted in falling back to the built-in i420 node instead of the zero-copy imx6 one. This is now corrected by adding the correct format mapping. Change-Id: I6e891bb3bb07d64ccd5b2d170b052f677c8bd19c Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
| | * Fix: static linking on Linux with both PulseAudio and Alsa pluginsGabriel Hege2014-12-228-38/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed multiply defined symbols when linking statically with both PulseAudio and Alsa plugins enabled: The private classes In/OutputPrivate had identical names and have been renamed. Change-Id: I9415beeeed9fb0e14ead3f0ab906f343b3934341 Task-number: QTBUG-43514 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | | Fix initialization orderLaszlo Agocs2015-01-191-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid the following warning: In file included from qgstreamerplayersession.cpp:34:0: qgstreamerplayersession.h: In constructor ‘QGstreamerPlayerSession::QGstreamerPlayerSession(QObject*)’: qgstreamerplayersession.h:203:10: warning: ‘QGstreamerPlayerSession::m_usingColorspaceElement’ will be initialized after [-Wreorder] bool m_usingColorspaceElement; ^ qgstreamerplayersession.h:197:17: warning: ‘GstElement* QGstreamerPlayerSession::m_videoSink’ [-Wreorder] GstElement* m_videoSink; ^ qgstreamerplayersession.cpp:107:1: warning: when initialized here [-Wreorder] QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) ^ Change-Id: Ic4dfe6ead19db8d581cc7de622f478e63524715b Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Rename camera classes to avoid name clash.James Turner2015-01-159-56/+59
| | | | | | | | | | | | | | Change-Id: I08fe8f7e75bdbf2c4975863642072061741b5bc6 Reviewed-by: Filipe Azevedo <filipe.azevedo@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | AVFImageCaptureControl - invalid connectionTimur Pocheptsov2015-01-081-17/+8
| | | | | | | | | | | | | | | | | | AVCaptureConnection from AVCaptureStillImageOutput becomes invalid as we remove/add AVCaptureDevice. Change-Id: I698ffcc0b91b76cd5d7c25e4b244eaa0aa459159 Task-number: QTBUG-42035 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Add missing includes for QDataStream/QIODevice.Friedemann Kleint2015-01-0710-0/+11
| | | | | | | | | | | | | | | | After qtbase/90e7cc172a7521396bb2d49720ee4ceb9a9390b3, QStringList no longer includes QDataStream. Change-Id: Ibe3e1e6542e1b592adaabe3f8ffd3268efaf289b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-12-176-11/+64
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I31e377cdccf8bf5c1ea8143faf2001ac99608c27
| * winrt: Add missing QAbstractVideoSurface::stop() call.Andrew Knight2014-12-111-2/+4
| | | | | | | | | | | | | | This was preventing the surface from restarting with a different format. Change-Id: I1f86ddb1b16618f167183c7e2fcb32658df578f3 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| * winrt: Fix encoding propertiesAndrew Knight2014-12-111-4/+17
| | | | | | | | | | | | | | | | | | | | | | These should match the capture mode. Additionally, there was a semantic error preventing the encoding properties from being properly selected. This fixes a bug in which the viewfinder was receiving frames too large for display as an OpenGL texture. Task-number: QTBUG-41065 Change-Id: Ia82c8f44bba1692a219edc5f9d78fc76c3d8a4ba Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
| * winrt: Fix camera auto rotationAndrew Knight2014-12-114-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no Windows Runtime API to find the camera sensor rotation, so assume that phones always have a camera mounting of 270 degrees. Tablet and webcams remain mounted at the default (0 degrees). As the frame is not flipped automatically by the system, the scan line direction is set to BottomToTop for front-facing cameras to achieve compatibility with other platforms. Task-number: QTBUG-41066 Change-Id: Icf17ecd4aca9fa9d5b24d94e5b21b63ee6f21f28 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>