summaryrefslogtreecommitdiff
path: root/libavcodec/profiles.c (plain)
blob: 30498efedfc2925da4633ba96c78b4a2fcd95b6e
1/*
2 * This file is part of FFmpeg.
3 *
4 * FFmpeg is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * FFmpeg is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with FFmpeg; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18
19#include "config.h"
20
21#include "avcodec.h"
22#include "profiles.h"
23
24#if !CONFIG_SMALL
25
26const AVProfile ff_aac_profiles[] = {
27 { FF_PROFILE_AAC_LOW, "LC" },
28 { FF_PROFILE_AAC_HE, "HE-AAC" },
29 { FF_PROFILE_AAC_HE_V2, "HE-AACv2" },
30 { FF_PROFILE_AAC_LD, "LD" },
31 { FF_PROFILE_AAC_ELD, "ELD" },
32 { FF_PROFILE_AAC_MAIN, "Main" },
33 { FF_PROFILE_AAC_LOW, "LC" },
34 { FF_PROFILE_AAC_SSR, "SSR" },
35 { FF_PROFILE_AAC_LTP, "LTP" },
36 { FF_PROFILE_UNKNOWN },
37};
38
39const AVProfile ff_dca_profiles[] = {
40 { FF_PROFILE_DTS, "DTS" },
41 { FF_PROFILE_DTS_ES, "DTS-ES" },
42 { FF_PROFILE_DTS_96_24, "DTS 96/24" },
43 { FF_PROFILE_DTS_HD_HRA, "DTS-HD HRA" },
44 { FF_PROFILE_DTS_HD_MA, "DTS-HD MA" },
45 { FF_PROFILE_DTS_EXPRESS, "DTS Express" },
46 { FF_PROFILE_UNKNOWN },
47};
48
49const AVProfile ff_dnxhd_profiles[] = {
50 { FF_PROFILE_DNXHD, "DNXHD"},
51 { FF_PROFILE_DNXHR_LB, "DNXHR LB"},
52 { FF_PROFILE_DNXHR_SQ, "DNXHR SQ"},
53 { FF_PROFILE_DNXHR_HQ, "DNXHR HQ" },
54 { FF_PROFILE_DNXHR_HQX, "DNXHR HQX"},
55 { FF_PROFILE_DNXHR_444, "DNXHR 444"},
56 { FF_PROFILE_UNKNOWN },
57};
58
59const AVProfile ff_h264_profiles[] = {
60 { FF_PROFILE_H264_BASELINE, "Baseline" },
61 { FF_PROFILE_H264_CONSTRAINED_BASELINE, "Constrained Baseline" },
62 { FF_PROFILE_H264_MAIN, "Main" },
63 { FF_PROFILE_H264_EXTENDED, "Extended" },
64 { FF_PROFILE_H264_HIGH, "High" },
65 { FF_PROFILE_H264_HIGH_10, "High 10" },
66 { FF_PROFILE_H264_HIGH_10_INTRA, "High 10 Intra" },
67 { FF_PROFILE_H264_HIGH_422, "High 4:2:2" },
68 { FF_PROFILE_H264_HIGH_422_INTRA, "High 4:2:2 Intra" },
69 { FF_PROFILE_H264_HIGH_444, "High 4:4:4" },
70 { FF_PROFILE_H264_HIGH_444_PREDICTIVE, "High 4:4:4 Predictive" },
71 { FF_PROFILE_H264_HIGH_444_INTRA, "High 4:4:4 Intra" },
72 { FF_PROFILE_H264_CAVLC_444, "CAVLC 4:4:4" },
73 { FF_PROFILE_H264_MULTIVIEW_HIGH, "Multiview High" },
74 { FF_PROFILE_H264_STEREO_HIGH, "Stereo High" },
75 { FF_PROFILE_UNKNOWN },
76};
77
78const AVProfile ff_hevc_profiles[] = {
79 { FF_PROFILE_HEVC_MAIN, "Main" },
80 { FF_PROFILE_HEVC_MAIN_10, "Main 10" },
81 { FF_PROFILE_HEVC_MAIN_STILL_PICTURE, "Main Still Picture" },
82 { FF_PROFILE_HEVC_REXT, "Rext" },
83 { FF_PROFILE_UNKNOWN },
84};
85
86const AVProfile ff_jpeg2000_profiles[] = {
87 { FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0, "JPEG 2000 codestream restriction 0" },
88 { FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1, "JPEG 2000 codestream restriction 1" },
89 { FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION, "JPEG 2000 no codestream restrictions" },
90 { FF_PROFILE_JPEG2000_DCINEMA_2K, "JPEG 2000 digital cinema 2K" },
91 { FF_PROFILE_JPEG2000_DCINEMA_4K, "JPEG 2000 digital cinema 4K" },
92 { FF_PROFILE_UNKNOWN },
93};
94
95const AVProfile ff_mpeg2_video_profiles[] = {
96 { FF_PROFILE_MPEG2_422, "4:2:2" },
97 { FF_PROFILE_MPEG2_HIGH, "High" },
98 { FF_PROFILE_MPEG2_SS, "Spatially Scalable" },
99 { FF_PROFILE_MPEG2_SNR_SCALABLE, "SNR Scalable" },
100 { FF_PROFILE_MPEG2_MAIN, "Main" },
101 { FF_PROFILE_MPEG2_SIMPLE, "Simple" },
102 { FF_PROFILE_RESERVED, "Reserved" },
103 { FF_PROFILE_RESERVED, "Reserved" },
104 { FF_PROFILE_UNKNOWN },
105};
106
107const AVProfile ff_mpeg4_video_profiles[] = {
108 { FF_PROFILE_MPEG4_SIMPLE, "Simple Profile" },
109 { FF_PROFILE_MPEG4_SIMPLE_SCALABLE, "Simple Scalable Profile" },
110 { FF_PROFILE_MPEG4_CORE, "Core Profile" },
111 { FF_PROFILE_MPEG4_MAIN, "Main Profile" },
112 { FF_PROFILE_MPEG4_N_BIT, "N-bit Profile" },
113 { FF_PROFILE_MPEG4_SCALABLE_TEXTURE, "Scalable Texture Profile" },
114 { FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION, "Simple Face Animation Profile" },
115 { FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE, "Basic Animated Texture Profile" },
116 { FF_PROFILE_MPEG4_HYBRID, "Hybrid Profile" },
117 { FF_PROFILE_MPEG4_ADVANCED_REAL_TIME, "Advanced Real Time Simple Profile" },
118 { FF_PROFILE_MPEG4_CORE_SCALABLE, "Code Scalable Profile" },
119 { FF_PROFILE_MPEG4_ADVANCED_CODING, "Advanced Coding Profile" },
120 { FF_PROFILE_MPEG4_ADVANCED_CORE, "Advanced Core Profile" },
121 { FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE, "Advanced Scalable Texture Profile" },
122 { FF_PROFILE_MPEG4_SIMPLE_STUDIO, "Simple Studio Profile" },
123 { FF_PROFILE_MPEG4_ADVANCED_SIMPLE, "Advanced Simple Profile" },
124 { FF_PROFILE_UNKNOWN },
125};
126
127const AVProfile ff_vc1_profiles[] = {
128 { FF_PROFILE_VC1_SIMPLE, "Simple" },
129 { FF_PROFILE_VC1_MAIN, "Main" },
130 { FF_PROFILE_VC1_COMPLEX, "Complex" },
131 { FF_PROFILE_VC1_ADVANCED, "Advanced" },
132 { FF_PROFILE_UNKNOWN },
133};
134
135const AVProfile ff_vp9_profiles[] = {
136 { FF_PROFILE_VP9_0, "Profile 0" },
137 { FF_PROFILE_VP9_1, "Profile 1" },
138 { FF_PROFILE_VP9_2, "Profile 2" },
139 { FF_PROFILE_VP9_3, "Profile 3" },
140 { FF_PROFILE_UNKNOWN },
141};
142
143#endif /* !CONFIG_SMALL */
144