Camera QML Type
フォーカスやズームに関するカメラ設定のためのインターフェース。詳細...
| Import Statement: | import QtMultimedia |
| In C++: | QCamera |
プロパティ
- active : bool
- cameraDevice : cameraDevice
- cameraFormat : cameraFormat
- colorTemperature : int
- customFocusPoint : point
- error : enumeration
- errorString : string
- exposureCompensation : real
- exposureMode : enumeration
- exposureTime : real
- flashMode : enumeration
- flashReady : bool
- focusDistance : real
- focusMode : enumeration
- focusPoint : point
- isoSensitivity : int
- manualExposureTime : real
- manualIsoSensitivity : int
- maximumZoomFactor : real
- minimumZoomFactor : real
- supportedFeatures : enumeration
- torchMode : enumeration
- whiteBalanceMode : enumeration
- zoomFactor : real
信号
- void errorOccurred(Camera::Error error, string errorString)
方法
- bool isExposureModeSupported(ExposureMode mode)
- bool isFlashModeSupported(FlashMode mode)
- bool isFlashReady()
- bool isFocusModeSupported(FocusMode mode)
- bool isTorchModeSupported(TorchMode mode)
- bool isWhiteBalanceModeSupported(WhiteBalanceMode mode)
- void start()
- void stop()
- void zoomTo(factor, rate)
詳細説明
Camera 要素は、CaptureSession 内でビデオ録画や画像撮影に使用できます。
MediaDevices を使用して、使用可能なカメラを一覧表示し、使用するカメラを選択できます。
MediaDevices {
id: mediaDevices
}
CaptureSession {
camera: Camera {
cameraDevice: mediaDevices.defaultVideoInput
}
}サポートしているハードウェアでは、Camera 、フォーカスとズームを調整できます。minimumZoomFactor およびmaximumZoomFactor プロパティは、サポートされるズーム倍率の範囲を提供します。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では、カメラデバイスはOS上の複数のアプリケーションで共有されます。つまり、別のアプリケーションがこのプロパティで設定されたフォーマットを上書きする可能性があります。アプリケーション開発者は、このプロパティで記述されているものとは異なる解像度、ピクセルフォーマット、フレームレートのビデオフレームを受信することを考慮する必要があります。他のアプリケーションによってデバイスのフォーマットが変更されても、このプロパティは変更されない。このプロパティで記述されたフォーマットは、Camera を再アクティブ化することで、デバイスに再適用することができる。
cameraDevice::videoFormatsも参照してください 。
colorTemperature : int
現在の色温度を取得または設定する。
色温度の設定は、WhiteBalanceManualがサポートされている場合にのみ効果があります。この場合、温度を0より大きく設定すると、ホワイトバランスモードは自動的にWhiteBalanceManualに設定されます。温度を0に設定すると、ホワイトバランスモードはWhiteBalanceAutoにリセットされます。
customFocusPoint : point
このプロパティは、カスタム・フォーカス・ポイントの位置を相対フレーム座標で保持する。つまり、QPointF(0,0) はフレームの左上隅を指し、QPointF(0.5,0.5) はフレームの中心を指します。
カスタム・フォーカス・ポイントがサポートされているかどうかは、supportedFeatures()にFeature.CustomFocusPointフラグを付けて問い合わせることで確認できます。
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
| 定数 | 説明 |
|---|---|
Camera.FlashOff | フラッシュはオフです。 |
Camera.FlashOn | フラッシュはオンです。 |
Camera.FlashAuto | 自動フラッシュ。 |
isFlashModeSupported(),isFlashReady(),flashReadyも参照 。
flashReady : bool [read-only]
フラッシュが充電され、使用可能かどうかを示します。
focusDistance : real
このプロパティは、カメラデバイスがマニュアルフォーカスモードで動作する場合の、 レンズのフォーカス距離を定義する。有効な値の範囲は 0 から 1 で、0 は可能な限り近いフォーカス距離、1 は最も遠いフォーカス距離です。最も遠い点は通常無限遠ですが、これはすべてのデバイスに当てはまるとは限りません。
このプロパティは、focusMode がCamera.FocusModeManual に設定され、supportedFeatures がCamera.FocusDistance フラグを含む場合にのみ、デバイスに適用される。
focusMode がCamera.FocusModeManual に設定されていない間にこのプロパティに値を割り当てると、 プロパティは値を保存しますが、Camera.FocusModeManual がアクティブになるまでデバイスには影響しません。
有効範囲[0, 1]外の値を割り当てても、このプロパティに影響はありません。
supportedFeatures にCamera.FocusDistance フラグが含まれていない場合、このプロパティを設定しようとしても無視される。
カメラがオートフォーカスモードの場合、本プロパティは更新されない。
デフォルト値は 1 である。
focusMode : enumeration
本プロパティは、カメラデバイスのフォーカスモードを制御する値を保持する。すべてのオートフォーカスモードでは、カメラデバイスは連続的にフォーカスを合わせ続けます。
注: オートフォーカスモードで、サポートされている場合、focusPoint プロパティは、フォーカスされている画像の領域に関する情報と制御を提供します。
| 定数 | 説明 |
|---|---|
Camera.FocusModeAuto | 連続オートフォーカスモード。 |
Camera.FocusModeAutoNear | 連続オートフォーカス、カメラに近いオブジェクトを優先する。 |
Camera.FocusModeAutoFar | 連続オートフォーカス、カメラから遠いオブジェクトを好む。 |
Camera.FocusModeHyperfocal | 被写界深度を最大にして、超焦点距離までピントを合わせます。被写界深度が最大になるように、超焦点距離でピントを合わせます。 |
Camera.FocusModeInfinity | 厳密に無限遠にピントを合わせる。 |
Camera.FocusModeManual | レンズの焦点距離はfocusDistance で指定された値に設定されます。 |
カメラデバイスが特定のフォーカスモードをサポートしているかどうかを調べるには、対応するfocusMode の値をパラメータとしてisFocusModeSupported() 関数に渡します。フォーカスモードの値がサポートされていない場合、この関数は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]
このカメラがサポートする機能を返します。値はビットマスクで、以下のフラグのいずれかを含むことができる。Feature値のORの組み合わせが格納されます。
| 定数 | 説明 |
|---|---|
Camera.ColorTemperature | カメラはカスタムcolorTemperature の設定をサポートしています。 |
Camera.ExposureCompensation | カメラはカスタムexposureCompensation の設定をサポートしています。 |
Camera.IsoSensitivity | The Camera supports a customisoSensitivity. |
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
使用中のホワイトバランスモードを取得または設定します。
| 定数 | 説明 |
|---|---|
Camera.WhiteBalanceAuto | オートホワイトバランスモード |
Camera.WhiteBalanceManual | マニュアルホワイトバランス。このモードでは、ホワイトバランスは setColorTemperature() で設定する必要があります。 |
Camera.WhiteBalanceSunlight | 太陽光ホワイトバランスモード。 |
Camera.WhiteBalanceCloudy | 曇天ホワイトバランスモード。 |
Camera.WhiteBalanceShade | 日陰ホワイトバランスモード。 |
Camera.WhiteBalanceTungsten | タングステン(白熱灯)ホワイトバランスモード。 |
Camera.WhiteBalanceFluorescent | 蛍光灯ホワイトバランスモード。 |
Camera.WhiteBalanceFlash | フラッシュホワイトバランスモード |
Camera.WhiteBalanceSunset | 夕焼けホワイトバランスモード。 |
isWhiteBalanceModeSupported()も参照 。
zoomFactor : real
現在のズーム倍率を取得または設定します。値はminimumZoomFactor からmaximumZoomFactor の間でクランプされる。
シグナルのドキュメント
void errorOccurred(Camera::Error error, string errorString)
このシグナルは、エラー状態がerror に変化したときに発せられる。エラーの説明はerrorString として提供される。
注: 対応するハンドラはonErrorOccurred 。
メソッド・ドキュメント
bool isExposureModeSupported(ExposureMode mode)
露出mode がサポートされている場合は true を返す。
bool isFlashModeSupported(FlashMode mode)
フラッシュmode がサポートされている場合は true を返す。
bool isFlashReady()
フラッシュが充電されていれば真を返す。
bool isFocusModeSupported(FocusMode mode)
フォーカスmode がカメラでサポートされている場合、true を返す。
Camera.FocusModeManual がサポートされていると報告された場合、Camera.FocusDistance の機能もサポートされていると見なされます。
bool isTorchModeSupported(TorchMode mode)
トーチmode がサポートされていれば true を返す。
bool isWhiteBalanceModeSupported(WhiteBalanceMode mode)
ホワイトバランスmode がサポートされている場合は true を返す。
void start()
カメラを起動する。
activeプロパティをtrueに設定するのと同じ。
何らかの理由でカメラを起動できない場合は、errorOccurred ()シグナルを発信します。
void stop()
カメラを停止する。activeプロパティをfalseに設定するのと同じ。
void zoomTo(factor, rate)
rate を使って、ズーム倍率factor にズームする。
rate は、1秒あたりの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.