在其关键帧

时间:2017-10-31 11:48:22

标签: ffmpeg

我正在尝试在其关键帧上分割视频文件:

  

ffmpeg -f x11grab -framerate 30 -i:0.0 -vcodec libx264 -x264-params   keyint = 1:min-keyint = 2:no-scenecut -force_key_frames“expr:gte(1,0)”   -t 5 -pix_fmt yuv420p -f ssegment -segment_format mp4 -segment_format_options movflags = + frag_keyframe + empty_moov + default_base_moof out%03d.mp4

每一帧都是一个关键帧,因此片段应该在每一帧都分开,但事实并非如此。拆分文件包含多个关键帧,无法正常播放。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

片段复用器仅在关键帧(通常)处剪切,但不会在每个关键帧处自动剪切。您尚未设置或更准确地覆盖细分持续时间选项。

所以,

ffmpeg -f x11grab -framerate 30 -i :0.0 \
       -vcodec libx264 -x264-params keyint=1 -t 5 -pix_fmt yuv420p \
       -f ssegment -segment_time 0.001 -segment_format mp4 \
       -segment_format_options movflags=+frag_keyframe+empty_moov+default_base_moof \
  out%03d.mp4

使用keyint = 1(相当于最大KF间隔),您不需要min-keyint或scenecut或force_key_frames。