From bd6754aa796954aa5b95f11acc1a23e3abcfb948 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Sun, 13 Jul 2008 21:39:18 +0000
Subject: [PATCH] On EOF keep calling the decoders until they do not output
 anything anymore, instead of just once.

Originally committed as revision 14220 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 ffmpeg.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 48ce906ad41..4d77405677a 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1139,7 +1139,9 @@ static int output_packet(AVInputStream *ist, int ist_index,
 
     len = pkt->size;
     ptr = pkt->data;
-    while (len > 0) {
+
+    //while we have more to decode or while the decoder did output something on EOF
+    while (len > 0 || (!pkt && ist->next_pts != ist->pts)) {
     handle_eof:
         ist->pts= ist->next_pts;
 
-- 
GitLab