问题
在WPF上用CefSharp 做Youtube 播放的时候发现,在新版CefSharp 中,YouTube 播放器的playVedio方法在载入的时候无法调用,根据相关API调用无法自动播放,但是通过用户点击或者控制台输入之后调用均无问题。
原因
经过调查,是在Chromium 66之后新添加了 Autoplay Policy,该政策行为如下:
- 允许静音自动播放。
- 在桌面客户端上,用户 Media Engagement Index 达到一定门口(就是用户之前开启声音播放过此视频)。
- 顶级的 Frames 可以有一个 自动播放权限代理 以使得 iframes 可以带声音自动播放
相关政策可以在此查看
解决
可以直接在CEF 初始化的时候,设置是否启动相关policy,设置方法如下:
settings.CefCommandLineArgs["autoplay-policy"] = "no-user-gesture-required";
在使用CefSharp在WPF应用中实现YouTube播放时,遇到新版CefSharp由于Chromium的Autoplay Policy导致视频无法自动播放。该政策只允许静音自动播放或在满足特定条件时生效。为解决此问题,可以在初始化CEF时设置禁用相关政策,允许自动播放。

1951

被折叠的 条评论
为什么被折叠?



