diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-04-27 16:58:16 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-05-05 12:41:52 +0200 |
commit | 350c00f3dfc8c005ef4e85c123afb67a34cfad4b (patch) | |
tree | ce137ea9974936802ea3887645fe47240b0b1613 /libavcodec/cngenc.c | |
parent | 5b8c18495c834253731cb55e4cda2e41ca40a2c4 (diff) | |
download | ffmpeg-350c00f3dfc8c005ef4e85c123afb67a34cfad4b.tar.gz |
avcodec/cngenc: Allow user-supplied buffers
Trivial for an encoder that knows the size of the output packet in
advance.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/cngenc.c')
-rw-r--r-- | libavcodec/cngenc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/cngenc.c b/libavcodec/cngenc.c index 15d1e5b657..830311f955 100644 --- a/libavcodec/cngenc.c +++ b/libavcodec/cngenc.c @@ -23,6 +23,7 @@ #include "libavutil/common.h" #include "avcodec.h" +#include "encode.h" #include "internal.h" #include "lpc.h" @@ -73,7 +74,7 @@ static int cng_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, int qdbov; int16_t *samples = (int16_t*) frame->data[0]; - if ((ret = ff_alloc_packet2(avctx, avpkt, 1 + p->order, 1 + p->order))) { + if ((ret = ff_get_encode_buffer(avctx, avpkt, 1 + p->order, 0))) { av_log(avctx, AV_LOG_ERROR, "Error getting output packet\n"); return ret; } @@ -105,6 +106,7 @@ const AVCodec ff_comfortnoise_encoder = { .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 comfort noise generator"), .type = AVMEDIA_TYPE_AUDIO, .id = AV_CODEC_ID_COMFORT_NOISE, + .capabilities = AV_CODEC_CAP_DR1, .priv_data_size = sizeof(CNGContext), .init = cng_encode_init, .encode2 = cng_encode_frame, |