[FFmpeg-devel] Fix for FFMPEG vp8dec loopfilter delta values reset at keyframes
samipietila at google.com
Mon Oct 15 08:03:34 CEST 2012
please find attached a stream for reproducing this issue. It's CIF
resolution 8 frames high QP, with pics=5 and 7 having multiple occurences
of the issue.
On Fri, Oct 12, 2012 at 5:20 PM, Ronald Bultje <rbultje at google.com> wrote:
> Hi Sami,
> On Fri, Oct 12, 2012 at 3:42 AM, Sami Pietilä <samipietila at google.com>
> > Hi all,
> > while testing a VP8 encoder I found a mismatch between FFMPEG and libvpx
> > decoders. The reason for this mismatch is that FFMPEG doesn't reset
> > loopfilter delta values at keyframes. Patch that fixes the issue is
> > I've verified that the output of ffmpeg after this patch matches libvpx.
> > you need I can send you a stream that shows the issue.
> > Br,
> > Sami Pietila
> > diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c
> > index 3f07b90..0bb5495 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));
> > }
> Nice catch, thanks for noticing. I've applied it upstream (will flow
> to ffmpeg-devel in a few hours), and I'll update Chrome's tree ASAP.
> As Luca said on libav-devel, a test vector would be nice for
> archiving/regression testing purposes if it's not too much of a
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 9390 bytes
Desc: not available
More information about the ffmpeg-devel