WPF:MediaElement播放在线视频[关闭]

问题描述 投票:1回答:2

我正在使用WPF中的MediaElement类创建一个WPF媒体播放器。在这里,我可以播放本地视频(在我的电脑上可用)但我无法播放在线视频。任何人都知道我必须为此做些什么吗?

请帮助我任何人。

谢谢,

c# .net wpf media-player
2个回答
4
投票

看起来你完全可以做到这一点。但是,您可能会遇到与您尝试播放的视频类型(文件类型)有关的问题,您尝试从中流式传输视频的网站的身份验证问题(即您需要登录)或网址是畸形/不正确的。测试这种方法的一种方法是连接MediaFailed事件处理程序并在引发时弹出消息,以便您可以深入了解正在发生的事情。

我能在几分钟内把它连接起来。 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);
}

0
投票

由于WPF mediaelement内部使用Windows媒体播放器。如果将媒体播放器的缓冲区设置从默认缓冲区设置更改为自定义。打开Windows媒体播放器工具选项性能。如下图所示。

当您选择“缓冲区”选项并将“内容的秒数”设置为2.以下注册表值将添加到媒体播放器下。 HKEY_CURRENT_USER \ Software \ Microsoft \ MediaPlayer \ Preferences UseDefaultBufferTime = 0 CustomBufferTime = 2000

您可以使用dotnet注册表类进行更改。请参考此链接:https://social.msdn.microsoft.com/Forums/vstudio/en-US/1b4b8fb9-ff8f-4861-8e99-4a7a4fc75596/setting-windows-media-player-properties-in-wpf?forum=wpf#ac879a7f-37bc-4ccc-854d-ab6e047086e5

© www.soinside.com 2019 - 2024. All rights reserved.