static int thread_execute(AVFilterContext *ctx, avfilter_action_func *func,

                          void *arg, int *ret, int nb_jobs)

{

    ThreadContext *c = ctx->graph->internal->thread;

    int dummy_ret;



    if (nb_jobs <= 0)

        return 0;



    pthread_mutex_lock(&c->current_job_lock);



    c->current_job = c->nb_threads;

    c->nb_jobs     = nb_jobs;

    c->ctx         = ctx;

    c->arg         = arg;

    c->func        = func;

    if (ret) {

        c->rets    = ret;

        c->nb_rets = nb_jobs;

    } else {

        c->rets    = &dummy_ret;

        c->nb_rets = 1;

    }

    c->current_execute++;



    pthread_cond_broadcast(&c->current_job_cond);



    slice_thread_park_workers(c);



    return 0;

}

static int thread_execute(AVFilterContext *ctx, avfilter_action_func *func,

                          void *arg, int *ret, int nb_jobs)

{

    ThreadContext *c = ctx->graph->internal->thread;

    int dummy_ret;



    if (nb_jobs <= 0)

        return 0;



    pthread_mutex_lock(&c->current_job_lock);



    c->current_job = c->nb_threads;

    c->nb_jobs     = nb_jobs;

    c->ctx         = ctx;

    c->arg         = arg;

    c->func        = func;

    if (ret) {

        c->rets    = ret;

        c->nb_rets = nb_jobs;

    } else {

        c->rets    = &dummy_ret;

        c->nb_rets = 1;

    }

    c->current_execute++;



    pthread_cond_broadcast(&c->current_job_cond);



    slice_thread_park_workers(c);



    return 0;

}

    int dummy_ret;     if (ret) {         c->rets    = ret;         c->nb_rets = nb_jobs;     } else {         c->rets    = &dummy_ret;         c->nb_rets = 1;
static int FUNC_0(AVFilterContext *VAR_0, avfilter_action_func *VAR_1,

                          void *VAR_2, int *VAR_3, int VAR_4)

{

    ThreadContext *c = VAR_0->graph->internal->thread;

    int VAR_5;



    if (VAR_4 <= 0)

        return 0;



    pthread_mutex_lock(&c->current_job_lock);



    c->current_job = c->nb_threads;

    c->VAR_4     = VAR_4;

    c->VAR_0         = VAR_0;

    c->VAR_2         = VAR_2;

    c->VAR_1        = VAR_1;

    if (VAR_3) {

        c->rets    = VAR_3;

        c->nb_rets = VAR_4;

    } else {

        c->rets    = &VAR_5;

        c->nb_rets = 1;

    }

    c->current_execute++;



    pthread_cond_broadcast(&c->current_job_cond);



    slice_thread_park_workers(c);



    return 0;

}

static int FUNC_0(AVFilterContext *VAR_0, avfilter_action_func *VAR_1,
void *VAR_2, int *VAR_3, int VAR_4)
{ ThreadContext *c = VAR_0->graph->internal->thread; int VAR_5; if (VAR_4 <= 0)
return 0; pthread_mutex_lock(&c->current_job_lock); c->current_job = c->nb_threads; c->VAR_4     = VAR_4; c->VAR_0         = VAR_0; c->VAR_2         = VAR_2; c->VAR_1        = VAR_1; if (VAR_3) { c->rets    = VAR_3; c->nb_rets = VAR_4; } else { c->rets    = &VAR_5; c->nb_rets = 1; } c->current_execute++; pthread_cond_broadcast(&c->current_job_cond); slice_thread_park_workers(c); return 0; }