使用 libVLC 对帧进行编码和解码 (C#)

Encode and Decode frames by libVLC (C#)

提问人:Linus 提问时间:6/17/2022 最后编辑:Linus 更新时间:6/17/2022 访问量:714

问:

我是 VLC 或 libVLC 的新手。我使用 C# (.Net Framework 4.8) 和目标将视频帧(位图形式的每一帧或位图的字节数组)编码和解码为 H.264 视频流中的字节数组,即每一帧被编码为字节数组,然后解码。 很难找到这些简单函数的任何示例代码。

我使用 OpenH264 和 OpenH264Lib 来执行类似的功能。它有效,但似乎性能不令人满意。

谁能帮我? 多谢!

C# vlc libvlc libvlcsharp

评论


答:

0赞 cube45 6/17/2022 #1

LibVLC(sharp) 不是完成正确工作的正确工具。LibVLCSharp 擅长播放视频,但对原始帧进行编码/解码可能很难做到。

ffmpeg 库(libavcodec、libavformat...)更适合于此。请看一下FFMpeg.Autogen

评论

0赞 Linus 6/17/2022
FFMpeg.Autogen 似乎是 FFMpeg 的包装器之一。如果我经常调用它进行编码/解码,例如,如果我必须同时解码多个视频流并且每个视频流的帧率为 30fps,它是否存在性能问题,因为包装器实际上调用了 exe?
0赞 cube45 6/17/2022
可能比多次调用 exe 的开销要小,是的。