C# WPF:MediaElement用于播放在线视频

C# WPF:MediaElement用于播放在线视频,c#,.net,wpf,media-player,C#,.net,Wpf,Media Player,我正在使用WPF中的MediaElement类创建WPF媒体播放器。在这里,我可以播放本地视频(在我的电脑中提供),但我不能播放在线视频。有人知道我要为此做什么吗 任何人都请帮助我 谢谢,看起来你完全可以做到。但是,您可能会遇到尝试播放的视频类型(文件类型)问题、尝试从中播放视频的站点的身份验证问题(即,您需要登录),或者URL格式错误/不正确。测试这一点的一种方法是连接mediafiled事件处理程序,并在任何时候弹出一条消息,这样您就可以了解发生了什么 我能在几分钟内把它连接起来。H.264

我正在使用WPF中的MediaElement类创建WPF媒体播放器。在这里,我可以播放本地视频(在我的电脑中提供),但我不能播放在线视频。有人知道我要为此做什么吗

任何人都请帮助我


谢谢,

看起来你完全可以做到。但是,您可能会遇到尝试播放的视频类型(文件类型)问题、尝试从中播放视频的站点的身份验证问题(即,您需要登录),或者URL格式错误/不正确。测试这一点的一种方法是连接
mediafiled
事件处理程序,并在任何时候弹出一条消息,这样您就可以了解发生了什么

我能在几分钟内把它连接起来。H.264视频对我来说效果很好

public MainWindow()
{
    InitializeComponent();

    MyMediaElement.MediaFailed += MyMediaElement_MediaFailed;
    MyMediaElement.LoadedBehavior = MediaState.Play;
    MyMediaElement.Source = 
        new Uri(@"http://somesite/somevideo.mp4", UriKind.Absolute);
}

void MyMediaElement_MediaFailed(object sender, ExceptionRoutedEventArgs e)
{
    MessageBox.Show(e.ErrorException.Message);
}

看起来你完全可以做到。但是,您可能会遇到尝试播放的视频类型(文件类型)问题、尝试从中播放视频的站点的身份验证问题(即,您需要登录),或者URL格式错误/不正确。测试这一点的一种方法是连接
mediafiled
事件处理程序,并在任何时候弹出一条消息,这样您就可以了解发生了什么

我能在几分钟内把它连接起来。H.264视频对我来说效果很好

public MainWindow()
{
    InitializeComponent();

    MyMediaElement.MediaFailed += MyMediaElement_MediaFailed;
    MyMediaElement.LoadedBehavior = MediaState.Play;
    MyMediaElement.Source = 
        new Uri(@"http://somesite/somevideo.mp4", UriKind.Absolute);
}

void MyMediaElement_MediaFailed(object sender, ExceptionRoutedEventArgs e)
{
    MessageBox.Show(e.ErrorException.Message);
}

由于WPF mediaelement在内部使用windows media player。如果将media player的缓冲区设置从默认缓冲区设置更改为自定义。打开windows media player 工具 选择权 演出如下图所示

当您选择“缓冲区”选项并将“内容秒数”设置为2时。以下注册表值将添加到media player下。 HKEY\u当前\u用户\软件\ Microsoft\MediaPlayer\Preferences UseDefaultBufferTime=0 CustomBufferTime=2000

您可以使用dotnet注册表类进行更改。 请参阅此链接:
因为WPF mediaelement在内部使用windows media player。如果将media player的缓冲区设置从默认缓冲区设置更改为自定义。打开windows media player 工具 选择权 演出如下图所示

当您选择“缓冲区”选项并将“内容秒数”设置为2时。以下注册表值将添加到media player下。 HKEY\u当前\u用户\软件\ Microsoft\MediaPlayer\Preferences UseDefaultBufferTime=0 CustomBufferTime=2000

您可以使用dotnet注册表类进行更改。 请参阅此链接:

另外:
MediaElement
无法与
https
一起使用,因为它无法进行身份验证。另外:
MediaElement
无法与
https
一起使用,因为它无法进行身份验证。