c# - 在 WPF 应用程序中嵌入 Youtube 视频

标签 c# wpf youtube

我正在尝试直接从我的简单 WPF 应用程序播放 Youtube 视频。

我研究了几种方法来做到这一点:

  1. 使用 WebBrowser 控件 在这种情况下,您似乎只需将 Youtube 视频 URL 应用到 WebBrowser 源字段,然后对 URL 本身进行一些更改,例如:

    Original URL = https://www.youtube.com/watch?v=xxxxxxx
    Changed URL = https://www.youtube.com/v/xxxxxxx

  2. 另一种方法只是建议使用 ShockWave Flash 对象,它基本上应该具有完全相同的结果(下面的视频教程)

https://www.youtube.com/watch?v=714w3HQDTcA

我已经尝试了这两种情况,似乎解决方案已经过时,因为我收到以下错误: enter image description here

所以问题是:

有没有办法在 WPF 应用程序中简单地播放 YouTube 视频,无论是否有所描述的灵魂。或者也许我做错了什么。 谢谢。

最佳答案

问题的原因

当您使用 native WebBrowser 控件时,请记住它由 Internet Explorer 提供支持(不确定 Windows 10 是否使用 Edge 来处理该控件),这两种过时的浏览器可能不支持新的 YouTube 播放器。 YouTube 切换了视频播放器以支持新的 HTML5 播放器,并且不再支持 Flash,因此 ShockWave Flash 对象无法工作。

可能的解决方案

您可以尝试使用更现代的嵌入式浏览器。在 C# 中,您最好的选择可能是 CEF 移植到 C#,CefSharp 。 CEF 代表 Chromium 嵌入式框架,因为 Chromium 是 Google Chrome 的基础,所以只需保持库更新,您将始终获得对 Web 浏览器中最新功能的支持。

关于c# - 在 WPF 应用程序中嵌入 Youtube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57413970/

相关文章:

javascript - Highcharts 饼图缺少传奇

c# - Google Drive api 在列出和下载大量文件时返回 500 内部错误

WPF UserControl 在引用项目中找不到 XAML 资源

wpf - WPF 中消失的图标

javascript - 有人可以帮我破译 YouTube 审查视频的签名吗

python - Youtube API v3 上的上传播放列表更新速度是否故意缓慢?

c# - 接口(interface)/契约(Contract)中的 WCF HttpWebResponse 对象序列化

javascript - 正在验证 MVC 隐藏字段

托管用户控件的 WPF 窗口

ios - 如何从 native ios 应用程序直播到 YouTube 帐户