[FFmpeg-devel] [PATCH] avcodec/mpegvideo_enc: Fix 1 line and one column images

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Mon Apr 8 21:00:58 EEST 2024


Paul B Mahol:
> On Mon, Apr 8, 2024 at 6:49 PM Michael Niedermayer <michael at niedermayer.cc>
> wrote:
> 
>> Fixes: Ticket10952
>> Fixes: poc21ffmpeg
>> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
>> ---
>>  libavcodec/mpegvideo_enc.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
>> index d1b19178247..40844b2f682 100644
>> --- a/libavcodec/mpegvideo_enc.c
>> +++ b/libavcodec/mpegvideo_enc.c
>> @@ -1199,8 +1199,8 @@ static int load_input_picture(MpegEncContext *s,
>> const AVFrame *pic_arg)
>>                  ptrdiff_t dst_stride = i ? s->uvlinesize : s->linesize;
>>                  int h_shift = i ? s->chroma_x_shift : 0;
>>                  int v_shift = i ? s->chroma_y_shift : 0;
>> -                int w = s->width  >> h_shift;
>> -                int h = s->height >> v_shift;
>> +                int w = -((-s->width)  >> h_shift);
>> +                int h = -((-s->height) >> v_shift);
>>                  const uint8_t *src = pic_arg->data[i];
>>                  uint8_t *dst = pic->f->data[i];
>>                  int vpad = 16;
>>
> 
> What that does? Its not same as aligned rshift macro?
> 

It is the same, just more complicated. And maybe with more instructions.

- Andreas



More information about the ffmpeg-devel mailing list