QImageCapture Class
QImageCapture クラスは、メディアコンテンツの記録に使用されます。詳細...
| ヘッダー: | #include <QImageCapture> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake: | QT += multimedia |
| 継承元: | QObject |
パブリック型
| enum | Error { NoError, NotReadyError, ResourceError, OutOfSpaceError, NotSupportedFeatureError, FormatError } |
| enum | FileFormat { UnspecifiedFormat, JPEG, PNG, WebP, Tiff } |
| enum | Quality { VeryLowQuality, LowQuality, NormalQuality, HighQuality, VeryHighQuality } |
プロパティ
|
|
パブリック関数
| QImageCapture(QObject *parent = nullptr) | |
| virtual | ~QImageCapture() override |
| void | addMetaData(const QMediaMetaData &metaData) |
| QMediaCaptureSession * | captureSession() const |
| QImageCapture::Error | error() const |
| QString | errorString() const |
| QImageCapture::FileFormat | fileFormat() const |
| bool | isAvailable() const |
| bool | isReadyForCapture() const |
| QMediaMetaData | metaData() const |
| QImageCapture::Quality | quality() const |
| QSize | resolution() const |
| void | setFileFormat(QImageCapture::FileFormat format) |
| void | setMetaData(const QMediaMetaData &metaData) |
| void | setQuality(QImageCapture::Quality quality) |
| void | setResolution(const QSize &resolution) |
| void | setResolution(int width, int height) |
パブリックスロット
| int | capture() |
| int | captureToFile(const QString &file = QString()) |
シグナル
| void | errorChanged() |
| void | errorOccurred(int id, QImageCapture::Error error, const QString &errorString) |
| void | fileFormatChanged() |
| void | imageAvailable(int id, const QVideoFrame &frame) |
| void | imageCaptured(int id, const QImage &preview) |
| void | imageExposed(int id) |
| void | imageMetadataAvailable(int id, const QMediaMetaData &metaData) |
| void | imageSaved(int id, const QString &fileName) |
| void | metaDataChanged() |
| void | qualityChanged() |
| void | readyForCaptureChanged(bool ready) |
| void | resolutionChanged() |
静的パブリックメンバー
| QString | fileFormatDescription(QImageCapture::FileFormat f) |
| QString | fileFormatName(QImageCapture::FileFormat f) |
| QList<QImageCapture::FileFormat> | supportedFormats() |
詳細な説明
QImageCapture クラスは、高水準の画像記録クラスです。このクラスは単独で使用することを意図したものではなく、QCamera などの他のメディアオブジェクトのメディア記録機能にアクセスするために使用されます。
QMediaCaptureSession captureSession;
camera = new QCamera;
captureSession.setCamera(camera);
viewfinder = new QVideoWidget;
viewfinder->show();
captureSession.setVideoOutput(viewfinder);
imageCapture = new QImageCapture;
captureSession.setImageCapture(imageCapture);
camera->start();
// on shutter button pressed
imageCapture->capture();QCameraも参照してください 。
メンバ型のドキュメント
enum QImageCapture::Error
| 定数 | 値 | 説明 |
|---|---|---|
QImageCapture::NoError | 0 | エラーなし。 |
QImageCapture::NotReadyError | 1 | サービスはまだキャプチャの準備ができていません。 |
QImageCapture::ResourceError | 2 | デバイスの準備ができていないか、利用できません。 |
QImageCapture::OutOfSpaceError | 3 | デバイスの空き容量がありません。 |
QImageCapture::NotSupportedFeatureError | 4 | デバイスで静止画のキャプチャに対応していません。 |
QImageCapture::FormatError | 5 | 現在の形式はサポートされていません。 |
enum QImageCapture::FileFormat
以下の画像形式から1つを選んでください:
| 定数 | 値 | 説明 |
|---|---|---|
QImageCapture::UnspecifiedFormat | 0 | 形式未指定 |
QImageCapture::JPEG | 1 | .jpg または.jpeg 形式 |
QImageCapture::PNG | 2 | .png 形式 |
QImageCapture::WebP | 3 | .webp format |
QImageCapture::Tiff | 4 | .tiff 形式 |
enum QImageCapture::Quality
品質エンコードレベルを列挙します。
| 定数 | 値 |
|---|---|
QImageCapture::VeryLowQuality | 0 |
QImageCapture::LowQuality | 1 |
QImageCapture::NormalQuality | 2 |
QImageCapture::HighQuality | 3 |
QImageCapture::VeryHighQuality | 4 |
プロパティのドキュメント
[read-only] error : Error
現在のエラー状態を返します。
アクセス関数:
| QImageCapture::Error | error() const |
通知シグナル:
| void | errorChanged() |
関連項目: ` errorString()`。
[read-only] errorString : QString
現在のエラー状態を説明する文字列を返します。
アクセス関数:
| QString | errorString() const |
通知シグナル:
| void | errorChanged() |
関連項目: ` error()`。
fileFormat : FileFormat
このプロパティは、画像形式を保持します。
アクセス関数:
| QImageCapture::FileFormat | fileFormat() const |
| void | setFileFormat(QImageCapture::FileFormat format) |
通知シグナル:
| void | fileFormatChanged() |
metaData : QMediaMetaData
このプロパティには、画像に埋め込まれるメタデータが格納されます。
注: タイムスタンプや位置情報などの追加 フィールドが、カメラのバックエンドによって追加される場合があります。
アクセス関数:
| QMediaMetaData | metaData() const |
| void | setMetaData(const QMediaMetaData &metaData) |
通知シグナル:
| void | metaDataChanged() |
quality : Quality
このプロパティは、画像のエンコード品質を保持します。
アクセス関数:
| QImageCapture::Quality | quality() const |
| void | setQuality(QImageCapture::Quality quality) |
通知信号:
| void | qualityChanged() |
[read-only] readyForCapture : bool
カメラが直ちに画像を撮影できる状態の場合、true を保持します。readyForCapture がfalse である状態でcapture()を呼び出すことは許可されておらず、エラーが発生します。
アクセス関数:
| bool | isReadyForCapture() const |
通知シグナル:
| void | readyForCaptureChanged(bool ready) |
[read-only] supportedFormats : const QList<FileFormat>
このプロパティには、サポートされているファイル形式のリストが格納されています。
アクセス関数:
| QList<QImageCapture::FileFormat> | supportedFormats() |
メンバ関数のドキュメント
[explicit] QImageCapture::QImageCapture(QObject *parent = nullptr)
parent から、カメラで撮影された個々の静止画像をキャプチャできる画像キャプチャオブジェクトを作成します。
画像をキャプチャするには、画像キャプチャオブジェクトとQCamera の両方をキャプチャセッションに接続する必要があります。
[override virtual noexcept] QImageCapture::~QImageCapture()
画像を削除し、オブジェクトをキャプチャします。
void QImageCapture::addMetaData(const QMediaMetaData &metaData)
既存のメタデータに、metaData を追加し、それをキャプチャされた画像に埋め込みます。
[slot] int QImageCapture::capture()
画像をキャプチャし、QImage として利用可能にします。この操作は、ほとんどの場合非同期で行われ、その後、QImageCapture::imageExposed()、QImageCapture::imageCaptured()、またはQImageCapture::error()のシグナルが発生します。
QImageCapture::capture は、imageExposed()、imageCaptured()、およびimageSaved() シグナルで使用されるキャプチャ ID パラメータを返します。
isReadyForCapture()も参照してください 。
QMediaCaptureSession *QImageCapture::captureSession() const
このカメラが接続されているキャプチャセッションを返します。カメラがキャプチャセッションに接続されていない場合は、nullptr を返します。
QMediaCaptureSession::setImageCapture() を使用して、画像キャプチャをセッションに接続します。
[slot] int QImageCapture::captureToFile(const QString &file = QString())
画像をキャプチャし、file に保存します。この操作は、ほとんどの場合非同期で行われ、その後、QImageCapture::imageExposed()、QImageCapture::imageCaptured()、QImageCapture::imageSaved()、またはQImageCapture::error() のシグナルが発生します。
空の `file ` が渡された場合、カメラのバックエンドはシステム上の写真に対するデフォルトの保存場所と命名規則を選択します。フルパスなしでファイル名のみが指定された場合、画像はデフォルトのディレクトリに保存され、imageCaptured() およびimageSaved() シグナルによってフルパスが報告されます。
QCamera 露出設定や画像処理パラメータなどのすべてのキャプチャパラメータを保存するため、capture() の呼び出し後にカメラパラメータを変更しても、それ以前のキャプチャ要求には影響しません。
QImageCapture::capture imageExposed()、 ()、 () シグナルで使用されるキャプチャ ID パラメータを返します。imageCaptured imageSaved
isReadyForCapture()も参照してください 。
[signal] void QImageCapture::errorOccurred(int id, QImageCapture::Error error, const QString &errorString)
キャプチャ要求「id 」が、error およびerrorString という説明とともに失敗したことを示します。
[static] QString QImageCapture::fileFormatDescription(QImageCapture::FileFormat f)
指定されたファイル形式「f 」の説明を返します。
[static] QString QImageCapture::fileFormatName(QImageCapture::FileFormat f)
指定されたフォーマット「f 」の名前を返します。
[signal] void QImageCapture::imageAvailable(int id, const QVideoFrame &frame)
リクエスト「id 」を持つframe が利用可能になった際に送信されるシグナル。
[signal] void QImageCapture::imageCaptured(int id, const QImage &preview)
リクエスト「id 」を含むフレームがキャプチャされたものの、まだ処理・保存されていない場合に送信されるシグナルです。フレーム「preview 」をユーザーに表示することができます。
[signal] void QImageCapture::imageExposed(int id)
リクエスト「id 」を含むフレームが公開された際に発信されるシグナル。
[signal] void QImageCapture::imageMetadataAvailable(int id, const QMediaMetaData &metaData)
id で特定された画像にmetaData が含まれていることを示します。
[signal] void QImageCapture::imageSaved(int id, const QString &fileName)
QImageCapture::CaptureToFile が設定され、リクエスト IDid を持つフレームがfileName に保存された際に発せられるシグナルです。
bool QImageCapture::isAvailable() const
画像キャプチャサービスが利用可能な状態であれば、trueを返します。
[signal] void QImageCapture::readyForCaptureChanged(bool ready)
カメラのキャプチャ状態に関するready が変更されたことを通知します。
注: プロパティ「readyForCapture 」の通知 シグナルです。
QSize QImageCapture::resolution() const
エンコードされた画像の解像度を返します。
setResolution()も参照してください 。
[signal] void QImageCapture::resolutionChanged()
画像の解像度が変更されたときに通知します。
void QImageCapture::setFileFormat(QImageCapture::FileFormat format)
画像をformat に設定します。
サポートされていないFileFormat を割り当てても、何の効果もありません。
注: プロパティfileFormat のセッター 関数。
fileFormat() およびsupportedFormatsも参照してください 。
void QImageCapture::setMetaData(const QMediaMetaData &metaData)
キャプチャされた画像に埋め込まれる既存のメタデータを、metaData のセットに置き換えます。
注: プロパティ `metaData`のセッター 関数です。
metaData()も参照してください 。
void QImageCapture::setQuality(QImageCapture::Quality quality)
画像のエンコーディング「quality 」を設定します。
注: プロパティ `quality`のセッター 関数です。
quality()も参照してください 。
void QImageCapture::setResolution(const QSize &resolution)
エンコードされた画像のresolution を設定します。
QSize が空の場合、エンコーダは画像ソースから得られる情報とコーデックの制限に基づいて最適な選択を行うことを示します。
resolution()も参照してください 。
void QImageCapture::setResolution(int width, int height)
エンコードされた画像の解像度に関するwidth およびheight を設定します。
これはオーバーロードされた関数です。
[static] QList<QImageCapture::FileFormat> QImageCapture::supportedFormats()
サポートされているファイル形式のリストを返します。
注: プロパティ `supportedFormats`のゲッター 関数です。
関連項目: ` FileFormat`。
© 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.