L'octidi 8 fructidor, an CCXXV, Paul B Mahol a écrit : > + if ((ret = ff_inlink_consume_frame(ctx->inputs[0], &in[0])) > 0) { > + av_audio_fifo_write(s->fifo[0], (void **)in[0]->extended_data, > + in[0]->nb_samples); > + av_frame_free(&in[0]); > + } > + if (ret < 0) > + return ret; > + if ((ret = ff_inlink_consume_frame(ctx->inputs[1], &in[1])) > 0) { > + av_audio_fifo_write(s->fifo[1], (void **)in[1]->extended_data, > + in[1]->nb_samples); > + av_frame_free(&in[1]); > + } > + if (ret < 0) > + return ret;
Just to be sure all is explained correctly: With this patch, you are certainly enhancing the scheduling, but it is not taking full advantage of the new design: with activate(), all links have a frame FIFO with unlimited capacity (and plans to add options to manage that capacity globally). In this snippet of code, you move the frames from this FIFO into another FIFO built in the private context. In other words, you are nullifying the benefit of the link's built-in FIFO. A complete conversion to activate() would require working from the link's FIFO directly, and getting rid of the code with AVAudioFifo altogether. It is more work, and since it works that way it is fine to leave it for later and reap the easy benefits immediately. But I wanted to make sure you were aware of that. The same applies to af_sidechaincompress. Regards, -- Nicolas George
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel