Browse Source

avconv: move flushing the queued frames to configure_filtergraph()

This is a more appropriate place for it, and will also be useful in the
following commit.
tags/n3.3
Anton Khirnov 8 years ago
parent
commit
d2e56cf753
2 changed files with 11 additions and 11 deletions
  1. +0
    -11
      avconv.c
  2. +11
    -0
      avconv_filter.c

+ 0
- 11
avconv.c View File

@@ -1231,17 +1231,6 @@ static int ifilter_send_frame(InputFilter *ifilter, AVFrame *frame)
av_log(NULL, AV_LOG_ERROR, "Error reinitializing filters!\n");
return ret;
}

for (i = 0; i < fg->nb_inputs; i++) {
while (av_fifo_size(fg->inputs[i]->frame_queue)) {
AVFrame *tmp;
av_fifo_generic_read(fg->inputs[i]->frame_queue, &tmp, sizeof(tmp), NULL);
ret = av_buffersrc_add_frame(fg->inputs[i]->filter, tmp);
av_frame_free(&tmp);
if (ret < 0)
return ret;
}
}
}

ret = av_buffersrc_add_frame(ifilter->filter, frame);


+ 11
- 0
avconv_filter.c View File

@@ -769,6 +769,17 @@ int configure_filtergraph(FilterGraph *fg)
ofilter->channel_layout = link->channel_layout;
}

for (i = 0; i < fg->nb_inputs; i++) {
while (av_fifo_size(fg->inputs[i]->frame_queue)) {
AVFrame *tmp;
av_fifo_generic_read(fg->inputs[i]->frame_queue, &tmp, sizeof(tmp), NULL);
ret = av_buffersrc_add_frame(fg->inputs[i]->filter, tmp);
av_frame_free(&tmp);
if (ret < 0)
return ret;
}
}

return 0;
}



Loading…
Cancel
Save