Ffmpeg 从MP4/FLV中提取帧?

Ffmpeg 从MP4/FLV中提取帧?,ffmpeg,flv,mp4,video-encoding,mpeg-4,Ffmpeg,Flv,Mp4,Video Encoding,Mpeg 4,我知道使用FFMPEG是可能的,但是如果我有一个部分文件(比如没有开头和结尾),该怎么办呢。可以从中提取一些帧吗?命令 ffmpeg -ss 00:00:25 -t 00:00:00.04 -i YOURMOVIE.MP4 -r 25.0 YOURIMAGE%4d.jpg 将提取帧 从第25秒开始[-ss 00:00:25] 0.04秒后停止[-t 00:00:00.04] 从输入文件YOURMOVIE.MP4中读取 仅使用每秒25.0帧,即。E每1/25秒一帧[-r 25.0] 作为名为Y

我知道使用FFMPEG是可能的,但是如果我有一个部分文件(比如没有开头和结尾),该怎么办呢。可以从中提取一些帧吗?

命令

ffmpeg -ss 00:00:25 -t 00:00:00.04 -i YOURMOVIE.MP4 -r 25.0 YOURIMAGE%4d.jpg
将提取帧

  • 从第25秒开始[-ss 00:00:25]
  • 0.04秒后停止[-t 00:00:00.04]
  • 从输入文件YOURMOVIE.MP4中读取
  • 仅使用每秒25.0帧,即。E每1/25秒一帧[-r 25.0]
  • 作为名为YOURIMAGE%04d.jpg的JPEG图像,其中%4d是前导零的4位自动递增数字
在应用选项[-r]之前,请检查电影的帧速率,同样适用于[-t],除非您希望使用自定义速率提取帧

不过,从未尝试过对剪切(损坏?)的输入文件执行此操作。
值得一试。

这可能非常困难。MP4文件格式包括一个“moov”原子,它有指向音频和视频“样本”的指针。如果您拥有的mp4文件片段没有moov atom,那么您的工作将复杂得多。您必须开发逻辑来检查“mdat”原子(其中包含所有音频和视频样本),并使用有根据的猜测来找到音频和视频边界


更糟糕的是,如果没有moov原子,就没有解码切片所需的SPS和PPS。你必须合成替代品;如果您知道用于创建MP4的编解码器,则可以从类似编码的文件复制SP和PPS;如果没有,这可能是一个痛苦的尝试和错误过程,因为切片(H.264编码的图片)的语法取决于SPS和PPS中指定的值。

我们如何指定提取的JPG图像的质量?感谢dawg,这已经进入了我的mediadrop插件()。使用
-q:v2
获得最佳质量()考虑使用<代码>您的图像%4d.bmp < /Cord>如果磁盘空间充足,您计划进一步操作框架。您可以检查视频的属性,包括FrAGATE,用FFPoZ-V错误- SjuField-显示流输入,MP4。[虽然您的答案信息丰富,但事实上,使用FFMPEG.Dayne等工具提取帧和/或编辑视频非常简单,请重新阅读问题中关于源文件缺少开头或结尾的部分。