跨平台播放器开发 (三) QT for Windows & FFmpeg 环境搭建

DevYk

共 1825字,需浏览 4分钟

 · 2021-06-24

简介

上一篇咱们在 「Linux」 平台下搭建了播放器开发环境,该篇主要介绍如何在 「Windows」 平台下搭建 QTFFmpeg 开发环境。如果你是在 mac 或者linux 环境下, 那么可以参考下面文章进行搭建

跨平台播放器开发 (一) QT for MAC OS & FFmpeg 环境搭建

跨平台播放器开发 (二) QT for Linux & FFmpeg 环境搭建

环境准备

由于我自己用的是 MAC 电脑,所以如果想在 Linux 或者是 Win 上面想跑代码,那么只能装一个虚拟机了。可以参考该篇文章 给mac装个 vmware 虚拟机: https://snowdreams1006.github.io/tools/mac-install-vmware.html

Windows

QT安装

「进入 QT 官网」

从 5.15.0 版本开始 QT 便不再支持离线安装了。所以我们只能通过申请一个账号,在线安装了。

直接点击 「Go open source」 -> 「Download the Qt Online Installer」 最后会根据自己的系统匹配软件,点击 Download 就可以下载了。

17fde2d8129c2ef3913a642670c91aff.webp

「双击执行下载下来的软件:」

47e86e8c1a9e34e357f987b6d0b819eb.webp

「跟着提示点击 next 即可:」

2a5a4ebb865f0b3b0a2a2dab436f570d.webp56b02df2335f4137cfb23d6670fdfdcb.webp

然后选择 QT SDK 开发包,我这里安装的是 6.1.1

4cfa456f26b925f41b630314833b8168.webp

选择好了之后,点击 next 就会进入下载状态:

9522b901b312f31310efc6dc219fac04.webpe4aa0b9d8828fc711a652e092c11a2f7.webp

「直到出现如下页面,就代表安装成功可以启动 QT 了:」

e321215939b40fc7c88f3c4b38c6db65.webp

最后 「QT for Windows  GUI 样式如下:」

3b43e027dd00e17336cf208fc8fed39e.webp

编译 FFmpeg

由于在 Windows 平台下编译 FFmpeg 实在是太麻烦,所以我这里直接下载 FFmpeg 官网编译好的,当然如果你对 windows 平台编译比较熟悉,那么可以直接源码编译好了将动态库头文件放在 QTFFplayer/libs 即可。

「1、源码编译」

  • Cygwin安装与配置 - Windows下编译安装FFmpeg: http://www.ibooker.cc/article/340/detail

  • ffmpeg精讲常见问题: https://blog.avdancedu.com/f3f66133/

(ps:后面有时间我自己编译一下,然后再补上编译脚本)

「2、官网下载」

首先进入 https://github.com/BtbN/FFmpeg-Builds/releases  ,然后选择你需要的动态库,我这里选择的是 https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2021-06-19-12-36/ffmpeg-n4.4-72-g91aa49218e-win64-gpl-shared-4.4.zip

下载完成之后,直接解压放入如下目录:

7538996203b794187bc78eb43e848a8e.webp

现在 FFmpeg 环境放入到了咱们项目中,下面就来编译看下结果

「选择编译环境」

763d1d1da682f0d4e32778869edf2f77.webp

这里有可能编译通过,但是打不开软件报 QT6Core.dll 找不到,这种一般直接在 系统环境变量 PATH 加上你当前安装 QT 的路径,我这里是 C:\Qt\6.1.1\mingw81_64\bin;

现在我们再次编译运行,发现还是崩溃,报错如下 ffmpeg 的 *.dll 库找不到,我们直接把 「QTFFplayer/libs/bin」 中的 *「.dll」 copy 到 「c:\windows\System32\」 下即可,编译运行出现如下页面,代表成功:43096c5a50df9719bfef6aa9340c876d.webp

可以发现在  「Windows」 平台下,可以调用 FFmpeg 和 QT API 进行开发了。

总结

「QT for Mac OS」「Linux」「Windows」  开发环境都搭建完毕了,可以发现 QT 在各个平台安装都几乎一样,但是编译 FFmpeg 就不是很顺利了,特别是 「Windows」 环境下编译。

现在环境都搭建好了,以后直接在主平台开发即可。等播放器开发完了之后,我们会在 「MAC OS、Linux 、Windows 、IOS 、Android」 平台下跑下看下效果。

下一篇主要讲解 FFmpeg 解封装的知识,请敬请等待吧!

项目地址: https://github.com/yangkun19921001/QTFFPlayer.git


浏览 88
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报