|
|
|
@ -24,9 +24,6 @@ |
|
|
|
|
#include "libavutil/float_dsp.h" |
|
|
|
|
#include "libavutil/opt.h" |
|
|
|
|
|
|
|
|
|
#define FF_INTERNAL_FIELDS 1 |
|
|
|
|
#include "framequeue.h" |
|
|
|
|
|
|
|
|
|
#include "audio.h" |
|
|
|
|
#include "avfilter.h" |
|
|
|
|
#include "formats.h" |
|
|
|
@ -85,8 +82,8 @@ static int activate(AVFilterContext *ctx) |
|
|
|
|
|
|
|
|
|
FF_FILTER_FORWARD_STATUS_BACK_ALL(ctx->outputs[0], ctx); |
|
|
|
|
|
|
|
|
|
nb_samples = FFMIN(ff_framequeue_queued_samples(&ctx->inputs[0]->fifo), |
|
|
|
|
ff_framequeue_queued_samples(&ctx->inputs[1]->fifo)); |
|
|
|
|
nb_samples = FFMIN(ff_inlink_queued_samples(ctx->inputs[0]), |
|
|
|
|
ff_inlink_queued_samples(ctx->inputs[1])); |
|
|
|
|
for (i = 0; i < ctx->nb_inputs && nb_samples > 0; i++) { |
|
|
|
|
if (s->frames[i]) |
|
|
|
|
continue; |
|
|
|
@ -150,7 +147,7 @@ static int activate(AVFilterContext *ctx) |
|
|
|
|
|
|
|
|
|
if (ff_outlink_frame_wanted(ctx->outputs[0])) { |
|
|
|
|
for (i = 0; i < 2; i++) { |
|
|
|
|
if (ff_framequeue_queued_samples(&ctx->inputs[i]->fifo) > 0) |
|
|
|
|
if (ff_inlink_queued_samples(ctx->inputs[i]) > 0) |
|
|
|
|
continue; |
|
|
|
|
ff_inlink_request_frame(ctx->inputs[i]); |
|
|
|
|
return 0; |
|
|
|
|