我打算使用 vlc 库来解码基于 H.264 的 RTSP 流并从中提取每一帧(将 vlc 图片转换为 IplImage)。我对 vlc 代码做了一些探索,并得出结论,有一个名为 libvlc_video_take_snapshot 的函数可以做类似的事情。但是,在这种情况下捕获的帧保存在硬盘上,由于我的应用程序的实时性,我希望避免这种情况。最好的方法是什么?是否可以不修改 vlc 源代码(如果可能,我想避免重新编译)。我听说过 vmem 等,但无法真正弄清楚它的作用以及如何使用它。
picture_t 结构是库内部的,我们如何才能访问它。等待你的回复。
PS 早些时候我尝试使用 FFMPEG 执行此操作,但是 ffmpeg 库在 Windows 上解码基于 H.264 的 RTSP 流时存在很多问题,因此我不得不切换到 VLC。
问候, 索拉布·甘地