如何使用vlc python绑定在numpy阵列中捕获视频帧?

如何使用vlc python绑定在numpy阵列中捕获视频帧?,python,numpy,vlc,libvlc,Python,Numpy,Vlc,Libvlc,我想用python在(2D)numpy数组中从libvlc抓取每个视频帧。 我希望使用vlc.MediaPlayer.video\u set\u回调(…) 使用[callbacks][1]管理numpy数组,但没有关于在python中使用callback的文档 有什么想法或替代方法吗 [1] :装饰有vlc.cb.VideoLockCb和它的朋友们可以看看吗?我不使用这个python模块,因此我不知道它工作得有多好,但它确实可以使您所需要的特性变得更加灵活 编辑 也值得一试。它可能更稳定。 Op

我想用python在(2D)numpy数组中从libvlc抓取每个视频帧。 我希望使用vlc.MediaPlayer.video\u set\u回调(…) 使用[callbacks][1]管理numpy数组,但没有关于在python中使用callback的文档

有什么想法或替代方法吗

[1] :装饰有vlc.cb.VideoLockCb和它的朋友们可以看看吗?我不使用这个python模块,因此我不知道它工作得有多好,但它确实可以使您所需要的特性变得更加灵活

编辑

也值得一试。它可能更稳定。 OpenCV提供了不少于两个python绑定。后者更好,cv2与numpy集成。它比旧的cv模块更易于使用。例如,您可以使用以下代码读取视频帧:

import cv2
filename = 'myfile.mpg'
capture = cv2.VideoCapture(filename)
retval, im = capture.read()

每次调用
.read
都会输出一个新的视频帧。

pyffmpeg版本2.0/2.1/2.2 apha不在ubuntu 11.04和12.04(我的操作系统)下编译。我需要vlc,因为我的视频可以来自任何来源:网络流、firewire、文件系统…@VincentAgnus hi,你解决了这个问题吗?如果是,你能为我分享解决方案吗,谢谢。