diff options
author | Anton Khirnov <anton@khirnov.net> | 2024-03-09 19:53:11 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2024-03-09 20:01:11 +0100 |
commit | e570b65cbd5acdeea5e94f918189bfae1f5186be (patch) | |
tree | 4db4c8483cbb503678985430b45613cc91054194 | |
parent | 64634e809f2e7b6c1a1ea3f6952a17c5915c3f22 (diff) |
fftools/ffmpeg_filter: don't forward EOF in close_output()
The caller does not need or expect it, and it can lead to terminating
filtering prematurely in case there is more than one output.
-rw-r--r-- | fftools/ffmpeg_filter.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 960393b943..7cd5415341 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2199,7 +2199,8 @@ static int close_output(OutputFilterPriv *ofp, FilterGraphThread *fgt) fgt->eof_out[ofp->index] = 1; - return sch_filter_send(fgp->sch, fgp->sch_idx, ofp->index, NULL); + ret = sch_filter_send(fgp->sch, fgp->sch_idx, ofp->index, NULL); + return (ret == AVERROR_EOF) ? 0 : ret; } static int fg_output_frame(OutputFilterPriv *ofp, FilterGraphThread *fgt, |