使用 vlc 的快照(在 RAM 上获取快照)

Sau*_*dhi 5 opencv h.264 libvlc

我计划使用 vlc 库来解码基于 H.264 的 RTSP 流并从中提取每一帧(将 vlc 图片转换为 IplImage)。我对 vlc 代码进行了一些探索,并得出结论,有一个名为 libvlc_video_take_snapshot 的函数执行类似的操作。然而,在这种情况下捕获的帧保存在硬盘上,由于我的应用程序的实时性,我希望避免这种情况。什么是最好的方法来做到这一点?是否可以不修改 vlc 源代码(如果可能,我想避免重新编译)。我听说过 vmem 等,但无法真正弄清楚它的作用以及如何使用它。

图片_t 结构是库内部的,我们如何才能访问它。等待你的回复。

PS 早些时候我尝试使用 FFMPEG 执行此操作,但是 ffmpeg 库在 Windows 上解码基于 H.264 的 RTSP 流时存在很多问题,因此我不得不切换到 VLC。

问候, 索拉布·甘地