繁体   English   中英

CefSharp 检测 webm 视频结束

[英]CefSharp detect webm video end

我有一个使用 cefsharp v79.1.360 的 WPF C# 应用程序。 该应用程序正在浏览器中愉快地播放单个本地 webm 文件。

现在我想将一串本地文件名传递给应用程序并按顺序播放它们。 因此,当一个 webm 完成播放时,将开始依次播放下一个 webm。 页面中没有其他内容,只有 webm。

我的第一个想法是检测当前 webm 何时完成,然后加载下一个文件。 我没有看到任何被抛出的事件或可以为我执行此操作的处理程序。 我将 FrameLoadEnd 处理程序用于其他目的,但它仅在 webm 完成加载时触发,而不是在完成播放时触发。

任何人都知道是否可以检测到 webm 视频的结尾?

我的另一个想法是将每个 webm 加载到 stream 并播放整个批次。 出于用户体验的目的,我认为最好按顺序单独播放每一个。

谢谢

决定解决该问题的最佳方法是创建一个 html 页面,该页面将接受分隔的视频位置字符串。 它处理列表中的循环,单独播放每一个。 它所要做的就是在 onended 事件触发和调用下面的 loadPlaylist function 时更改视频标签的 src。

C# 应用程序通过 javascript 调用将播放列表传递给 html:

Browser.FrameLoadEnd += (sender, args) =>
{
     //Wait for the Main Frame to finish loading
     if (args.Frame.IsMain)
     {
         var playlist = navigationContext.Parameters[NavigationParameterKeys.WebAddress].ToString();
         args.Frame.ExecuteJavaScriptAsync("loadPlaylist('" + playlist +"');");
      }
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM