当前位置:   article > 正文

如何使用FFmpeg精确剪辑视频_ffmpeg 剪辑

ffmpeg 剪辑

​1.问题描述

1.1 背景

之前基于ffmpeg做二次开发,完成常见的视频处理功能,并用ffmpeg命令行做兜底。在此基础上,还做一个转码接入和调度系统对外提供服务。有个功能需要是这样的:快速从指定的视频中裁剪某一时间范围的子视频, 两个要求:1. 要快,不能像转码一样耗时;2.要精确,剪辑的时候能指定从哪一秒开始,到哪一秒结束。

1.2 难点

ffmpeg很容易从一个长视频剪辑出一段小视频。比如命令ffmpeg -i input.mp4 -ss 00:10:03 -t 00:03:00 -vcodec copy -acodec copy output.mp4就是从input.mp4的第10分钟03秒开始剪辑出一个3分钟的视频并且保存为output.mp4文件。参数-vcodec copy -acodec copy就是直接拷贝原始视频的音视频流,不进行编解码。虽然上面的方法很方便,但有一个致命的缺陷:画面在一开始会卡住(但声音一直是正常的),几秒后画面才正常滚动。下面视频是一个例子。

2.原因分析

究其原因,剪辑的开始时间落在视频GOP的中间位置而不是第一个I帧。稍微了解过视频编码的同学应该都听过IBP帧。简单来说,I帧是一张完整的图像,P帧则根据

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/833931
推荐阅读
相关标签
  

闽ICP备14008679号