diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index c1be40bd85..31d3555c25 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -2435,3 +2435,9 @@ const AVCodecDescriptor *avcodec_descriptor_get_by_name(const char *name) return desc; return NULL; } + +enum AVMediaType avcodec_get_type(enum AVCodecID codec_id) +{ + const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id); + return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN; +} diff --git a/libavcodec/utils.c b/libavcodec/utils.c index a94e4a6058..1721c09129 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -2320,20 +2320,6 @@ void ff_thread_await_progress(ThreadFrame *f, int progress, int field) #endif -enum AVMediaType avcodec_get_type(enum AVCodecID codec_id) -{ - if (codec_id <= AV_CODEC_ID_NONE) - return AVMEDIA_TYPE_UNKNOWN; - else if (codec_id < AV_CODEC_ID_FIRST_AUDIO) - return AVMEDIA_TYPE_VIDEO; - else if (codec_id < AV_CODEC_ID_FIRST_SUBTITLE) - return AVMEDIA_TYPE_AUDIO; - else if (codec_id < AV_CODEC_ID_FIRST_UNKNOWN) - return AVMEDIA_TYPE_SUBTITLE; - - return AVMEDIA_TYPE_UNKNOWN; -} - int avcodec_is_open(AVCodecContext *s) { return !!s->internal;