]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/nvenc: use AVCodecContext.get_encode_buffer()
authorJames Almer <jamrial@gmail.com>
Fri, 12 Mar 2021 23:50:01 +0000 (20:50 -0300)
committerJames Almer <jamrial@gmail.com>
Wed, 17 Mar 2021 16:44:16 +0000 (13:44 -0300)
Signed-off-by: James Almer <jamrial@gmail.com>
libavcodec/nvenc.c
libavcodec/nvenc_h264.c
libavcodec/nvenc_hevc.c

index fbf55ebc9d518b938d63d4d0043cdd3b8a000efb..dddee8cac1e54c641cf765377d8ca5f094a83a6e 100644 (file)
@@ -1971,7 +1971,7 @@ static int process_output_surface(AVCodecContext *avctx, AVPacket *pkt, NvencSur
         goto error;
     }
 
-    res = av_new_packet(pkt, lock_params.bitstreamSizeInBytes);
+    res = ff_get_encode_buffer(avctx, pkt, lock_params.bitstreamSizeInBytes, 0);
 
     if (res < 0) {
         p_nvenc->nvEncUnlockBitstream(ctx->nvencoder, tmpoutsurf->output_surface);
index 4c118d3138fcc41bafa712c0bb94436894e923a3..4c2585876ecf61580b9ebe430f06b576c54dbd39 100644 (file)
@@ -287,7 +287,7 @@ AVCodec ff_h264_nvenc_encoder = {
     .priv_class     = &h264_nvenc_class,
     .defaults       = defaults,
     .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE |
-                      AV_CODEC_CAP_ENCODER_FLUSH,
+                      AV_CODEC_CAP_ENCODER_FLUSH | AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
     .pix_fmts       = ff_nvenc_pix_fmts,
     .wrapper_name   = "nvenc",
index 031d2ef44ed64543a8dba113e53a0b01bec96a79..441e7871d2b47c2b173e324cdbf91486d25bac19 100644 (file)
@@ -237,7 +237,7 @@ AVCodec ff_hevc_nvenc_encoder = {
     .defaults       = defaults,
     .pix_fmts       = ff_nvenc_pix_fmts,
     .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE |
-                      AV_CODEC_CAP_ENCODER_FLUSH,
+                      AV_CODEC_CAP_ENCODER_FLUSH | AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
     .wrapper_name   = "nvenc",
     .hw_configs     = ff_nvenc_hw_configs,