在Qt5.2版本下,我使用了QtWebView,它可以自动调用第三方扩展来支持avi,mpeg,mov和flv等视频格式。但是当我升级到Qt5.10并将QtWebView更改为QtWebengineView时,它的工作方式不同,我无法调用第三方扩展。如果我想用ffmpeg修改铬源以支持QtWebengine的所有视频格式,我该怎么办?
如果您使用官方build instruction构建Chromium,那么您只需要将以下选项添加到args.gn
文件中:
proprietary_codecs=true
ffmpeg_branding="Chrome"
您无需使用ffmpeg来支持所有视频格式。
像Vladimir说,跟随official build instructions和audio/video page。
@Vladimir:我认为您无法支持Google Chrome不支持的视频和音频格式。
是的你可以。我们用所有编解码器(AVC / H.264,HEVC / H.265,MPEG-4 ......)编译Chromium,并且可以打开许多其他文件类型(MOV,AVI,MKV,M2TS ......)。按照我们的instructions(GN标志),您将能够使用所有编解码器构建Chromium。 HEVC / H.265更复杂。检查Chromium binaries和file type checker。一切都是完全免费的开源。自己做! ;)
对于QtWebEngine,您需要做的就是使用-proprietary-codecs(<Qt 5.12)或-webengine-proprietary-codecs(Qt 5.12+)配置Qt以启用专有编解码器
如果您使用-system-webengine-ffmpeg进行其他配置,则还将使用系统FFmpeg及其支持的所有编解码器。它仍然不支持Chrome不支持的任何容器格式。