summaryrefslogtreecommitdiff
path: root/fftools/ffmpeg_demux.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2022-03-22 18:17:27 +0100
committerAnton Khirnov <anton@khirnov.net>2022-08-08 16:20:58 +0200
commita5e025e826789164569d2ff44a784cd3f953eaca (patch)
tree173f6e7eadf7e7428b349f519cd92480f4484a6c /fftools/ffmpeg_demux.c
parent61d9f34c70039f739bebf6870547edd9655002ec (diff)
fftools/ffmpeg: move handling corrupt packets to the input thread
Diffstat (limited to 'fftools/ffmpeg_demux.c')
-rw-r--r--fftools/ffmpeg_demux.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c
index 31b233c4f4..d15cee614d 100644
--- a/fftools/ffmpeg_demux.c
+++ b/fftools/ffmpeg_demux.c
@@ -165,6 +165,17 @@ static void *input_thread(void *arg)
continue;
}
+ if (pkt->flags & AV_PKT_FLAG_CORRUPT) {
+ av_log(NULL, exit_on_error ? AV_LOG_FATAL : AV_LOG_WARNING,
+ "%s: corrupt input packet in stream %d\n",
+ f->ctx->url, pkt->stream_index);
+ if (exit_on_error) {
+ av_packet_unref(pkt);
+ ret = AVERROR_INVALIDDATA;
+ break;
+ }
+ }
+
msg.pkt = av_packet_alloc();
if (!msg.pkt) {
av_packet_unref(pkt);