ScreenCapture QML Type
この型は画面のキャプチャに使われる。詳細...
Import Statement: | import QtMultimedia |
Since: | Qt 6.5 |
In C++: | QScreenCapture |
プロパティ
- active : bool
- error : enumeration
- errorString : string
- screen : Screen
詳細説明
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 |
最後に発生したエラーのコードを返します。
errorString : string |
エラーの原因を説明する、人間が読める文字列を返します。
screen : Screen |
キャプチャする画面を記述します。
©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。