ScreenCapture QML Type

この型は画面のキャプチャに使われる。詳細...

Import Statement: import QtMultimedia
Since: Qt 6.5
In C++: QScreenCapture

プロパティ

詳細説明

ScreenCapture は画面をキャプチャします。MediaCaptureSession によって管理され、キャプチャした画面をビデオプレビューオブジェクトに表示したり、ファイルに記録したりできます。

以下のコードは、ScreenCapture がVideoOutput でキャプチャしたプライマリ画面ビューを再生する、単純なキャプチャセッションを示しています。

CaptureSession {
    id: captureSession
    screenCapture: ScreenCapture {
        id: screenCapture
        active: true
    }
    videoOutput: VideoOutput {
        id: videoOutput
    }
}

スクリーンキャプチャの制限

Qt 6.5.2 以上では、ScreenCapture の使用には以下の制限があります:

  • FFmpeg バックエンドでのみサポートされています。
  • Waylandコンポジタを使用するLinuxシステムでは、スクリーンキャプチャの実装は実験的であり、以下の制限があります。Waylandプロトコルの制限により、QScreenCapture クラスのAPIを介してターゲット画面を設定したり取得したりすることはできません。代わりに、QScreenCapture::setActive(true) を起動すると、OSは画面選択ウィザードを表示します。画面キャプチャ機能を使用するには、XDG Desktop Portalおよび {https://pipewire.org/}{PipeWire} (0.3) を介してサポートされるScreenCastサービスのインストールが必要です。これらの制限は将来変更される可能性があります。
  • Android 以外のモバイル OS ではサポートされていません。このクラスは現在、QScreen::grabWindow を介して実装されているため、このユースケースには最適ではなく、パフォーマンスの問題が発生する可能性があります。
  • EGLFS を搭載した組み込み機器では、機能が制限されます。Qt Quick アプリケーションの場合、このクラスは現在QQuickWindow::grabWindow を介して実装されているため、パフォーマンスの問題が発生する可能性があります。
  • ほとんどの場合、画面のリフレッシュ・レートに等しい画面キャプチャ・フレーム・レートを設定します。このようなフレームレート(75/120 FPS)は、キャプチャーされた画面が4K解像度の場合、弱いCPUでパフォーマンスの問題を引き起こす可能性があります。EGLFSでは、キャプチャフレームレートは現在30 FPSに固定されています。

WindowCapture およびCaptureSessionも参照して ください。

プロパティ ドキュメント

active : bool

キャプチャが現在アクティブかどうかを記述します。


error : enumeration [read-only]

最後に発生したエラーのコードを返します。


errorString : string [read-only]

エラーの原因を説明する、人間が読める文字列を返します。


screen : Screen

キャプチャする画面を記述します。


©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。