ref: 8a015fd0f546734f42e7ac8a1046bcef4a712964
parent: 3c251d45edfdec85988bf2934222df6124708877
author: Ronald S. Bultje <rsbultje@gmail.com>
date: Mon Sep 24 04:37:13 EDT 2018
Don't wait for reference pictures in intrabc. Fixes hang from sample in issue #14.
--- a/src/recon.c
+++ b/src/recon.c
@@ -518,8 +518,9 @@
ptrdiff_t ref_stride = refp->p.stride[!!pl];
const pixel *ref;
- dav1d_thread_picture_wait(refp, dy + bh4 * v_mul + !!my * 4,
- PLANE_TYPE_Y + !!pl);
+ if (refp != &f->cur) // i.e. not for intrabc
+ dav1d_thread_picture_wait(refp, dy + bh4 * v_mul + !!my * 4,
+ PLANE_TYPE_Y + !!pl);
if (dx < 3 || dx + bw4 * h_mul + 4 > f->bw * h_mul ||
dy < 3 || dy + bh4 * v_mul + 4 > f->bh * v_mul)
{