summaryrefslogtreecommitdiff
path: root/fftools
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2023-04-30 23:05:55 +0200
committerAnton Khirnov <anton@khirnov.net>2023-05-08 10:38:59 +0200
commita0174a235b08f1bc26c7aee25b385d2dd997f8db (patch)
tree985c8e320e39a56d22624b7407c0f2e79614b4f6 /fftools
parentdd1c67d5393303ad23ba8cb494ddb17a2c1a002b (diff)
downloadffmpeg-a0174a235b08f1bc26c7aee25b385d2dd997f8db.tar.gz
fftools/ffmpeg_filter: use InputFilterPriv.eof instead of InputFile.eof_reached
The two checks using eof_reached are testing whether more input can possibly appear on this filtergraph input. InputFilterPriv.eof is the more authoritative source for this information.
Diffstat (limited to 'fftools')
-rw-r--r--fftools/ffmpeg_filter.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c
index 634315fa34..aea951a2da 100644
--- a/fftools/ffmpeg_filter.c
+++ b/fftools/ffmpeg_filter.c
@@ -1620,7 +1620,6 @@ int fg_transcode_step(FilterGraph *graph, InputStream **best_ist)
{
int i, ret;
int nb_requests, nb_requests_max = 0;
- InputFilter *ifilter;
InputStream *ist;
if (!graph->graph && ifilter_has_all_input_formats(graph)) {
@@ -1637,7 +1636,8 @@ int fg_transcode_step(FilterGraph *graph, InputStream **best_ist)
if (!graph->graph) {
for (int i = 0; i < graph->nb_inputs; i++) {
InputFilter *ifilter = graph->inputs[i];
- if (!ifilter->ist->got_output && !input_files[ifilter->ist->file_index]->eof_reached) {
+ InputFilterPriv *ifp = ifp_from_ifilter(ifilter);
+ if (!ifilter->ist->got_output && !ifp->eof) {
*best_ist = ifilter->ist;
return 0;
}
@@ -1665,10 +1665,11 @@ int fg_transcode_step(FilterGraph *graph, InputStream **best_ist)
return ret;
for (i = 0; i < graph->nb_inputs; i++) {
- ifilter = graph->inputs[i];
+ InputFilter *ifilter = graph->inputs[i];
+ InputFilterPriv *ifp = ifp_from_ifilter(ifilter);
+
ist = ifilter->ist;
- if (input_files[ist->file_index]->eagain ||
- input_files[ist->file_index]->eof_reached)
+ if (input_files[ist->file_index]->eagain || ifp->eof)
continue;
nb_requests = av_buffersrc_get_nb_failed_requests(ifilter->filter);
if (nb_requests > nb_requests_max) {