diff options
Diffstat (limited to 'src/libffmpeg/libavcodec/vp3.c')
-rw-r--r-- | src/libffmpeg/libavcodec/vp3.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/libffmpeg/libavcodec/vp3.c b/src/libffmpeg/libavcodec/vp3.c index 0667d99eb..59d183505 100644 --- a/src/libffmpeg/libavcodec/vp3.c +++ b/src/libffmpeg/libavcodec/vp3.c @@ -2051,6 +2051,7 @@ static void render_fragments(Vp3DecodeContext *s, int m, n; int i = first_fragment; int16_t *dequantizer; + DCTELEM __align16 output_samples[64]; unsigned char *output_plane; unsigned char *last_plane; unsigned char *golden_plane; @@ -2176,16 +2177,16 @@ av_log(s->avctx, AV_LOG_ERROR, " help! got beefy vector! (%X, %X)\n", motion_x, s->all_fragments[i].coeffs[0], dequantizer[0]); /* invert DCT and place (or add) in final output */ + s->dsp.vp3_idct(s->all_fragments[i].coeffs, + dequantizer, + s->all_fragments[i].coeff_count, + output_samples); if (s->all_fragments[i].coding_method == MODE_INTRA) { - s->dsp.vp3_idct_put(s->all_fragments[i].coeffs, - dequantizer, - s->all_fragments[i].coeff_count, + s->dsp.put_signed_pixels_clamped(output_samples, output_plane + s->all_fragments[i].first_pixel, stride); } else { - s->dsp.vp3_idct_add(s->all_fragments[i].coeffs, - dequantizer, - s->all_fragments[i].coeff_count, + s->dsp.add_pixels_clamped(output_samples, output_plane + s->all_fragments[i].first_pixel, stride); } |