QMediaCaptureSession 类

QMediaCaptureSession 类允许捕获音频和视频内容。 更多...

头文件 #include <QMediaCaptureSession>
CMakefind_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmakeQT += multimedia
由以下实例化 CaptureSession
继承自 QObject

属性

公共函数

QMediaCaptureSession(QObject *parent = nullptr)
虚拟~QMediaCaptureSession()
QAudioInput *audioInput() const
QAudioOutput *audioOutput() const
QCamera *camera() const
QImageCapture *imageCapture()
QMediaRecorder *recorder()
QScreenCapture *screenCapture()
voidsetAudioInput(QAudioInput *input)
voidsetAudioOutput(QAudioOutput *output)
voidsetCamera(QCamera *camera)
voidsetImageCapture(QImageCapture *imageCapture)
voidsetRecorder(QMediaRecorder *recorder)
voidsetScreenCapture(QScreenCapture *screenCapture)
voidsetVideoOutput(QObject *output)
voidsetVideoSink(QVideoSink *sink)
voidsetWindowCapture(QWindowCapture *windowCapture)
QObject *videoOutput() const
QVideoSink *videoSink() const
QWindowCapture *windowCapture()

信号

详细说明

QMediaCaptureSession是本地设备上管理媒体捕获的中心类。

可以使用 setCamera()、setScreenCapture() 或 setWindowCapture() 将视频输入连接到 QMediaCaptureSession。通过在 QVideoWidgetQGraphicsVideoItem 上设置,可以使用 setVideoOutput() 查看捕获的媒体预览。

可以使用 setAudioInput() 将麦克风连接到 QMediaCaptureSession。通过使用 setAudioOutput() 将音频路由到输出设备,可以听到捕获的声音。

可以通过在捕获会话上设置一个 QImageCapture 对象从摄像头捕获静态图像,并使用 QMediaRecorder 记录音频/视频。

另请参阅 QCameraQAudioDeviceQMediaRecorderQImageCaptureQScreenCaptureQWindowCaptureQMediaRecorderQGraphicsVideoItem

属性文档

audioInput : QAudioInput*

返回用于捕获音频的设备。

访问函数

QAudioInput *audioInput() const
voidsetAudioInput(QAudioInput *input)

通知信号

voidaudioInputChanged()

audioOutput : QAudioOutput*

返回会话的音频输出。

访问函数

QAudioOutput *audioOutput() const
voidsetAudioOutput(QAudioOutput *output)

通知信号

voidaudioOutputChanged()

camera : QCamera*

此属性 holds 用于捕获视频的摄像头。

通过将摄像头添加到捕获会话中使用此属性来记录视频或拍摄图片。

访问函数

QCamera *camera() const
voidsetCamera(QCamera *camera)

通知信号

voidcameraChanged()

imageCapture : QImageCapture*

此属性 holds 用于捕获静态图像的对象。

通过在此属性上添加 QImageCapture 对象将捕获会话添加到捕获会话中,以启用从摄像头捕获静态图像。

访问函数

QImageCapture *imageCapture()
voidsetImageCapture(QImageCapture *imageCapture)

通知信号

voidimageCaptureChanged()

recorder : QMediaRecorder*

此属性 holds 用于捕获音频/视频的录制对象。

QMediaRecorder 对象添加到捕获会话以启用从捕获会话记录音频和/或视频。

访问函数

QMediaRecorder *recorder()
voidsetRecorder(QMediaRecorder *recorder)

通知信号

voidrecorderChanged()

[since 6.5] screenCapture : QScreenCapture*

此属性 holds 用于捕获屏幕的对象。

通过在此属性上添加屏幕捕获对象使用此属性记录屏幕。

此属性自 Qt 6.5 引入。

访问函数

QScreenCapture *screenCapture()
voidsetScreenCapture(QScreenCapture *screenCapture)

通知信号

voidscreenCaptureChanged()

videoOutput : QObject*

返回会话的视频输出。

访问函数

QObject *videoOutput() const
voidsetVideoOutput(QObject *output)

通知信号

voidvideoOutputChanged()

[since 6.6] windowCapture : QWindowCapture*

此属性包含了用于捕获窗口的对象。

通过将窗口捕获对象添加到捕获会话中,结合此属性来记录窗口。

此属性自 Qt 6.6 引入。

访问函数

QWindowCapture *windowCapture()
voidsetWindowCapture(QWindowCapture *windowCapture)

通知信号

voidwindowCaptureChanged()

成员函数文档

[明确] QMediaCaptureSession::QMediaCaptureSession(QObject *parent = nullptr)

parent对象创建媒体捕获会话。

[虚 无异常] QMediaCaptureSession::~QMediaCaptureSession()

销毁会话。

void QMediaCaptureSession::setAudioInput(QAudioInput *input)

将音频输入设备设置为input。如果设置为空的QAudioDevice,则捕获会话将使用操作系统定义的默认输入。

注意:属性 audioInput 的设置函数。

另请参阅:audioInput()。

void QMediaCaptureSession::setAudioOutput(QAudioOutput *output)

将音频输出设备设置为output

设置音频输出设备后,启用从音频输入设备到音频的音频路由。

注意:属性 audioOutput 的设置函数。

另请参阅:audioOutput()。

void QMediaCaptureSession::setVideoOutput(QObject *output)

将一个QObjectoutput)设置为捕获会话的视频预览。

基于QObject的预览应有一个可调用的videoSink()方法,该方法返回一个QVideoSink

之前设置的预览会被移除。

注意:属性 videoOutput 的设置函数。

另请参阅:videoOutput()。

void QMediaCaptureSession::setVideoSink(QVideoSink *sink)

将一个QVideoSinksink)设置为捕获会话的视频预览。

基于QObject的预览应有一个可调用的videoSink()方法,该方法返回一个QVideoSink

之前设置的预览会被移除。

另请参阅:videoSink()。

QVideoSink *QMediaCaptureSession::videoSink() const

返回会话的QVideoSink

另请参阅 setVideoSink

© 2024 Qt公司有限公司。本文件中包含的文档贡献是各自拥有者的版权。本文件中提供的文档是根据自由软件基金会发布的GNU自由文档许可证版本1.3许可的。Qt及其相关标志是芬兰及/或全球其他国家的Qt公司注册商标。所有其他商标均为各自所有者的财产。