aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/h264.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2014-12-31 07:57:59 +0100
committerAnton Khirnov <anton@khirnov.net>2015-12-12 21:22:49 +0100
commit2c6811397bdf13d43ca206e48d6d6da9c2cd47c6 (patch)
tree75909934dcab62130bd60a14e9369ef6b78278a1 /libavcodec/h264.c
parentcdc9ce098e8d101b43b8f68dd35ba7226f4a728c (diff)
downloadffmpeg-2c6811397bdf13d43ca206e48d6d6da9c2cd47c6.tar.gz
lavc: add profiles to AVCodecDescriptor
The profiles are a property of the codec, so it makes sense to export them through AVCodecDescriptors, not just the codec implementations.
Diffstat (limited to 'libavcodec/h264.c')
-rw-r--r--libavcodec/h264.c20
1 files changed, 2 insertions, 18 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 6b12b303d7..0b5b6c2ce7 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -44,6 +44,7 @@
#include "mathops.h"
#include "me_cmp.h"
#include "mpegutils.h"
+#include "profiles.h"
#include "rectangle.h"
#include "svq3.h"
#include "thread.h"
@@ -1771,23 +1772,6 @@ static const AVClass h264_class = {
.version = LIBAVUTIL_VERSION_INT,
};
-static const AVProfile profiles[] = {
- { FF_PROFILE_H264_BASELINE, "Baseline" },
- { FF_PROFILE_H264_CONSTRAINED_BASELINE, "Constrained Baseline" },
- { FF_PROFILE_H264_MAIN, "Main" },
- { FF_PROFILE_H264_EXTENDED, "Extended" },
- { FF_PROFILE_H264_HIGH, "High" },
- { FF_PROFILE_H264_HIGH_10, "High 10" },
- { FF_PROFILE_H264_HIGH_10_INTRA, "High 10 Intra" },
- { FF_PROFILE_H264_HIGH_422, "High 4:2:2" },
- { FF_PROFILE_H264_HIGH_422_INTRA, "High 4:2:2 Intra" },
- { FF_PROFILE_H264_HIGH_444, "High 4:4:4" },
- { FF_PROFILE_H264_HIGH_444_PREDICTIVE, "High 4:4:4 Predictive" },
- { FF_PROFILE_H264_HIGH_444_INTRA, "High 4:4:4 Intra" },
- { FF_PROFILE_H264_CAVLC_444, "CAVLC 4:4:4" },
- { FF_PROFILE_UNKNOWN },
-};
-
AVCodec ff_h264_decoder = {
.name = "h264",
.long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
@@ -1804,6 +1788,6 @@ AVCodec ff_h264_decoder = {
.flush = flush_dpb,
.init_thread_copy = ONLY_IF_THREADS_ENABLED(decode_init_thread_copy),
.update_thread_context = ONLY_IF_THREADS_ENABLED(ff_h264_update_thread_context),
- .profiles = NULL_IF_CONFIG_SMALL(profiles),
+ .profiles = NULL_IF_CONFIG_SMALL(ff_h264_profiles),
.priv_class = &h264_class,
};