summaryrefslogtreecommitdiffstats
path: root/src/plugins/android/src/mediacapture/qandroidcamerasession.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Android: QVideoProbe support for cameraDenis Kormalev2014-01-081-4/+48
| | | | | | | | | | | QMediaVideoProbeControl sublclass added to capture service to make QVideoProbe work with Android camera. [ChangeLog][QtMultimedia][Android] QVideoProbe support for camera Task-number: QTBUG-35416 Change-Id: I14d0a0e8abd14ee8f577e2901b976b8ed46eb320 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: camera moved to a dedicated threadDenis Kormalev2013-12-231-13/+28
| | | | | | | | | | | | | Actual camera work moved to JCameraWorker which lives in dedicated thread. JCamera now acts as proxy calling JCameraWorker methods with invokeMethod (when it is needed). [ChangeLog][QtMultimedia][Android] camera operations moved to a dedicated thread Task-number: QTBUG-35564 Change-Id: Ie4edcbf0869d56b0fef4ad0c820450cc77657fdd Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: fix camera previewDenis Kormalev2013-12-111-13/+7
| | | | | | | | | | | | | At some(?) devices we can't rely on one shot preview callback because it receives data only after we start new previewing session. And this cause situation when imageCaptured signal is never emitted. This fix applies preview callback with already allocated buffers and collects all preview images in these buffers. When we capture image - we can simply fetch last preview image (if there was any) from c++ part. Task-number: QTBUG-34993 Change-Id: I608750c344ca3c089f4673df4907e0f47e57e2ba Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: fix camera viewfinder orientation.Yoann Lopes2013-12-051-5/+32
| | | | | | | | | | | | | | | The camera sensor on Android devices might be in a different orientation than the device natural orientation. There is no API in Qt to know about the camera orientation, so correcting the viewfinder orientation is not possible without making guesses. This patch makes sure the viewfinder orientation always matches the device natural orientation. For example, if the camera is mounted in landscape, and the device natural orientation is portrait, the viewfinder will automatically be rotated 90 degrees counter-clockwise. Task-number: QTBUG-35086 Change-Id: Ia890872971d72657debe709f61edba27d09dec65 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: use correct format when capturing a picture to a buffer.Yoann Lopes2013-11-061-10/+39
| | | | | | | | Don't decode the JPEG data to raw RGB using QImage. QCameraImageCapture reports anyway that JPEG is the only supported buffer format. Change-Id: Ib17760e4361b004775c002b686ef7529b3768aab Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: fix camera preview showing black frames after restarting it.Yoann Lopes2013-10-291-1/+5
| | | | | | | | | Clear the camera preview size when stopping the preview in order to force it to be reset when starting it again. Task-number: QTBUG-34346 Change-Id: I0edf8d996348745b9aa7cf0790c16b6cd813b33b Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Add Linguist comment for translation of Drive-mode.Friedemann Kleint2013-10-151-0/+1
| | | | | | | | | Translators not familiar with cameras might mistake it for something related to driving a car. Change-Id: If54a563a32af537d291b79253056b7b57e108f5b Reviewed-by: Robert Loehning <robert.loehning@digia.com> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Android: fixed image capture preview.Yoann Lopes2013-10-011-4/+32
| | | | | | | | | | We used to generate the capture preview from the video output, grabbing the pixels of the last frame (in a FBO). This is not possible anymore, we instead query the camera for a preview frame, which is in the NV21 format and needs to be converted to RGB. Change-Id: I1c728b3a708a6f052a83aebf9f15f511eab7a02f Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: refactor video renderer.Yoann Lopes2013-10-011-16/+11
| | | | | | | | | | | | | Removed the overhead of having to create a shared OpenGL context in the GUI thread and pre-render the frame into a FBO. We now directly render the GL_TEXTURE_EXTERNAL_OES in the QtQuick render thread, using an Android-specific QSGVideoNode. We also use a callback from the render thread to create the texture from there and not have to create a separate shared OpenGL context. Change-Id: I6c8eb94b47d0a03329c912701b8af3fb5ebd1876 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Android: added camera support.Yoann Lopes2013-09-121-0/+553
This patch includes all camera features: viewport, settings, image capture, and video recording. It also adds support for QAudioRecorder. Change-Id: Ib962177cc8de4bac03f42a2bc0f534e03464bbfc Reviewed-by: Christian Stromme <christian.stromme@digia.com>