You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-04 22:03:09 +02:00
avcodec/mpeg4video: Don't use ac_val[1], ac_val[2] when cleaning buffers
This is in preparation for removing removing ac_val[1] and ac_val[2]. ff_mpeg4_clean_buffers() was the last user of them. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@ -43,17 +43,18 @@ int ff_mpeg4_get_video_packet_prefix_length(enum AVPictureType pict_type,
|
||||
|
||||
void ff_mpeg4_clean_buffers(MpegEncContext *s)
|
||||
{
|
||||
int c_wrap, c_xy, l_wrap, l_xy;
|
||||
const int mb_height = s->mb_height;
|
||||
int c_wrap, l_wrap, l_xy;
|
||||
|
||||
l_wrap = s->b8_stride;
|
||||
l_xy = (2 * s->mb_y - 1) * l_wrap + s->mb_x * 2 - 1;
|
||||
c_wrap = s->mb_stride;
|
||||
c_xy = (s->mb_y - 1) * c_wrap + s->mb_x - 1;
|
||||
int u_xy = 2 * mb_height * l_wrap + s->mb_y * c_wrap + s->mb_x - 1;
|
||||
|
||||
/* clean AC */
|
||||
memset(s->ac_val[0] + l_xy, 0, (l_wrap * 2 + 1) * 16 * sizeof(int16_t));
|
||||
memset(s->ac_val[1] + c_xy, 0, (c_wrap + 1) * 16 * sizeof(int16_t));
|
||||
memset(s->ac_val[2] + c_xy, 0, (c_wrap + 1) * 16 * sizeof(int16_t));
|
||||
memset(s->ac_val[0] + u_xy, 0, (c_wrap + 1) * 16 * sizeof(int16_t));
|
||||
memset(s->ac_val[0] + u_xy + c_wrap * (mb_height + 1), 0, (c_wrap + 1) * 16 * sizeof(int16_t));
|
||||
|
||||
/* clean MV */
|
||||
// we can't clear the MVs as they might be needed by a B-frame
|
||||
|
Reference in New Issue
Block a user