You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-04 22:03:09 +02:00
avcodec/mpegvideo: Don't reset AC values of upper-left luma block
Said block will only be referenced by blocks from the same macroblock, which will read the new AC values instead of the reset values from this function. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@ -506,7 +506,9 @@ void ff_clean_intra_table_entries(MpegEncContext *s)
|
|||||||
/* ac pred */
|
/* ac pred */
|
||||||
int16_t (*ac_val)[16] = s->ac_val[0];
|
int16_t (*ac_val)[16] = s->ac_val[0];
|
||||||
av_assume(!((uintptr_t)ac_val & 0xF));
|
av_assume(!((uintptr_t)ac_val & 0xF));
|
||||||
memset(ac_val[xy ], 0, 2 * sizeof(*ac_val));
|
// Don't reset the upper-left luma block, as it will only ever be
|
||||||
|
// referenced by blocks from the same macroblock.
|
||||||
|
memset(ac_val[xy + 1], 0, sizeof(*ac_val));
|
||||||
memset(ac_val[xy + wrap], 0, 2 * sizeof(*ac_val));
|
memset(ac_val[xy + wrap], 0, 2 * sizeof(*ac_val));
|
||||||
/* ac pred */
|
/* ac pred */
|
||||||
memset(ac_val[uxy], 0, sizeof(*ac_val));
|
memset(ac_val[uxy], 0, sizeof(*ac_val));
|
||||||
|
Reference in New Issue
Block a user