1

MediaPlayer - 可以改进“MediaElement”以支持更多媒体格式和编码吗?

编解码器支持。

大家好。

我正在用c#WPF构建一个媒体播放器。我发现的所有示例或多或少都在说同样的事情,“放置一个'mediaElement'和基本的播放器按钮,你就可以了!”

我认为 mediaElement 本质上是 windows 媒体播放器,但我已经发现了播放视频但显示黑屏,而音轨正常播放的情况,以及时间轴上的擦洗需要大量时间的其他情况。我还注意到,当我在这种类型的播放器中加载视频时,K-lite 编解码器似乎不像我使用 VLC 播放器或 Media Player Classic 时通常那样加载到 Windows 任务栏的右下部分。

我已经找到另一个主题声明:“ MediaElement 是一个只能播放某些文件类型的控件。它基于 windows 的媒体播放器,但仅基于其核心编码器。它基本上是一个准系统的媒体播放器

我在播放视频时遇到的问题是否与有限的编解码器支持有关?我安装了 K-lite 编解码器就足够了吗,还是我还缺少其他东西?

最后,如果这与 mediaElement 一样好,还有哪些替代方案?我见过人们通过他们的播放器打开 VLC,但在我深入研究之前,我想知道还有哪些其他选择。例如,我已经看到微软现在有可用于 Windows 8 的“播放器框架”,但它是否仅适用于 Windows 8?

谢谢大家!

4

2 回答 2

1

MediaElement 仅支持有限范围的输入选项,如下所述:MediaElement 支持哪些格式?

播放器框架目前支持:

  • Windows Phone 8.1(Windows Phone Store 应用)支持 Xaml/C#/VB.NET 应用

  • Windows Phone 8.1(Windows Phone Store 应用程序)支持 JavaScript/HTML 应用程序

  • Windows Phone 8 和 8.1 (Silverlight) 支持

  • Windows Phone 7.5 支持

  • Windows 8.0(Xaml 和 HTML 版本)

  • Windows 8.1 支持 Xaml 和 HTML 应用程序

  • Xaml 和 HTML 应用程序的通用应用程序支持

来源:https ://playerframework.codeplex.com/wikipage?title=Version%202%20changes

一般来说,在处理过各种各样的播放器/记录器/流媒体/媒体的东西后,我认为你最好的选择是支持通用播放器是 MPlayer 或 VLC。两者都存在 WPF 包装器

我可以担保 Vlc.DotNet ( https://github.com/ZeBobo5/Vlc.DotNet ) 作为 WPF/WinForms 的媒体播放器选项。克服学习曲线有点痛苦,但对于真正大量的选择来说是值得的。很少有媒体任务是您无法以一种或另一种方式完成的。

MPlayer 有六个半完整的包装器。如果您的功能仅用于播放(没有录制/流媒体/等),那么 MPlayerControl 之类的东西可能符合要求:https ://github.com/majorsilence/MPlayerControl 。

于 2015-04-08T00:01:21.043 回答
0

好的,所以我很高兴地宣布,我的一些观察结果是错误的,并且有一种解决方案可以改善 Windows 媒体播放器中对流行媒体格式(例如 mp4)的支持,因此在 medialement 中!!!!

所以我错误地说媒体元素不是真正的 Windows 媒体播放器,而是一个“简单的媒体播放器”。它确实是 windows 媒体播放器,它只需要正确的编解码器集就可以播放更多格式。

我已经安装了 K Lite 编解码器,并添加了这组编解码器http://www.majorgeeks.com/files/details/media_player_codec_pack.html,现在我的 windows 媒体播放器在播放 mp4 文件时不再滞后。只需按照安装程序的建议并在开始安装过程之前重新启动您的电脑。另外...它试图通过对话框欺骗您安装辅助软件,所以当心!

安装后,只需记住在应用程序的视频设置中试验“首选加速”参数,看看根据您的硬件哪个更好。我已将其设置为 - CUVID。

我还安装了这套编解码器支持avi格式http://www.free-codecs.com/Combined_Community_Codec_Pack_download.htm

希望这可以帮助 :)

于 2015-04-23T20:26:22.970 回答