[FFmpeg-cvslog] ffmpeg/flush_encoders: dont mux packets once ost->finished has been set

Michael Niedermayer git at videolan.org
Sat Jan 18 00:06:47 CET 2014


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Jan 15 17:07:26 2014 +0100| [5c459504f697ef59a3f218efa4dc2bfc31d307da] | committer: Michael Niedermayer

ffmpeg/flush_encoders: dont mux packets once ost->finished has been set

Fixes muxing frames after av_interleaved_write_frame() failure

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5c459504f697ef59a3f218efa4dc2bfc31d307da
---

 ffmpeg.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ffmpeg.c b/ffmpeg.c
index f4aa975..6b90878 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1389,6 +1389,10 @@ static void flush_encoders(void)
                     stop_encoding = 1;
                     break;
                 }
+                if (ost->finished > 1) {
+                    av_free_packet(&pkt);
+                    continue;
+                }
                 if (pkt.pts != AV_NOPTS_VALUE)
                     pkt.pts = av_rescale_q(pkt.pts, enc->time_base, ost->st->time_base);
                 if (pkt.dts != AV_NOPTS_VALUE)



More information about the ffmpeg-cvslog mailing list