windows-8之WinRT/Win8 中的 MediaElement 根本不起作用
我对 WinRT(Windows 8 应用程序)感到非常沮丧。我在最基本的功能上遇到了很多问题,而且没有文档来支持它。
那么,这是我已经发布的关于 WinRT 的系列的下一个问题:
<MediaElement Width="500"
Height="500"
Source="ms-appx:///Assets/SampleVideo.wmv" />
为什么这行不通?!!!
- 没有视频显示。
- 没有播放音频。
- 没有错误消息。
- 没有抛出异常。
没有引发这些事件:
- 媒体打开
- 媒体失败
- 媒体结束
- 寻求完成
- 下载进度已更改
- BufferingProgressChanged
引发的唯一事件是 CurrentStateChanged,它在状态为“打开”时发生。就是这样。没有其他事情发生。
我尝试使用这样的流手动执行此操作:
var packageLocation = Windows.ApplicationModel.Package.Current.InstalledLocation;
var assetsFolder = await packageLocation.GetFolderAsync("Assets");
var myVideo = await assetsFolder.GetFileAsync("SampleVideo.wmv");
var stream = await myVideo.OpenAsync(FileAccessMode.Read);
_Player.SetSource(stream, myVideo.ContentType);
_Player.Play();
这也不起作用。同样不活动。
SampleVideo.wmv 文件是 Content 构建类型,我可以在 Windows Media Player 和 Zune 中正常打开它。所以视频文件绝对没有问题。但是,我确实尝试了其他文件,例如 MP4、AVI 等。没有任何效果。
还有其他人遇到问题吗?任何帮助,将不胜感激。
请您参考如下方法:
经过 48 小时的研究和痛苦的试错,我找到了 this link在 MSDN 论坛上。
最后,Windows 8 不会向应用程序弹出异常。 MediaElement 悄无声息地失败,而所有其他视频播放器运行良好。
解决方案:如果您在任何 Mac 笔记本电脑/台式机上安装了 Bootcamp,请直接联系图形制造商并下载他们的最新驱动程序。对我来说,我有一台 MacBook Pro 17",它使用 AMD Radeon 6600m 系列。对于 64 位版本,驱动程序可以是 found here。
无论如何,我很抱歉浪费了大家的时间。
感谢@JimO'Neil 的帮助:)
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。