이 페이지에서

Camera QML Type

초점 및 줌과 관련된 카메라 설정을 위한 인터페이스입니다. 더 보기...

Import Statement: import QtMultimedia
In C++: QCamera

속성

신호

방법

상세 설명

카메라 요소는 동영상 녹화 및 이미지 촬영을 위해 CaptureSession 내에서 사용할 수 있습니다.

MediaDevices 을 사용하여 사용 가능한 카메라를 나열하고 사용할 카메라를 선택할 수 있습니다.

MediaDevices {
    id: mediaDevices
}
CaptureSession {
    camera: Camera {
        cameraDevice: mediaDevices.defaultVideoInput
    }
}

이를 지원하는 하드웨어에서는 Camera 을 사용하여 초점과 줌을 조정할 수 있습니다. minimumZoomFactormaximumZoomFactor 속성은 지원되는 줌 배율의 범위를 제공합니다. zoomFactor 속성을 사용하면 줌 배율을 변경할 수 있습니다.

Camera {
    zoomFactor: maximumZoomFactor // zoom in as much as possible
}

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

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

Camera {
    whiteBalanceMode: Camera.WhiteBalanceManual
    colorTemperature: 5600
}

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

대부분의 플랫폼에서는 카메라를 활성화하기 전에 최종 사용자가 권한을 부여해야 합니다. 따라서 애플리케이션 개발자는 카메라로 작업할 때 CameraPermission 컴포넌트를 활용하는 것이 좋습니다. 다음은 애플리케이션이 시작될 때 최종 사용자에게 권한을 요청하고 권한이 부여되면 카메라를 활성화하는 짧은 예제입니다.

CameraPermission {
    id: cameraPermission
}

Camera {
    active: cameraPermission.status === Qt.PermissionStatus.Granted
}

Component.onCompleted: cameraPermission.request()

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

속성 문서

active : bool

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

cameraDevice : cameraDevice

현재 활성화된 카메라 디바이스를 가져오거나 설정합니다.

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

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

cameraFormat : cameraFormat

현재 활성화된 카메라 포맷을 가져오거나 설정합니다.

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

참고: macOS에서는 카메라 장치가 운영 체제의 여러 애플리케이션에서 공유됩니다. 즉, 다른 애플리케이션이 이 속성에서 설정한 형식을 재정의할 수 있습니다. 애플리케이션 개발자는 이 속성에서 설명하는 것과 다른 해상도, 픽셀 형식 및 프레임 속도를 가진 비디오 프레임을 수신하는 것을 고려해야 합니다. 이 속성은 다른 애플리케이션에서 디바이스의 포맷을 수정해도 변경되지 않습니다. 이 속성에 설명된 형식은 Camera 을 다시 활성화하여 디바이스에 다시 적용할 수 있습니다.

cameraDevice::videoFormats참조하세요 .

colorTemperature : int

현재 색온도를 가져오거나 설정합니다.

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

customFocusPoint : point

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

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

error : enumeration [read-only]

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

상수설명
Camera.NoError오류가 발생하지 않았습니다.
Camera.CameraError오류가 발생했습니다.

errorString : string [read-only]

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

exposureCompensation : real

노출 보정을 EV 단위로 가져오거나 설정합니다.

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

exposureMode : enumeration

사용 중인 노출 모드입니다.

상수설명
Camera.ExposureAuto자동 모드입니다.
Camera.ExposureManual수동 모드.
Camera.ExposurePortrait인물 노출 모드입니다.
Camera.ExposureNight야간 모드.
Camera.ExposureSports반점 노출 모드.
Camera.ExposureSnow눈 노출 모드.
Camera.ExposureBeach해변 노출 모드.
Camera.ExposureAction액션 모드. 5.5 이후
Camera.ExposureLandscape풍경 모드. 5.5 이후
Camera.ExposureNightPortrait야간 인물 모드. 5.5 이후
Camera.ExposureTheatre극장 모드. 5.5 이후
Camera.ExposureSunset일몰 모드. 5.5 이후
Camera.ExposureSteadyPhoto안정적인 사진 모드. 5.5 이후
Camera.ExposureFireworks불꽃놀이 모드. 5.5 이후
Camera.ExposureParty파티 모드. 5.5 이후
Camera.ExposureCandlelight촛불 모드. 5.5 이후
Camera.ExposureBarcode바코드 모드. 5.5 이후

isExposureModeSupported()도 참조하세요 .

exposureTime : real [read-only]

카메라의 노출 시간을 초 단위로 반환합니다.

manualExposureTime도 참조하세요 .

flashMode : enumeration

카메라에 플래시가 있는 경우 특정 플래시 모드를 가져오거나 설정합니다.

이 프로퍼티에 지원되지 않는 모드를 할당하면 효과가 없습니다.

이 속성은 다음을 사용하여 이미지를 캡처할 때만 효과가 있습니다. ImageCapture

Constant설명
Camera.FlashOff플래시가 꺼져 있습니다.
Camera.FlashOn플래시가 켜져 있습니다.
Camera.FlashAuto자동 플래시.

isFlashModeSupported(), isFlashReady() 및 flashReady참조하십시오 .

flashReady : bool [read-only]

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

focusDistance : real

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

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

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

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

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

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

기본값은 1입니다.

focusMode : enumeration

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

참고: 자동 초점 모드에서 지원되는 경우 focusPoint 속성은 초점이 맞춰지는 이미지 영역에 대한 정보와 제어 기능을 제공합니다.

Constant설명
Camera.FocusModeAuto연속 자동 초점 모드.
Camera.FocusModeAutoNear연속 자동 초점, 카메라에 가까운 피사체에 우선적으로 초점을 맞춥니다.
Camera.FocusModeAutoFar연속 자동 초점, 카메라에서 멀리 떨어진 피사체에 우선적으로 초점을 맞춥니다.
Camera.FocusModeHyperfocal최대 피사계 심도를 달성하여 초점 거리를 초점 거리입니다. 이 거리의 절반에서 무한대까지의 거리에 있는 모든 피사체가 선명하게 촬영됩니다.
Camera.FocusModeInfinity엄격하게 무한대까지 초점 맞추기.
Camera.FocusModeManual렌즈 초점 거리는 focusDistance 에서 지정한 값으로 설정됩니다.

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

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

isFocusModeSupported()도 참조하세요 .

focusPoint : point [read-only]

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

isoSensitivity : int [read-only]

현재 카메라에서 사용 중인 ISO 감도를 설명합니다.

manualExposureTime : real

수동 노출 시간을 가져오거나 설정합니다.

이 속성을 -1(기본값)로 설정하면 카메라가 노출 시간을 자동으로 결정합니다.

manualIsoSensitivity : int

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

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

maximumZoomFactor : real [read-only]

이 속성은 지원되는 최대 줌 배율을 보유합니다.

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

minimumZoomFactor : real [read-only]

이 속성은 지원되는 최소 줌 배율을 보유합니다.

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

supportedFeatures : enumeration [read-only]

이 카메라에서 지원하는 기능을 반환합니다. 값은 다음 플래그 중 하나를 포함할 수 있는 비트마스크입니다. 기능 값의 OR 조합을 저장합니다.

Constant설명
Camera.ColorTemperature이 카메라는 사용자 지정 colorTemperature 설정을 지원합니다.
Camera.ExposureCompensation카메라는 사용자 정의 exposureCompensation 설정을 지원합니다.
Camera.IsoSensitivity카메라는 사용자 정의 isoSensitivity 설정을 지원합니다.
Camera.ManualExposureTime카메라가 manual exposure Time.
Camera.CustomFocusPoint카메라가 custom focus point.
Camera.FocusDistance카메라는 focusDistance 속성 설정을 지원합니다.

torchMode : enumeration

사용 중인 토치 모드를 가져오거나 설정합니다.

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

상수설명
Camera.TorchOff토치가 꺼져 있습니다.
Camera.TorchOn토치 켜짐.
Camera.TorchAuto자동 토치.

isTorchModeSupported() 및 flashMode참조하십시오 .

whiteBalanceMode : enumeration

사용 중인 화이트 밸런스 모드를 가져오거나 설정합니다.

Constant설명
Camera.WhiteBalanceAuto자동 화이트 밸런스 모드입니다.
Camera.WhiteBalanceManual수동 화이트 밸런스. 이 모드에서 화이트 밸런스는 setColorTemperature()로 설정해야 합니다.
Camera.WhiteBalanceSunlight햇빛 화이트 밸런스 모드.
Camera.WhiteBalanceCloudy흐린 화이트 밸런스 모드.
Camera.WhiteBalanceShade그늘 화이트 밸런스 모드.
Camera.WhiteBalanceTungsten텅스텐(백열등) 화이트 밸런스 모드.
Camera.WhiteBalanceFluorescent형광등 화이트 밸런스 모드.
Camera.WhiteBalanceFlash플래시 화이트 밸런스 모드.
Camera.WhiteBalanceSunset일몰 화이트 밸런스 모드.

isWhiteBalanceModeSupported()도 참조하세요 .

zoomFactor : real

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

신호 문서

void errorOccurred(Camera::Error error, string errorString)

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

참고: 해당 핸들러는 onErrorOccurred 입니다.

메서드 문서

bool isExposureModeSupported(ExposureMode mode)

mode 노출이 지원되는 경우 true를 반환합니다.

bool isFlashModeSupported(FlashMode mode)

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

bool isFlashReady()

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

bool isFocusModeSupported(FocusMode mode)

카메라에서 포커스 mode 가 지원되면 true 를 반환합니다.

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

bool isTorchModeSupported(TorchMode mode)

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

bool isWhiteBalanceModeSupported(WhiteBalanceMode mode)

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

void start()

카메라를 시작합니다.

활성 속성을 true로 설정하는 것과 동일합니다.

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

void stop()

카메라를 중지합니다. 활성 프로퍼티를 false로 설정하는 것과 동일합니다.

void zoomTo(factor, rate)

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

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

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

© 2026 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.