[FFmpeg-devel] [PATCH] ffmpeg: do not report EOF as an error.

Nicolas George nicolas.george at normalesup.org
Tue Apr 24 10:54:19 CEST 2012


Not all processing goes through filters,
so processing can continue even when
all filtergraphs have reached EOF on all sinks.

Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
---
 ffmpeg.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index d1ed3c6..069ada8 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -3621,7 +3621,8 @@ static int transcode(void)
         }
 
         // fprintf(stderr,"read #%d.%d size=%d\n", ist->file_index, ist->st->index, pkt.size);
-        if (output_packet(ist, &pkt) < 0 || poll_filters() < 0) {
+        if (output_packet(ist, &pkt) < 0 ||
+            ((ret = poll_filters()) < 0 && ret != AVERROR_EOF)) {
             av_log(NULL, AV_LOG_ERROR, "Error while decoding stream #%d:%d\n",
                    ist->file_index, ist->st->index);
             if (exit_on_error)
-- 
1.7.2.5



More information about the ffmpeg-devel mailing list