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

index e234cfd354134ba64f90947929a943d6c3fbb068..fb23ed738ce101af10510dd6e912e6991a675833 100644 (file)
@@ -452,7 +452,7 @@ static int amf_copy_buffer(AVCodecContext *avctx, AVPacket *pkt, AMFBuffer *buff
     int64_t          timestamp = AV_NOPTS_VALUE;
     int64_t          size = buffer->pVtbl->GetSize(buffer);
 
-    if ((ret = av_new_packet(pkt, size)) < 0) {
+    if ((ret = ff_get_encode_buffer(avctx, pkt, size, 0)) < 0) {
         return ret;
     }
     memcpy(pkt->data, buffer->pVtbl->GetNative(buffer), size);
index 622ee859464838e1485d1aacc6f59ddb6770d2d9..fe30d7f11d9c2229591bff14b31fc01a7a5b1abc 100644 (file)
@@ -388,7 +388,8 @@ AVCodec ff_h264_amf_encoder = {
     .priv_data_size = sizeof(AmfContext),
     .priv_class     = &h264_amf_class,
     .defaults       = defaults,
-    .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE,
+    .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE |
+                      AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
     .pix_fmts       = ff_amf_pix_fmts,
     .wrapper_name   = "amf",
index a1225c09e34922b664b724fd7d044fe5971c4003..b5c840e5f3fca2c0580f247af5887719ea7bf0fa 100644 (file)
@@ -320,7 +320,8 @@ AVCodec ff_hevc_amf_encoder = {
     .priv_data_size = sizeof(AmfContext),
     .priv_class     = &hevc_amf_class,
     .defaults       = defaults,
-    .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE,
+    .capabilities   = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_HARDWARE |
+                      AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
     .pix_fmts       = ff_amf_pix_fmts,
     .wrapper_name   = "amf",