avcodec/openh264enc.c: generate IDR frame in response to I frame pict_type

Signed-off-by: Valery Kot <valery.kot@gmail.com>
This commit is contained in:
Valery Kot 2018-03-16 14:50:34 +01:00 committed by James Almer
parent b08c132a9c
commit 67fd8df419

View File

@ -246,6 +246,10 @@ static int svc_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
sp.iPicWidth = avctx->width;
sp.iPicHeight = avctx->height;
if (frame->pict_type == AV_PICTURE_TYPE_I) {
(*s->encoder)->ForceIntraFrame(s->encoder, true);
}
encoded = (*s->encoder)->EncodeFrame(s->encoder, &sp, &fbi);
if (encoded != cmResultSuccess) {
av_log(avctx, AV_LOG_ERROR, "EncodeFrame failed\n");