【问题标题】:Unable to get mp3 support with QtWebEngine无法使用 QtWebEngine 获得 mp3 支持
【发布时间】:2017-05-27 10:59:37
【问题描述】:

我从 git 源构建 QtWebEngine 5.7.1 以获得对专有编解码器的支持。

我在 qtwebengine.pro 中写了“WEBENGINE_CONFIG+=use_proprietary_codecs”。在 qmake 配置项目时,我看到日志说 MP3 和 H264 编解码器已启用。

我花了一天时间将 QtWebEngine 用 msvc2015 完全编译成 32 位... mp3 支持仍然不起作用!

我使用 html5test.com 来快速了解网络浏览器的功能。

我搜索了一下,发现了一个未构建的 ffmpegsumo.dll。我试图通过互联网获得 32 位副本,我真的不知道该放在哪里,我尝试了不同的地方,但仍然无法正常工作。最后我觉得这不是个好主意。

QtWebEngine 如何使用 mp3 编解码器?我有点迷茫……

【问题讨论】:

标签: qt ffmpeg mp3 qtwebengine


【解决方案1】:

在铬GYP build parameters 文件中,我可以阅读:

['proprietary_codecs==1', {
        'defines': ['USE_PROPRIETARY_CODECS'],
}],

那我觉得Qt WebEngine Features文档有错误。

您应该尝试在您的 qtwebengine.pro 文件中添加

WEBENGINE_CONFIG+=proprietary_codecs

而不是

WEBENGINE_CONFIG+=use_proprietary_codecs

【讨论】:

  • 我已经尝试过这些线路。它不起作用。但是,我强制 common.gypi 文件中的值。现在如果我去 html5test.com,mp3 和 h264 支持是可以的,但是浏览器仍然无法播放这些媒体...
【解决方案2】:

我终于找到了解决办法。简而言之,不要尝试使用 Qt Creator 编译 Qt SDK 或其任何部分...

只需在简单的 cmd.exe shell 中使用 qmakenmake。这是我在草原上的做法:

首先,我使用 MaintenanceTools 下载了 Qt SDK (5.7.1) 中的源代码。

然后,我下载了额外的工具:

请务必将每个 .exe 添加到系统路径,然后重新启动计算机。

假设Qt SDK安装在c:\Qt,版本为5.7.1,用MSVC2015编译,启动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了。

【讨论】:

  • 我想添加一个我在执行此操作时遇到的小问题:C:\Qt\5.7\msvc2015\bin\qmake WEBENGINE_CONFIG+=use_proprietary_codecs 我有一个问题告诉我命令'cl' couldn't execute。我通过使用 MaintenanceTool.exe 卸载 Msvc 2015 并重新安装它来解决此问题。那时它奏效了。
【解决方案3】:

我尝试了 Sébastien Bémelmans 的解决方案,但它对我不起作用(我有 Qt 版本 5.10.1)。

相反,我在 qt forum 上找到了一个解决方案,我对其进行了一些修改以适合实际的 Qt 5.10.1 版本

按照 Sébastien Bé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)

【讨论】:

    【解决方案4】:

    我在 stackoverflow 上创建了一个新主题,逐步说明了如何做到这一点(我花了 5 天时间才找到这些,所以我想节省其他人的时间):

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多