QCamera Class

QCamera 클래스는 시스템 카메라 장치를 위한 인터페이스를 제공합니다. 더 보기...

Header: #include <QCamera>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia
QML에서: Camera
상속합니다: QObject

공용 유형

enum Error { NoError, CameraError }
enum ExposureMode { ExposureAuto, ExposureManual, ExposurePortrait, ExposureNight, ExposureSports, …, ExposureBarcode }
enum class Feature { ColorTemperature, ExposureCompensation, IsoSensitivity, ManualExposureTime, CustomFocusPoint, FocusDistance }
flags Features
enum FlashMode { FlashOff, FlashOn, FlashAuto }
enum FocusMode { FocusModeAuto, FocusModeAutoNear, FocusModeAutoFar, FocusModeHyperfocal, FocusModeInfinity, FocusModeManual }
enum TorchMode { TorchOff, TorchOn, TorchAuto }
enum WhiteBalanceMode { WhiteBalanceAuto, WhiteBalanceManual, WhiteBalanceSunlight, WhiteBalanceCloudy, WhiteBalanceShade, …, WhiteBalanceSunset }

속성

공용 기능

QCamera(QObject *parent = nullptr)
QCamera(QCameraDevice::Position position, QObject *parent = nullptr)
QCamera(const QCameraDevice &cameraDevice, QObject *parent = nullptr)
virtual ~QCamera() override
QCameraDevice cameraDevice() const
QCameraFormat cameraFormat() const
QMediaCaptureSession *captureSession() const
int colorTemperature() const
QPointF customFocusPoint() const
QCamera::Error error() const
QString errorString() const
float exposureCompensation() const
QCamera::ExposureMode exposureMode() const
float exposureTime() const
QCamera::FlashMode flashMode() const
float focusDistance() const
QCamera::FocusMode focusMode() const
QPointF focusPoint() const
bool isActive() const
bool isAvailable() const
bool isExposureModeSupported(QCamera::ExposureMode mode) const
bool isFlashModeSupported(QCamera::FlashMode mode) const
bool isFlashReady() const
bool isFocusModeSupported(QCamera::FocusMode mode) const
bool isTorchModeSupported(QCamera::TorchMode mode) const
bool isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const
int isoSensitivity() const
float manualExposureTime() const
int manualIsoSensitivity() const
float maximumExposureTime() const
int maximumIsoSensitivity() const
float maximumZoomFactor() const
float minimumExposureTime() const
int minimumIsoSensitivity() const
float minimumZoomFactor() const
void setCameraDevice(const QCameraDevice &cameraDevice)
void setCameraFormat(const QCameraFormat &format)
void setCustomFocusPoint(const QPointF &point)
void setFocusDistance(float d)
void setFocusMode(QCamera::FocusMode mode)
void setZoomFactor(float factor)
QCamera::Features supportedFeatures() const
QCamera::TorchMode torchMode() const
QCamera::WhiteBalanceMode whiteBalanceMode() const
float zoomFactor() const

공용 슬롯

void setActive(bool active)
void setAutoExposureTime()
void setAutoIsoSensitivity()
void setColorTemperature(int colorTemperature)
void setExposureCompensation(float ev)
void setExposureMode(QCamera::ExposureMode mode)
void setFlashMode(QCamera::FlashMode mode)
void setManualExposureTime(float seconds)
void setManualIsoSensitivity(int iso)
void setTorchMode(QCamera::TorchMode mode)
void setWhiteBalanceMode(QCamera::WhiteBalanceMode mode)
void start()
void stop()
void zoomTo(float factor, float rate)

신호

void activeChanged(bool)
void cameraDeviceChanged()
void cameraFormatChanged()
void colorTemperatureChanged() const
void customFocusPointChanged()
void errorChanged()
void errorOccurred(QCamera::Error error, const QString &errorString)
void exposureCompensationChanged(float value)
void exposureModeChanged()
void exposureTimeChanged(float speed)
void flashModeChanged()
void flashReady(bool ready)
void focusDistanceChanged(float)
void focusModeChanged()
void focusPointChanged()
void isoSensitivityChanged(int value)
void manualExposureTimeChanged(float speed)
void manualIsoSensitivityChanged(int)
void maximumZoomFactorChanged(float)
void minimumZoomFactorChanged(float)
void supportedFeaturesChanged()
void torchModeChanged()
void whiteBalanceModeChanged() const
void zoomFactorChanged(float)

상세 설명

QCamera는 동영상 녹화 및 이미지 촬영을 위해 QMediaCaptureSession 내에서 사용할 수 있습니다.

QCameraDevice 에서 사용 가능한 카메라를 나열하고 사용할 카메라를 선택할 수 있습니다.

const QList<QCameraDevice> cameras = QMediaDevices::videoInputs();
for (const QCameraDevice &cameraDevice : cameras) {
    if (cameraDevice.description() == "mycamera")
        camera = new QCamera(cameraDevice);
}

이를 지원하는 하드웨어에서는 QCamera를 사용하여 초점과 줌을 조정할 수 있습니다. 여기에는 근접 작업(예: 바코드 읽기 또는 문자 인식)을 위한 '매크로' 모드 또는 하드웨어가 초점을 맞추려고 시도할 이미지의 흥미로운 영역을 나타내는 '터치하여 초점 맞추기' 등의 기능도 포함됩니다.

camera->setFocusPointMode(QCamera::FocusModeManual);
camera->setCustomFocusPoint(QPointF(0.25f, 0.75f)); // A point near the bottom left, 25% away from the corner, near that shiny vase

minimumZoomFactor() 및 maximumZoomFactor() 메서드는 지원되는 줌 배율의 범위를 제공합니다. zoomTo () 메서드를 사용하면 줌 배율을 변경할 수 있습니다.

camera->setZoomFactor(3.0);

카메라 프레임의 원시 데이터를 캡처한 후 카메라 하드웨어와 소프트웨어는 최종 이미지를 생성하기 위해 다양한 이미지 처리 작업을 수행합니다. 여기에는 주변 조명 색상 보정, 노이즈 감소, 이미지에 대한 기타 조정 등이 포함됩니다.

카메라 속성을 통해 이러한 처리 단계의 대부분을 제어할 수 있습니다. 예를 들어 이미지 처리에 사용되는 화이트 밸런스(또는 색온도)를 설정할 수 있습니다:

camera->setWhiteBalanceMode(QCamera::WhiteBalanceFluorescent);

카메라 프레임의 이미지 처리에 대한 자세한 내용은 카메라 이미지 처리를 참조하세요.

자세한 내용은 카메라 개요를 참조하세요.

회원 유형 문서

enum QCamera::Error

이 열거형에는 마지막 오류 코드가 저장됩니다.

상수설명
QCamera::NoError0오류가 발생하지 않았습니다.
QCamera::CameraError1오류가 발생했습니다.

enum QCamera::ExposureMode

상수설명
QCamera::ExposureAuto0자동 모드.
QCamera::ExposureManual1수동 모드.
QCamera::ExposurePortrait2인물 노출 모드입니다.
QCamera::ExposureNight3야간 모드.
QCamera::ExposureSports4반점 노출 모드.
QCamera::ExposureSnow5눈 노출 모드.
QCamera::ExposureBeach6해변 노출 모드.
QCamera::ExposureAction7액션 모드. 5.5 이후
QCamera::ExposureLandscape8풍경 모드. 5.5 이후
QCamera::ExposureNightPortrait9야간 인물 모드. 5.5 이후
QCamera::ExposureTheatre10극장 모드. 5.5 이후
QCamera::ExposureSunset11일몰 모드. 5.5 이후
QCamera::ExposureSteadyPhoto12안정적인 사진 모드. 5.5 이후
QCamera::ExposureFireworks13불꽃놀이 모드. 5.5 이후
QCamera::ExposureParty14파티 모드. 5.5 이후
QCamera::ExposureCandlelight15촛불 모드. 5.5 이후
QCamera::ExposureBarcode16바코드 모드. 5.5 이후

열거형 클래스 QCamera::Feature
플래그 QCamera::Features

카메라가 지원하는 기능 집합을 설명합니다. 반환되는 값은 다음의 조합일 수 있습니다:

상수Value설명
QCamera::Feature::ColorTemperature0x1카메라가 사용자 정의 colorTemperature 설정을 지원합니다.
QCamera::Feature::ExposureCompensation0x2카메라는 사용자 정의 exposureCompensation 설정을 지원합니다.
QCamera::Feature::IsoSensitivity0x4카메라가 사용자 정의 isoSensitivity 설정을 지원합니다.
QCamera::Feature::ManualExposureTime0x8카메라가 manual exposure Time.
QCamera::Feature::CustomFocusPoint0x10카메라가 custom focus point.
QCamera::Feature::FocusDistance0x20카메라는 focusDistance 속성 설정을 지원합니다.

기능 유형은 QFlags<Feature>에 대한 유형 정의입니다. Feature 값의 OR 조합을 저장합니다.

enum QCamera::FlashMode

상수설명
QCamera::FlashOff0플래시가 꺼져 있습니다.
QCamera::FlashOn1플래시가 켜져 있습니다.
QCamera::FlashAuto2자동 플래시.

enum QCamera::FocusMode

상수설명
QCamera::FocusModeAuto0연속 자동 초점 모드.
QCamera::FocusModeAutoNear1가까운 물체에 연속 자동 초점 모드.
QCamera::FocusModeAutoFar2멀리 있는 피사체에 연속 자동 초점 모드.
QCamera::FocusModeHyperfocal3최대 피사계 심도를 달성하여 초점 거리를 초점 거리로 설정합니다. 이 거리의 절반에서 무한대까지의 거리에 있는 모든 피사체가 적당히 선명해집니다.
QCamera::FocusModeInfinity4엄격하게 무한대까지 초점 맞추기.
QCamera::FocusModeManual5카메라 렌즈 초점 거리는 focusDistance 에 따라 고정됩니다.

enum QCamera::TorchMode

상수설명
QCamera::TorchOff0토치가 꺼져 있습니다.
QCamera::TorchOn1토치가 켜져 있습니다.
QCamera::TorchAuto2자동 토치.

enum QCamera::WhiteBalanceMode

상수설명
QCamera::WhiteBalanceAuto0자동 화이트 밸런스 모드.
QCamera::WhiteBalanceManual1수동 화이트 밸런스. 이 모드에서는 setColorTemperature()로 화이트 밸런스를 설정해야 합니다.
QCamera::WhiteBalanceSunlight2햇빛 화이트 밸런스 모드.
QCamera::WhiteBalanceCloudy3흐린 화이트 밸런스 모드.
QCamera::WhiteBalanceShade4그늘 화이트 밸런스 모드.
QCamera::WhiteBalanceTungsten5텅스텐(백열등) 화이트 밸런스 모드.
QCamera::WhiteBalanceFluorescent6형광등 화이트 밸런스 모드.
QCamera::WhiteBalanceFlash7플래시 화이트 밸런스 모드.
QCamera::WhiteBalanceSunset8일몰 화이트 밸런스 모드.

속성 문서

active : bool

카메라가 현재 활성화되어 있는지 여부를 설명합니다.

기능 액세스:

bool isActive() const
void setActive(bool active)

알림 신호:

void activeChanged(bool)

cameraDevice : QCameraDevice

이 카메라와 연결된 QCameraDevice 객체를 반환합니다.

함수에 액세스합니다:

QCameraDevice cameraDevice() const
void setCameraDevice(const QCameraDevice &cameraDevice)

알림 신호:

void cameraDeviceChanged()

cameraFormat : QCameraFormat

현재 카메라에서 사용 중인 카메라 포맷을 반환합니다.

참고: Android 대상 디바이스에서 FFMPEG 백엔드를 사용할 때 YUV420P 포맷을 요청하면 완전 평면 4:2:0 YUV420P 또는 반평면 NV12/NV21을 받게 됩니다. 이는 디바이스 OEM에서 구현한 코덱에 따라 다릅니다.

액세스 기능:

QCameraFormat cameraFormat() const
void setCameraFormat(const QCameraFormat &format)

알림 신호:

void cameraFormatChanged()

QCameraDevice::videoFormats참조하세요 .

colorTemperature : int

현재 화이트 밸런스 모드가 WhiteBalanceManual 인 경우 현재 색온도를 반환합니다. 다른 모드의 경우 반환값은 정의되지 않습니다.

함수에 액세스합니다:

int colorTemperature() const
void setColorTemperature(int colorTemperature)

알림 신호:

void colorTemperatureChanged() const

customFocusPoint : QPointF

이 속성은 사용자 지정 초점 포인트의 위치를 상대 프레임 좌표로 나타냅니다. QPointF(0,0)은 왼쪽 상단 프레임 포인트를 가리키고 QPointF(0.5,0.5)는 프레임 중앙을 가리킵니다.

사용자 지정 초점 포인트 속성은 FocusPointCustom 초점 모드에서만 사용됩니다.

사용자 지정 포커스 포인트가 지원되는지 여부는CustomFocusPoint 플래그와 함께 supportedFeatures()를 쿼리하여 확인할 수 있습니다.

기능에 액세스합니다:

QPointF customFocusPoint() const
void setCustomFocusPoint(const QPointF &point)

알림 신호:

void customFocusPointChanged()

[read-only] error : const Error

카메라의 오류 상태를 반환합니다.

기능에 액세스합니다:

QCamera::Error error() const

알림 신호:

void errorChanged()

[read-only] errorString : const QString

카메라의 오류 상태를 설명하는 사람이 읽을 수 있는 문자열을 반환합니다.

함수에 액세스합니다:

QString errorString() const

알림 신호:

void errorChanged()

exposureCompensation : float

EV 단위의 노출 보정.

노출 보정 속성을 사용하면 자동으로 계산된 노출을 조정할 수 있습니다.

기능에 액세스합니다:

float exposureCompensation() const
void setExposureCompensation(float ev)

알림 신호:

void exposureCompensationChanged(float value)

exposureMode : QCamera::ExposureMode

이 속성에는 사용 중인 노출 모드가 저장됩니다.

기능에 액세스합니다:

QCamera::ExposureMode exposureMode() const
void setExposureMode(QCamera::ExposureMode mode)

알림 신호:

void exposureModeChanged()

QCamera::isExposureModeSupported참조하세요 .

[read-only] exposureTime : const float

카메라의 노출 시간(초).

액세스 기능:

float exposureTime() const

알림 신호:

void exposureTimeChanged(float speed)

minimumExposureTime(), maximumExposureTime() 및 setManualExposureTime()도 참조하세요 .

flashMode : QCamera::FlashMode

이 속성에는 사용 중인 플래시 모드가 저장됩니다.

카메라에 플래시가 있는 경우 특정 플래시 모드를 활성화합니다.

기능에 액세스합니다:

QCamera::FlashMode flashMode() const
void setFlashMode(QCamera::FlashMode mode)

알림 신호:

void flashModeChanged()

QCamera::FlashMode, QCamera::isFlashModeSupported, QCamera::isFlashReady참조하세요 .

[read-only] flashReady : const bool

플래시가 충전되어 사용할 준비가 되었는지 여부를 표시합니다.

액세스 기능:

bool isFlashReady() const[see note below]

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

알림 신호:

void flashReady(bool ready)

focusDistance : float

이 속성은 카메라 장치가 수동 초점 모드에서 작동할 때 렌즈 초점 거리를 정의합니다. 유효한 값은 0에서 1 사이이며, 0은 가능한 가장 가까운 초점 거리, 1은 가장 먼 거리입니다. 가장 먼 지점은 일반적으로 무한대이지만 모든 디바이스에 해당되는 것은 아닙니다.

이 속성은 focusModeFocusModeManual 으로 설정되어 있고 supportedFeaturesFeature::FocusDistance 플래그가 포함된 경우에만 디바이스에 적용됩니다.

focusMode 이 Camera.FocusModeManual로 설정되지 않은 상태에서 이 프로퍼티에 값을 할당하면 프로퍼티는 값을 저장하지만 Camera.FocusModeManual이 활성화될 때까지 장치에 영향을 미치지 않습니다.

유효한 범위[0, 1]를 벗어난 값을 할당해도 이 속성에는 영향을 미치지 않습니다.

supportedFeaturesFocusDistance 플래그가 포함되지 않은 경우 이 속성을 설정하려는 시도는 무시됩니다.

이 속성은 카메라가 자동 초점 모드에 있을 때 업데이트되지 않습니다.

기본값은 1입니다.

기능 액세스:

float focusDistance() const
void setFocusDistance(float d)

알림 신호:

void focusDistanceChanged(float)

focusMode : FocusMode

이 프로퍼티에는 현재 카메라 초점 모드가 저장됩니다.

이 프로퍼티에는 카메라 장치의 초점 모드를 제어하는 값이 저장됩니다. 모든 자동 초점 모드에서 카메라 장치는 지속적으로 초점을 유지합니다.

카메라 장치가 특정 초점 모드를 지원하는지 확인하려면 isFocusModeSupported 함수에 해당 FocusMode 값을 파라미터로 전달합니다. 초점 모드 값이 지원되지 않으면 이 함수는 false를 반환합니다. 이 모드를 focusMode 프로퍼티에 할당해도 아무런 효과가 없습니다.

focusMode 속성을 Camera.FocusModeManual로 설정하면 렌즈가 focusDistance 에 따라 초점을 고정합니다.

기능에 액세스합니다:

QCamera::FocusMode focusMode() const
void setFocusMode(QCamera::FocusMode mode)

알림 신호:

isFocusModeSupported참조하세요 .

[read-only] focusPoint : const QPointF

현재 자동 초점 시스템에서 초점을 맞추는 데 사용하는 포인트를 반환합니다.

기능에 액세스합니다:

QPointF focusPoint() const

알림 신호:

void focusPointChanged()

[read-only] isoSensitivity : const int

이 프로퍼티에는 센서 ISO 감도가 저장됩니다.

카메라가 현재 사용하는 ISO 감도를 설명합니다.

기능에 액세스합니다:

int isoSensitivity() const

알림 신호:

void isoSensitivityChanged(int value)

setAutoIsoSensitivity() 및 setManualIsoSensitivity()도 참조하세요 .

manualExposureTime : float

수동 노출 시간을 다음과 같이 설정합니다. seconds

기능에 액세스합니다:

float manualExposureTime() const
void setManualExposureTime(float seconds)

알림 신호로 설정합니다:

void manualExposureTimeChanged(float speed)

manualIsoSensitivity : int

수동으로 설정한 ISO 감도를 설명합니다.

이 속성을 -1(기본값)로 설정하면 카메라가 ISO 감도를 자동으로 조정합니다.

기능에 액세스합니다:

int manualIsoSensitivity() const
void setManualIsoSensitivity(int iso)

알림 신호:

void manualIsoSensitivityChanged(int)

[read-only] maximumZoomFactor : const float

최대 줌 배율을 반환합니다.

줌 기능을 지원하지 않는 카메라에서는 1.0 이 됩니다.

기능에 액세스합니다:

float maximumZoomFactor() const

알림 신호:

void maximumZoomFactorChanged(float)

[read-only] minimumZoomFactor : const float

최소 줌 배율을 반환합니다.

줌 기능을 지원하지 않는 카메라에서는 1.0 이 됩니다.

기능에 액세스합니다:

float minimumZoomFactor() const

알림 신호:

void minimumZoomFactorChanged(float)

[read-only] supportedFeatures : const Features

이 카메라에서 지원하는 기능을 반환합니다.

기능에 액세스합니다:

QCamera::Features supportedFeatures() const

알림 신호:

void supportedFeaturesChanged()

QCamera::Feature참조하세요 .

torchMode : QCamera::TorchMode

이 프로퍼티에는 사용 중인 토치 모드가 저장됩니다.

토치는 연속적인 광원입니다. 저조도 환경에서 비디오 녹화 중에 사용할 수 있습니다. 토치 모드를 활성화하면 일반적으로 현재 설정된 모든 플래시 모드가 재정의됩니다.

기능 액세스하기:

QCamera::TorchMode torchMode() const
void setTorchMode(QCamera::TorchMode mode)

알림 신호:

void torchModeChanged()

QCamera::TorchMode, QCamera::isTorchModeSupported, QCamera::flashMode참조하세요 .

whiteBalanceMode : WhiteBalanceMode

사용 중인 화이트 밸런스 모드를 반환합니다.

기능에 액세스합니다:

QCamera::WhiteBalanceMode whiteBalanceMode() const
void setWhiteBalanceMode(QCamera::WhiteBalanceMode mode)

알림 신호:

void whiteBalanceModeChanged() const

zoomFactor : float

이 속성은 현재 확대/축소 배율을 보유합니다.

현재 확대/축소 배율을 가져오거나 설정합니다. 값은 minimumZoomFactormaximumZoomFactor 사이에 고정됩니다.

함수에 액세스합니다:

float zoomFactor() const
void setZoomFactor(float factor)

알림 신호:

void zoomFactorChanged(float)

멤버 함수 문서

[explicit] QCamera::QCamera(QObject *parent = nullptr)

parent 으로 QCamera를 구성합니다.

카메라를 두 개 이상 사용할 수 있는 경우 시스템에서 기본 카메라를 선택합니다.

[explicit] QCamera::QCamera(QCameraDevice::Position position, QObject *parent = nullptr)

지정된 position 에 있는 하드웨어 카메라를 사용하는 QCamera를 구성합니다.

예를 들어 휴대폰에서는 전면 카메라와 후면 카메라 중에서 쉽게 선택할 수 있습니다.

지정된 position 에 카메라를 사용할 수 없거나 positionQCameraDevice::UnspecifiedPosition 인 경우 기본 카메라가 사용됩니다.

[explicit] QCamera::QCamera(const QCameraDevice &cameraDevice, QObject *parent = nullptr)

카메라 설명 cameraDeviceparent 에서 QCamera를 구성합니다.

[override virtual noexcept] QCamera::~QCamera()

카메라 오브젝트를 파괴합니다.

QMediaCaptureSession *QCamera::captureSession() const

이 카메라가 연결된 캡처 세션을 반환하거나 카메라가 캡처 세션에 연결되어 있지 않은 경우 nullptr을 반환합니다.

QMediaCaptureSession::setCamera()를 사용하여 카메라를 세션에 연결합니다.

[signal] void QCamera::errorOccurred(QCamera::Error error, const QString &errorString)

이 신호는 오류 상태가 error 로 변경될 때 발생합니다. 오류에 대한 설명은 errorString 으로 제공됩니다.

[signal] void QCamera::exposureCompensationChanged(float value)

노출 보정이 value 로 변경될 때 발생하는 신호입니다.

참고: 속성에 대한 알림 신호 exposureCompensation.

float QCamera::exposureTime() const

현재 노출 시간(초)을 반환합니다.

참고: 노출 시간 프로퍼티에 대한 게터 함수입니다.

[signal] void QCamera::exposureTimeChanged(float speed)

카메라의 노출 speed 이 변경되었음을 알리는 신호입니다.

참고: 프로퍼티 exposureTime 에 대한 알림 신호입니다.

[signal] void QCamera::flashReady(bool ready)

플래시 ready 상태가 변경되었음을 알립니다.

참고: 프로퍼티에 대한 알림 신호는 flashReady입니다.

[signal] void QCamera::focusModeChanged()

focusMode 가 변경되면 신호를 보냅니다.

참고: 속성에 대한 알림 신호 focusMode.

bool QCamera::isActive() const

카메라가 현재 활성화되어 있으면 true를 반환합니다.

참고: 프로퍼티에 대한 게터 함수 active.

bool QCamera::isAvailable() const

카메라를 사용할 수 있으면 true를 반환합니다.

[invokable] bool QCamera::isExposureModeSupported(QCamera::ExposureMode mode) const

mode 노출이 지원되면 true를 반환합니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

[invokable] bool QCamera::isFlashModeSupported(QCamera::FlashMode mode) const

mode 플래시가 지원되면 true를 반환합니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

[invokable] bool QCamera::isFlashReady() const

플래시가 충전되면 true를 반환합니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

참고: 속성에 대한 게터 함수 flashReady.

[invokable] bool QCamera::isFocusModeSupported(QCamera::FocusMode mode) const

카메라에서 mode 초점이 지원되면 true를 반환합니다.

FocusModeManual 가 지원되는 것으로 보고되면 Feature::FocusDistance 기능도 지원되는 것으로 암시됩니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

[invokable] bool QCamera::isTorchModeSupported(QCamera::TorchMode mode) const

토치 mode 가 지원되면 참을 반환합니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

[invokable] bool QCamera::isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const

화이트 밸런스 mode 가 지원되면 true를 반환합니다.

참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 을 참조하세요.

[signal] void QCamera::isoSensitivityChanged(int value)

감도가 value 로 변경될 때 발생하는 신호입니다.

참고: 속성 isoSensitivity 에 대한 알림 신호입니다.

float QCamera::manualExposureTime() const

수동 노출 시간(초)을 반환하며, 카메라가 자동 노출 시간을 사용하는 경우 -1을 반환합니다.

참고: 수동 노출 시간 프로퍼티에 대한 게터 함수입니다.

setManualExposureTime()도 참조하세요 .

float QCamera::maximumExposureTime() const

최대 노출 시간(초)입니다.

int QCamera::maximumIsoSensitivity() const

카메라에서 지원하는 최대 ISO 감도를 반환합니다.

float QCamera::minimumExposureTime() const

초 단위의 최소 노출 시간.

int QCamera::minimumIsoSensitivity() const

카메라에서 지원하는 최소 ISO 감도를 반환합니다.

[slot] void QCamera::setActive(bool active)

activetrue 이면 카메라를 켜고 false 이면 끕니다.

참고: active 속성에 대한 세터 함수.

isActive()도 참조하세요 .

[slot] void QCamera::setAutoExposureTime()

자동으로 계산된 노출 시간 사용

[slot] void QCamera::setAutoIsoSensitivity()

자동 감도 켜기

void QCamera::setCameraDevice(const QCameraDevice &cameraDevice)

카메라 객체를 cameraDevice 에 설명된 물리적 카메라 장치에 연결합니다. 기본적으로 구성된 QCameraDevice 객체를 cameraDevice 으로 사용하면 카메라가 시스템 기본 카메라 장치에 연결됩니다.

카메라 장치를 전환하면 QCamera 의 기능이 업데이트됩니다. 또한 QCamera 의 제어 속성(예: focusMode, flashMode, focusDistance, zoomFactor)도 다음과 같이 업데이트됩니다:

  • 새 장치에서 속성이 지원되는 경우 해당 속성 값이 카메라 장치에 적용됩니다.
  • 속성이 지원되지만 유효한 값의 범위가 변경된 경우 속성이 새 범위로 고정되어 카메라 장치에 적용됩니다.
  • 새 카메라 장치가 속성을 지원하지 않는 경우 속성 값이 기본값으로 재설정되고 카메라 장치에는 변경 사항이 적용되지 않습니다.

참고: 프로퍼티의 설정자 함수 cameraDevice.

cameraDevice()도 참조하세요 .

void QCamera::setCameraFormat(const QCameraFormat &format)

카메라에 format 에 설명된 형식을 사용하도록 지시합니다. 녹화 및 이미지 캡처에 사용할 특정 해상도 및 프레임 속도를 정의하는 데 사용할 수 있습니다.

참고: Android 대상 디바이스에서 FFMPEG 백엔드를 사용할 때 YUV420P 포맷을 요청하면 완전 평면 4:2:0 YUV420P 또는 반평면 NV12/NV21을 받게 됩니다. 이는 디바이스 OEM에서 구현한 코덱에 따라 다릅니다.

참고: 속성 설정자 기능 cameraFormat.

cameraFormat()도 참조하세요 .

[slot] void QCamera::setColorTemperature(int colorTemperature)

수동 화이트 밸런스를 colorTemperature 로 설정합니다. whiteBalanceMode()가 WhiteBalanceManual 로 설정되어 있을 때 사용됩니다. 단위는 켈빈입니다.

색온도 설정은 WhiteBalanceManual 이 지원되는 경우에만 적용됩니다. 이 경우 온도를 0보다 크게 설정하면 화이트 밸런스 모드가 자동으로 WhiteBalanceManual 로 설정됩니다. 온도를 0으로 설정하면 화이트 밸런스 모드가 WhiteBalanceAuto 로 재설정됩니다.

참고: colorTemperature 속성에 대한 세터 기능.

colorTemperature()도 참조하세요 .

[slot] void QCamera::setWhiteBalanceMode(QCamera::WhiteBalanceMode mode)

화이트 밸런스를 mode 로 설정합니다.

참고: 속성에 대한 설정자 함수 whiteBalanceMode.

whiteBalanceMode()도 참조하세요 .

void QCamera::setZoomFactor(float factor)

초당 1배율로 확대/축소 배율 factor 로 확대/축소합니다.

참고: 속성에 대한 설정자 함수 zoomFactor.

zoomFactor()도 참조하세요 .

[slot] void QCamera::start()

카메라를 시작합니다.

setActive(true)와 동일합니다.

어떤 이유로 카메라를 시작할 수 없는 경우 errorOccurred() 신호가 전송됩니다.

[slot] void QCamera::stop()

카메라를 중지합니다. setActive (거짓)과 동일합니다.

[slot] void QCamera::zoomTo(float factor, float rate)

rate 을 사용하여 줌 배율 factor 로 확대합니다.

rate 은 초당 2의 거듭제곱으로 지정됩니다. 1의 비율을 사용하면 줌 배율 1에서 4로 이동하는 데 2초가 걸립니다.

참고: 특정 배율을 사용하는 것이 모든 카메라에서 지원되는 것은 아닙니다. 지원되지 않는 경우 가능한 한 빠르게 확대/축소가 이루어집니다.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.