[FFmpeg-cvslog] vp9: enable multi-thread decoding when refreshctx is equal to 0
Di Wu
git at videolan.org
Fri Oct 10 14:19:29 CEST 2014
ffmpeg | branch: master | Di Wu <di1028.wu at samsung.com> | Sun Oct 12 01:20:18 2014 +0800| [162b5211080b187fc8a2e8393b7fa07207c1611e] | committer: Reynaldo H. Verdejo Pinochet
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 at samsung.com>
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo at osg.samsung.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=162b5211080b187fc8a2e8393b7fa07207c1611e
---
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 {
More information about the ffmpeg-cvslog
mailing list