c# - 无法通过MediaElement播放YouTube

标签 c# youtube uwp mediaelement

我有一个媒介,可以使用XAML和以下代码播放youtube:
XAML:

<MediaElement AutoPlay="False" AreTransportControlsEnabled="True" IsFullWindow="False">
    <MediaElement.TransportControls>
        <MediaTransportControls IsFullWindowButtonVisible="True"/>
    </MediaElement.TransportControls>
</MediaElement>

码:
VideoLink.Text = "https://www.youtube.com/watch?v=QJ9h7EBs5LU";
string videoLink = VideoLink.Text.Substring(Math.Max(0, VideoLink.Text.Length - 11));

var url = await YouTube.GetVideoUriAsync(videoLink.ToString(), YouTubeQuality.Quality480P);
YoutubePlayer.Source = url.Uri;
YoutubePlayer.Play();

我遇到了麻烦,即无法播放带有错误消息的youtube,如下图所示:
video error

怎么处理呢?

最佳答案

您可以使用第三方.net库提取youtube视频的源URL,然后将其放入mediaelement中。

https://github.com/flagbug/YoutubeExtractor

YoutubeExtractor是一个很棒的库,但是无法解析Youtube中音乐部分视频的来源。

关于c# - 无法通过MediaElement播放YouTube,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46276209/

相关文章:

c# - 如何修复 System.IO.FileNotFoundException : Could not load file or assembly 'ScanAPIHelper.dll' or one of its dependencies

html - 将 Youtube 视频源显示到 HTML5 视频标签中?

youtube - 如何获取 YouTube 直播的实际视频 URL?

c# - XAML 页面未在 Windows 10 Mobile 上的 WinRT 应用程序中被垃圾收集,但在 WP8.1 上按预期工作

uwp - AppId 和 Package Id 是否相同?

c# - 对方法的不同级别的访问

c# - 单声道兼容的 RAW 图像解码器

c# - 添加到数组

Youtube API 获得一天内观看次数最多的视频

c# - 如何以编程方式退出 WebView 中的全屏模式?