使用python我想监视在录制时由另一个进程写入硬盘的.avi原始RGB视频文件。所以我需要的是反复给我的磁盘上视频文件的当前最后一帧(或第n帧)。
我已经尝试过使用OpenCV了,但是这只给了我一次当前的最后一帧,在第一次到达最后一帧后再进一步调用QueryFrame不会返回更多的图像。
基本上我正在寻找像this这样的东西,但是对于.avi视频文件。另外对我来说,如果跳过帧,这不是问题,只需每秒获得几个新帧就足够了。
答案 0 :(得分:1)
您必须在每次循环迭代结束时关闭.avi
- 文件,然后重新打开它。
编辑:艺术要求代码示例。在这里。
while True:
with open("test.avi") as fh:
get_last_frame()
wait_or_do_whatever_you_want()
我不知道OP如何使用AVI格式,但这不是问题的一部分。