diff --git a/libavcodec/apv_dsp.c b/libavcodec/apv_dsp.c index 07bb34ec0b..8fbabcf63d 100644 --- a/libavcodec/apv_dsp.c +++ b/libavcodec/apv_dsp.c @@ -58,8 +58,8 @@ static void apv_decode_transquant_c(void *output, for (int y = 0; y < 8; y++) { for (int x = 0; x < 8; x++) { - int coeff = (input[y][x] * qmatrix[y][x] * (1 << qp_shift) + - (1 << (bd_shift - 1))) >> bd_shift; + int coeff = ((int)(input[y][x] * qmatrix[y][x] * (1U << qp_shift) + + (1 << (bd_shift - 1)))) >> bd_shift; scaled_coeff[y][x] = av_clip(coeff, APV_MIN_TRANS_COEFF,