summaryrefslogtreecommitdiffstats
path: root/src/multimedia/camera
Commit message (Collapse)AuthorAgeFilesLines
* Doc: Fix QCamera and Camera docsLeena Miettinen2020-01-171-28/+35
| | | | | | | | | | | Use \value for \qmlproperty enumeration instead of \table. Move some docs around. On C++ side, add leading sentences to \enum docs and remove empty lines from \value commands. Fix some language issues. Change-Id: If682c0a52d72babae563b075ed9ff987fdf16bd0 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Doc: Explain that the camera consumes power in Camera.LoadedStateLeena Miettinen2020-01-171-8/+11
| | | | | | | | | | Fix the QDoc code to use \value for \qmlproperty enumeration. Remove empty lines within \value on the C++ side, because they break the docs. Fixes: QTBUG-81364 Change-Id: I5b26e4ec9d86292d63d70c3751865ca26ff13fa0 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-09-211-1/+1
|\ | | | | | | Change-Id: I2ba97d82a57172656f6549f368ee51f718f9cdf8
| * Fix building with namespaced QtChristian Stenger2019-09-111-1/+1
| | | | | | | | | | Change-Id: I690fa71f171b821098d33ce5482c9de467b645d5 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-09-123-4/+4
|\| | | | | | | | | | | | | | | Conflicts: src/gsttools/qgstvideorenderersink.cpp src/gsttools/qgstvideorenderersink_p.h Change-Id: I7fe29161d568fa3f7688abfd2f993d1b16ac3fb9
| * Include moc files after QT_END_NAMESPACEVal Doroshchuk2019-09-093-4/+4
| | | | | | | | | | | | Fixes: QTBUG-76574 Change-Id: I69ef47bbd01967c3d7a0c5d1554fcdd29619ebfa Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* | Make QMediaObjectPrivate as QObjectPrivateVaL Doroshchuk2019-08-234-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since QMediaObject is QObject, and it uses d_ptr, it is sane to move QMediaObjectPrivate to QObjectPrivate and use standard way of using private impl. NOTE : If some users inherit from QMediaObjectPrivate in their code, they probably initialize and delete d_ptr manually which would cause a crash now. But using QMediaObjectPrivate without QMediaObject should be considered as incorrect usage. Task-number: QTBUG-77630 Change-Id: I147e3b3dc67a8c2765b28f752db196b4d7fca224 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-07-301-1/+1
|\| | | | | | | Change-Id: I329eeefafed87ff7467d21d5d099cf9897660167
| * Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-07-231-1/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/directshow/player/directshowplayerservice.cpp Change-Id: I482098bb3c3b5b291175ca798b0d6ba61ad87d86
| | * Camera: Update the doc about supported viewfinder settingsVaL Doroshchuk2019-07-161-1/+1
| | | | | | | | | | | | | | | Change-Id: I9d74355fb800234d4fbd12235b89965921027223 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | * Fix QCameraInfo to be invalid if camera failed to find deviceVaL Doroshchuk2019-03-251-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since QCameraInfo uses deviceControl and infoControl to get info about camera, it needs to clear these controls if the camera failed to find a device by name. Change-Id: I1404f70234f978fa4568b6c883a5676f61e08145 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 42932e1a9dfd6699763b336f552e46f9b1ff30c9)
* | | Fix API of QCameraExposure, QCameraFocus, QCameraImageProcessing for Qt for ↵Friedemann Kleint2019-07-043-3/+9
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Python The classes inherit QObject, but make the destructor private, which makes it impossible to add Qt for Python bindings. Make destructors protected to fix this. This is arguably a BC break for compilers which have the accessibility mangled in the symbol, but, since the destructor was private, there cannot be any code using it. Task-number: QTBUG-74422 Task-number: PYSIDE-1041 Change-Id: Id23d73aea8aedf15caafa20c048a80efd3e880bd Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Fix QCameraInfo to be invalid if camera failed to find deviceVal Doroshchuk2019-01-181-2/+10
| | | | | | | | | | | | | | | | | | Since QCameraInfo uses deviceControl and infoControl to get info about camera, it needs to clear these controls if the camera failed to find a device by name. Change-Id: I1404f70234f978fa4568b6c883a5676f61e08145 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2019-01-111-24/+19
|\| | | | | | | | | | | | | | | Conflicts: .qmake.conf src/multimedia/camera/qcamera.cpp Change-Id: If06a4c6a7dde35d5b95abcc5213ff281dca9374e
| * Return ServiceMissingError if no camera found by nameVaL Doroshchuk2019-01-071-24/+19
| | | | | | | | | | | | | | | | If no camera devices found with requested name, the object should be invalid. Task-number: QTBUG-54901 Change-Id: I54037c5c7caad09da2df51eb0624eb0e88f12bf8 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | multimedia: modernize by using nullptrJochen Seemann2019-01-046-61/+61
|/ | | | | | Change-Id: Id1084fec084b972aaa1d2389ee56ee831a821172 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* Doc: Fix documentation warningsTopi Reinio2018-04-195-18/+19
| | | | | | | | | | | | Add a custom module header, used only for documentation builds, that pulls in also the QtMultimediaWidgets module. Several documentation fixes to clean up warnings from clang. Task-number: QTBUG-67790 Change-Id: I6c1013798a648250c8555eb92684ec3b33ff7531 Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.11v5.11.0-beta1Liang Qi2018-02-181-1/+1
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I2af17ff905c26466fa1ea8b612dff3b505a3d33a
| * fix typo in QCameraImageProcessing documentationJochen Seemann2018-02-051-1/+1
| | | | | | | | | | | | | | Task-number: QTBUG-55660 Change-Id: I444bef63c0b8d9a9f9fdbce8e3ceabb067c1fe84 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io> Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | Replace Q_NULLPTR with nullptrKevin Funk2017-09-273-10/+10
| | | | | | | | | | Change-Id: I3b7601b4a97f8a2b1d2da6ef134f1577846ba713 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Use qFuzzyCompare() instead of equality on floating-point valuesEdward Welbourne2017-03-221-1/+4
|/ | | | | | | | | | QCamera::FrameRateRange is a struct with two qreal members; its operator== was comparing the members; which triggered a -Wfloat-compare that's an error in developer builds. This is what qFuzzyCompare() takes care of, so use it. Change-Id: Id45a2a7e9b6ccbf575bdedb5b90889859899bf38 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-101-0/+6
|\ | | | | | | | | | | | | Conflicts: src/plugins/gstreamer/camerabin/camerabincontainer.h Change-Id: I4942d41d69112335fe0c994002f1b32ef3aad051
| * Suppress the -Wfloat-equal warningThiago Macieira2017-01-261-0/+6
| | | | | | | | | | | | | | | | | | qcamera.h:261:36: error: comparing floating point with == or != is unsafe [-Werror=float-equal] Task-number: QTBUG-57649 Change-Id: I15b62e0f9cec482fbb40fffd1490df20dda23c46 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | Add missing override and remove redundant virtualAlexander Volkov2016-12-124-23/+23
|/ | | | | Change-Id: Ifd439abf21877adff57080489324bea729ee5279 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Add proper global headers for QtMultimediaLars Knoll2016-11-231-1/+1
| | | | | | | And deprecate the old qtmultimediadefs.h Change-Id: I2d4164f3a51d8e5d1813413b4f6691a721386fdf Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-11-041-6/+4
|\ | | | | | | Change-Id: Ib038c5e3ebb48c0e46569a35d530fa5ceaf06a32
| * Add missing Q_DECL_CONSTEXPRChristian Strømme2016-11-011-6/+4
| | | | | | | | | | | | | | | | The functions were missing the constexpr specifier, and since the code was touched, the equality check was also updated to use qFuzzyCompare. Change-Id: Ib06c5e7927bef0ebe513a411e2bb79b433e3ccd7 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-301-0/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Blacklisted a few functions in tst_QAudioInput. Conflicts: .qmake.conf src/plugins/avfoundation/camera/avfcameracontrol.mm src/plugins/avfoundation/camera/avfcameraservice.h src/plugins/avfoundation/camera/avfcameraservice.mm src/plugins/avfoundation/camera/avfcamerasession.h src/plugins/avfoundation/camera/avfcamerasession.mm src/plugins/avfoundation/camera/avfcameraviewfindersettingscontrol.h src/plugins/avfoundation/camera/avfcameraviewfindersettingscontrol.mm src/plugins/avfoundation/camera/avfimagecapturecontrol.mm src/plugins/avfoundation/camera/avfimageencodercontrol.mm src/plugins/avfoundation/camera/avfmediarecordercontrol.h src/plugins/avfoundation/camera/avfmediarecordercontrol.mm tests/auto/integration/qaudioinput/BLACKLIST Task-number: QTBUG-54459 Task-number: QTBUG-49736 Change-Id: I3a1fe8cef50b44d5c2785aaf4cf69fe3f16728e6
| * QCameraPrivate: NULL-fill fields to be set up by init().Edward Welbourne2016-06-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | c.f. the constructor already doing the same for provider and the various fields populated by initControls(), which init() calls. Should be redundant (all QCamera constructors do invoke d->init() as soon as they've constructed d), but better safe than sorry. Calms Coverity (CID 22319). Change-Id: Ibf5d13bb1ef17be8e66fa14ed5617b700051c495 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-073-10/+10
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/avfoundation/mediaplayer/mediaplayer.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin1/mockserviceplugin1.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin2/mockserviceplugin2.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin3/mockserviceplugin3.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin4/mockserviceplugin4.pro tests/auto/unit/qmediaserviceprovider/mockserviceplugin5/mockserviceplugin5.pro Change-Id: I5742596230dc510ba2a09eba624429bb67179194
| * Add explicit and make public headers compile with ↵Marc Mutz2016-03-033-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Wzero-as-null-pointer-constant ... or equivalent. QtBase 5.6 headers already compile that way, so let the other modules follow suit. Cleaned up placement of * and & in parameters as a drive-by. Added explicit where it was missing as a drive-by. This is not a source-incompatible change, because code that breaks by this is a bug. Let's not have this sitting around in an LTS. Task-number: QTBUG-45291 Change-Id: If81ed0c71393aee21d347f5ade4bf3fcc07cd82f Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Updated license headersAntti Kokko2016-01-1915-210/+300
| | | | | | | | | | | | | | | | | | | | | | 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>
* | Camera: replace foreach with range-based forAnton Kudryavtsev2016-01-152-15/+15
| | | | | | | | | | Change-Id: Iedaad3bccea7a5d830f713d87240f5f957ae12c5 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Add camera brightness adjustment API.Denis Shienkov2015-11-232-0/+22
|/ | | | | | | | | | The brightness adjustment already exists in the control API but not in the QCamera and QML Camera APIs. Simply add the missing functions which call into the control API. Change-Id: I56a5aef3ae8bef9ca13c5a01d8282014f6e20830 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Fix QCamera::lockStatus() documentation.Yoann Lopes2015-08-241-1/+1
| | | | | Change-Id: I1f7c063ef1e465ba658f637754b10b7af44b8373 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* Fix QCamera viewfinder capabilities functions..Yoann Lopes2015-08-182-3/+5
| | | | | | | | | | | | - Filtering the results for a specific pixel aspect ratio would return wrong values. - Correctly sort the frame rate ranges returned by supportedViewfinderFrameRateRanges(). Added missing auto-tests for all viewfinder capabilities functions. Change-Id: Idfb40d4139cc48a5996ce2ddd98131a2f5be76bb Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* Fix qdoc warnings.Yoann Lopes2015-08-113-1/+26
| | | | | Change-Id: Ie351f33f88270186b7df0f9cd671fa4e31624231 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* QCameraViewFinderSettings: add missing includev5.5.0-rc1v5.5.0Marc Mutz2015-06-141-0/+1
| | | | | | | | | The header should not depend on indirect includes. It uses QSize in inline functions, so include the header. Change-Id: I3a5fca458ded47c98b7f71749ad75660c6e049e9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QCameraViewFinderSettings: make op== transitiveMarc Mutz2015-06-121-2/+2
| | | | | | | | | | | | | Using qFuzzyCompare in operator== makes it impossible to create a consistent qHash() overload for the class later on (qFuzzyCompare is not transitive). It is unlikely that there will be numerical instability for frame rates. If there is, qFuzzyCompare should be overloaded for either this class or the FrameRateRange class. Change-Id: Id975ea410b373e2987da160504f7618a8c498b5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QCameraViewFinderSettings: declare sharedMarc Mutz2015-06-121-0/+7
| | | | | | | | | Requires implementing member-swap. Also implemented move assignment operator. Change-Id: I077ee85346a8c542cd344720e45a0795a6947e4c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QCameraViewFinderSettings: make op== non-memberMarc Mutz2015-06-122-16/+22
| | | | | | | | | ...and inline op!=. Mark them as nothrow. More idiomatic C++ (symmetry between lhs and rhs). Change-Id: I65ecbef961383897e4e17325ad62d45e1772fbb0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QCameraViewFinderSettings: use correct includeMarc Mutz2015-06-121-1/+2
| | | | | Change-Id: I71f24922872f64d86d55f420b0e27028a6368097 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Define QCamera::FrameRateRange as a struct.Yoann Lopes2015-06-112-7/+43
| | | | | | | | Instead of an alias for QPair<qreal, qreal>. Task-number: QTBUG-46563 Change-Id: I7e1ac68242810f7e5f7e161571a11f5de7850e29 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2015-02-131-6/+5
|\ | | | | | | Change-Id: I5575a4ba13212c9bfe73a3de3ef17c6528beafc3
| * Fix some typosSergio Ahumada2015-02-111-1/+1
| | | | | | | | | | Change-Id: Iaf8f50741d3103480668b4a654a202d8a363bc45 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
| * Clarify documentation for QImageCapture's 'ready' property.Yoann Lopes2015-02-101-5/+4
| | | | | | | | | | | | | | | | | | | | | | Unlike what was described in the documentation, it's not permissible to call capture() while 'ready' or isReadyForCapture() is false. All backends emit an error in that case. Updated the documentation to reflect that behavior. Change-Id: Icb326e65376b65eadd4c68b67e0ee30beddf1a04 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Update copyright headersAntti Kokko2015-02-1215-105/+105
| | | | | | | | | | | | | | | | | | 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>
* | New camera viewfinder settings API.Yoann Lopes2015-01-136-3/+671
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There already was a control interface for the viewfinder settings but no real public C++ API and a partial QML API. This patch adds a new C++ API and improves the QML API. Supported viewfinder settings are resolution, minimumFrameRate, maximumFrameRate and pixelFormat. The camera can be queried for the supported values for each of these settings. A new control interface was created to match the new API. Change-Id: I289fea038fe46277a5516c956a64280da09ed985 Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* | Add additional exposure modes to QCameraExposure.Andrew den Exter2014-11-282-0/+20
| | | | | | | | | | | | | | | | | | [ChangeLog][GStreamer][Android] Camera exposure mode extended to support Action, Landscape, NightPortrait, Theatre, Sunset, SteadyPhoto, Fireworks, Party, Candlelight, and Barcode modes. Change-Id: I13d4bb042d27c0bd2ffcd369882b56bbabc84335 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* | Add a color filter property to QCameraImageProcessing.Andrew den Exter2014-11-282-1/+79
| | | | | | | | | | | | | | [ChangeLog] New color filter property for QCameraImageProcessing. Change-Id: I999e349e3e4f284b533fa62ba50903fbd21cb400 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>