Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qqnxplatformcamera_p.h
Go to the documentation of this file.
1
// Copyright (C) 2016 Research In Motion
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
#
ifndef
QQNXPLATFORMCAMERA_H
4
#
define
QQNXPLATFORMCAMERA_H
5
6
//
7
// W A R N I N G
8
// -------------
9
//
10
// This file is not part of the Qt API. It exists purely as an
11
// implementation detail. This header file may change from version to
12
// version without notice, or even be removed.
13
//
14
// We mean it.
15
//
16
17
#
include
"qqnxcamera_p.h"
18
19
#
include
<
private
/
qplatformcamera_p
.
h
>
20
#
include
<
private
/
qplatformmediarecorder_p
.
h
>
21
22
#
include
<
QtCore
/
qlist
.
h
>
23
#
include
<
QtCore
/
qmutex
.
h
>
24
#
include
<
QtCore
/
qurl
.
h
>
25
26
#
include
<
deque
>
27
#
include
<
functional
>
28
#
include
<
memory
>
29
30
QT_BEGIN_NAMESPACE
31
32
class
QQnxPlatformCameraFrameBuffer;
33
class
QQnxMediaCaptureSession
;
34
class
QPlatformVideoSink;
35
class
QQnxCameraFrameBuffer
;
36
37
class
QQnxPlatformCamera
:
public
QPlatformCamera
38
{
39
Q_OBJECT
40
public
:
41
explicit
QQnxPlatformCamera
(
QCamera
*
parent
);
42
~
QQnxPlatformCamera
();
43
44
bool
isActive
()
const
override
;
45
void
setActive
(
bool
active)
override
;
46
void
start
();
47
void
stop
();
48
49
void
setCamera
(
const
QCameraDevice &camera)
override
;
50
51
bool
setCameraFormat
(
const
QCameraFormat &format)
override
;
52
53
void
setCaptureSession
(QPlatformMediaCaptureSession *session)
override
;
54
55
bool
isFocusModeSupported
(QCamera::FocusMode mode)
const
override
;
56
void
setFocusMode
(QCamera::FocusMode mode)
override
;
57
58
void
setCustomFocusPoint
(
const
QPointF &point)
override
;
59
60
void
setFocusDistance
(
float
distance)
override
;
61
62
void
zoomTo
(
float
newZoomFactor,
float
rate = -1.)
override
;
63
64
void
setExposureCompensation
(
float
ev)
override
;
65
66
int
isoSensitivity
()
const
override
;
67
void
setManualIsoSensitivity
(
int
value)
override
;
68
void
setManualExposureTime
(
float
seconds)
override
;
69
float
exposureTime
()
const
override
;
70
71
bool
isWhiteBalanceModeSupported
(QCamera::WhiteBalanceMode mode)
const
override
;
72
void
setWhiteBalanceMode
(QCamera::WhiteBalanceMode mode)
override
;
73
void
setColorTemperature
(
int
temperature)
override
;
74
75
void
setOutputUrl
(
const
QUrl &url);
76
void
setMediaEncoderSettings
(
const
QMediaEncoderSettings &settings);
77
78
bool
startVideoRecording
();
79
80
using
VideoFrameCallback
=
std
::
function
<
void
(
const
QVideoFrame
&)>;
81
void
requestVideoFrame
(VideoFrameCallback cb);
82
83
private
:
84
void
updateCameraFeatures();
85
void
setColorTemperatureInternal(
unsigned
temp);
86
87
bool
isVideoEncodingSupported()
const
;
88
89
void
onFrameAvailable();
90
91
QQnxMediaCaptureSession
*m_session =
nullptr
;
92
QPlatformVideoSink *m_videoSink =
nullptr
;
93
94
QCameraDevice m_cameraDevice;
95
96
QUrl m_outputUrl;
97
98
QMediaEncoderSettings m_encoderSettings;
99
100
uint32_t m_minColorTemperature = 0;
101
uint32_t m_maxColorTemperature = 0;
102
103
QMutex m_currentFrameMutex;
104
105
std::unique_ptr<QQnxCamera> m_qnxCamera;
106
std::unique_ptr<QQnxCameraFrameBuffer> m_currentFrame;
107
108
std::deque<VideoFrameCallback> m_videoFrameRequests;
109
};
110
111
QT_END_NAMESPACE
112
113
#
endif
QQnxCameraFrameBuffer
Definition
qqnxcameraframebuffer_p.h:30
QQnxImageCapture
Definition
qqnximagecapture_p.h:29
QQnxImageCapture::setImageSettings
void setImageSettings(const QImageEncoderSettings &settings) override
Definition
qqnximagecapture.cpp:198
QQnxImageCapture::imageSettings
QImageEncoderSettings imageSettings() const override
Definition
qqnximagecapture.cpp:193
QQnxImageCapture::setCaptureSession
void setCaptureSession(QQnxMediaCaptureSession *session)
Definition
qqnximagecapture.cpp:203
QQnxImageCapture::captureToBuffer
int captureToBuffer() override
Definition
qqnximagecapture.cpp:103
QQnxImageCapture::capture
int capture(const QString &fileName) override
Definition
qqnximagecapture.cpp:70
QQnxImageCapture::isReadyForCapture
bool isReadyForCapture() const override
Definition
qqnximagecapture.cpp:65
QQnxMediaCaptureSession
Definition
qqnxmediacapturesession_p.h:30
QQnxPlatformCamera
Definition
qqnxplatformcamera_p.h:38
QQnxPlatformCamera::stop
void stop()
Definition
qqnxplatformcamera.cpp:106
QQnxPlatformCamera::setManualExposureTime
void setManualExposureTime(float seconds) override
Definition
qqnxplatformcamera.cpp:252
QQnxPlatformCamera::setMediaEncoderSettings
void setMediaEncoderSettings(const QMediaEncoderSettings &settings)
Definition
qqnxplatformcamera.cpp:366
QQnxPlatformCamera::startVideoRecording
bool startVideoRecording()
Definition
qqnxplatformcamera.cpp:317
QQnxPlatformCamera::setExposureCompensation
void setExposureCompensation(float ev) override
Definition
qqnxplatformcamera.cpp:226
QQnxPlatformCamera::requestVideoFrame
void requestVideoFrame(VideoFrameCallback cb)
Definition
qqnxplatformcamera.cpp:351
QQnxPlatformCamera::start
void start()
Definition
qqnxplatformcamera.cpp:93
QQnxPlatformCamera::setCamera
void setCamera(const QCameraDevice &camera) override
Definition
qqnxplatformcamera.cpp:118
QQnxPlatformCamera::setCaptureSession
void setCaptureSession(QPlatformMediaCaptureSession *session) override
Definition
qqnxplatformcamera.cpp:152
QQnxPlatformCamera::setOutputUrl
void setOutputUrl(const QUrl &url)
Definition
qqnxplatformcamera.cpp:361
QQnxPlatformCamera::setManualIsoSensitivity
void setManualIsoSensitivity(int value) override
Definition
qqnxplatformcamera.cpp:242
QQnxPlatformCamera::isWhiteBalanceModeSupported
bool isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const override
Definition
qqnxplatformcamera.cpp:268
QQnxPlatformCamera::setCustomFocusPoint
void setCustomFocusPoint(const QPointF &point) override
Definition
qqnxplatformcamera.cpp:176
QQnxPlatformCamera::isoSensitivity
int isoSensitivity() const override
Definition
qqnxplatformcamera.cpp:234
QQnxPlatformCamera::setColorTemperature
void setColorTemperature(int temperature) override
Definition
qqnxplatformcamera.cpp:289
QQnxPlatformCamera::setWhiteBalanceMode
void setWhiteBalanceMode(QCamera::WhiteBalanceMode mode) override
Definition
qqnxplatformcamera.cpp:276
QQnxPlatformCamera::exposureTime
float exposureTime() const override
Definition
qqnxplatformcamera.cpp:260
QQnxPlatformCamera::isFocusModeSupported
bool isFocusModeSupported(QCamera::FocusMode mode) const override
Definition
qqnxplatformcamera.cpp:160
QQnxPlatformCamera::setFocusDistance
void setFocusDistance(float distance) override
Definition
qqnxplatformcamera.cpp:184
QQnxPlatformCamera::zoomTo
void zoomTo(float newZoomFactor, float rate=-1.) override
Definition
qqnxplatformcamera.cpp:199
QQnxPlatformCamera::isActive
bool isActive() const override
Definition
qqnxplatformcamera.cpp:80
QQnxPlatformCamera::setFocusMode
void setFocusMode(QCamera::FocusMode mode) override
Definition
qqnxplatformcamera.cpp:168
QQnxPlatformCamera::~QQnxPlatformCamera
~QQnxPlatformCamera()
Definition
qqnxplatformcamera.cpp:75
QQnxPlatformCamera::setCameraFormat
bool setCameraFormat(const QCameraFormat &format) override
Definition
qqnxplatformcamera.cpp:139
QQnxPlatformCamera::setActive
void setActive(bool active) override
Definition
qqnxplatformcamera.cpp:85
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
resolveFileName
static QString resolveFileName(const QString &fileName, QImageCapture::FileFormat format)
Definition
qqnximagecapture.cpp:37
formatExtension
static QString formatExtension(QImageCapture::FileFormat format)
Definition
qqnximagecapture.cpp:21
qtmultimedia
src
plugins
multimedia
qnx
camera
qqnxplatformcamera_p.h
Generated on
for Qt by
1.18.0