Message ID | 1587894562-30207-1-git-send-email-lance.lmwang@gmail.com |
---|---|
State | Accepted |
Commit | 683e421bcff273f2be378d85e15e36fa36b3a8e8 |
Headers | show |
Series | [FFmpeg-devel,v1,1/6] fftools/ffmpeg: use local variable with same contents directly | expand |
Context | Check | Description |
---|---|---|
andriy/default | pending | |
andriy/make | success | Make finished |
andriy/make_fate | success | Make fate finished |
On Sun, Apr 26, 2020 at 05:49:17PM +0800, lance.lmwang@gmail.com wrote: > From: Limin Wang <lance.lmwang@gmail.com> > > Signed-off-by: Limin Wang <lance.lmwang@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.
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);