C# Video Streaming

本文关键字:Streaming Video | 更新日期: 2023-09-27 18:29:57

我正在使用NReco库开发一个C#视频流应用程序。此时此刻,我能够分别对音频和视频进行编码,并将数据保存到队列中。我可以在没有音频的情况下使用UDP协议流式传输视频,它在ffplay中播放得很好。现在我想将这两个流合并为一个流,并通过UDP协议进行流传输,播放器应该同时播放音频和视频。但我不知道该怎么做。如果有人能给我任何分数来做这件事或任何其他不同的方法来实现这一点,我将不胜感激。

谢谢。

C# Video Streaming

答案在很大程度上取决于视频和音频流的来源。NReco.VideoConverter是FFMpeg工具的包装器,如果视频或音频输入可以指定为FFMpeg输入源(UDP流或直接显示输入设备),它实际上可以组合视频和音频流(请参阅FFMpeg文档中的过滤器配置)。

如果C#代码中的视频和音频数据都由字节流表示,则不能使用NReco.VideoConverter(ConvertLiveMedia方法)将它们一起传递,因为它使用stdin与ffmpeg通信,并且只能从C#代码传递一个流。