diff options
author | Lars Knoll <lars.knoll@qt.io> | 2021-01-25 14:59:09 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2021-01-29 08:52:07 +0000 |
commit | 2e77a041e162743b49d41fef545b143ae6c3a830 (patch) | |
tree | e6ba99e78d8cfeef5d3e4f800501335ab5615202 /src/qtmultimediaquicktools/qdeclarativevideooutput.cpp | |
parent | a1e4736628146f737cf4456ff560896e139b81cd (diff) |
Cleanup QCameraInfo
Various API changes to QCameraInfo:
* Remove the camera orientation from our API This is
an implementation detail that should never be exposed
to the user. For fixed cameras it's uninteresting
and for mobile cameras, we can use the physical orientation
of the device to create a stream that is oriented the
correct way.
* Add a QVideoFormat class describing a video format
* Add a QList<QVideoFormat> videoFormats()
* Add a QList<QSize> photoResolutions()
* Implement the API for gstreamer and macOS.
Change-Id: I9ffd9caeb6d07a6f267608a6bd794d99699fffbb
Reviewed-by: Doris Verria <doris.verria@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/qtmultimediaquicktools/qdeclarativevideooutput.cpp')
-rw-r--r-- | src/qtmultimediaquicktools/qdeclarativevideooutput.cpp | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp index a64a9e157..2aae59509 100644 --- a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp +++ b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp @@ -44,6 +44,7 @@ #include <private/qvideooutputorientationhandler_p.h> #include <QtMultimedia/qmediasource.h> #include <QtMultimedia/qmediaservice.h> +#include <QtMultimedia/qcamera.h> #include <private/qfactoryloader_p.h> #include <QtCore/qloggingcategory.h> @@ -321,7 +322,7 @@ void QDeclarativeVideoOutput::_q_updateCameraInfo() if (m_mediaSource) { const QCamera *camera = qobject_cast<const QCamera *>(m_mediaSource); if (camera) { - QCameraInfo info(*camera); + QCameraInfo info = camera->cameraInfo(); if (m_cameraInfo != info) { m_cameraInfo = info; @@ -433,20 +434,6 @@ void QDeclarativeVideoOutput::_q_updateGeometry() void QDeclarativeVideoOutput::_q_screenOrientationChanged(int orientation) { - // If the source is a camera, take into account its sensor position and orientation - if (!m_cameraInfo.isNull()) { - switch (m_cameraInfo.position()) { - case QCamera::FrontFace: - // Front facing cameras are flipped horizontally, compensate the mirror - orientation += (360 - m_cameraInfo.orientation()); - break; - case QCamera::BackFace: - default: - orientation += m_cameraInfo.orientation(); - break; - } - } - setOrientation(orientation % 360); } |