使用ffmpeg根据开始和结束时间剪切视频

使用ffmpeg根据开始和结束时间剪切视频,第1张

使用ffmpeg根据开始和结束时间剪切视频

您可能在3秒标记处没有关键帧。由于非关键帧编码与其他帧的差异,因此它们需要从前一个关键帧开始的所有数据。

使用mp4容器,可以在非关键帧处进行剪切,而无需使用编辑列表进行重新编码。换句话说,如果最接近3s的关键帧位于0s,则它将复制从0s开始的视频,并使用编辑列表告诉播放器开始播放3秒。

如果您使用的是git
master中的最新ffmpeg,则在使用提供的命令调用该列表时,将使用编辑列表来执行此 *** 作。如果这不适合您,则可能是您使用的是较旧版本的ffmpeg,或者您的播放器不支持编辑列表。一些播放器将忽略编辑列表,并始终从头到尾播放文件中的所有媒体。

如果要从非关键帧开始精确剪切,并且希望它在不支持编辑列表的播放器上从所需点开始播放,或者要确保剪切部分实际上不在输出文件中(例如,
(如果其中包含机密信息),则可以通过重新编码来实现,这样就可以在所需的开始时间准确显示关键帧。如果未指定,则默认为重新编码

copy
。例如:

ffmpeg -i movie.mp4 -ss 00:00:03 -t 00:00:08 -async 1 cut.mp4

重新编码时,您可能还希望包括其他与质量相关的选项或特定的AAC编码器。有关详细信息,请参阅ffmpeg的x264视频编码指南和AAC音频编码指南。

另外,该

-t
选项指定持续时间,而不是结束时间。上面的命令将从3s开始对8s的视频进行编码。要从3s开始并在8s结束使用
-t5
。如果您使用的是ffmpeg的当前版本,也可以在上述命令中将替换
-t
-to
在指定时间结束。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4938706.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存