Mercurial > libavcodec.hg
changeset 10954:d7ef6611a49e libavcodec
Always call avcodec_thread_init()
The various avcodec_thread_init() functions are updated to return
immediately after setting avctx->thread_count. This allows -threads 0
to pass through to codecs. It also simplifies the usage for apps
using libavcodec.
author | mru |
---|---|
date | Wed, 20 Jan 2010 22:55:50 +0000 |
parents | eb9a2581f50e |
children | fdddf3d4238f |
files | beosthread.c os2thread.c pthread.c w32thread.c |
diffstat | 4 files changed, 14 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/beosthread.c Wed Jan 20 19:23:19 2010 +0000 +++ b/beosthread.c Wed Jan 20 22:55:50 2010 +0000 @@ -123,6 +123,9 @@ s->thread_count= thread_count; + if (thread_count <= 1) + return 0; + assert(!s->thread_opaque); c= av_mallocz(sizeof(ThreadContext)*thread_count); s->thread_opaque= c;
--- a/os2thread.c Wed Jan 20 19:23:19 2010 +0000 +++ b/os2thread.c Wed Jan 20 22:55:50 2010 +0000 @@ -116,6 +116,9 @@ s->thread_count= thread_count; + if (thread_count <= 1) + return 0; + assert(!s->thread_opaque); c= av_mallocz(sizeof(ThreadContext)*thread_count); s->thread_opaque= c;
--- a/pthread.c Wed Jan 20 19:23:19 2010 +0000 +++ b/pthread.c Wed Jan 20 22:55:50 2010 +0000 @@ -145,6 +145,11 @@ int i; ThreadContext *c; + avctx->thread_count = thread_count; + + if (thread_count <= 1) + return 0; + c = av_mallocz(sizeof(ThreadContext)); if (!c) return -1; @@ -156,7 +161,6 @@ } avctx->thread_opaque = c; - avctx->thread_count = thread_count; c->current_job = 0; c->job_count = 0; c->job_size = 0;