QT + FFmpeg 5.x + x264 + x265 + SDL2 音视频播放器

简介: QT + FFmpeg 5.x + x264 + x265 + SDL2 音视频播放器

QT + FFmpeg 5.x + x264 + x265 + SDL2 音视频播放器

使用了QT的QML设计界面,人机交互;

使用了FFmpeg 5.x + x264 + x265 + SDL2 完成了音视频的解析到播放;

阅读了ffplay的源码,用到了ffplay的核心思想.

想熟悉ffmpeg和ffplay的朋友,都可以参考学习.

代码自取: https://github.com/truedei/UPlayer

展示图

1.主界面

2.通过中心的按钮选择媒体文件

3.通过菜单打开文件

4.开始播放

5.暂停播放

6.继续播放

7.快进

可以想象一下,截图没效果

8.快退

可以想象一下,截图没效果

9.静音

10.调整音量

11. 时时进度条和时间显示

12.停止播放

停止后,又回来了

13.切换背景图

切换背景的按钮

点击后选择图片

切换后:

使用技术

编程语言:C、C++;

主要技术:QT5+qml;

视频相关:ffmpeg,视频解码;

多线程等。

记录

2021.12.7 :

可以暂停和开始播放了;

停止播放还存在问题,明天需要解决。

2021.12.8:

1、支持了停止播放的功能;

2、计算出来了总时间,还未显示到UI中。

3、明天需要显示到UI中,然后计算正在播放的时间。

2021.12.9: 1、UI中可以显示出来视频的总时间; 2、UI中显示出来了正在播放的时间(感觉不太准,有待提高);

2022.11.4:终于有时间来完结了

version 1.0.0

基础版本提交.

2022.12.4

  • 1.音量控制(音量控制条拖动,音量静音);
  • 2.停止播放;
  • 3.快退播放;
  • 4.快进播放;
  • 5.暂停播放;
  • 6.继续播放;
  • 7.总时间/当前播放时间进度显示;
  • 8.时时进度条;
  • 9.进度条拖动控制播放;
  • 10.通过UI中心打开视频文件/通过菜单打开视频文件;
目录
相关文章
|
7月前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
242 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
7月前
|
编解码
项目实战——Qt实现FFmpeg音视频转码器(二)
项目实战——Qt实现FFmpeg音视频转码器(二)
129 0
|
7月前
|
编解码 编译器
项目实战——Qt实现FFmpeg音视频转码器(一)
项目实战——Qt实现FFmpeg音视频转码器(一)
183 0
|
7月前
|
C++
基于Qt的简易音乐播放器设计与实现
基于Qt的简易音乐播放器设计与实现
280 0
|
2月前
|
Linux 开发工具 Android开发
FFmpeg开发笔记(六十)使用国产的ijkplayer播放器观看网络视频
ijkplayer是由Bilibili基于FFmpeg3.4研发并开源的播放器,适用于Android和iOS,支持本地视频及网络流媒体播放。本文详细介绍如何在新版Android Studio中导入并使用ijkplayer库,包括Gradle版本及配置更新、导入编译好的so文件以及添加直播链接播放代码等步骤,帮助开发者顺利进行App调试与开发。更多FFmpeg开发知识可参考《FFmpeg开发实战:从零基础到短视频上线》。
126 2
FFmpeg开发笔记(六十)使用国产的ijkplayer播放器观看网络视频
|
4月前
|
Web App开发 5G Linux
FFmpeg开发笔记(四十四)毕业设计可做的几个拉满颜值的音视频APP
一年一度的毕业季来临,计算机专业的毕业设计尤为重要,不仅关乎学业评价还积累实战经验。选择紧跟5G技术趋势的音视频APP作为课题极具吸引力。这里推荐三类应用:一是融合WebRTC技术实现视频通话的即时通信APP;二是具备在线直播功能的短视频分享平台,涉及RTMP/SRT等直播技术;三是具有自定义动画特效及卡拉OK歌词字幕功能的视频剪辑工具。这些项目不仅技术含量高,也符合市场需求,是毕业设计的理想选择。
87 6
FFmpeg开发笔记(四十四)毕业设计可做的几个拉满颜值的音视频APP
|
3月前
|
Android开发 计算机视觉 C++
FFmpeg开发笔记(五十一)适合学习研究的几个音视频开源框架
音视频编程对许多程序员来说是一片充满挑战的领域,但借助如OpenCV、LearnOpenGL、FFmpeg、OBS Studio及VLC media player等强大的开源工具,可以降低入门门槛。这些框架不仅覆盖了计算机视觉、图形渲染,还包括多媒体处理与直播技术,通过多种编程语言如Python、C++的应用,使得音视频开发更为便捷。例如,OpenCV支持跨平台的视觉应用开发,FFmpeg则擅长多媒体文件的处理与转换,而VLC media player则是验证音视频文件质量的有效工具。
101 0
FFmpeg开发笔记(五十一)适合学习研究的几个音视频开源框架
|
3月前
用ffmpeg提取合并音视频
用ffmpeg提取合并音视频
|
5月前
|
达摩院 语音技术 异构计算
语音识别-免费开源的语音转文本软件Whisper的本地搭建详细教程,python版本是3.805,ffmpeg是专门处理音视频的,ffmpeg的下载链接,现在要求安装python和ffmpeg
语音识别-免费开源的语音转文本软件Whisper的本地搭建详细教程,python版本是3.805,ffmpeg是专门处理音视频的,ffmpeg的下载链接,现在要求安装python和ffmpeg
|
6月前
|
存储 编解码 Linux
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
66 1