使用Python获取视频中的I帧列表

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (326)

我正在尝试获取Python中视频中所有I帧的索引列表(稍后将其中一部分保存为JPEG)。现在,我可以使用FFProbe终端遍历所有帧,看看哪个是I帧:

ffprobe -select_streams v -show_frames -show_entries frame=pict_type -of csv 18s.mp4

这给了我这样的东西:

frame,I
frame,B
frame,P
frame,B
frame,P
frame,B

但是我怎么能在Python中做到这一点(我在Windows中)并获得所有索引的列表?

提问于
用户回答回答于

你可以让FFmpeg输出i帧作为JPG。并使用python包装器来触发此命令。

这将输出所有i帧作为JPG图像。

ffmpeg -i 2.flv -vf "select=eq(pict_type\,I)" -vsync vfr frame-%02d.jpg

相信此评论类似的superuser.com问题。 https://superuser.com/questions/669716/how-to-extract-all-key-frames-from-a-video-clip#comment1184347_669733

希望有所帮助。干杯。

伊恩

扫码关注云+社区

领取腾讯云代金券