QT中使用QMediaPlayer + QVideoWidget播放视频

QT中使用QMediaPlayer + QVideoWidget播放视频

项目中有要在qt中播放视频的要求,这里做下记录

CMakeLists.txt文件编写

主要修改如下两处

find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets multimedia multimediawidgets)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets multimedia multimediawidgets)target_link_libraries(ProjName PRIVATEQt${QT_VERSION_MAJOR}::WidgetsQt${QT_VERSION_MAJOR}::MultimediaWidgets
)

代码中如何编写

QVideoWidget *videoWidget = new QVideoWidget(ui->localPlayer);QMediaPlayer *player = new QMediaPlayer;player->setMedia(QMediaContent(QUrl(utils.string2Qstring(videoPath))));player->setVideoOutput(videoWidget);videoWidget->show();
player->play();

报错

出现报错

DirectShowPlayerService::doRender: Unresolved error code 0x80040266 (IDispatch error #102

Qt 中的多媒体播放,底层是使用DirectShowPlayerService,所以安装一个DirectShow解码器,例如LAV Filters,就可以解决运行出错问题,可以从该处下载

https://github.com/Nevcairiel/LAVFilters/releases

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/108744.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JVM】JVM类加载机制

JVM类加载机制 加载双亲委派模型 验证准备解析初始化 JVM的类加载机制,就是把类,从硬盘加载到内存中 Java程序,最开始是一个Java文件,编译成.class文件,运行Java程序,JVM就会读取.class文件,把文件的内容,放到内存中,并且构造成.class类对象 加载 这里的加载是整个类加载的一…

RabbitMQ概述,死信队列

RabbitMQ(Rabbit Message Queue)是一个开源的消息队列中间件,它实现了高级消息队列协议(AMQP)并提供可靠的消息传递机制。RabbitMQ 在分布式系统中广泛用于消息传递和事件驱动的架构。以下是一些 RabbitMQ 的重要知识点…

阿里云2023年双十一优惠活动整理

随着双十一的临近,阿里云也为大家准备了一系列优惠活动。作为国内知名的云服务提供商,阿里云在双十一期间推出了多种优惠政策和福利,让用户在享受优质云服务的同时,也能节省一些费用。本文将对阿里云双十一优惠活动进行详细整理&a…

25.0 MySQL 数据库概述

1. 数据库介绍 1.1 简介 数据库是用于存储, 管理和组织数据的一种技术.使用数据库有以下几个重要的原因: * 1. 数据的持久化存储: 数据库可以将数据持久地保存在磁盘上, 确保数据在计算机系统关闭或发生故障时不会丢失.这样可以保证数据的安全性和可靠性.* 2. 数据共享和协作…

工程管理系统源码之全面+高效的工程项目管理软件

高效的工程项目管理软件不仅能够提高效率还应可以帮你节省成本提升利润 在工程行业中,管理不畅以及不良的项目执行,往往会导致项目延期、成本上升、回款拖后,最终导致项目整体盈利下降。企企管理云业财一体化的项目管理系统,确保…

软考高级系统架构设计师系列之:快速掌握软件工程核心知识点

软考高级系统架构设计师系列之:快速掌握软件工程核心知识点 一、软件开发方法二、软件开发模型三、软件开发模型-瀑布模型四、软件开发模型-经典模型汇总五、软件开发模型-增量模型与螺旋模型六、软件开发模型-V模型七、软件开发模型-构件组装模型八、软件开发模型-统一过程九…

【nginx】监听80端口不生效问题

技巧:查询当前nginx监听的端口号有哪些 sudo netstat -tulpn | grep nginx 我是学自这篇文章 Nginx在配置监听80端口不生效问题_nginx启动监听不到9090端口_乌鸦啊的博客-CSDN博客Nginx安装之后在/etc/nginx/nginx.conf配置文件引用其它文件的配置,如…

Flink kafka 数据汇不指定分区器导致的问题

背景 在flink中,我们经常使用kafka作为flink的数据汇,也就是目标数据的存储地,然而当我们使用FlinkKafkaProducer作为数据汇连接器时,我们需要注意一些注意事项,本文就来记录一下 使用kafka数据汇连接器 首先我们看…

PHP和JAVA AES加解密问题

1.问题 php加密的java不能正常机密&#xff0c;java加密的php不能正常解密 2.前置参数 key 32位 iv 16位 3.问题解决 因为key是32位的&#xff0c;所以参数需要$methodAES-256-CBC,$options1 4.PHP代码 <?php /**** Created by PhpStorm* User: Noah* Date: 2023/10/10*…

[QCM6125][Android13] 屏蔽Launcher3桌面的搜索栏

文章目录 开发平台基本信息解决方法 开发平台基本信息 芯片: QCM6125 版本: Android 13 kernel: msm-4.14 解决方法 去掉原生Launcher3桌面的搜索栏 --- a/packages/apps/Launcher3/res/layout/search_container_workspace.xmlb/packages/apps/Launcher3/res/layout/search…

SpringBoot面试题3:Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的? Spring Boot 的核心注解是 @SpringBootApplication。 @SpringBootApplication 是一…

纽交所上市公司安费诺宣布将以1.397亿美元收购无线解决方案提供商PCTEL

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;纽交所上市公司安费诺(APH)宣布将以每股7美元现金&#xff0c;总价格1.397亿美元收购无线解决方案提供商PCTEL(PCTI)。 该交易预计将在第四季度或2024年初完成。 Lake Street Capital Markets担任…

1.SpringSecurity -快速入门、加密、基础授权

SpringSecurity简介 文章目录 SpringSecurity简介一、基本概念1.1 认证&#xff08;Authentication&#xff09;方式1.2 会话(Session)介绍1.3 授权(Authorization)介绍1.4 RBAC 二、SpringSecurity入门2.1 快速入门2.1.1 Maven坐标2.1.2 接口2.1.3 源码 2.2 配置文件配置用户名…

[netty-websocket-boot-starter] 轻量、高性能的WebSocket框架

简介 这是一个轻量级、高性能的基于 Netty 的 WebSocket 框架&#xff0c;提升你的 WebSocket 开发体验&#xff0c;为 Spring Boot 带来全新的 WebSocket 功能。 该项目使你可以轻松集成 WebSocket 到你的 Spring Boot 项目中&#xff0c;提供了 Tomcat WebSocket 的简单性&a…

[QCM6125][Android13] 默认允许使用usb权限

文章目录 开发平台基本信息问题描述解决方法 开发平台基本信息 芯片: QCM6125 版本: Android 13 kernel: msm-4.14 问题描述 设备有usb打印机&#xff0c;调用UsbManager进行打印时&#xff0c;会弹框请求使用usb权限&#xff1b;客户要求能够自动授权usb权限&#xff0c;应…

Kotlin中的算数运算符

在Kotlin中&#xff0c;我们可以使用各种算术运算符来进行数值计算和操作。下面对这些运算符进行详细描述&#xff0c;并提供示例代码。 正号&#xff08;正数&#xff09;和负号&#xff08;负数&#xff09;&#xff1a; 正号用于表示一个正数&#xff0c;不对数值进行任何…

微信小程序前端生成动态海报图

//页面显示<canvas id"myCanvas" type"2d" style" width: 700rpx; height: 600rpx;" />onShareShow(e){var that this;let user_id wx.getStorageSync(user_id);let sharePicUrl wx.getStorageSync(sharePicUrl);if(app.isBlank(user_i…

Linux性能优化--使用性能工具发现问题

9.0 概述 本章主要介绍综合运用之前提出的性能工具来缩小性能问题产生原因的范围。阅读本章后&#xff0c;你将能够&#xff1a; 启动行为异常的系统&#xff0c;使用Linux性能工具追踪行为异常的内核函数或应用程序。启动行为异常的应用程序&#xff0c;使用Linux性能工具追…

【AI】了解人工智能、机器学习、神经网络、深度学习

深度学习、神经网络的原理是什么&#xff1f; 深度学习和神经网络都是基于对人脑神经系统的模拟。下面将分别解释深度学习和神经网络的原理。深度学习的原理&#xff1a;深度学习是一种特殊的机器学习&#xff0c;其模型结构更为复杂&#xff0c;通常包括很多隐藏层。它依赖于神…

一文全面了解:react-antd-admin 如何封装 axios

在React中封装Axios并添加请求拦截、响应拦截和错误处理是一个常见的需求,可以通过创建一个包装的Axios实例来实现。以下是一个简单的示例,展示如何在React中封装Axios: 首先,确保你已经安装了Axios,如果没有安装,可以使用以下命令进行安装: npm install axios然后,你…