From cbb7244ac111ce027c9ea7179f2a9f712b39941a Mon Sep 17 00:00:00 2001
From: Di Wu <di1028.wu@samsung.com>
Date: Sat, 11 Oct 2014 09:51:31 +0800
Subject: [PATCH] vp9: enable multi-thread decoding when refreshctx is equal
 to 0

In vp9_decode_frame function, ff_thread_finish_setup is not called
when refreshctx is equal to 0, and the next decoding thread can not
start work until the cunrrent frame has been decoded completely. So
ff_thread_finish_setup needs to be called to enable Multi-thread
decoding in this condition.

Signed-off-by: Di Wu <di1028.wu@samsung.com>
---
 libavcodec/vp9.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
index 76fd372..7b7deb3 100644
--- a/libavcodec/vp9.c
+++ b/libavcodec/vp9.c
@@ -3826,6 +3826,8 @@ static int vp9_decode_frame(AVCodecContext *ctx, void *frame,
         }
         s->prob_ctx[s->framectxid].p = s->prob.p;
         ff_thread_finish_setup(ctx);
+    } else if (!s->refreshctx) {
+        ff_thread_finish_setup(ctx);
     }
 
     do {
-- 
1.7.9.5

