【Qt Creator】使用Qt的QMediaPlayer播放(m3u8格式)视频(使用K-Lite解码)

参考资料:<<QtCreator快速入门>>第3版 霍亚飞编著 第13.2.1节 播放视频文件 


编译环境:Qt Creator 4.8.2       Based on Qt 5.12.2 (MSVC 2015, 32 bit)

                  Microsoft Visual Studio 2017

第一步:新建Qt Widget应用,名称为myvideowidget(随意),基类选择QWidget

              

第二步:在myvideowidget.pro中修改代码如下

QT += core gui multimedia multimediawidgets

第三步:在widget.h文件中添加类的前置声明和私有对象

class QMediaPlayer;//类前置声明
class QVideoWidget;//类前置声明
private:
    QMediaPlayer *player;//私有对象
    QVideoWidget *videoWidget;//私有对象

第四步:双击widget.ui文件,进入“设计”模式

将widget界面的宽度属性设置为600,高度设置为400,然后往界面上拖入4个标签label和4个水平滑块Horizontal Slider,

一个标签对应一个滑块,分为4组,将4个标签显示文本分别设置为亮度、对比度、色相和饱和度,而对应的滑块的objectName分别设置为brightnessSlider、contrastSlider、hueSlider、saturationSlider。最后将四个滑块的minimum属性设置为-100,maximum属性设置为100。

    

第五步:在widget.cpp文件添加如下代码

#include<QMediaPlayer>
#include<QVideoWidget>
//在构造函数中添加
//播放视频
player=new QMediaPlayer(this);
videoWidget=new QVideoWidget(this);
videoWidget->resize(600,300);
player->setVideoOutput(videoWidget);
player->setMedia(QUrl("http://ivi.bupt.edu.cn/hls/cctv1.m3u8"));
player->play();
//控制亮度
ui->brightnessSlider->setValue(videoWidget->brightness());
connect(ui->brightnessSlider,&QSlider::sliderMoved,videoWidget,
        &QVideoWidget::setBrightness);
connect(videoWidget,&QVideoWidget::brightnessChanged,ui->brightnessSlider,
        &QSlider::setValue);
//控制对比度
ui->contrastSlider->setValue(videoWidget->contrast());
connect(ui->contrastSlider,&QSlider::sliderMoved,videoWidget,&QVideoWidget::setContrast);
connect(videoWidget,&QVideoWidget::contrastChanged,ui->contrastSlider,
        &QSlider::setValue);
//控制色相
ui->hueSlider->setValue(videoWidget->hue());
connect(ui->hueSlider,&QSlider::sliderMoved,videoWidget,&QVideoWidget::setHue);
connect(videoWidget,&QVideoWidget::hueChanged,ui->hueSlider,&QSlider::setValue);
//控制饱和度
ui->saturationSlider->setValue(videoWidget->saturation());
connect(ui->saturationSlider,&QSlider::sliderMoved,videoWidget,
        &QVideoWidget::setSaturation);
connect(videoWidget,&QVideoWidget::saturationChanged,ui->saturationSlider,
        &QSlider::setValue);

第六步:下载安装k-Lite,用于解码m3u8格式的文件

安装Basic版就行,安装时各个选项都默认设置。

第七步:运行程序

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2022年11月4日-2022年11月14日购买当前课程赠送课程学习地址如下:https://edu.csdn.net/course/detail/32434https://edu.csdn.net/course/detail/35658https://edu.csdn.net/course/detail/30223https://edu.csdn.net/course/detail/32408https://edu.csdn.net/course/detail/32429注:因赠送课程不会出现在已订阅课程列表中,以下课程学习地址一定要收藏保存。#课程服务 在线答疑:本课程设有专门的讨论留言区,学习中遇到任何问题,直接给老师留言即可,老师都会及时进行回复。远程协助:如果遇到复杂问题,老师还可进行远程协助,这个一般可不是一两百元的课程就能享受到的。源码分享:为了让大家更好的进行项目实战,老师还将课程中涉及到的所有源码分享给学员,按照视频中的提示进行下载即可。在CSDN分享C++ Qt开发知识已经有6年了,感谢众多博友对我的支持,了解到很多人对Qt使用还是有些困扰,例如Qt环境搭建,Qt布局的使用,如何使用Qt编写复杂的界面,如何自定义非标控件,Qt如何和Web交互,Qt和后台接口如何交互等;经过这几年的整理,我决定出这套《Qt高级开发视频教程》,带领大家学习Qt高级开发知识,学习如何使用Qt开发企业级别的项目;通过本课程的学习,大家将会达到企业招聘的中高级要求。为了照顾零基础学员,本课程第一章会介绍Qt环境搭建、QtCreator / VS2019的基本使用方法,Qt整体架构、Qt信号机制,Qt内存管理等知识。即使没有Qt开发的学习经验,也能跟着课程顺利学习。课程核心知识点地图如下: 课程每章核心知识点介绍如下: 第一章:介绍Qt环境搭建、QtCreator / VS2019的基本使用方法,Qt整体架构、Qt信号机制,Qt内存管理等知识。第二章:了解到很多学员对于Qt界面布局很不熟悉,将会详细介绍Qt设计器布局,以及如何C++代码手写布局,从常见的企业级项目入手,带领大家学会各种布局的实现,例如WPS、腾讯会议、优酷、迅雷等界面的实现;界面布局会了,这是企业项目开发的第一步,还有更重要的无边框窗口,如何设计一个合理的无边框窗口很重要,第三/四章:详细介绍如何实现一个无边框窗口,如何自定义标题栏,如何实现拖拽拉伸;第四章将会介绍如何自定义非标控件,优化Qt界面。第五章:介绍Qt web混合编程,一个商用项目,必然会涉及到web交互,这也是很多Qt开发者的弱项,这一章讲详细介绍C++ Qt web混合开发。第六章:既然是做企业级项目,必然需要和后台交互,http编程也是必要的,将详细介绍http编程,用户注册,登录,后台接口请求等知识;通过第五、六章的学习,将会是你的Qt开发技术更上一层楼。第七章:介绍Qt并发编程,耗时任务处理,进程调用等知识。第八、九章:讲解 Qt 比较重要的知识,图形视图结构,以及MVD模式;通过这两章的学习,大家会对图形视图有更好的了解。第十章:本章是独立章节,主要介绍Qt中一些特殊技巧,项目编译,dpi适配、多语言等知识。第十一章:是我们的企业级项目实战:实现一个视频会议客户端,本项目可以进行多人视频通话,直播,桌面分享等功能,本项目我会从零开始,进行项目搭建,功能调试,bug fixed, 带领大家做一个企业级项目。希望通过本课程的学习,大家的C++ Qt开发技术能有质的飞越,能找到自己心仪的工作。课程中如果讲的不对的地方,请大家指出,我及时修正,我也只是一个普通开发者,也不是所有的技术都会,尽我所能,把我所会的教给大家,让我们一起为Qt的发展,尽一份绵薄之力。 下面是本课程一些项目的截图: 1 可以滑动的设置界面         2 所有图形的绘制       3 视频播放器          4 高仿youku界面         5 视频会议         相信通过本课程的学习,大家有能力实现绝大部分客户端项目,从此用C++ Qt再也不会有难写的界面。
### 回答1: Qt Creator是一个跨平台的集成开发环境(IDE),可以用于开发C++应用程序。而CUDA是一种用于在NVIDIA GPU上进行并行计算的平行计算平台和API模型。 要在Qt Creator使用CUDA,需要按照以下步骤进行设置: 1. 确保你已经正确安装了NVIDIA显卡驱动和CUDA Toolkit。可以在NVIDIA官网下载并安装它们。 2. 打开Qt Creator,并创建一个新的Qt项目或者打开一个现有的项目。 3. 在项目文件(.pro)中添加以下内容: ``` CUDA_SOURCES += your_cuda_file.cu CUDA_DIR = /path/to/cuda CUDA_ARCH = sm_35 ``` 其中,`your_cuda_file.cu`是你的CUDA源文件的名称,`CUDA_DIR`是CUDA的安装路径,`CUDA_ARCH`是你的GPU架构版本。你可以根据自己的情况调整这些参数。 4. 在Qt Creator的项目设置中,添加CUDA模块。选择“构建&运行” → “Kits” → “Qt” → “Add”,然后选择CUDA模块。 5. 在Qt Creator中编写和调试CUDA代码。你可以使用CUDA C/C++语言编写CUDA核函数,并在主机代码中调用它们。可以使用Qt Creator的调试器来进行调试和分析。 需要注意的是,Qt Creator本身并不提供CUDA的开发支持,但它可以与CUDA一起使用,以便在创建和管理CUDA项目时提供方便的开发环境。 ### 回答2: Qt Creator是一个集成开发环境,可以用于开发和调试Qt应用程序。它集成了众多开发工具和插件,使得开发者可以更加方便地进行程序开发和调试。 CUDA是NVIDIA推出的一种并行计算技术,主要适用于处理大规模的科学计算和图形处理任务。它利用GPU的并行计算能力,可以显著提高计算效率。 如果我们希望在Qt Creator使用CUDA进行开发,首先需要安装NVIDIA CUDA Toolkit。然后,在Qt Creator中进行如下配置: 1. 打开Qt Creator,选择“菜单栏 -> 工具 -> 选项”,进入选项设置界面。 2. 在左侧边栏中选择“建构和运行”选项。 3. 在右侧区域中选择“Kits”选项卡,并点击“添加”按钮,添加一个新的Kit。 4. 在新弹出的对话框中,选择“CUDA Application”作为新的Kit类型,并点击“下一步”按钮。 5. 在“名称”输入框中输入Kit的名称,并选择已安装的CUDA版本。 6. 在“设备”区域,选择与您的CUDA版本和硬件兼容的设备。 7. 在“编译套件”区域,选择与您的CUDA版本兼容的编译器。 8. 点击“完成”按钮完成Kit的创建和配置。 配置完成后,您就可以在Qt Creator使用CUDA进行开发了。可以在Qt Creator的项目中添加CUDA的源文件,并通过设置编译选项来指定CUDA的相关参数。然后,您可以编译和运行CUDA应用程序,并通过Qt Creator的调试工具来调试您的代码。 需要注意的是,使用CUDA进行开发需要具备一定的CUDA编程基础和GPU编程知识。此外,您还需要确保GPU驱动程序和CUDA Toolkit已正确安装和配置。因此,在使用Qt Creator进行CUDA开发之前,建议您先学习和了解CUDA的基本概念和编程技术,以充分发挥其在并行计算方面的优势。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值