diff options
author | Timo Rothenpieler <timo@rothenpieler.org> | 2016-10-12 20:51:43 +0200 |
---|---|---|
committer | Timo Rothenpieler <timo@rothenpieler.org> | 2016-10-12 20:51:43 +0200 |
commit | 30c558750374b179dc910da6fc354724679d630e (patch) | |
tree | 0f38d60ece33998c8247634e09239dba206cdf4d /libavcodec/nvenc.c | |
parent | 03d6d5f3760e2b06e3ef1f68de62c79c2e8fb173 (diff) | |
download | ffmpeg-30c558750374b179dc910da6fc354724679d630e.tar.gz |
avcodec/nvenc: add support for forcing intra/idr frames
Diffstat (limited to 'libavcodec/nvenc.c')
-rw-r--r-- | libavcodec/nvenc.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index f6f756fe00..e6c1c94144 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -1737,7 +1737,13 @@ int ff_nvenc_encode_frame(AVCodecContext *avctx, AVPacket *pkt, pic_params.pictureStruct = NV_ENC_PIC_STRUCT_FRAME; } - pic_params.encodePicFlags = 0; + if (ctx->forced_idr >= 0 && frame->pict_type == AV_PICTURE_TYPE_I) { + pic_params.encodePicFlags = + ctx->forced_idr ? NV_ENC_PIC_FLAG_FORCEIDR : NV_ENC_PIC_FLAG_FORCEINTRA; + } else { + pic_params.encodePicFlags = 0; + } + pic_params.inputTimeStamp = frame->pts; nvenc_codec_specific_pic_params(avctx, &pic_params); |