如何使视频中的所有帧都成为I帧

How can I make all frames in my video become i-frames?

本文关键字:何使 视频      更新时间:2023-10-16

现在我使用ffmpeg在c++中对视频进行编码。我需要在没有其他帧的情况下解码h264帧。所以我需要让我视频中的所有帧都变成I帧。但我不知道如何设置参数才能做到这一点。如果我需要将所有视频帧制作成I帧,该怎么办?

ffmpeg -i yourfile -c:v libx264 -x264opts keyint=1 out.mp4

-x264opts keyint=1将关键帧间隔设置为1(我相信您也可以使用-g 1)。您可能还想设置其他速率控制参数,例如-crf 10(用于质量)和-preset veryslow(用于速度),请参阅本页。