Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qandroidmediacapturesession_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// Copyright (C) 2016 Ruslan Baratov
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
4
5#ifndef QANDROIDCAPTURESERVICE_H
6#define QANDROIDCAPTURESERVICE_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <private/qplatformmediacapture_p.h>
20#include <private/qplatformmediaintegration_p.h>
21
23
26class QAndroidCamera;
29
31{
33
34public:
37
38 QPlatformCamera *camera() override;
39 void setCamera(QPlatformCamera *camera) override;
40
42 void setImageCapture(QPlatformImageCapture *imageCapture) override;
43
44 QPlatformMediaRecorder *mediaRecorder() override;
45 void setMediaRecorder(QPlatformMediaRecorder *recorder) override;
46
47 void setAudioInput(QPlatformAudioInput *input) override;
48
49 void setVideoPreview(QVideoSink *sink) override;
50
51 void setAudioOutput(QPlatformAudioOutput *output) override;
52
53 QAndroidCaptureSession *captureSession() const { return m_captureSession; }
54 QAndroidCameraSession *cameraSession() const { return m_cameraSession; }
55
56private:
57 QAndroidMediaEncoder *m_encoder = nullptr;
58 QAndroidCaptureSession *m_captureSession = nullptr;
59 QAndroidCamera *m_cameraControl = nullptr;
60 QAndroidCameraSession *m_cameraSession = nullptr;
61 QAndroidImageCapture *m_imageCaptureControl = nullptr;
62};
63
64QT_END_NAMESPACE
65
66#endif // QANDROIDCAPTURESERVICE_H
static QRect adjustedArea(const QRectF &area)
QCamera * camera
int getValue(Field field) const
static bool hasProfile(jint cameraId, Quality quality)
static AndroidCamcorderProfile get(jint cameraId, Quality quality)
void setExposureCompensation(int value)
int getMinExposureCompensation()
int getMaxExposureCompensation()
void setZoom(int value)
bool setAudioInput(const QByteArray &id)
void setCamera(AndroidCamera *camera)
void setAudioEncodingBitRate(int bitRate)
void setVideoEncoder(VideoEncoder encoder)
void setAudioChannels(int numChannels)
void setOutputFormat(OutputFormat format)
void setOrientationHint(int degrees)
void setAudioSamplingRate(int samplingRate)
void setAudioEncoder(AudioEncoder encoder)
void setVideoEncodingBitRate(int bitRate)
void setOutputFile(const QString &path)
void setVideoSize(const QSize &size)
void info(int what, int extra)
void setVideoSource(VideoSource source)
void setSurfaceTexture(AndroidSurfaceTexture *texture)
void setSurfaceHolder(AndroidSurfaceHolder *holder)
void setAudioSource(AudioSource source)
QAndroidVideoOutput * videoOutput() const
void setVideoSink(QVideoSink *surface)
void imageMetadataAvailable(int id, const QMediaMetaData &key)
void setImageSettings(const QImageEncoderSettings &settings)
void imageCaptured(int id, const QImage &preview)
void error(int error, const QString &errorString)
QList< AndroidCamera::FpsRange > getSupportedPreviewFpsRange() const
void setCameraFormat(const QCameraFormat &format)
int capture(const QString &fileName)
void readyForCaptureChanged(bool)
void imageCaptureError(int id, int error, const QString &errorString)
void setVideoOutput(QAndroidVideoOutput *output)
QImageEncoderSettings imageSettings() const
void imageAvailable(int id, const QVideoFrame &buffer)
void setSelectedCameraId(int cameraId)
void applyResolution(const QSize &captureSize=QSize(), bool restartPreview=true)
AndroidCamera * camera() const
QList< QVideoFrameFormat::PixelFormat > getSupportedPixelFormats() const
QList< QSize > getSupportedPreviewSizes() const
void setKeepAlive(bool keepAlive)
void imageSaved(int id, const QString &fileName)
static const QList< QCameraDevice > & availableCameras()
void setPreviewFormat(AndroidCamera::ImageFormat format)
void imageExposed(int id)
void setPreviewCallback(PreviewCallback *callback)
void setCaptureSession(QPlatformMediaCaptureSession *session) override
void setExposureCompensation(float bias) override
void setFocusMode(QCamera::FocusMode mode) override
void setExposureMode(QCamera::ExposureMode mode) override
bool isTorchModeSupported(QCamera::TorchMode mode) const override
void setFlashMode(QCamera::FlashMode mode) override
bool isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const override
void zoomTo(float factor, float rate) override
void setCamera(const QCameraDevice &camera) override
bool isFocusModeSupported(QCamera::FocusMode mode) const override
bool setCameraFormat(const QCameraFormat &format) override
bool isFlashReady() const override
void setWhiteBalanceMode(QCamera::WhiteBalanceMode mode) override
bool isFlashModeSupported(QCamera::FlashMode mode) const override
virtual ~QAndroidCamera()
void setActive(bool active) override
bool isActive() const override
bool isExposureModeSupported(QCamera::ExposureMode mode) const override
void setTorchMode(QCamera::TorchMode mode) override
void stateChanged(QMediaRecorder::RecorderState state)
QList< QSize > supportedResolutions() const
QMediaEncoderSettings encoderSettings()
void start(QMediaEncoderSettings &settings, const QUrl &outputLocation)
void actualLocationChanged(const QUrl &location)
void setAudioInput(QPlatformAudioInput *input)
void setAudioOutput(QPlatformAudioOutput *output)
void durationChanged(qint64 position)
QList< qreal > supportedFrameRates() const
void updateError(int error, const QString &errorString)
void setMediaEncoder(QAndroidMediaEncoder *encoder)
void setCameraSession(QAndroidCameraSession *cameraSession=0)
void setCamera(QPlatformCamera *camera) override
void setAudioOutput(QPlatformAudioOutput *output) override
void setVideoPreview(QVideoSink *sink) override
QPlatformCamera * camera() override
QPlatformMediaRecorder * mediaRecorder() override
void setImageCapture(QPlatformImageCapture *imageCapture) override
QAndroidCaptureSession * captureSession() const
QAndroidCameraSession * cameraSession() const
QPlatformImageCapture * imageCapture() override
void setAudioInput(QPlatformAudioInput *input) override
void record(QMediaEncoderSettings &settings) override
qint64 duration() const override
QAndroidMediaEncoder(QMediaRecorder *parent)
The QCamera class provides interface for system camera devices.
Definition qcamera.h:25
\inmodule QtCore
Definition qsize.h:27
Combined button and popup list for selecting options.
virtual void onFrameAvailable(const QVideoFrame &frame)=0