diff options
author | Zhao Zhili <zhilizhao@tencent.com> | 2023-04-22 20:56:34 +0800 |
---|---|---|
committer | Zhao Zhili <zhilizhao@tencent.com> | 2023-04-23 21:23:11 +0800 |
commit | b56aca9b42411da444a0b267ea1dd183cbb4fbf7 (patch) | |
tree | 9e773149fd97386d8b2b67749fcdd9cd638f0be7 /fftools/ffmpeg_mux.c | |
parent | 7ecf1bff6d216b83b8634783fb9024452b63f2d1 (diff) | |
download | ffmpeg-b56aca9b42411da444a0b267ea1dd183cbb4fbf7.tar.gz |
fftools/ffmpeg_mux: fix reporting muxer EOF as error
Fix #10327.
Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
Diffstat (limited to 'fftools/ffmpeg_mux.c')
-rw-r--r-- | fftools/ffmpeg_mux.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/fftools/ffmpeg_mux.c b/fftools/ffmpeg_mux.c index a2e8873ad2..fddb783b00 100644 --- a/fftools/ffmpeg_mux.c +++ b/fftools/ffmpeg_mux.c @@ -214,9 +214,15 @@ static void *muxer_thread(void *arg) ost = of->streams[stream_idx]; ret = sync_queue_process(mux, ost, ret < 0 ? NULL : pkt, &stream_eof); av_packet_unref(pkt); - if (ret == AVERROR_EOF && stream_eof) - tq_receive_finish(mux->tq, stream_idx); - else if (ret < 0) { + if (ret == AVERROR_EOF) { + if (stream_eof) { + tq_receive_finish(mux->tq, stream_idx); + } else { + av_log(mux, AV_LOG_VERBOSE, "Muxer returned EOF\n"); + ret = 0; + break; + } + } else if (ret < 0) { av_log(mux, AV_LOG_ERROR, "Error muxing a packet\n"); break; } |