如何在C#/ WPF中显示来自ffmpeg的实时视频流?

时间:2019-04-09 17:45:29

标签: c# ffmpeg udp

我正在尝试从FFmpeg.exe获取输出以在我的wpf媒体播放器上实时显示。 FFmpeg的输入是IP摄像机和视频文件(mp4)。

WPF媒体播放器需要URI作为输入。因此,我尝试为FFmpeg托管一台Udp服务器以发布到该服务器(我可以记录控制台上输入的数据)。然后,我尝试使用媒体播放器获取流,但没有成功。

我的Udp侦听器:

UdpClient _udpServer = new UdpClient(5000);
UdpClient _udpClient = new UdpClient(5001);
private void UdpListen() {
   while (true)
   {
      IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
      Byte[] receiveBytes = _udpServer.Receive(ref RemoteIpEndPoint);
      if (RemoteIpEndPoint.ToString() != "192.168.1.110:5001")
      {
         IPEndPoint ep = new IPEndPoint(IPAddress.Parse("192.168.1.110"), 5001);
         _udpClient.Send(receiveBytes, receiveBytes.Length, ep);
      }
      Console.WriteLine("receive data from " + RemoteIpEndPoint.ToString() + ": " + receiveBytes.Length);
   }
}

ffmpeg输出:... -f mpegts udp://192.168.1.110:5000

我将此传递给媒体播放器:udp://192.168.1.110:5001

我希望在ffmpeg正在处理输出时看到正在显示的视频文件。但是,我只是看到ffmpeg对其进行处理,并且Udp侦听器将其写入控制台。 预先感谢,让我知道我要去哪里了

0 个答案:

没有答案