如何使用“imem”内存流作为.NET VLC包装器的源

本文关键字:VLC NET 包装 何使用 imem 内存 | 更新日期: 2023-09-27 18:29:49

输入接收任何格式的音频或视频,输出应该是波形。我决定为.NET使用火山包装器。这时我意识到这是用一个文件作为源代码实现的。问题是我有一个字节数组作为源。

在阅读论坛后,我得出结论,使用模块imem是必要的,但我有困难。

如何正确使用imem作为数据源而不是文件传输流?

如何使用“imem”内存流作为.NET VLC包装器的源

现在,从C#中不可能做到这一点。主要是因为您需要将--imem-get和--imem-release处理程序地址指定为字符串,而无法从C#中获取这些地址(好吧,您可以通过GCHandle获取指针,但当VLC试图调用它时,它会崩溃)。

对此的演练可以是:

  • 编写实现get和release处理程序的C API。这里和这里有一个很好的论坛帖子

  • 将数据保存到硬盘并加载到VLC