我从git源构建了QtWebEngine 5.7.1以获得专有编解码器的支持。
我在qtwebengine.pro上写了“WEBENGINE_CONFIG + = use_proprietary_codecs”。当qmake正在配置项目时,我看到日志说MP3和H264编解码器已启用。
我花了一天时间用32位的msvc2015完全编译QtWebEngine并且...... mp3支持仍然无效!
我使用html5test.com快速浏览一下webbrowser功能。
我搜索了一下,我发现了一个没有构建的ffmpegsumo.dll。我试图通过互联网获得32位拷贝,我不知道真正放在哪里,我尝试了不同的地方,仍然无法正常工作。最后,我觉得这不是个好主意。
QtWebEngine如何使用mp3编解码器?我有点失落......
答案 0 :(得分:3)
我终于找到了解决方案。简而言之,不要尝试使用Qt Creator编译Qt SDK或其任何部分...
只需在简单的 cmd.exe shell中使用 qmake 和 nmake 即可。以下是我做草原的方法:
首先,我使用MaintenanceTools在Qt SDK(5.7.1)中下载了源代码。
然后,我下载了额外的工具:
确保将每个.exe添加到系统路径,然后重新启动计算机。
假设Qt SDK安装在c:\ Qt中,并且版本是使用MSVC2015编译的5.7.1,则启动cmd.exe并键入:
cd C:\Qt\5.7\Src\qtwebengine\
C:\Qt\5.7\msvc2015\bin\qmake WEBENGINE_CONFIG+=use_proprietary_codecs
* Wait for basic configuration ... *
nmake
* Wait for compilation ... *
nmake install
* Wait for files copy into SDK ... *
然后您可以正常使用SDK,就像刚下载它一样。
答案 1 :(得分:0)
在铬GYP build parameters文件中,我可以阅读:
['proprietary_codecs==1', {
'defines': ['USE_PROPRIETARY_CODECS'],
}],
然后我认为Qt WebEngine Features文档中存在错误。
您应该尝试添加qtwebengine.pro文件
WEBENGINE_CONFIG+=proprietary_codecs
而不是
WEBENGINE_CONFIG+=use_proprietary_codecs
答案 2 :(得分:0)
我尝试了SébastienBémelmans的解决方案,但它对我不起作用(我有Qt版本5.10.1)。
相反,我在qt forum上找到了一个解决方案,我将其修改为符合实际的Qt 5.10.1版本。
完成SébastienBémelmans所说的一切之后:
#Edit ..\%QT_SOURCES_DIR%\qtwebengine\.qmake.conf
#Add
WEBENGINE_CONFIG += use_proprietary_codecs
#Edit ...\%QT_SOURCES_DIR%\qtwebengine\configure.json
#Search for webengine-proprietary-codecs
"autoDetect": false,
into
"autoDetect": true,
#Run qmake into ...\%QT_SOURCES_DIR%\qtwebengine\ (normally no need of adding WEBENGINE_CONFIG += use_proprietary_codecs after qmake)
答案 3 :(得分:0)
我在stackoverflow上创建了一个关于如何执行此操作的新主题(我失去了5天才找到这些,所以我想节省其他人的时间):
How to compile Qt webengine (5.11) on Windows with proprietary codecs