From 84eba74c2367a0d189c5ed5dfdc95e7be0d24696 Mon Sep 17 00:00:00 2001 From: shuanglong.wang Date: Tue, 19 Sep 2017 06:06:20 +0000 Subject: external/ffmpeg: set key_frame flag for h264 I frame [1/1] PD# 150429 set key_frame flags for h264 I frame, not only IDR frame, because IDR may be less,find key frame may be drop too many frames when seek. Change-Id: Ib8e1599c394d37ac8091af064c70c722a79b0b94 --- diff --git a/libavcodec/h264_parser.c b/libavcodec/h264_parser.c index aed0793..a96adb7 100644 --- a/libavcodec/h264_parser.c +++ b/libavcodec/h264_parser.c @@ -347,6 +347,9 @@ static inline int parse_nal_units(AVCodecParserContext *s, /* key frame, since recovery_frame_cnt is set */ s->key_frame = 1; } + /* set key_frame for I frame*/ + if (s->pict_type == AV_PICTURE_TYPE_I) + s->key_frame = 1; pps_id = get_ue_golomb(&nal.gb); if (pps_id >= MAX_PPS_COUNT) { av_log(avctx, AV_LOG_ERROR, -- cgit