ffmpeg剪辑并编码mp4视频,可流畅播放
问题:在播放剪裁得到的MP4视频片段时,常常遇到卡顿、音画不同步等异常情况
原因分析:mp4视频是使用mpeg-4编码,压缩过的视频。压缩的基本原理是,将组成视频的帧分为两大类关键帧和普通帧。关键帧是一张完整的图片,包含当前帧的完整图像信息,而普通帧则需要依赖之前的关键帧来恢复图像。这样子,就可以减小视频文件的大小,又保持较高的清晰度。
凡是压缩过的视频,都包含关键帧。这里的压缩是指,对原始的视频文件内容进行编码,而不是文件级别的压缩。
在剪裁视频的时候,开始的时间点如果不是关键帧,那么剪裁到的视频片段,在播放时就会卡顿。片段视频的开头是一些普通帧,解码器无法找打关键帧,无法恢复普通帧的图像,无法进行正常解码。
知道了原因,就有解决办法了,增加关键帧的数量,每一帧都是关键帧,任意剪裁点,都是关键帧,播放就不会卡顿了。
通过和来表示关键帧的最小和最大间隔数
具体命令如下
-i .mp4 -g 1 - 1 .mp4
-g 关键帧的最大间隔
- 关键帧的最小间隔
最大和最小都是1。
可能出现的问题:画面细微的不清晰
参考:
标题亲自测试 转码
for %%a in ("*.ts") do -i “%%a” -f mp4 - copy "%%~na.mp4
将当前目录下所有.ts文件转换为.mp4格式
剪辑
-ss 0:0:14.00 -i .mp4 - copy .mp4
对于压缩视频剪辑后不卡顿
-ss 0:0:14.00 -i .mp4 - copy - copy .mp4
对于压缩视频剪辑后,视频开始时黑屏,声音正常,图像卡顿
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。