我使用库PyAV,因为它是Python中最好的一个。
这是我想要使用的代码的简单示例:
import av
video = av.open("My_Super_Video.mp4")
total_frames = # ????
for i, frame in enumerate(video.decode(video=0)):
img = frame.to_image() # PIL image
print("Frame: %d/%d ..." % (i, total_frames))
我显然可以使用其他库来加载库,但是如果可能的话我会更喜欢使用PyAV,因为它的处理速度很快。
问题1:是否可以使用PyAV获取帧数?如果有,怎么样?
问题2:在这种情况下,我会考虑使用另一个库逐帧加载和处理视频。哪个库允许我以尽可能高的速度执行上述操作。我知道以下内容,但不知道他们如何比较:
您可以使用Stream.frames属性获取流中的帧数。
资料来源:http://docs.mikeboers.com/pyav/develop/api/stream.html#av.stream.Stream