秦始皇二一四
停止思考是一种堕落

编译 QtWebEngine 模块支持音视频播放

默认的 QT 的模块 QtWebEngine 默认并不支持浏览器的音频和视频播放,需要使用源代码重新编译,以下仅针对 Windows 系统进行研究。(请注意:QtWebEngine 模块,在 windows 下,必须使用 msvc,否则不支持调用)

前提条件:

  • Windows 10 64 位 (2004),操作系统可以自行确定,因为实际体验是这个系统
  • Qt 5.12.9(安装时需要勾选源代码),安装在默认位置,推荐直接 C:\qt(如果路径太长,可能编译的时候出现错误)
  • Python2.7(不要使用 Python3)
  • Visual Studio 2017(或 2019) 需要支持 msvc2017 支持,需要开启 c++支持
  • 所在盘符需要至少 150GB 空间剩余,例如 C:\Qt 所在的 C 盘

 

本文编译的 QT 版本为 5.12.9,VS 版本为 2017。QT 安装路径为 C:\Qt\Qt5.12.9\5.12.9\msvc2017_64
本文默认编译的是 64 位版本 QtWebEngine,32 位版本暂不考虑
参考文章:

How to compile Qt webengine (5.11) on Windows with proprietary codecs

https://blog.csdn.net/weixin_44231643/article/details/105010734

设置环境变量 (PATH)

  • Python(>=2.7.x) 并确保添加到了环境变量中
  • 添加第三方工具路径到系统环境变量,
    C:\Qt\Qt5.12.9\5.12.9\Src\gnuwin32\bin
  • 添加 Qt 可执行程序目录到系统环境变量,
    C:\Qt\Qt5.12.9\5.12.9\msvc2017_64\bin

设置 VS 为 64 位模式:

cmd 管理员模式切换路径到 64 位环境批处理工具所在路径,例如:(根据你的 vs 版本和专业版、企业版等有所区别),

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build

并运行 64 位环境的批处理工具,例如:

cd C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\
vcvars64.bat

此时建议重启下电脑。

重启后,继续:

打开 vs 命令行工具

  • 在开始菜单中找到 VS2017 的菜单目录,以管理员权限打开"适用于 VS 2017 的 x64 本机工具命令提示"

切换到 qtwebengine 的源码目录 (在上一步打开的工具里继续操作)

  • vs 命令行工具切换到 qtwebengine 的源码目录
    cd C:\Qt\Qt5.12.9\5.12.9\Src\qtwebengine
  • 修改 qtwebengine 的编译选项以支持音视频的播放
    在命令行工具输入:
    qmake -- -webengine-proprietary-codecs
  • 若编译成功,则会提示"nmake"(nmake 字样,和 nmake install 字样)

执行 nmake 进行编译

  • nmake release(仅编译 release 版本)。如果 release 和 debug 一起编译,则执行 nmake

编译成功后,执行 nmake install 会自动安装到 Qt 所在目录,替换相关 dll(也可以在 C:\Qt\Qt5.12.9\5.12.9\Src\qtwebengine\Bin 下找到这些 dll)

 

编译文件下载

下载:https://download.csdn.net/download/sandy0214/12666210

 

 

赞 (1) 打赏
版权声明:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 (CC BY-NC-SA 4.0) 进行授权
文章名称:《编译 QtWebEngine 模块支持音视频播放》
文章链接:https://www.qyh.name/338/%e7%bc%96%e8%af%91qtwebengine%e6%a8%a1%e5%9d%97%e6%94%af%e6%8c%81%e9%9f%b3%e8%a7%86%e9%a2%91%e6%92%ad%e6%94%be/
本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。

觉得文章有用就打赏一下

非常感谢你的打赏,我们将继续努力提供更多优质内容,让我们一起创建更加美好的网络世界!(注意:私密文章打赏不代表可以获得查看权限)

支付宝扫一扫

微信扫一扫