解决QtWebEngine无法播放H5中的mp4
环境:Win7 QT5.7.1 Vs2015;
问题:使用QT5.7.1 QtWebEngine 生成的浏览器无法播放HTML5 Video标签的mp4文件;
原因:QtWebEngine 不带解码器;
解决方案:重新编译QtWebEngine
步骤如下:
1、下载Qt;Qt下载链接
2、安装qt-opensource-windows-x86-msvc2015-5.7.1.exe 时勾选Sources
2、安装python 2.7.15 python下载页 或者 直接python2.7.15 注意:安装版本不能大于2.7
配置环境变量C:\Python27;验证
安装ActivePerl下载链接 配置环境变量并验证,同上;
3、修改Qt源码支持mp4
修改文件:C:\Qt\Qt5.7.0\5.7\Src\qtwebengine\src\core\gyp_run.pro
GYP_CONFIG += 之前第19行插入
GYP_CONFIG += proprietary_codecs=1 ffmpeg_branding=Chrome
修改文件:C:\Qt\Qt5.7.0\5.7\Src\qtwebengine\src\3rdparty\chromium\third_party\ffmpeg\ffmpeg.gyp
‘use_system_ffmpeg%’: 0, 之后第21行插入
‘ffmpeg_branding%’:”Chrome”,
修改文件:C:\Qt\Qt5.7.0\5.7\Src\qtwebengine\qtwebengine.pro
第三行插入,WEBENGINE_CONFIG += use_proprietary_codecs
将”控制面板”–“时钟、语言、区域”-”区域和语言”–”管理”–”非Unicode程序的语言”改成英语(美国)
位置也改成美国;
4、编译
1、VS2015 开发人员命令提示 以管理员权限启动
2、切换到qtwebengine目录
3、"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
4、C:\Qt\Qt5.7.1\5.7\msvc2015\bin\qmake.exe qtwebengine.pro
5、nmake
6、nmake install
等待。。。。。
5、拷贝文件
C:\Qt\Qt5.7.1\5.7\Src\qtwebengine目录下会生成相应的文件如QtWebEngineProcess.exe QtWebEngineProcessd.exe 等,复制到Qt对的安装目录下;
附:现在无法设置下载所需要积分,可私信;若Qt版本相同可直接下载:Qt5.7.1 QtWebEngine编译库
说明:本示例亲测通过,使用时不建议Debug调试,莫名崩溃;
番外:使用FlashPlay 集成到软件中涉及版权问题,但也可以检测并提示用户下载;