一、QT PRO文件配置
在项目的pro文件中添加如下代码:
QT += multimedia multimediawidgets
并尝试执行qmake,如出现unknow报错,原因是安装qt时没有安装multimedia模块,打开qt的根目录文件夹,找到MaintenanceTool并运行,依次选择—添加或移除组件——Qt——选择对应的版本——Additional Libraries——Qt MultiMe,点击安装即可。
二、头文件
#include <QMediaPlayer>
#include <QVideoWidget>
三、使用
player = new QMediaPlayer(this);
videoWidget = new QVideoWidget(this);
videoWidget->setFixedSize(1366,768); //设置video窗体大小
videoWidget->setWindowFlag(Qt::FramelessWindowHint); //设置无边框
player->setVideoOutput(videoWidget); //绑定至video窗体
player->setSource(QUrl("qrc:/img/images/backgroundgif/login.mp4")); //相对路径
player->play();
player->setLoops(10000); //循环播放次数
需要注意,如果使用上例的相对路径读取视频,即从资源文件夹下读取,其与Qpixmap加载图片时的路径略有不同,前面的qrc是不能省略的。
绝对路径写法:
player->setSource(QUrl("D:\\video\\login.mp4")); //绝对路径
如果出现DirectShowPlayerService::doRender: Unresolved error code 0x80040266 (IDispatch error #102) 等报错,是由于没有安装视频解码器,点击此处 LACFilters-0.65 下载安装即可。文章来源:https://www.toymoban.com/news/detail-523564.html
如果使用Qwidget作为父窗口,想要在视频上方添加控件,直接添加是无法显示出来的,会被video窗体盖住,可以将videowidget的父亲设置为一个QGraphicsView的对象,并将控件添加至这个QGraphicsView视图上即可显示。文章来源地址https://www.toymoban.com/news/detail-523564.html
到了这里,关于QT——使用QMediaPlayer播放视频的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!