我正在创建一个WPF媒体播放器使用MediaElement类在WPF。在这里,我可以播放本地视频(在我的PC上可用),但我不能播放在线视频。有人知道我要为此做些什么吗?
任何人请帮帮我。
谢谢,
发布于 2013-07-13 17:25:41
看起来你完全可以做到。但是,您可能会遇到与您尝试播放的视频类型(文件类型)有关的问题,与您试图从其流式传输视频的站点的身份验证问题(例如,您需要登录),或者URL格式不正确/不正确。测试的一种方法是挂接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);
}
发布于 2015-07-10 12:15:12
因为WPF媒体元素在内部使用windows media player。如果您将媒体播放器的缓冲区设置从默认缓冲区设置更改为自定义。打开windows media player工具选项Performance。如下图所示。
当您选择“缓冲”选项并将“内容秒数”设置为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
https://stackoverflow.com/questions/17628445
复制相似问题