diff options
author | Sami Pietilä <samipietila@google.com> | 2012-10-13 12:43:24 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-10-13 12:43:24 +0200 |
commit | 3cc0252732513dc7411093935821b1eb6416a9a6 (patch) | |
tree | bbeddc896fdc8d3a225e137c97ce0e937d4c4a3f | |
parent | 6254ffe0cadc6fefcfa4b4397c25fcada4cf730d (diff) | |
download | ffmpeg-3cc0252732513dc7411093935821b1eb6416a9a6.tar.gz |
vp8dec: reset loopfilter delta values at keyframes
while testing a VP8 encoder I found a mismatch between FFMPEG and libvpx
VP8 decoders. The reason for this mismatch is that FFMPEG doesn't reset
loopfilter delta values at keyframes. Patch that fixes the issue is below.
I've verified that the output of ffmpeg after this patch matches libvpx.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/vp8.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c index 3f07b90b26..0bb5495b2c 100644 --- a/libavcodec/vp8.c +++ b/libavcodec/vp8.c @@ -353,6 +353,7 @@ static int decode_frame_header(VP8Context *s, const uint8_t *buf, int buf_size) memcpy(s->prob->pred8x8c , vp8_pred8x8c_prob_inter , sizeof(s->prob->pred8x8c)); memcpy(s->prob->mvc , vp8_mv_default_prob , sizeof(s->prob->mvc)); memset(&s->segmentation, 0, sizeof(s->segmentation)); + memset(&s->lf_delta, 0, sizeof(s->lf_delta)); } ff_vp56_init_range_decoder(c, buf, header_size); |