在进程之间流式传输视频

本文关键字:传输 视频 进程 之间 | 更新日期: 2023-09-27 18:02:16

这与我之前问的这个问题有关。

我正在尝试使用WCF双工服务来控制(启动,停止,启用功能)多个Kinect设备。除此之外,我还想将我从Windows服务接收到的视频流到客户端WPF应用程序。我这样做是因为我需要Windows服务的属性,例如应用程序的自动启动。

尝试使用双工服务回调来流式传输数据,遇到了另一个问题中描述的一些问题。我开始怀疑内存映射文件是否是一种更好的方法。

设备将大约30次发出第二个呼叫。

private byte[] _ColorPixels;
private void Sensor_AllFramesReady(object sender, Microsoft.Kinect.AllFramesReadyEventArgs e)
{
    using (ColorImageFrame frame = e.OpenColorImageFrame())
    {
        frame.CopyPixelDataTo(_ColorPixels);
        //_ColorPixels will now have a large array which is the video stream
    }
}

,此时我有一个包含至少1,228,800个元素的数组。我现在想把这些数据转发到另一个进程。

那么c#中在进程之间传输实时视频数据的最佳方式是什么呢?

在进程之间流式传输视频

视频流传输需要大量带宽,这不是一件容易的事,当带宽受限时,你需要有一个缓存来防止卡嗒

使用像http://www.streamcoders.com/这样的流媒体库