[FFmpeg-cvslog] avcodec/amfenc: use AVCodecContext.get_encode_buffer()

James Almer git at videolan.org
Wed Mar 17 18:54:03 EET 2021


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Fri Mar 12 20:49:44 2021 -0300| [b615e8a7826daf9279bff9ee0b629840f05b218c] | committer: James Almer

avcodec/amfenc: use AVCodecContext.get_encode_buffer()

Signed-off-by: James Almer <jamrial at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b615e8a7826daf9279bff9ee0b629840f05b218c
---

 libavcodec/amfenc.c      | 2 +-
 libavcodec/amfenc_h264.c | 3 ++-
 libavcodec/amfenc_hevc.c | 3 ++-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/libavcodec/amfenc.c b/libavcodec/amfenc.c
index e234cfd354..fb23ed738c 100644
--- a/libavcodec/amfenc.c
+++ b/libavcodec/amfenc.c
@@ -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);
diff --git a/libavcodec/amfenc_h264.c b/libavcodec/amfenc_h264.c
index 622ee85946..fe30d7f11d 100644
--- a/libavcodec/amfenc_h264.c
+++ b/libavcodec/amfenc_h264.c
@@ -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",
diff --git a/libavcodec/amfenc_hevc.c b/libavcodec/amfenc_hevc.c
index a1225c09e3..b5c840e5f3 100644
--- a/libavcodec/amfenc_hevc.c
+++ b/libavcodec/amfenc_hevc.c
@@ -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",



More information about the ffmpeg-cvslog mailing list