这个问题类似于Remove all non key frames from video without re-encoding,但这个问题是特定于H.264 (AVC),而不是H.265 (HEVC)。另外,对这个问题的公认答案会给我带来一个不可播放的1k文件。
我的命令行当前如下所示:
ffmpeg.exe -skip_frame nokey -i input.mp4 -vf "select='eq(pict_type,PICT_TYPE_I)'" -vsync vfr output.mp4input.mp4是30 2fps,在我运行上面的命令行之后,output.mp4是2fps,但它不仅由I帧(关键帧)组成,还包括P帧和B帧。因为这个命令是CPU密集型的,所以它似乎是重新编码的,我不想重新编码。
此外,它将删除exif信息,我希望将其保存在文件中。我只想移除非关键帧,保留其他一切。
发布于 2022-09-14 19:07:09
使用ffmpeg 5.0或更高版本,并假设输入容器标记视频关键帧(MP4,MKV ),请使用
ffmpeg -i input.mp4 -c copy -bsf:v noise=drop=not(key) output.mp4https://stackoverflow.com/questions/73710657
复制相似问题