QVideoFrameInput Class
QVideoFrameInput クラスは、カスタム・ビデオ・フレームをQMediaRecorder またはQMediaCaptureSession を通したビデオ出力に提供するために使用されます。詳細...
Header: | #include <QVideoFrameInput> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
qmake: | QT += multimedia |
Since: | Qt 6.8 |
Inherits: | QObject |
パブリック関数
QVideoFrameInput(QObject *parent = nullptr) | |
QVideoFrameInput(const QVideoFrameFormat &format, QObject *parent = nullptr) | |
virtual | ~QVideoFrameInput() override |
QMediaCaptureSession * | captureSession() const |
QVideoFrameFormat | format() const |
bool | sendVideoFrame(const QVideoFrame &frame) |
信号
void | readyToSendVideoFrame() |
QMediaRecorder,QMediaCaptureSession,QVideoSink, QVideoOutputも参照のこと 。
メンバ関数ドキュメント
[explicit]
QVideoFrameInput::QVideoFrameInput(QObject *parent = nullptr)
parent を持つ新しい QVideoFrameInput オブジェクトを構築します。
[explicit]
QVideoFrameInput::QVideoFrameInput(const QVideoFrameFormat &format, QObject *parent = nullptr)
ビデオフレームformat およびparent を持つ新しい QVideoFrameInput オブジェクトを構築します。
指定されたformat は、QMediaRecorder::record() の呼び出し時に、一致するビデオエンコーダの初期化のヒントとして機能します。フォーマットが指定されていない場合や有効でない場合は、最初のフレームを送信する際にビデオエンコーダが初期化されます。一致するビデオ・エンコーダの初期化後に別のピクセル・フォーマットとサイズのビデオ・フレームを送信すると、録画時のパフォーマンスが低下する可能性があります。
どのようなフレームを送信するか事前に分かっている場合は、フォーマットを指定することをお勧めします。
[override virtual noexcept]
QVideoFrameInput::~QVideoFrameInput()
オブジェクトを破棄します。
QMediaCaptureSession *QVideoFrameInput::captureSession() const
このビデオフレーム入力が接続されているキャプチャセッション、またはビデオフレーム入力がキャプチャセッションに接続されていない場合はnullptr
を返します。
ビデオフレーム入力をセッションに接続するにはQMediaCaptureSession::setVideoFrameInput() を使用します。
QVideoFrameFormat QVideoFrameInput::format() const
ビデオフレーム入力の構築時に指定されたビデオフレーム形式を返します。
[signal]
void QVideoFrameInput::readyToSendVideoFrame()
ビデオフレーム入力に新しいフレームを送信できることを示します。この信号を受け取った後、送信するフレームがある場合は、sendVideoFrame を 1 回呼び出すか、false
を返すまでループします。
sendVideoFrame()も参照 。
bool QVideoFrameInput::sendVideoFrame(const QVideoFrame &frame)
QVideoFrame をQMediaRecorder またはQMediaCaptureSession を通してビデオ出力に送る。
指定されたframe が宛先に正常に送信された場合、true
を返す。false
これは、インスタンスがQMediaCaptureSession に割り当てられていない場合、セッションにビデオ出力やメディアレコーダーがない場合、メディアレコーダーが起動していない場合、またはキューが一杯の場合に発生します。信号readyToSendVideoFrame は、送信先が新しいフレームを処理できるようになるとすぐに送信されます。
空のビデオフレームの送信は、QMediaRecorder によって入力ストリームの終了として扱われます。QMediaRecorder::autoStop がtrue
で、すべての入力がストリームの終了を報告した場合、QMediaRecorder は自動的に録画を停止します。
©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。