c#中的Mux音频和视频



我正在寻找一种将单独音频和视频流加入单个容器的方法。

特别是我有VP8视频(WebM容器)和16位PCM音频(WAV容器),我想将其合并到Matroska容器中。

到目前为止,我可以通过将流到文件保存到文件,并使用产生我需要的结果的过程API来实现这一目标,但是我希望不依赖于保存中间文件的解决方案磁盘或要求ffmpeg.exe在服务器上。任何帮助非常感谢!

如果您想避免其他过程,则需要一个托管的Matroska/WebM库,或者至少是某些本机库的托管包装器。我不知道存在的/是最新的。我几年前开始写一篇文章,但从未完成。

在启动该过程时,实际上不是"将文件保存到磁盘"的必要值 - 因此,您可以通过将管道的名称代替常规文件名来直接与FFMPEG/MKVMERGE共享内存。不过,不得不在服务器上不需要二进制 - 除了将其包装在解决方案上。

最新更新