En esta página

QMediaCaptureSession Class

La clase QMediaCaptureSession permite capturar contenidos de audio y vídeo. Más...

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

Propiedades

Funciones públicas

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()

Señales

Descripción Detallada

QMediaCaptureSession es la clase central que gestiona la captura de medios en el dispositivo local.

Puedes conectar una entrada de video a QMediaCaptureSession usando setCamera(), setScreenCapture(), setWindowCapture() o setVideoFrameInput(). Una vista previa de los medios de comunicación capturados se puede ver mediante el establecimiento de un QVideoWidget o QGraphicsVideoItem utilizando setVideoOutput().

Puedes conectar un micrófono a QMediaCaptureSession usando setAudioInput(), o configurar tu entrada de audio personalizada usando setAudioBufferInput(). El sonido capturado puede escucharse enrutando el audio a un dispositivo de salida utilizando setAudioOutput().

Puede capturar imágenes fijas desde una cámara estableciendo un objeto QImageCapture en la sesión de captura, y grabar audio/vídeo utilizando QMediaRecorder.

Véase también QCamera, QAudioDevice, QMediaRecorder, QImageCapture, QScreenCapture, QWindowCapture, QVideoFrameInput, y QGraphicsVideoItem.

Documentación de propiedades

[since 6.8] audioBufferInput : QAudioBufferInput*

Esta propiedad contiene el objeto utilizado para enviar buffers de audio personalizados a QMediaRecorder.

Esta propiedad se introdujo en Qt 6.8.

Funciones de acceso:

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

Señal del notificador:

void audioBufferInputChanged()

audioInput : QAudioInput*

Devuelve el dispositivo que se está utilizando para capturar audio.

Funciones de acceso:

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

Señal del notificador:

void audioInputChanged()

audioOutput : QAudioOutput*

Devuelve la salida de audio de la sesión.

Funciones de acceso:

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

Señal del notificador:

void audioOutputChanged()

camera : QCamera*

Esta propiedad contiene la cámara utilizada para capturar vídeo.

Grabe vídeo o tome imágenes añadiendo una cámara a la sesión de captura mediante esta propiedad.

Funciones de acceso:

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

Señal del notificador:

void cameraChanged()

imageCapture : QImageCapture*

Esta propiedad contiene el objeto utilizado para capturar imágenes fijas.

Añada un objeto QImageCapture a la sesión de captura para permitir la captura de imágenes fijas desde la cámara.

Funciones de acceso:

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

Señal del notificador:

void imageCaptureChanged()

recorder : QMediaRecorder*

Esta propiedad contiene el objeto grabador utilizado para capturar audio/vídeo.

Añada un objeto QMediaRecorder a la sesión de captura para permitir la grabación de audio y/o vídeo de la sesión de captura.

Funciones de acceso:

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

Notificador de señal:

void recorderChanged()

[since 6.5] screenCapture : QScreenCapture*

Esta propiedad contiene el objeto utilizado para capturar una pantalla.

Graba una pantalla añadiendo un objeto de captura de pantalla a la sesión de captura utilizando esta propiedad.

Esta propiedad se introdujo en Qt 6.5.

Funciones de acceso:

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

Notificador de señal:

void screenCaptureChanged()

[since 6.8] videoFrameInput : QVideoFrameInput*

Esta propiedad contiene el objeto utilizado para enviar fotogramas de vídeo personalizados a QMediaRecorder o a una salida de vídeo.

Esta propiedad se introdujo en Qt 6.8.

Funciones de acceso:

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

Notificador de señal:

void videoFrameInputChanged()

videoOutput : QObject*

Devuelve la salida de vídeo de la sesión.

Funciones de acceso:

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

Señal del notificador:

void videoOutputChanged()

[since 6.6] windowCapture : QWindowCapture*

Esta propiedad contiene el objeto utilizado para capturar una ventana.

Grabe una ventana añadiendo un objeto de captura de ventana a la sesión de captura utilizando esta propiedad.

Esta propiedad se introdujo en Qt 6.6.

Funciones de acceso:

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

Señal del notificador:

void windowCaptureChanged()

Documentación de funciones miembro

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

Crea una sesión para la captura de medios a partir del objeto parent.

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

Destruye la sesión.

void QMediaCaptureSession::setAudioInput(QAudioInput *input)

Establece el dispositivo de entrada de audio en input. Si se establece en un QAudioDevice vacío, la sesión de captura utilizará la entrada por defecto definida por el sistema operativo.

Nota: Función Setter para la propiedad audioInput.

Véase también audioInput().

void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)

Establece el dispositivo de salida de audio en output.

Establecer un dispositivo de salida de audio permite el enrutamiento de audio desde un dispositivo de entrada de audio.

Nota: Función Setter para la propiedad audioOutput.

Véase también audioOutput().

void QMediaCaptureSession::setVideoOutput(QObject *output)

Establece un QObject, (output), a una vista previa de vídeo para la sesión de captura.

Se espera que una vista previa basada en QObject tenga un método invocable videoSink() que devuelva un QVideoSink.

La vista previa previamente configurada se separa.

Nota: Función Setter para la propiedad videoOutput.

Véase también videoOutput().

void QMediaCaptureSession::setVideoSink(QVideoSink *sink)

Establece un QVideoSink, (sink), a una vista previa de vídeo para la sesión de captura.

Se espera que una vista previa basada en QObject tenga un método invocable videoSink() que devuelva un QVideoSink.

La vista previa establecida anteriormente se desvincula.

Véase también videoSink().

QVideoSink *QMediaCaptureSession::videoSink() const

Devuelve la dirección QVideoSink de la sesión.

Véase también 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.