C++/Qt 多媒体(续五)
一、前言
前边讲述到了Qt的两项独特的模块编程支持的另一项内容——多媒体编程,上篇文章具体讲述的包括播放视频文件相关类的概述,而本章开始主要概述多媒体编程实现的功能中的最后两项:通过摄像头拍照和录像。
对于上篇内容的示例全部代码,可直达远程仓库:https://gitee.com/CN-ZCL/WorkFrom-Qt-by-Cpp.git
对于上篇内容的讲解,可自行查阅博客:C++/Qt 多媒体(续四)-CSDN博客
二、摄像头的使用
摄像头时视频输入设备,Qt多媒体模块提供了与操作摄像头相关的类,可以实现视频预览、拍照和录音等功能。
1、摄像头控制概述
可以为QMediaCaptureSession类对象设置一个摄像头作为视频输入设备,然后就可以通过摄像头拍照和录像。摄像头的使用涉及多个类,几个主要的类的功能描述如下:
1.1 表示摄像头设备的类QCameraDevice
摄像头属于视频输入设备,摄像头的信息用QCameraDevice类封装,QMediaDevices类有如下两个静态函数可以返回系统里的摄像头的信息:
QCameraDevice QMediaDevices::defaultVideInput() //返回系统默认摄像头的信息
QList<QCameraDevice> QMediaDevices::videoInput() //返回系统里的摄像头列表
QCameraDevice类主要有如下一些接口函数可用来表示摄像头的信息:
QString description() //摄像头的文字描述
QByteArray id() //表示摄像头唯一性的ID
bool isDefault() //是不是系统默认摄像头
bool isNull() //设备是否有效
QCameraDevice::Position position() //摄像头的位置ÿ