vp9: ignore frame_context_index field in key-/intraonly-frames.

Reproduces a bug to remain consistent with libvpx' behaviour.
pull/206/head
Ronald S. Bultje 9 years ago
parent 6135aed0d2
commit ee729cc0ed
  1. 2
      libavcodec/vp9.c

@ -642,6 +642,8 @@ static int decode_frame_header(AVCodecContext *ctx,
s->s.h.refreshctx = s->s.h.errorres ? 0 : get_bits1(&s->gb); s->s.h.refreshctx = s->s.h.errorres ? 0 : get_bits1(&s->gb);
s->s.h.parallelmode = s->s.h.errorres ? 1 : get_bits1(&s->gb); s->s.h.parallelmode = s->s.h.errorres ? 1 : get_bits1(&s->gb);
s->s.h.framectxid = c = get_bits(&s->gb, 2); s->s.h.framectxid = c = get_bits(&s->gb, 2);
if (s->s.h.keyframe || s->s.h.intraonly)
s->s.h.framectxid = 0; // BUG: libvpx ignores this field in keyframes
/* loopfilter header data */ /* loopfilter header data */
if (s->s.h.keyframe || s->s.h.errorres || s->s.h.intraonly) { if (s->s.h.keyframe || s->s.h.errorres || s->s.h.intraonly) {

Loading…
Cancel
Save