summaryrefslogtreecommitdiffstats
path: root/src/plugins/avfoundation/camera/avfcameraservice.mm
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Update commercial license headers"v5.15.3-lts-lgplTarja Sundqvist2021-03-251-20/+20
| | | | | | | | | | | This reverts commit 80d46e3a5f64ff2456c40bdba63b6d5c69a32cdd. Revert of commercial license headers is required for Qt 5.15.3 opensource release. Task-number: QTBUG-91108 Change-Id: I5c64ffa120f916711e5cf01c828774f8456dec06 Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
* Update commercial license headersTarja Sundqvist2021-01-271-20/+20
| | | | | | | | | | | | | | | | Updated header.COMM to files in tqtc-qtmultimedia. Examples, tests or documentation files are not updated. The commercial license header may contain some additional lines so that its line count equals with the earlier license header. Reaso for this is that some autotests use hard coded line numbers and a change in the line count causes failures in tests. Task-number: QTQAINFRA-4171 Change-Id: I86ebf7c3653b55983cefff246c0cb019cbcda8c4 Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
* AVF: Introduce QCameraCaptureDestinationControl_iidVal Doroshchuk2020-09-101-0/+6
| | | | | | | | | | | | | | | | | | | | | Can be used like: QCameraImageCapture->setCaptureDestination( QCameraImageCapture::CaptureToBuffer | QCameraImageCapture::CaptureToFile); Both CaptureToBuffer and CaptureToFile are supported. If CaptureToBuffer is requested, then it sends imageAvailble signal If CaptureToFile is requested, it sends imageSaved imageCaptured is sent only if there is the video frame available. (e.g. when abstract video surface is used as viewfinder) Fixes: QTBUG-85470 Change-Id: If22281e4d0eacfb0d38f8b1c8b676191817f592e Reviewed-by: Ihor Dutchak <ihor.youw@gmail.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit cdd87907722aff14c393dba02b7e43c924b60d06) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add AVFCameraWindowControl as QVideoWindowControl_iid implementationIhor Dutchak2020-03-231-1/+22
| | | | | | | | | | | AVFCameraWindowControl is a renderer backend, when QCamera viewfinder output set to QVideoWidget on macOS or iOS. As it uses native API and lets the OS handle rendering pipeline, it is an efficient alternative to default renderer backend. Task-number: QTBUG-68779 Change-Id: I4d27022655a7d9f4ad7cf99c84b570a0c48cf10a Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* avfoundation: modernize by using nullptr and overrideJochen Seemann2019-01-041-9/+9
| | | | | Change-Id: Ifd483f925ed69f0ba35c46facfdb571dea87c1ac Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* Remove obsolete version checksv5.10.0-beta1Jake Petroules2017-09-291-4/+2
| | | | | | | Our iOS deployment target is now 8; this code will always be executed. Change-Id: Ia42bfa9e1fc96cb8048806a80c80bf3dda35a180 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* Remove deprecated QSysInfo APIs and dead code from macOS/iOS backendJake Petroules2016-09-231-2/+2
| | | | | | | Deployment targets are currently macOS 10.9 and iOS 7.0. Change-Id: I500a95c00eb3be6e693e38f0f2205941f7bc9601 Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-301-18/+18
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * AVFoundation: implement QAudioEncoderSettings.Yoann Lopes2016-06-091-0/+6
| | | | | | | | | | | | Change-Id: I24d3da1417142bc80bc6b6c1c8124c246afe03db Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Christian Stromme <christian.stromme@qt.io>
| * AVFoundation: implement QMediaContainerControl.Yoann Lopes2016-06-091-0/+6
| | | | | | | | | | Change-Id: I5097a0450f5836e48a697249619a1822775f3ad8 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * AVFoundation: implement QVideoEncoderSettingsControl.Yoann Lopes2016-06-031-19/+7
| | | | | | | | | | | | Task-number: QTBUG-40338 Change-Id: Ic23dabaad94d7b293019460710ae1a097002e227 Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* | 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>
* Fix use-after-free in AVFCameraService during renderer destructionJohn Brooks2015-11-191-7/+4
| | | | | Change-Id: I10a994b71e55565c0de31aa0c34f32964e2e3a1b Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
* Video asset writer for iOSTimur Pocheptsov2015-05-291-0/+31
| | | | | | | | | | | | AVFoundation on iOS lacks the ability to use AVCaptureVideoDataOutput and AVCaptureMovieFileOutput simultaneously. Right now viewfinder stops working as soon as we add movie file output. The only workaround we have now is to write video/audio 'maually' - creating asset writer and feeding it with audio/video samples. Change-Id: I33a63546783279c545f0433b5051287269825d3f Task-number: QTBUG-37655 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Camera flash control - version for iOS/OS XTimur Pocheptsov2015-04-131-0/+6
| | | | | | | | | | AVCaptureDevice has API to work with camera flash on both iOS and OS X (quite limited on OS X though) - so camera flash control can be implemented in AVFoundation plugin. Task-number: QTBUG-37996 Change-Id: Ie9aaed09a709e7d09ccc1cedded93a69fea93975 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Image encoder control - version for OS X/iOSTimur Pocheptsov2015-03-021-0/+6
| | | | | | | | 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-021-0/+5
| | | | | | | | | 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-021-0/+7
| | | | | | | | QCameraViewfinderSettingsControl2 - version for AV foundation plugin (the new settings control interface implemented). Change-Id: I3fbfb87925e57c914d43eb711fa5422e26981207 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Update copyright headersAntti Kokko2015-02-121-22/+14
| | | | | | | | | 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-051-1/+18
| | | | | | | | 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-051-1/+11
| | | | | | | | 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-051-0/+7
| | | | | | | Camera focus control for AVFoundation plugin (iOS/OS X). Change-Id: I0a79e7057ecbb66413debb8eac0f48ff679fc7ba Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
* Rename camera classes to avoid name clash.James Turner2015-01-151-4/+4
| | | | | | | 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>
* Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-10-091-2/+2
|\ | | | | | | Change-Id: I8b9177d90afac8b834d333efc6c22b6b35dceaf8
| * AVFoundation: fix some controls not being correctly destroyed on iOS.Yoann Lopes2014-08-251-2/+2
| | | | | | | | | | | | | | | | | | This patch also makes sure AVF video layers are removed from their parent layer when their corresponding Qt video outputs are destroyed. Task-number: QTBUG-39385 Change-Id: I164cd0da7084f84c0473ed3e396e734acce2a22e Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* | implement QVideoProbe for iOS cameraLudger Krämer2014-09-121-0/+14
|/ | | | | | | | | | | This commit allows to use QVideoProbe for QCamera on iOS. The logic for the implementation is taken from the Android plugin. [ChangeLog][Platform Specific Changes][iOS] QVideoProbe support is implemented for QCamera on iOS Change-Id: I1db50defa8518287c4f1f3cc6602881702a95849 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* AVFoundation: implement QCameraInfoControl.Yoann Lopes2014-03-041-0/+5
| | | | | Change-Id: I05f3daa5c4acb90e046e26d6d577ae40dfed0e30 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>
* Initial implementation of Mac camera backendDmytro Poplavskiy2012-08-271-0/+139
Based on AVFoundation framework Change-Id: If4cfd105a592f50b42606624548b9ffc870e3e47 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>