[FFmpeg-devel] [PATCH v1 1/6] fftools/ffmpeg: use local variable with same contents directly
lance.lmwang at gmail.com
lance.lmwang at gmail.com
Wed May 6 02:30:43 EEST 2020
On Sun, Apr 26, 2020 at 05:49:17PM +0800, lance.lmwang at gmail.com wrote:
> From: Limin Wang <lance.lmwang at gmail.com>
>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
> fftools/ffmpeg.c | 31 ++++++++++++++++++-------------
> 1 file changed, 18 insertions(+), 13 deletions(-)
>
> diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
> index d896b14..d2b0e71 100644
> --- a/fftools/ffmpeg.c
> +++ b/fftools/ffmpeg.c
> @@ -501,32 +501,37 @@ static void ffmpeg_cleanup(int ret)
> FilterGraph *fg = filtergraphs[i];
> avfilter_graph_free(&fg->graph);
> for (j = 0; j < fg->nb_inputs; j++) {
> - while (av_fifo_size(fg->inputs[j]->frame_queue)) {
> + InputFilter *ifilter = fg->inputs[j];
> + struct InputStream *ist = ifilter->ist;
> +
> + while (av_fifo_size(ifilter->frame_queue)) {
> AVFrame *frame;
> - av_fifo_generic_read(fg->inputs[j]->frame_queue, &frame,
> + av_fifo_generic_read(ifilter->frame_queue, &frame,
> sizeof(frame), NULL);
> av_frame_free(&frame);
> }
> - av_fifo_freep(&fg->inputs[j]->frame_queue);
> - if (fg->inputs[j]->ist->sub2video.sub_queue) {
> - while (av_fifo_size(fg->inputs[j]->ist->sub2video.sub_queue)) {
> + av_fifo_freep(&ifilter->frame_queue);
> + if (ist->sub2video.sub_queue) {
> + while (av_fifo_size(ist->sub2video.sub_queue)) {
> AVSubtitle sub;
> - av_fifo_generic_read(fg->inputs[j]->ist->sub2video.sub_queue,
> + av_fifo_generic_read(ist->sub2video.sub_queue,
> &sub, sizeof(sub), NULL);
> avsubtitle_free(&sub);
> }
> - av_fifo_freep(&fg->inputs[j]->ist->sub2video.sub_queue);
> + av_fifo_freep(&ist->sub2video.sub_queue);
> }
> - av_buffer_unref(&fg->inputs[j]->hw_frames_ctx);
> - av_freep(&fg->inputs[j]->name);
> + av_buffer_unref(&ifilter->hw_frames_ctx);
> + av_freep(&ifilter->name);
> av_freep(&fg->inputs[j]);
> }
> av_freep(&fg->inputs);
> for (j = 0; j < fg->nb_outputs; j++) {
> - av_freep(&fg->outputs[j]->name);
> - av_freep(&fg->outputs[j]->formats);
> - av_freep(&fg->outputs[j]->channel_layouts);
> - av_freep(&fg->outputs[j]->sample_rates);
> + OutputFilter *ofilter = fg->outputs[j];
> +
> + av_freep(&ofilter->name);
> + av_freep(&ofilter->formats);
> + av_freep(&ofilter->channel_layouts);
> + av_freep(&ofilter->sample_rates);
> av_freep(&fg->outputs[j]);
> }
> av_freep(&fg->outputs);
> --
> 1.8.3.1
>
will apply patchset #1,#5,#6 tomorrow if no comments.
--
Thanks,
Limin Wang
More information about the ffmpeg-devel
mailing list