首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除H.264 (AVC)视频中的所有非关键帧而不进行重新编码。

删除H.264 (AVC)视频中的所有非关键帧而不进行重新编码。
EN

Stack Overflow用户
提问于 2022-09-14 01:55:35
回答 1查看 126关注 0票数 1

这个问题类似于Remove all non key frames from video without re-encoding,但这个问题是特定于H.264 (AVC),而不是H.265 (HEVC)。另外,对这个问题的公认答案会给我带来一个不可播放的1k文件。

我的命令行当前如下所示:

代码语言:javascript
复制
ffmpeg.exe -skip_frame nokey -i input.mp4 -vf "select='eq(pict_type,PICT_TYPE_I)'" -vsync vfr output.mp4

input.mp4是30 2fps,在我运行上面的命令行之后,output.mp4是2fps,但它不仅由I帧(关键帧)组成,还包括P帧和B帧。因为这个命令是CPU密集型的,所以它似乎是重新编码的,我不想重新编码。

此外,它将删除exif信息,我希望将其保存在文件中。我只想移除非关键帧,保留其他一切。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-14 19:07:09

使用ffmpeg 5.0或更高版本,并假设输入容器标记视频关键帧(MP4,MKV ),请使用

代码语言:javascript
复制
ffmpeg -i input.mp4 -c copy -bsf:v noise=drop=not(key) output.mp4
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73710657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档