FFmpeg+QCamera+QT实现USB多摄像头图像采集并可切换分辨率
QCamera实现方式
效果图上传不了
利用Qt自带的QCamera实现,并且实现截屏保存功能
核心代码如下:
void Widget::on_bt_start1_clicked()
{
ui->cb_size1->clear();
QList<QCameraInfo> camerainfo = QCameraInfo::availableCameras();
for (auto it : camerainfo)
{
if (it == camerainfo.at(ui->cb_usb1->currentIndex()))
{
if (m_camera != nullptr)
{
// m_timer->stop();
m_camera->stop();
delete m_camera;
m_camera = nullptr;
}
m_camera = new QCamera(it, this);
m_camera->setCaptureMode(QCamera::CaptureVideo);
m_camera->setViewfinder(ui->videowidget1);
m_camera->start();
QList<QSize> sizes = m_camera->supportedViewfinderResolutions();
qDebug() << "viewfinderResolutions sizes.len = " << sizes.length();
foreach(QSize size, sizes) {
ui->cb_size1->addItem(QString::number(size.width())+"*"+QString::number(size.height()));
}
QCameraViewfinderSettings set;
set.setResolution(sizes.<

本文介绍了使用FFmpeg和Qt库实现的USB摄像头视频采集,包括通过QCamera模块控制分辨率切换,并展示了如何在Qt界面中操作和截图功能。同时,还展示了两个摄像头的并发处理方法。
最低0.47元/天 解锁文章
507

被折叠的 条评论
为什么被折叠?



