avcodec/v210enc: 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>
This commit is contained in:
Andreas Rheinhardt 2021-04-27 16:58:16 +02:00
parent fbfae5eb36
commit 1dc8f23787

View File

@ -23,6 +23,7 @@
#include "avcodec.h"
#include "bytestream.h"
#include "encode.h"
#include "internal.h"
#include "v210enc.h"
@ -118,7 +119,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
int ret;
uint8_t *dst;
ret = ff_alloc_packet2(avctx, pkt, avctx->height * stride, avctx->height * stride);
ret = ff_get_encode_buffer(avctx, pkt, avctx->height * stride, 0);
if (ret < 0) {
av_log(avctx, AV_LOG_ERROR, "Error getting output packet.\n");
return ret;
@ -156,6 +157,7 @@ const AVCodec ff_v210_encoder = {
.long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_V210,
.capabilities = AV_CODEC_CAP_DR1,
.priv_data_size = sizeof(V210EncContext),
.init = encode_init,
.encode2 = encode_frame,