On 6/1/2020 6:41 AM, Anton Khirnov wrote:
> Quoting James Almer (2020-05-30 18:44:26)
>> Signed-off-by: James Almer
>> ---
>> I included the new header directly in internal.h because the alternative was
>> including it in a hundred or so files that call ff_alloc_packet2().
>>
>> If that's nonetheless prefered, i can go ahead with it.
>
> I would prefer that, but won't force you or anyone to do such tedious
> work. So do as you like.
>
>>
>> libavcodec/internal.h| 35 +---
>> libavcodec/packet_internal.h | 63
>> 2 files changed, 64 insertions(+), 34 deletions(-)
>> create mode 100644 libavcodec/packet_internal.h
>>
>> diff --git a/libavcodec/internal.h b/libavcodec/internal.h
>> index 0e3415d69b..fa5052723b 100644
>> --- a/libavcodec/internal.h
>> +++ b/libavcodec/internal.h
>> @@ -32,6 +32,7 @@
>> #include "libavutil/pixfmt.h"
>> #include "avcodec.h"
>> #include "config.h"
>> +#include "packet_internal.h"
>>
>> /**
>> * The codec does not modify any global variables in the init function,
>> @@ -222,36 +223,6 @@ void ff_color_frame(AVFrame *frame, const int color[4]);
>> */
>> #define FF_MAX_EXTRADATA_SIZE ((1 << 28) - AV_INPUT_BUFFER_PADDING_SIZE)
>>
>> -/**
>> - * Check AVPacket size and/or allocate data.
>> - *
>> - * Encoders supporting AVCodec.encode2() can use this as a convenience to
>> - * ensure the output packet data is large enough, whether provided by the
>> user
>> - * or allocated in this function.
>> - *
>> - * @param avctx the AVCodecContext of the encoder
>> - * @param avpkt the AVPacket
>> - *If avpkt->data is already set, avpkt->size is checked
>> - *to ensure it is large enough.
>> - *If avpkt->data is NULL, a new buffer is allocated.
>> - *avpkt->size is set to the specified size.
>> - *All other AVPacket fields will be reset with
>> av_init_packet().
>> - * @param sizethe minimum required packet size
>> - * @param min_size This is a hint to the allocation algorithm, which
>> indicates
>> - *to what minimal size the caller might later shrink the
>> packet
>> - *to. Encoders often allocate packets which are larger than
>> the
>> - *amount of data that is written into them as the exact
>> amount is
>> - *not known at the time of allocation. min_size represents
>> the
>> - *size a packet might be shrunk to by the caller. Can be
>> set to
>> - *0. setting this roughly correctly allows the allocation
>> code
>> - *to choose between several allocation strategies to improve
>> - *speed slightly.
>> - * @returnnon negative on success, negative error code on failure
>> - */
>> -int ff_alloc_packet2(AVCodecContext *avctx, AVPacket *avpkt, int64_t size,
>> int64_t min_size);
>
> I would consider this function encoder-related rather than
> packet-related, since it potentially modifies AVCodecContext state.
Ok, will see about moving this one to encode.h as part of the encoding
code rewriting set instead.
Thanks.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".