[FFmpeg-devel] [crop support for matroska demuxer 1/3] libavcodec: Add crop related fields to structure AVCodecContext and AVCodecParameters.

James Almer jamrial at gmail.com
Tue Oct 4 14:49:02 EEST 2022


On 10/1/2022 4:06 AM, Hendrik Leppkes wrote:
> On Sat, Oct 1, 2022 at 8:14 AM OvchinnikovDmitrii
> <ovchinnikov.dmitrii at gmail.com> wrote:
>>
>> ---
>>   libavcodec/avcodec.h   | 8 ++++++++
>>   libavcodec/codec_par.h | 8 ++++++++
>>   2 files changed, 16 insertions(+)
>>
>> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
>> index 7365eb5cc0..66df571afc 100644
>> --- a/libavcodec/avcodec.h
>> +++ b/libavcodec/avcodec.h
>> @@ -585,6 +585,14 @@ typedef struct AVCodecContext {
>>        */
>>       int coded_width, coded_height;
>>
>> +    /**
>> +     * The dimensions of the crop, usually from container.
>> +     */
>> +    int crop_top;
>> +    int crop_left;
>> +    int crop_bottom;
>> +    int crop_right;
>> +
>>       /**
>>        * the number of pictures in a group of pictures, or 0 for intra_only
>>        * - encoding: Set by user.
>> diff --git a/libavcodec/codec_par.h b/libavcodec/codec_par.h
>> index 7660791a12..c730a79957 100644
>> --- a/libavcodec/codec_par.h
>> +++ b/libavcodec/codec_par.h
>> @@ -210,6 +210,14 @@ typedef struct AVCodecParameters {
>>        * Audio only. The channel layout and number of channels.
>>        */
>>       AVChannelLayout ch_layout;
>> +
>> +    /**
>> +     * The dimensions of the crop, usually from container.
>> +     */
>> +    int crop_top;
>> +    int crop_left;
>> +    int crop_bottom;
>> +    int crop_right;
>>   } AVCodecParameters;
>>
> 
> All of these should be size_t (and in AVCodecContext as well,
> naturally), matching the type in AVFrame.

IMO the AVFrame ones should have not been size_t to begin with, not just 
because the actual dimensions you'll apply them to are int, but because 
these fields are not arch dependent or meant for the size of some object 
in memory.

> 
> - Hendrik
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list