我正在开发一个基于WPF的应用程序,它必须在执行期间播放一些视频。要做到这一点,我使用的是MediaElement
类,但是在我使用我的应用程序进行第一次测试后,我发现我试图播放的一些视频不受Media Element类支持,因为我是错过了正确的编解码器。安装丢失的编解码器后一切正常。
问题是我的客户的机器也可能缺少编解码器,在这种情况下我想显示某种消息,说缺少编解码器,这样就可以快速解决这个问题,但是当我看到MediaElement
上课我没有找到任何说明为什么给定视频没有播放的属性。实际上从我所看到的MediaElement
甚至没有抛出异常,当它试图播放的视频不是正确的格式时,它也没有状态变量说它是否正在播放视频。
因此,我想知道如果MediaElement
能够或不能播放给定的视频,是否有任何方法可以在运行时以编程方式发现。
答案 0 :(得分:7)
您始终可以订阅MediaFailed
和MediaOpened
个活动。这两个将分别在失败和成功时执行。
如果编解码器错误MediaElement.MediaFailed
将被引发。