3

在Qt5.2版本下,我使用了QtWebView,它可以自动调用第三方扩展来支持avi、mpeg、mov、flv等视频格式。但是当我升级到Qt5.10,将QtWebView改成QtWebengineView后,效果不同了,无法调用第三方扩展。如果我想用 ffmpeg 修改 chromium 源以支持 QtWebengine 的所有视频格式,我该怎么办?

4

4 回答 4

2

您不需要使用 ffmpeg 来支持所有视频格式。

就像Vladimir所说,按照官方构建说明音频/视频页面

@ Vladimir:我认为您不能启用对 Google Chrome 不支持的视频和音频格式的支持。

是的你可以。我们使用所有编解码器(AVC/H.264、HEVC/H.265、MPEG-4...)编译 Chromium,并且可以打开许多其他文件类型(MOV、AVI、MKV、M2TS...)。按照我们的说明(GN 标志),您将能够使用所有编解码器构建 Chromium。HEVC/H.265 更复杂。检查Chromium 二进制文件文件类型检查器。一切都是完全免费和开源的。自己做!;)

于 2018-07-06T17:18:25.537 回答
1

如果您使用官方构建指令构建 Chromium ,那么您只需将以下选项添加到args.gn文件中:

proprietary_codecs=true
ffmpeg_branding="Chrome"
于 2018-06-22T12:28:33.083 回答
1

对于 QtWebEngine,您需要做的就是配置 Qt 以使用 -proprietary-codecs (< Qt 5.12) 或 -webengine-proprietary-codecs (Qt 5.12+) 启用专有编解码器

如果您使用 -system-webengine-ffmpeg 进行额外配置,您还将使用系统 FFmpeg 及其支持的所有编解码器。它仍然不支持 Chrome 不支持的任何容器格式。

于 2019-04-24T14:26:33.167 回答
0

没有-webengine-proprietary-codec -system-webengine-ffmpegqtwebengine 将支持以下

音频编解码器:opus、vorbis、flac。

视频编解码器:vc8、vc9。

如果像这样重新编码您的视频,QtWebEngine 能够播放您的视频:

ffmpeg -i video.mp4 -c:v vp9 -c:a libopus -f webm video.webm
于 2020-02-12T08:29:33.530 回答