Auf dieser Seite

QMediaCaptureSession Class

Die Klasse „QMediaCaptureSession“ ermöglicht die Aufzeichnung von Audio- und Videoinhalten. Mehr...

Header: #include <QMediaCaptureSession>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia
In QML: CaptureSession
Erbt von: 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()
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()

Signale

Ausführliche Beschreibung

Die Klasse `QMediaCaptureSession` ist die zentrale Klasse, die die Medienerfassung 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 können Sie anzeigen, indem Sie mit ` setVideoOutput()` einen ` QVideoWidget ` oder ` QGraphicsVideoItem ` festlegen.

Sie können ein Mikrofon über ` setAudioInput()` an `QMediaCaptureSession` anschließen oder Ihren benutzerdefinierten Audioeingang über ` setAudioBufferInput()` festlegen. Der aufgenommene Ton kann wiedergegeben werden, indem das Audiosignal über ` setAudioOutput()` an ein Ausgabegerät weitergeleitet wird.

Sie können Standbilder von einer Kamera aufnehmen, indem Sie ein „ QImageCapture “-Objekt in der Aufnahmesitzung festlegen, und Audio/Video mithilfe von „ QMediaRecorder “ aufzeichnen.

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

Dokumentation zu Eigenschaften

[since 6.8] audioBufferInput : QAudioBufferInput*

Diese Eigenschaft enthält das Objekt, das zum Senden benutzerdefinierter Audio-Puffer an QMediaRecorder verwendet wird.

Diese Aufzählung 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 zur Audioaufnahme verwendet wird.

Zugriffsfunktionen:

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

Benachrichtigungssignal:

void audioInputChanged()

audioOutput : QAudioOutput*

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

Zugriffsfunktionen:

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

Benachrichtigungssignal:

void audioOutputChanged()

camera : QCamera*

Diese Eigenschaft gibt die Kamera an, die zur Videoaufnahme verwendet wird.

Nehmen Sie Videos auf oder machen Sie Fotos, indem Sie mithilfe dieser Eigenschaft eine Kamera zur Aufnahmesitzung hinzufügen.

Zugriffsfunktionen:

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

Benachrichtigungssignal:

void cameraChanged()

imageCapture : QImageCapture*

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

Fügen Sie der Aufnahmesitzung ein „ QImageCapture “-Objekt hinzu, um die Aufnahme von Standbildern mit der Kamera zu ermöglichen.

Zugriffsfunktionen:

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

Benachrichtigungssignal:

void imageCaptureChanged()

[since 6.12] nativeVideoSource : QObject*

Diese Eigenschaft enthält die native Videoquelle, die zur Videoaufnahme verwendet wird.

Derzeit ist es nur möglich, „ QGStreamerVideoSource “ als native Videoquelle festzulegen. In einer Aufnahmesitzung kann jeweils entweder „ QCamera “ oder „ QGStreamerVideoSource “ festgelegt sein.

Diese Aufzählung wurde in Qt 6.12 eingeführt.

Zugriffsfunktionen:

QObject *nativeVideoSource() const
void setNativeVideoSource(QObject *videoSource)

Notifier-Signal:

void nativeVideoSourceChanged()

Siehe auch „ QGStreamerVideoSource “ und „ QCamera “.

recorder : QMediaRecorder*

Diese Eigenschaft enthält das Recorder-Objekt, das zur Aufzeichnung von Audio- und/oder Videodaten 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 Bildschirmaufnahme verwendet wird.

Um einen Bildschirm aufzuzeichnen, fügen Sie mithilfe dieser Eigenschaft ein Bildschirmaufnahmeobjekt zur Aufnahmesitzung hinzu.

Diese Aufzählung 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 zum Senden benutzerdefinierter Videobilder an QMediaRecorder oder an einen Videoausgang verwendet wird.

Diese Enumeration wurde in Qt 6.8 eingeführt.

Zugriffsfunktionen:

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

Notifier-Signal:

void videoFrameInputChanged()

videoOutput : QObject*

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

Zugriffsfunktionen:

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

Benachrichtigungssignal:

void videoOutputChanged()

[since 6.6] windowCapture : QWindowCapture*

Diese Eigenschaft enthält das Objekt, das zum Erfassen eines Fensters verwendet wird.

Um ein Fenster zu erfassen, fügen Sie mithilfe dieser Eigenschaft ein Fenstererfassungsobjekt zur Erfassungssitzung hinzu.

Diese Aufzählung wurde in Qt 6.6 eingeführt.

Zugriffsfunktionen:

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

Notifier-Signal:

void windowCaptureChanged()

Dokumentation zu den Mitgliedsfunktionen

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

Erstellt eine Sitzung für die Medienerfassung über das „ parent “-Objekt.

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

Beendet die Sitzung.

void QMediaCaptureSession::setAudioInput(QAudioInput *input)

Legt das Audio-Eingabegerät auf „ input “ fest. Wird hier ein leeres „ QAudioDevice “ angegeben, verwendet die Aufnahmesitzung die vom Betriebssystem definierte Standardeingabe.

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

Siehe auch „ audioInput()“.

void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)

Legt das Audioausgabegerät auf „ output “ fest.

Durch das Festlegen eines Audioausgabegeräts wird die Audioweiterleitung von einem Audioeingabegerät ermöglicht.

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

Siehe auch „ audioOutput()“.

void QMediaCaptureSession::setVideoOutput(QObject *output)

Legt einen „ QObject “ (output) als Videovorschau für die Aufnahmesitzung fest.

Eine auf „ QObject “ basierende Vorschau muss über eine aufrufbare Methode „ videoSink()“ verfügen, die ein „ QVideoSink “ zurückgibt.

Die zuvor festgelegte Vorschau wird getrennt.

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

Siehe auch ` videoOutput()`.

void QMediaCaptureSession::setVideoSink(QVideoSink *sink)

Legt ein ` QVideoSink` (sink) als Videovorschau für die Aufnahmesitzung fest.

Eine auf „ QObject “ basierende Vorschau muss über eine aufrufbare Methode „ videoSink()“ verfügen, die ein „ QVideoSink “ zurückgibt.

Die zuvor festgelegte Vorschau wird getrennt.

Siehe auch ` videoSink()`.

QVideoSink *QMediaCaptureSession::videoSink() const

Gibt den „ QVideoSink “ für die Sitzung zurück.

Siehe auch 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.