【问题标题】:How to know if WPF MediaElement is actually playing a video?如何知道 WPF MediaElement 是否真的在播放视频?
【发布时间】:2012-01-05 20:41:29
【问题描述】:

我正在开发一个基于 WPF 的应用程序,它必须在执行期间播放一些视频。为此,我使用了MediaElement 类,但是在我对我的应用程序进行了第一次测试之后,我发现 Media Element 类不支持我尝试播放的一些视频,因为我错过了正确的编解码器。安装缺少的编解码器后一切正常。

问题是我客户的机器也可能缺少编解码器,在这种情况下,我想显示某种消息说缺少编解码器,以便可以快速解决此问题,但是当我查看MediaElement class 我没有找到任何属性来说明为什么给定的视频没有播放。实际上,从我所看到的情况来看,MediaElement 在尝试播放的视频格式不正确时甚至不会抛出异常,也没有状态变量表明它正在播放或未播放视频.

因此,我想知道是否有任何方法可以在运行时以编程方式发现MediaElement 是否可以播放给定视频。

【问题讨论】:

    标签: c# wpf mediaelement


    【解决方案1】:

    您始终可以订阅MediaFailedMediaOpened 事件。这两个将分别在失败和成功时执行。

    如果出现编解码器错误,MediaElement.MediaFailed 将被引发。

    结帐MSDN for more info on MediaFailed

    【讨论】:

    • 嗨,MediaFailed 事件正是我想要的。非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-18
    • 2011-09-13
    • 1970-01-01
    相关资源
    最近更新 更多