Camera QML Type
フォーカスやズームに関するカメラ設定のためのインターフェース。詳細...
Import Statement: | import QtMultimedia |
In C++: | QCamera |
プロパティ
- active : bool
- cameraDevice : cameraDevice
- cameraFormat : cameraFormat
- customFocusPoint : point
- error : enumeration
- errorString : string
- exposureCompensation : real
- exposureMode : ExposureMode
- exposureTime : real
- flashMode : enumeration
- flashReady : bool
- focusDistance : real
- focusMode : enumeration
- focusPoint : point
- isoSensitivity : int
- manualExposureTime : real
- manualIsoSensitivity : int
- maximumZoomFactor : real
- minimumZoomFactor : real
- supportedFeatures : Features
- torchMode : Camera::TorchMode
- whiteBalanceMode : WhiteBalanceMode
- zoomFactor : real
信号
- void errorOccurred(Camera::Error error, string errorString)
方法
- colorTemperature()
- 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 } }
サポートしているハードウェアでは、QCamera 、フォーカスとズームを調整できます。また、近接作業(バーコードの読み取りや文字の認識など)用の「マクロ」モードや、「タッチでフォーカス」(ハードウェアがフォーカスを合わせようとする画像の興味深い領域を示す)などの機能もあります。
Item { width: 640 height: 360 CaptureSession { camera: Camera { id: camera focusMode: Camera.FocusModeAutoNear customFocusPoint: Qt.point(0.2, 0.2) // Focus relative to top-left corner } videoOutput: videoOutput } VideoOutput { id: videoOutput anchors.fill: parent } }
minimumZoomFactor およびmaximumZoomFactor プロパティは、サポートされるズーム倍率の範囲を提供します。zoomFactor プロパティでは、ズーム倍率を変更することができます。
Camera { zoomFactor: maximumZoomFactor // zoom in as much as possible }
カメラフレームの生データをキャプチャした後、カメラのハードウェアとソフトウェアはさまざまな画像処理タスクを実行し、最終的な画像を生成します。これには、環境光の色の補正、ノイズの低減、画像のその他の調整などが含まれます。
これらの処理手順の多くは、[カメラ] プロパティで制御できます。たとえば、画像の処理に使用するホワイトバランス(または色温度)を設定できます:
Camera { whiteBalanceMode: Camera.WhiteBalanceManual colorTemperature: 5600 }
カメラフレームの画像処理の詳細については、カメラの画像処理を参照してください。
詳細については、カメラの概要を参照してください。
プロパティの説明
active : bool |
カメラが現在アクティブかどうかを示します。
cameraDevice : cameraDevice |
現在アクティブなカメラデバイスを取得または設定します。
カメラデバイスを切り替えると、QCamera の機能が更新されます。さらに、QCamera'の制御プロパティ (focusMode,flashMode,focusDistance,zoomFactor など)も以下のように更新されます:
- プロパティが新しいデバイスでサポートされている場合、そのプロパティ値がカ メラ・デバイスに適用されます。
- プロパティがサポートされているが、有効な値の範囲が変更されている場合、プロパティは新しい範囲にクランプされ、カメラデバイスに適用されます。
- 新しいカメラデバイスがプロパティをサポートしていない場合、プロパティ値はデフォルトにリセットされ、カメラデバイスへの変更は行われません。
cameraFormat : cameraFormat |
現在アクティブなカメラフォーマットを取得または設定します。
注意: Androidターゲット・デバイスでFFMPEGバックエンドを使用する場合、YUV420Pフォーマットを要求すると、フル・プレーナー4:2:0 YUV420Pまたはセミ・プレーナーNV12/NV21のいずれかを受信します。これは、デバイスOEMが実装するコーデックに依存します。
cameraDevice::videoFormatsも参照してください 。
customFocusPoint : point |
error : enumeration |
カメラのエラー状態を返します。
QCamera::Errorも参照してください 。
errorString : string |
カメラのエラー状態を説明する可読文字列を返します。
exposureCompensation : real |
露出補正を EV 単位で取得または設定します。
露出補正プロパティは、自動的に計算される露出を調整することができます。
exposureMode : ExposureMode |
使用中の露出モード。
QCamera::ExposureMode およびCamera::isExposureModeSupported()も参照 。
exposureTime : real |
カメラの露光時間を秒単位で返します。
manualExposureTime も参照して ください。
flashMode : enumeration |
カメラにフラッシュがある場合、特定のフラッシュモードを取得または設定します。
定数 | 説明 |
---|---|
Camera.FlashOff | フラッシュはオフです。 |
Camera.FlashOn | フラッシュはオンです。 |
Camera.FlashAuto | 自動フラッシュ。 |
isFlashModeSupported およびisFlashReadyも参照してください 。
flashReady : bool |
フラッシュが充電され、使用可能な状態であるかどうかを示す。
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 プロパティに代入しても効果はありません。
focusMode プロパティを Camera.FocusModeManual に設定すると、レンズはfocusDistance に従ってフォーカスをロックします。
isFocusModeSupportedも参照してください 。
focusPoint : point |
現在オートフォーカスシステムが使用しているフォーカスポイントを返します。
isoSensitivity : int |
カメラが現在使用している ISO 感度を返します。
manualExposureTime : real |
マニュアル露光時間を取得または設定する。
このプロパティを-1(デフォルト)に設定すると、カメラが自動的に露光時間を決定する。
manualIsoSensitivity : int |
手動で設定されたISO感度を記述する。
このプロパティを-1(デフォルト)に設定すると、カメラが自動的に ISO 感度を調整することを意味する。
maximumZoomFactor : real |
最大ズーム倍率 このプロパティは、サポートされる最大ズーム倍率を保持する。
ズームに対応していないカメラでは、1.0
。
minimumZoomFactor : real |
このプロパティは、サポートされる最小ズーム倍率を保持する。
ズームに対応していないカメラでは、1.0
になります。
supportedFeatures : Features |
このカメラがサポートする機能を返します。
QCamera::Featureも参照 。
torchMode : Camera::TorchMode |
使用中のトーチモードを取得または設定します。
トーチは連続光源です。暗い場所でのビデオ撮影時に使用できます。トーチモードを有効にすると、通常、現在設定されているフラッシュモードが上書きされます。
QCamera::TorchMode 、Camera::isTorchModeSupported()、Camera::flashModeも参照 。
whiteBalanceMode : WhiteBalanceMode |
使用中のホワイトバランスモードを取得または設定します。
zoomFactor : real |
現在のズーム倍率を取得または設定します。値はminimumZoomFactor とmaximumZoomFactor の間でクランプされます。
シグナル ドキュメント
void errorOccurred(Camera::Error error, string errorString) |
このシグナルは、エラー状態がerror に変化したときに発せられる。エラーの説明はerrorString として提供されます。
注意: 対応するハンドラはonErrorOccurred
です。
メソッド・ドキュメント
colorTemperature() |
現在の色温度を取得または設定します。
色温度の設定は、WhiteBalanceManual がサポートされている場合にのみ効果があります。この場合、温度を 0 より大きく設定すると、ホワイトバランスモードは自動的に WhiteBalanceManual に設定されます。温度を 0 に設定すると、ホワイトバランスモードは WhiteBalanceAuto にリセットされます。
bool isExposureModeSupported(ExposureMode mode) |
露出mode がサポートされている場合は true を返します。
bool isFlashModeSupported(FlashMode mode) |
フラッシュmode がサポートされている場合、true を返します。
bool isFlashReady() |
フラッシュが充電されている場合、true を返します。
bool isFocusModeSupported(FocusMode mode) |
フォーカスmode がカメラでサポートされている場合、true を返す。
FocusModeManual がサポートされていると報告された場合、Feature::FocusDistance 機能もサポートされているとみなされる。
bool isTorchModeSupported(TorchMode mode) |
トーチmode がサポートされている場合、true を返す。
bool isWhiteBalanceModeSupported(WhiteBalanceMode mode) |
ホワイトバランスmode がサポートされている場合、true を返します。
void start() |
void stop() |
カメラを停止します。activeプロパティをfalseに設定するのと同じです。
void zoomTo(factor, 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.