vp9: don't allow compound references if error_resilience is enabled.

libvpx (probably accidentally) clears the bits if error_res is set,
along with keyframe/intraonly. This probably wasn't the intention
(since it's local data), but it's behaviour we have to copy...
pull/137/head
Ronald S. Bultje 10 years ago
parent 5de142d316
commit 32b6d31ef3
  1. 5
      libavcodec/vp9.c

@ -648,8 +648,9 @@ static int decode_frame_header(AVCodecContext *ctx,
s->highprecisionmvs = get_bits1(&s->gb);
s->filtermode = get_bits1(&s->gb) ? FILTER_SWITCHABLE :
get_bits(&s->gb, 2);
s->allowcompinter = s->signbias[0] != s->signbias[1] ||
s->signbias[0] != s->signbias[2];
s->allowcompinter = !s->errorres &&
(s->signbias[0] != s->signbias[1] ||
s->signbias[0] != s->signbias[2]);
if (s->allowcompinter) {
if (s->signbias[0] == s->signbias[1]) {
s->fixcompref = 2;

Loading…
Cancel
Save