QMediaCaptureSession Class
La classe QMediaCaptureSession permet de capturer des contenus audio et vidéo. Plus d'informations...
| En-tête : | #include <QMediaCaptureSession> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Multimedia)target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake : | QT += multimedia |
| En QML : | CaptureSession |
| Héritages : | QObject |
Propriétés
|
|
Fonctions publiques
| 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() |
Signaux
| void | audioBufferInputChanged() |
| void | audioInputChanged() |
| void | audioOutputChanged() |
| void | cameraChanged() |
| void | imageCaptureChanged() |
| void | recorderChanged() |
| void | screenCaptureChanged() |
| void | videoFrameInputChanged() |
| void | videoOutputChanged() |
| void | windowCaptureChanged() |
Description détaillée
QMediaCaptureSession est la classe centrale qui gère la capture des médias sur le périphérique local.
Vous pouvez connecter une entrée vidéo à QMediaCaptureSession en utilisant setCamera(), setScreenCapture(), setWindowCapture() ou setVideoFrameInput(). Un aperçu du média capturé peut être vu en définissant un QVideoWidget ou un QGraphicsVideoItem à l'aide de setVideoOutput().
Vous pouvez connecter un microphone à QMediaCaptureSession en utilisant setAudioInput(), ou définir votre entrée audio personnalisée en utilisant setAudioBufferInput(). Le son capturé peut être écouté en acheminant l'audio vers un périphérique de sortie à l'aide de setAudioOutput().
Vous pouvez capturer des images fixes à partir d'un appareil photo en définissant un objet QImageCapture sur la session de capture, et enregistrer de l'audio/vidéo à l'aide d'un objet QMediaRecorder.
Voir également QCamera, QAudioDevice, QMediaRecorder, QImageCapture, QScreenCapture, QWindowCapture, QVideoFrameInput, et QGraphicsVideoItem.
Documentation sur les propriétés
[since 6.8] audioBufferInput : QAudioBufferInput*
Cette propriété contient l'objet utilisé pour envoyer des tampons audio personnalisés à QMediaRecorder.
Cette propriété a été introduite dans Qt 6.8.
Fonctions d'accès :
| QAudioBufferInput * | audioBufferInput() const |
| void | setAudioBufferInput(QAudioBufferInput *input) |
Signal Notifier :
| void | audioBufferInputChanged() |
audioInput : QAudioInput*
Renvoie le périphérique utilisé pour la capture audio.
Fonctions d'accès :
| QAudioInput * | audioInput() const |
| void | setAudioInput(QAudioInput *input) |
Signal du notificateur :
| void | audioInputChanged() |
audioOutput : QAudioOutput*
Renvoie la sortie audio de la session.
Fonctions d'accès :
| QAudioOutput * | audioOutput() const |
| void | setAudioOutput(QAudioOutput *output) |
Signal du notificateur :
| void | audioOutputChanged() |
camera : QCamera*
Cette propriété contient la caméra utilisée pour la capture vidéo.
Enregistrez des vidéos ou prenez des images en ajoutant une caméra à la session de capture à l'aide de cette propriété.
Fonctions d'accès :
| QCamera * | camera() const |
| void | setCamera(QCamera *camera) |
Signal du notificateur :
| void | cameraChanged() |
imageCapture : QImageCapture*
Cette propriété contient l'objet utilisé pour capturer des images fixes.
Ajoutez un objet QImageCapture à la session de capture pour permettre la capture d'images fixes à partir de la caméra.
Fonctions d'accès :
| QImageCapture * | imageCapture() |
| void | setImageCapture(QImageCapture *imageCapture) |
Signal Notificateur :
| void | imageCaptureChanged() |
recorder : QMediaRecorder*
Cette propriété contient l'objet enregistreur utilisé pour la capture audio/vidéo.
Ajoutez un objet QMediaRecorder à la session de capture pour permettre l'enregistrement de l'audio et/ou de la vidéo à partir de la session de capture.
Fonctions d'accès :
| QMediaRecorder * | recorder() |
| void | setRecorder(QMediaRecorder *recorder) |
Signal Notificateur :
| void | recorderChanged() |
[since 6.5] screenCapture : QScreenCapture*
Cette propriété contient l'objet utilisé pour capturer un écran.
Enregistrez un écran en ajoutant un objet de capture d'écran à la session de capture à l'aide de cette propriété.
Cette propriété a été introduite dans Qt 6.5.
Fonctions d'accès :
| QScreenCapture * | screenCapture() |
| void | setScreenCapture(QScreenCapture *screenCapture) |
Signal Notifier :
| void | screenCaptureChanged() |
[since 6.8] videoFrameInput : QVideoFrameInput*
Cette propriété contient l'objet utilisé pour envoyer des images vidéo personnalisées à QMediaRecorder ou à une sortie vidéo.
Cette propriété a été introduite dans Qt 6.8.
Fonctions d'accès :
| QVideoFrameInput * | videoFrameInput() const |
| void | setVideoFrameInput(QVideoFrameInput *input) |
Signal Notifier :
| void | videoFrameInputChanged() |
videoOutput : QObject*
Renvoie la sortie vidéo de la session.
Fonctions d'accès :
| QObject * | videoOutput() const |
| void | setVideoOutput(QObject *output) |
Signal de notification :
| void | videoOutputChanged() |
[since 6.6] windowCapture : QWindowCapture*
Cette propriété contient l'objet utilisé pour capturer une fenêtre.
Enregistrez une fenêtre en ajoutant un objet de capture de fenêtre à la session de capture à l'aide de cette propriété.
Cette propriété a été introduite dans Qt 6.6.
Fonctions d'accès :
| QWindowCapture * | windowCapture() |
| void | setWindowCapture(QWindowCapture *windowCapture) |
Signal Notificateur :
| void | windowCaptureChanged() |
Member Function Documentation
[explicit] QMediaCaptureSession::QMediaCaptureSession(QObject *parent = nullptr)
Crée une session pour la capture de médias à partir de l'objet parent.
[override virtual noexcept] QMediaCaptureSession::~QMediaCaptureSession()
Détruit la session.
void QMediaCaptureSession::setAudioInput(QAudioInput *input)
Définit le périphérique d'entrée audio à input. Si la propriété est vide QAudioDevice, la session de capture utilisera l'entrée par défaut définie par le système d'exploitation.
Note : Fonction de définition pour la propriété audioInput.
Voir également audioInput().
void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)
Définit le périphérique de sortie audio sur output.
La définition d'un périphérique de sortie audio permet le routage audio à partir d'un périphérique d'entrée audio.
Remarque : fonction de définition de la propriété audioOutput.
Voir également audioOutput().
void QMediaCaptureSession::setVideoOutput(QObject *output)
Définit un QObject, (output), pour un aperçu vidéo de la session de capture.
Un aperçu basé sur QObject devrait avoir une méthode invocable videoSink() qui renvoie un QVideoSink.
L'aperçu précédemment défini est détaché.
Remarque : fonction de définition de la propriété videoOutput.
Voir également videoOutput().
void QMediaCaptureSession::setVideoSink(QVideoSink *sink)
Définit un QVideoSink, (sink), pour un aperçu vidéo de la session de capture.
Un aperçu basé sur QObject devrait avoir une méthode invocable videoSink() qui renvoie un QVideoSink.
L'aperçu précédemment défini est détaché.
Voir également videoSink().
QVideoSink *QMediaCaptureSession::videoSink() const
Renvoie l'adresse QVideoSink pour la session.
Voir aussi 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.