[FFmpeg-devel] [PATCH 2/2] ffmpeg: fix -stream_loop with multiple inputs
Marton Balint
cus at passwd.hu
Thu Jun 28 00:05:23 EEST 2018
The input thread need to be properly cleaned up and re-initalized before we can
start reading again in threaded mode. (threaded input reading is used when
there are mode than one input file).
Signed-off-by: Marton Balint <cus at passwd.hu>
---
fftools/ffmpeg.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index 8f94c5fff2..e2cd78fcd0 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -4251,7 +4251,7 @@ static int process_input(int file_index)
AVFormatContext *is;
InputStream *ist;
AVPacket pkt;
- int ret, i, j;
+ int ret, thread_ret, i, j;
int64_t duration;
int64_t pkt_dts;
@@ -4274,7 +4274,15 @@ static int process_input(int file_index)
avcodec_flush_buffers(avctx);
}
}
+#if HAVE_THREADS
+ free_input_thread(file_index);
+#endif
ret = seek_to_start(ifile, is);
+#if HAVE_THREADS
+ thread_ret = init_input_thread(file_index);
+ if (thread_ret < 0)
+ return thread_ret;
+#endif
if (ret < 0)
av_log(NULL, AV_LOG_WARNING, "Seek to start failed.\n");
else
--
2.16.4
More information about the ffmpeg-devel
mailing list