ffmpeg将avi分为帧速率已知的帧
image-processing
5
0

我将其发布为相关主题下的评论。但是,它们似乎没有引起注意==

我用过

ffmpeg -i myfile.avi -f image2 image-%05d.bmp

myfile.avi拆分为存储为.bmp文件的帧。似乎行得通,只是不太行。录制视频时,我以1000fps的速度录制,视频的长度为2分2min29sec 。如果我的数学正确,则整个视频总共应为149,000帧 。可是我跑的时候

ffmpeg -i myfile.avi -f image2 image-%05d.bmp

我只获得了4472个文件。如何获得原始的149k帧?

我还尝试通过执行以下操作将原始AVI的帧频转换为1000fps

ffmpeg -i myfile.avi -r 1000 otherfile.avi

但这似乎并没有解决我的问题。

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃
ffmpeg -i myfile.avi -r 1000 -f image2 image-%07d.png

我不确定输出150k bmp文件是一个好主意。也许png足够好了?

收藏
评论

您的数学第一部分很好,这2分29秒大约是149秒。以1000 fps拍摄149000帧。但是,对于149000的6个位置,您的输出文件名仅具有5个位置,因此请尝试“ image-%06d.bmp”。

然后是磁盘大小:图像是否适合磁盘?使用bmp时,每个图像都使用其自己的大小。您可能会尝试使用jpeg图片,它们的压缩效果要好10倍左右。

另一个想法:如果ffmpeg找不到(合理的)帧速率,则每秒下降到25或30帧。您可能需要指定它。对源和目标都这样做,请参见手册页(unix上的man ffmpeg ):

   To force the frame rate of the input file (valid for raw formats
   only) to 1 fps and the frame rate of the output file to 24 fps:
           ffmpeg -r 1 -i input.m2v -r 24 output.avi

物有所值:我使用ffmpeg -y -i "video.mpg" -sameq "video.%04d.jpg"将视频分割成图片。 -sameq是强制以合理的质量jpeg,-y是避免允许覆盖问题。为了你:

ffmpeg -y -r 1000 -i“ myfile.avi” -sameq“ image。%06d.jpg”

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号