QMediaCaptureSession Class

Die Klasse QMediaCaptureSession ermöglicht das Erfassen von Audio- und Videoinhalten. Mehr...

Kopfzeile: #include <QMediaCaptureSession>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia
In QML: CaptureSession
Vererbt: QObject

Eigenschaften

Öffentliche Funktionen

QMediaCaptureSession(QObject *parent = nullptr)
virtual ~QMediaCaptureSession() override
QAudioBufferInput *audioBufferInput() const
QAudioInput *audioInput() const
QAudioOutput *audioOutput() const
QCamera *camera() const
QImageCapture *imageCapture()
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 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()

Signale

Detaillierte Beschreibung

QMediaCaptureSession ist die zentrale Klasse, die das Aufzeichnen von Medien auf dem lokalen Gerät verwaltet.

Sie können einen Videoeingang über setCamera(), setScreenCapture(), setWindowCapture() oder setVideoFrameInput() mit QMediaCaptureSession verbinden. Eine Vorschau der erfassten Medien kann über QVideoWidget oder QGraphicsVideoItem mit setVideoOutput() angezeigt werden.

Sie können mit setAudioInput() ein Mikrofon an QMediaCaptureSession anschließen oder mit setAudioBufferInput() einen eigenen Audioeingang festlegen. Sie können den aufgenommenen Ton hören, indem Sie ihn mit setAudioOutput() an ein Ausgabegerät leiten.

Sie können Standbilder von einer Kamera erfassen, indem Sie ein QImageCapture Objekt auf die Erfassungssitzung setzen, und Audio/Video mit QMediaRecorder aufzeichnen.

Siehe auch QCamera, QAudioDevice, QMediaRecorder, QImageCapture, QScreenCapture, QWindowCapture, QVideoFrameInput, QMediaRecorder, und QGraphicsVideoItem.

Dokumentation der Eigenschaften

[since 6.8] audioBufferInput : QAudioBufferInput*

Diese Eigenschaft enthält das Objekt, das zum Senden von benutzerdefinierten Audiopuffern an QMediaRecorder verwendet wird.

Diese Eigenschaft wurde in Qt 6.8 eingeführt.

Zugriffsfunktionen:

QAudioBufferInput *audioBufferInput() const
void setAudioBufferInput(QAudioBufferInput *input)

Notifier-Signal:

void audioBufferInputChanged()

audioInput : QAudioInput*

Gibt das Gerät zurück, das für die Audioaufnahme verwendet wird.

Zugriffsfunktionen:

QAudioInput *audioInput() const
void setAudioInput(QAudioInput *input)

Anmelder-Signal:

void audioInputChanged()

audioOutput : QAudioOutput*

Gibt die Audioausgabe für die Sitzung zurück.

Zugriffsfunktionen:

QAudioOutput *audioOutput() const
void setAudioOutput(QAudioOutput *output)

Anmelder-Signal:

void audioOutputChanged()

camera : QCamera*

Diese Eigenschaft enthält die für die Videoaufnahme verwendete Kamera.

Fügen Sie der Aufnahmesitzung mit dieser Eigenschaft eine Kamera hinzu, um Videos oder Bilder aufzunehmen.

Zugriffsfunktionen:

QCamera *camera() const
void setCamera(QCamera *camera)

Benachrichtigungssignal:

void cameraChanged()

imageCapture : QImageCapture*

Diese Eigenschaft enthält das Objekt, das zur Erfassung von Standbildern verwendet wird.

Fügen Sie der Erfassungssitzung ein QImageCapture Objekt hinzu, um die Erfassung von Standbildern von der Kamera zu ermöglichen.

Zugriffsfunktionen:

QImageCapture *imageCapture()
void setImageCapture(QImageCapture *imageCapture)

Benachrichtigungssignal:

void imageCaptureChanged()

recorder : QMediaRecorder*

Diese Eigenschaft enthält das Recorder-Objekt, das für die Aufnahme von Audio/Video verwendet wird.

Fügen Sie der Aufnahmesitzung ein QMediaRecorder Objekt hinzu, um die Aufnahme von Audio und/oder Video aus der Aufnahmesitzung zu ermöglichen.

Zugriffsfunktionen:

QMediaRecorder *recorder()
void setRecorder(QMediaRecorder *recorder)

Benachrichtigungssignal:

void recorderChanged()

[since 6.5] screenCapture : QScreenCapture*

Diese Eigenschaft enthält das Objekt, das zur Aufnahme eines Bildschirms verwendet wird.

Zeichnen Sie einen Bildschirm auf, indem Sie mit dieser Eigenschaft ein Screen-Capture-Objekt zur Capture-Session hinzufügen.

Diese Eigenschaft wurde in Qt 6.5 eingeführt.

Zugriffsfunktionen:

QScreenCapture *screenCapture()
void setScreenCapture(QScreenCapture *screenCapture)

Notifier-Signal:

void screenCaptureChanged()

[since 6.8] videoFrameInput : QVideoFrameInput*

Diese Eigenschaft enthält das Objekt, das verwendet wird, um benutzerdefinierte Videobilder an QMediaRecorder oder einen Videoausgang zu senden.

Diese Eigenschaft wurde in Qt 6.8 eingeführt.

Zugriffsfunktionen:

QVideoFrameInput *videoFrameInput() const
void setVideoFrameInput(QVideoFrameInput *input)

Benachrichtigungssignal:

void videoFrameInputChanged()

videoOutput : QObject*

Gibt die Videoausgabe für die Sitzung zurück.

Zugriffsfunktionen:

QObject *videoOutput() const
void setVideoOutput(QObject *output)

Melder-Signal:

void videoOutputChanged()

[since 6.6] windowCapture : QWindowCapture*

Diese Eigenschaft enthält das Objekt, das zur Erfassung eines Fensters verwendet wird.

Zeichnen Sie ein Fenster auf, indem Sie ein Fenster-Capture-Objekt mit dieser Eigenschaft zur Capture-Session hinzufügen.

Diese Eigenschaft wurde in Qt 6.6 eingeführt.

Zugriffsfunktionen:

QWindowCapture *windowCapture()
void setWindowCapture(QWindowCapture *windowCapture)

Notifier Signal:

void windowCaptureChanged()

Member Function Dokumentation

[explicit] QMediaCaptureSession::QMediaCaptureSession(QObject *parent = nullptr)

Erzeugt eine Sitzung für die Medienerfassung aus dem Objekt parent.

[override virtual noexcept] QMediaCaptureSession::~QMediaCaptureSession()

Zerstört die Sitzung.

void QMediaCaptureSession::setAudioInput(QAudioInput *input)

Setzt das Audio-Eingabegerät auf input. Wenn es auf ein leeres QAudioDevice gesetzt wird, verwendet die Aufnahmesitzung die Standard-Eingabe, wie sie vom Betriebssystem definiert ist.

Hinweis: Setter-Funktion für die Eigenschaft audioInput.

Siehe auch audioInput().

void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)

Stellt das Audioausgabegerät auf output ein.

Das Setzen eines Audio-Ausgabegeräts ermöglicht das Audio-Routing von einem Audio-Eingabegerät.

Hinweis: Setter-Funktion für die Eigenschaft audioOutput.

Siehe auch audioOutput().

void QMediaCaptureSession::setVideoOutput(QObject *output)

Setzt ein QObject, (output), auf eine Videovorschau für die Aufnahmesitzung.

Von einer QObject basierten Vorschau wird erwartet, dass sie eine aufrufbare videoSink()-Methode hat, die ein QVideoSink zurückgibt.

Die zuvor eingestellte Vorschau wird abgetrennt.

Hinweis: Setter-Funktion für die Eigenschaft videoOutput.

Siehe auch videoOutput().

void QMediaCaptureSession::setVideoSink(QVideoSink *sink)

Setzt ein QVideoSink, (sink), auf eine Videovorschau für die Aufnahmesitzung.

Von einer QObject basierten Vorschau wird erwartet, dass sie eine aufrufbare videoSink()-Methode hat, die ein QVideoSink zurückgibt.

Die zuvor eingestellte Vorschau wird abgetrennt.

Siehe auch videoSink().

QVideoSink *QMediaCaptureSession::videoSink() const

Gibt die QVideoSink für die Sitzung zurück.

Siehe auch setVideoSink().

© 2025 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.