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)

信号

詳細説明

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)

QVideoFrameQMediaRecorder またはQMediaCaptureSession を通してビデオ出力に送る。

指定されたframe が宛先に正常に送信された場合、true を返す。falseこれは、インスタンスがQMediaCaptureSession に割り当てられていない場合、セッションにビデオ出力やメディアレコーダーがない場合、メディアレコーダーが起動していない場合、またはキューが一杯の場合に発生します。信号readyToSendVideoFrame は、送信先が新しいフレームを処理できるようになるとすぐに送信されます。

空のビデオフレームの送信は、QMediaRecorder によって入力ストリームの終了として扱われます。QMediaRecorder::autoStoptrue で、すべての入力がストリームの終了を報告した場合、QMediaRecorder は自動的に録画を停止します。

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