5

有没有办法在 WPF(或 WinForms)中播放 rtsp:// 流?

我试过了MediaElementMediaUriElement但都没有奏效。我还阅读了很多关于 WMP 能够播放 rtsp(也应该翻译为MediaElement)的信息,但实际上 WMP 不能在 Windows 7 x64 上播放。我已经看到了这一点,但我希望这不是一个明确的答案。

这与正在使用的视频编解码器有什么关系吗?

VLC 播放 rtsp 流就好了。

我正在寻找 WPF 或 WinForms 组件或替代解决方案。

4

3 回答 3

9

试试 Accord.Net ( http://accord-framework.net/ )。它有一个非常简单的界面,可以作为 nuget 包 (Accord.Video.FFMPEG) 使用。它可用于检索可在 WinForms/WPF 中使用的 Bitmap 实例。缺点是它不支持 Mono(不确定您的目标平台是什么)。

例子:

VideoFileReader reader = new VideoFileReader();
reader.Open("rtsp://192.168......");

while (true)
{
   Bitmap frame = reader.ReadVideoFrame();
   //Do whatever with the frame...
}

reader.Close();
于 2016-01-20T20:56:56.687 回答
3

我找到了适用于 WinForm、WPF 和 Silverlight 5 的 VideoLan DotNet,它现在似乎可以解决问题。缺点是您需要安装 VLC。它不是一个独立的东西。

我希望这对其他人也有帮助。

于 2012-04-25T15:21:10.793 回答
2

迟到总比不到好; 看看这个控件: http: //www.codeproject.com/Articles/885869/Stream-Player-control

它是一个基于 FFmpeg 的流播放器控件,可以执行以下操作:

  1. 播放 RTSP/RTMP 视频流
  2. 检索控件显示的当前帧

该控件没有额外的依赖项和简约的界面。

要求

  1. 控件的 WinForms 版本是使用 .NET Framework 2.0 实现的
  2. 控件的 WPF 版本是使用 .NET Framework 4 Client Profile 实现的

这两个版本都是使用 x86 平台目标构建的。

于 2015-03-19T20:49:00.007 回答