summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2024-01-11 12:19:37 +0100
committerAnton Khirnov <anton@khirnov.net>2024-01-30 09:52:00 +0100
commitb2a0a2e6f531afa75c59c917c53b8ccee07d3655 (patch)
treef6f60c60c3aa98f08774b800706662429413ebcd
parent217b8757db6280fae49e8c3cbbf3cdb7fcb02607 (diff)
fftools/ffmpeg: move decoder existence check to a more appropriate place
-rw-r--r--fftools/ffmpeg_dec.c7
-rw-r--r--fftools/ffmpeg_demux.c7
2 files changed, 7 insertions, 7 deletions
diff --git a/fftools/ffmpeg_dec.c b/fftools/ffmpeg_dec.c
index 1c5030d933..c80b6eddea 100644
--- a/fftools/ffmpeg_dec.c
+++ b/fftools/ffmpeg_dec.c
@@ -898,13 +898,6 @@ int dec_open(InputStream *ist, Scheduler *sch, unsigned sch_idx,
const AVCodec *codec = ist->dec;
int ret;
- if (!codec) {
- av_log(ist, AV_LOG_ERROR,
- "Decoding requested, but no decoder found for: %s\n",
- avcodec_get_name(ist->par->codec_id));
- return AVERROR(EINVAL);
- }
-
ret = dec_alloc(&ist->decoder);
if (ret < 0)
return ret;
diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c
index 5a58bb735a..11db118b72 100644
--- a/fftools/ffmpeg_demux.c
+++ b/fftools/ffmpeg_demux.c
@@ -866,6 +866,13 @@ static int ist_use(InputStream *ist, int decoding_needed)
return AVERROR(EINVAL);
}
+ if (decoding_needed && !ist->dec) {
+ av_log(ist, AV_LOG_ERROR,
+ "Decoding requested, but no decoder found for: %s\n",
+ avcodec_get_name(ist->par->codec_id));
+ return AVERROR(EINVAL);
+ }
+
if (ds->sch_idx_stream < 0) {
ret = sch_add_demux_stream(d->sch, d->f.index);
if (ret < 0)