【问题标题】:Enabling mp4/mpeg4/avc support for Qt5 WebEngine on Linux在 Linux 上启用对 Qt5 WebEngine 的 mp4/mpeg4/avc 支持
【发布时间】:2015-05-12 22:48:24
【问题描述】:

我在 LUbuntu 上安装了 Qt 5.4.1 x64 并创建了一个使用新 QtWebEngine 的应用程序。

我正在尝试显示一个带有该组件的 html5 页面,该组件正在使用该标签。 除非我尝试播放 mp4 视频,否则一切正常。视频区域保持黑色。如果我使用 webm/ogg 等其他视频类型作为源,它就可以工作。

我知道这是由于许可证限制,因此在 Qt 的 Ubuntu/Linux 中默认禁用 mp4。

在 Qt 中需要什么来激活它以允许播放 mp4 以及在许可条款的情况下我需要注意什么(我读到允许静态链接库?)?

我已经尝试将包含在 Chrome (2,2Mb) 中的 libffmpegsuo.so 的 x64 分发复制到 Qt 目录到 /plugins/webengine/ 并替换已经存在的那个 (1, 1 Mb)但它没有效果。 顺便说一句,在 Chrome 中播放效果很好。

如果您需要更多详细信息,例如路径等,请告诉我。

谢谢!

【问题讨论】:

  • 这是一个相应的 jsfiddle:jsfiddle.net/tj1e1kpn 无法使用 qt 中包含的 QuickFancyBrowser 示例播放它。使用 chrome 二进制文件本身,它可以在同一台机器上运行 (lubuntu)。

标签: qt ubuntu ffmpeg mp4 chromium


【解决方案1】:

您可以在编译 Qt WebEngine 时显式启用专有编解码器(H264、MP3):

在 /path-to-qt-src-dir/qtwebengine 中执行:

qmake WEBENGINE_CONFIG+=use_proprietary_codecs

您应该能够在输出中看到启用了 H264 编解码器,这不是默认配置。

【讨论】:

  • 提示:qmake 必须在 .configure 之前运行我认为,这是我的错 :-)
  • 在编译 Qt WebEngine 本身时。也就是说,如果系统 Qt WebEngine 没有启用它们,你必须获取 qtwebengine 的源代码(例如通过 git:code.qt.io/qt/qtwebengine.git)并自己编译。
  • @kkoehne:这就是我所做的。我安装了我制作的 Qt 5.6 版本并安装了它。然后我使用以下命令重新编译了 src 目录中的 qtwebengine。 1) qmake WEBENGINE_CONFIG+=use_proprietary_codecs 2) make 3) sudo make install。但我用 html5 页面对其进行了测试,它告诉我,H 264 仍然不受支持。您对我有什么建议或更正吗?
  • 对不起,如何获取 qmake.exe ?我正在研究 Pyqt5
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-16
  • 1970-01-01
  • 2016-03-31
  • 2018-04-08
  • 2018-10-15
相关资源
最近更新 更多