如何强制ffmpeg编码时输出一个关键帧

From Ffmpeg工程组

Jump to: navigation, search

如何强制ffmpeg编码时输出一个关键帧

AVCodecContext *c     //编码器环境句柄
AVFrame* f                 //需要编码的一帧视频
在编码前设置
f->pict_type=FF_I_TYPE; 
f->key_frame=1; 
然后编码
*outsize = avcodec_encode_video(c, temp, outbuf_size, f);
则编码之后通过如下参数判断是否为关键帧:
key_frame=c->coded_frame->key_frame; 
pict_type=c->coded_frame->pict_type;
Personal tools