QMediaCaptureSession Class
QMediaCaptureSession クラスを使用すると、音声および動画コンテンツのキャプチャが可能です。詳細...
| ヘッダー: | #include <QMediaCaptureSession> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake: | QT += multimedia |
| QML内: | CaptureSession |
| 継承元: | QObject |
プロパティ
|
|
パブリック関数
| QMediaCaptureSession(QObject *parent = nullptr) | |
| virtual | ~QMediaCaptureSession() override |
| QAudioBufferInput * | audioBufferInput() const |
| QAudioInput * | audioInput() const |
| QAudioOutput * | audioOutput() const |
| QCamera * | camera() const |
| QImageCapture * | imageCapture() |
| QObject * | nativeVideoSource() const |
| QMediaRecorder * | recorder() |
| QScreenCapture * | screenCapture() |
| void | setAudioBufferInput(QAudioBufferInput *input) |
| void | setAudioInput(QAudioInput *input) |
| void | setAudioOutput(QAudioOutput *output) |
| void | setCamera(QCamera *camera) |
| void | setImageCapture(QImageCapture *imageCapture) |
| void | setNativeVideoSource(QObject *videoSource) |
| void | setRecorder(QMediaRecorder *recorder) |
| void | setScreenCapture(QScreenCapture *screenCapture) |
| void | setVideoFrameInput(QVideoFrameInput *input) |
| void | setVideoOutput(QObject *output) |
| void | setVideoSink(QVideoSink *sink) |
| void | setWindowCapture(QWindowCapture *windowCapture) |
| QVideoFrameInput * | videoFrameInput() const |
| QObject * | videoOutput() const |
| QVideoSink * | videoSink() const |
| QWindowCapture * | windowCapture() |
シグナル
| void | audioBufferInputChanged() |
| void | audioInputChanged() |
| void | audioOutputChanged() |
| void | cameraChanged() |
| void | imageCaptureChanged() |
| void | nativeVideoSourceChanged() |
| void | recorderChanged() |
| void | screenCaptureChanged() |
| void | videoFrameInputChanged() |
| void | videoOutputChanged() |
| void | windowCaptureChanged() |
詳細な説明
QMediaCaptureSession は、ローカルデバイスでのメディアのキャプチャを管理する中心的なクラスです。
setCamera()、setScreenCapture()、setWindowCapture()、またはsetVideoFrameInput() を使用して、QMediaCaptureSession にビデオ入力を接続できます。setVideoOutput() を使用して、QVideoWidget またはQGraphicsVideoItem を設定することで、キャプチャされたメディアのプレビューを表示できます。
setAudioInput() を使用して QMediaCaptureSession にマイクを接続するか、setAudioBufferInput() を使用してカスタムオーディオ入力を設定できます。setAudioOutput() を使用してオーディオを出力デバイスにルーティングすることで、キャプチャされた音声を再生できます。
キャプチャセッションにQImageCapture オブジェクトを設定することでカメラから静止画像をキャプチャしたり、QMediaRecorder を使用して音声や動画を記録したりできます。
QCamera 、QAudioDevice 、QMediaRecorder 、QImageCapture 、QScreenCapture 、QWindowCapture 、QVideoFrameInput 、QGStreamerVideoSource 、およびQGraphicsVideoItemも参照してください 。
プロパティのドキュメント
[since 6.8] audioBufferInput : QAudioBufferInput*
このプロパティには、QMediaRecorder にカスタムオーディオバッファを送信するために使用されるオブジェクトが格納されます。
この列挙型はQt 6.8で導入されました。
アクセス関数:
| QAudioBufferInput * | audioBufferInput() const |
| void | setAudioBufferInput(QAudioBufferInput *input) |
Notifierシグナル:
| void | audioBufferInputChanged() |
audioInput : QAudioInput*
オーディオのキャプチャに使用されているデバイスを返します。
アクセス関数:
| QAudioInput * | audioInput() const |
| void | setAudioInput(QAudioInput *input) |
通知シグナル:
| void | audioInputChanged() |
audioOutput : QAudioOutput*
セッションのオーディオ出力を返します。
アクセス関数:
| QAudioOutput * | audioOutput() const |
| void | setAudioOutput(QAudioOutput *output) |
通知シグナル:
| void | audioOutputChanged() |
camera : QCamera*
このプロパティには、動画の撮影に使用されるカメラが格納されます。
このプロパティを使用して、キャプチャセッションにカメラを追加し、動画を録画したり画像を撮影したりします。
アクセス関数:
| QCamera * | camera() const |
| void | setCamera(QCamera *camera) |
通知シグナル:
| void | cameraChanged() |
imageCapture : QImageCapture*
このプロパティには、静止画像のキャプチャに使用されるオブジェクトが格納されます。
QImageCapture オブジェクトをキャプチャセッションに追加すると、カメラからの静止画のキャプチャが可能になります。
アクセス関数:
| QImageCapture * | imageCapture() |
| void | setImageCapture(QImageCapture *imageCapture) |
通知シグナル:
| void | imageCaptureChanged() |
[since 6.12] nativeVideoSource : QObject*
このプロパティには、動画のキャプチャに使用されるネイティブ動画ソースが格納されます。
現時点では、ネイティブ動画ソースとしてQGStreamerVideoSource のみを設定可能です。キャプチャセッションでは、一度にQCamera またはQGStreamerVideoSource のいずれか一方のみを設定できます。
この列挙型は Qt 6.12 で導入されました。
アクセス関数:
| QObject * | nativeVideoSource() const |
| void | setNativeVideoSource(QObject *videoSource) |
Notifierシグナル:
| void | nativeVideoSourceChanged() |
「 QGStreamerVideoSource 」および「QCamera 」も参照してください 。
recorder : QMediaRecorder*
このプロパティには、オーディオやビデオのキャプチャに使用されるレコーダーオブジェクトが格納されます。
キャプチャセッションにQMediaRecorder オブジェクトを追加することで、そのキャプチャセッションからの音声および/または動画の記録が可能になります。
アクセス関数:
| QMediaRecorder * | recorder() |
| void | setRecorder(QMediaRecorder *recorder) |
通知シグナル:
| void | recorderChanged() |
[since 6.5] screenCapture : QScreenCapture*
このプロパティには、画面のキャプチャに使用されたオブジェクトが格納されます。
このプロパティを使用して、キャプチャセッションにスクリーンキャプチャオブジェクトを追加し、画面を録画します。
この列挙型は Qt 6.5 で導入されました。
アクセス関数:
| QScreenCapture * | screenCapture() |
| void | setScreenCapture(QScreenCapture *screenCapture) |
Notifier シグナル:
| void | screenCaptureChanged() |
[since 6.8] videoFrameInput : QVideoFrameInput*
このプロパティには、QMediaRecorder またはビデオ出力へカスタムビデオフレームを送信するために使用されるオブジェクトが格納されます。
この列挙型は Qt 6.8 で導入されました。
アクセス関数:
| QVideoFrameInput * | videoFrameInput() const |
| void | setVideoFrameInput(QVideoFrameInput *input) |
Notifier シグナル:
| void | videoFrameInputChanged() |
videoOutput : QObject*
セッションのビデオ出力を返します。
アクセス関数:
| QObject * | videoOutput() const |
| void | setVideoOutput(QObject *output) |
通知シグナル:
| void | videoOutputChanged() |
[since 6.6] windowCapture : QWindowCapture*
このプロパティには、ウィンドウのキャプチャに使用されるオブジェクトが格納されます。
このプロパティを使用して、キャプチャセッションにウィンドウキャプチャオブジェクトを追加し、ウィンドウをキャプチャします。
この列挙型は Qt 6.6 で導入されました。
アクセス関数:
| QWindowCapture * | windowCapture() |
| void | setWindowCapture(QWindowCapture *windowCapture) |
Notifier シグナル:
| void | windowCaptureChanged() |
メンバ関数のドキュメント
[explicit] QMediaCaptureSession::QMediaCaptureSession(QObject *parent = nullptr)
parent オブジェクトから、メディアキャプチャ用のセッションを作成します。
[override virtual noexcept] QMediaCaptureSession::~QMediaCaptureSession()
セッションを破棄します。
void QMediaCaptureSession::setAudioInput(QAudioInput *input)
オーディオ入力デバイスをinput に設定します。QAudioDevice を空に設定した場合、キャプチャセッションではオペレーティングシステムで定義されているデフォルトの入力が使用されます。
注: プロパティ `audioInput`のセッター 関数です。
関連項目: audioInput()。
void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)
オーディオ出力デバイスを「output 」に設定します。
オーディオ出力デバイスを設定すると、オーディオ入力デバイスからのオーディオルーティングが可能になります。
注: プロパティ `audioOutput`のセッター 関数です。
関連項目 :audioOutput()
void QMediaCaptureSession::setVideoOutput(QObject *output)
QObject (output )を、キャプチャセッションのビデオプレビューに設定します。
QObject に基づくプレビューには、QVideoSink を返す、呼び出し可能なvideoSink() メソッドが存在することが期待されます。
以前に設定されたプレビューは切り離されます。
注: プロパティvideoOutput のセッター 関数。
videoOutput()も参照してください 。
void QMediaCaptureSession::setVideoSink(QVideoSink *sink)
QVideoSink (sink )を、キャプチャセッションのビデオプレビューとして設定します。
QObject に基づくプレビューには、QVideoSink を返す、呼び出し可能なvideoSink() メソッドが存在することが期待されます。
以前に設定されたプレビューは切り離されます。
videoSink()も参照してください 。
QVideoSink *QMediaCaptureSession::videoSink() const
そのセッションのQVideoSink を返します。
setVideoSink()も参照してください 。
© 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.