vdpau: deprecate av_vdpau_get_profile()
[libav.git] / libavcodec / codec_desc.c
CommitLineData
c223d799
AK
1/*
2 * This file is part of Libav.
3 *
4 * Libav 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 * Libav 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 Libav; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18
91e59fea
AK
19#include <string.h>
20
1d9c2dc8 21#include "libavutil/common.h"
c223d799 22#include "libavutil/internal.h"
19e30a58
DB
23#include "avcodec.h"
24#include "version.h"
c223d799
AK
25
26static const AVCodecDescriptor codec_descriptors[] = {
27 /* video codecs */
28 {
29 .id = AV_CODEC_ID_MPEG1VIDEO,
30 .type = AVMEDIA_TYPE_VIDEO,
31 .name = "mpeg1video",
32 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
c5fca017 33 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
34 },
35 {
36 .id = AV_CODEC_ID_MPEG2VIDEO,
37 .type = AVMEDIA_TYPE_VIDEO,
38 .name = "mpeg2video",
4b169321 39 .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),
c5fca017 40 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799 41 },
19e30a58 42#if FF_API_XVMC
c223d799
AK
43 {
44 .id = AV_CODEC_ID_MPEG2VIDEO_XVMC,
45 .type = AVMEDIA_TYPE_VIDEO,
46 .name = "mpegvideo_xvmc",
47 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1/2 video XvMC (X-Video Motion Compensation)"),
a2318326 48 .props = AV_CODEC_PROP_LOSSY,
c223d799 49 },
19e30a58 50#endif /* FF_API_XVMC */
c223d799
AK
51 {
52 .id = AV_CODEC_ID_H261,
53 .type = AVMEDIA_TYPE_VIDEO,
54 .name = "h261",
55 .long_name = NULL_IF_CONFIG_SMALL("H.261"),
a2318326 56 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
57 },
58 {
59 .id = AV_CODEC_ID_H263,
60 .type = AVMEDIA_TYPE_VIDEO,
61 .name = "h263",
62 .long_name = NULL_IF_CONFIG_SMALL("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),
c5fca017 63 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
64 },
65 {
66 .id = AV_CODEC_ID_RV10,
67 .type = AVMEDIA_TYPE_VIDEO,
68 .name = "rv10",
69 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
a2318326 70 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
71 },
72 {
73 .id = AV_CODEC_ID_RV20,
74 .type = AVMEDIA_TYPE_VIDEO,
75 .name = "rv20",
4b169321 76 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
c5fca017 77 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
78 },
79 {
80 .id = AV_CODEC_ID_MJPEG,
81 .type = AVMEDIA_TYPE_VIDEO,
82 .name = "mjpeg",
83 .long_name = NULL_IF_CONFIG_SMALL("Motion JPEG"),
a2318326 84 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
85 },
86 {
87 .id = AV_CODEC_ID_MJPEGB,
88 .type = AVMEDIA_TYPE_VIDEO,
89 .name = "mjpegb",
90 .long_name = NULL_IF_CONFIG_SMALL("Apple MJPEG-B"),
a2318326 91 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
92 },
93 {
c223d799
AK
94 .id = AV_CODEC_ID_MPEG4,
95 .type = AVMEDIA_TYPE_VIDEO,
96 .name = "mpeg4",
97 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),
c5fca017 98 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
99 },
100 {
101 .id = AV_CODEC_ID_RAWVIDEO,
102 .type = AVMEDIA_TYPE_VIDEO,
103 .name = "rawvideo",
104 .long_name = NULL_IF_CONFIG_SMALL("raw video"),
a2318326 105 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
106 },
107 {
108 .id = AV_CODEC_ID_MSMPEG4V1,
109 .type = AVMEDIA_TYPE_VIDEO,
110 .name = "msmpeg4v1",
111 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 1"),
a2318326 112 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
113 },
114 {
115 .id = AV_CODEC_ID_MSMPEG4V2,
116 .type = AVMEDIA_TYPE_VIDEO,
117 .name = "msmpeg4v2",
118 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"),
a2318326 119 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
120 },
121 {
122 .id = AV_CODEC_ID_MSMPEG4V3,
123 .type = AVMEDIA_TYPE_VIDEO,
124 .name = "msmpeg4v3",
125 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"),
a2318326 126 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
127 },
128 {
129 .id = AV_CODEC_ID_WMV1,
130 .type = AVMEDIA_TYPE_VIDEO,
131 .name = "wmv1",
132 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"),
a2318326 133 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
134 },
135 {
136 .id = AV_CODEC_ID_WMV2,
137 .type = AVMEDIA_TYPE_VIDEO,
138 .name = "wmv2",
139 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"),
a2318326 140 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
141 },
142 {
143 .id = AV_CODEC_ID_H263P,
144 .type = AVMEDIA_TYPE_VIDEO,
145 .name = "h263p",
146 .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 2"),
c5fca017 147 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
148 },
149 {
150 .id = AV_CODEC_ID_H263I,
151 .type = AVMEDIA_TYPE_VIDEO,
152 .name = "h263i",
153 .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),
c5fca017 154 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
155 },
156 {
157 .id = AV_CODEC_ID_FLV1,
158 .type = AVMEDIA_TYPE_VIDEO,
159 .name = "flv1",
160 .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"),
a2318326 161 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
162 },
163 {
164 .id = AV_CODEC_ID_SVQ1,
165 .type = AVMEDIA_TYPE_VIDEO,
166 .name = "svq1",
167 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1"),
a2318326 168 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
169 },
170 {
171 .id = AV_CODEC_ID_SVQ3,
172 .type = AVMEDIA_TYPE_VIDEO,
173 .name = "svq3",
174 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3"),
c5fca017 175 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
176 },
177 {
178 .id = AV_CODEC_ID_DVVIDEO,
179 .type = AVMEDIA_TYPE_VIDEO,
180 .name = "dvvideo",
181 .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),
a2318326 182 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
183 },
184 {
185 .id = AV_CODEC_ID_HUFFYUV,
186 .type = AVMEDIA_TYPE_VIDEO,
187 .name = "huffyuv",
188 .long_name = NULL_IF_CONFIG_SMALL("HuffYUV"),
a2318326 189 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
190 },
191 {
192 .id = AV_CODEC_ID_CYUV,
193 .type = AVMEDIA_TYPE_VIDEO,
194 .name = "cyuv",
195 .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"),
a2318326 196 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
197 },
198 {
199 .id = AV_CODEC_ID_H264,
200 .type = AVMEDIA_TYPE_VIDEO,
201 .name = "h264",
202 .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
c5fca017 203 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
c223d799
AK
204 },
205 {
206 .id = AV_CODEC_ID_INDEO3,
207 .type = AVMEDIA_TYPE_VIDEO,
208 .name = "indeo3",
209 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 3"),
a2318326 210 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
211 },
212 {
213 .id = AV_CODEC_ID_VP3,
214 .type = AVMEDIA_TYPE_VIDEO,
215 .name = "vp3",
216 .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),
a2318326 217 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
218 },
219 {
220 .id = AV_CODEC_ID_THEORA,
221 .type = AVMEDIA_TYPE_VIDEO,
222 .name = "theora",
223 .long_name = NULL_IF_CONFIG_SMALL("Theora"),
a2318326 224 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
225 },
226 {
227 .id = AV_CODEC_ID_ASV1,
228 .type = AVMEDIA_TYPE_VIDEO,
229 .name = "asv1",
230 .long_name = NULL_IF_CONFIG_SMALL("ASUS V1"),
a2318326 231 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
232 },
233 {
234 .id = AV_CODEC_ID_ASV2,
235 .type = AVMEDIA_TYPE_VIDEO,
236 .name = "asv2",
237 .long_name = NULL_IF_CONFIG_SMALL("ASUS V2"),
a2318326 238 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
239 },
240 {
241 .id = AV_CODEC_ID_FFV1,
242 .type = AVMEDIA_TYPE_VIDEO,
243 .name = "ffv1",
244 .long_name = NULL_IF_CONFIG_SMALL("FFmpeg video codec #1"),
a2318326 245 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
246 },
247 {
248 .id = AV_CODEC_ID_4XM,
249 .type = AVMEDIA_TYPE_VIDEO,
250 .name = "4xm",
251 .long_name = NULL_IF_CONFIG_SMALL("4X Movie"),
a2318326 252 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
253 },
254 {
255 .id = AV_CODEC_ID_VCR1,
256 .type = AVMEDIA_TYPE_VIDEO,
257 .name = "vcr1",
258 .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),
a2318326 259 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
260 },
261 {
262 .id = AV_CODEC_ID_CLJR,
263 .type = AVMEDIA_TYPE_VIDEO,
264 .name = "cljr",
265 .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"),
a2318326 266 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
267 },
268 {
269 .id = AV_CODEC_ID_MDEC,
270 .type = AVMEDIA_TYPE_VIDEO,
271 .name = "mdec",
272 .long_name = NULL_IF_CONFIG_SMALL("Sony PlayStation MDEC (Motion DECoder)"),
a2318326 273 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
274 },
275 {
276 .id = AV_CODEC_ID_ROQ,
277 .type = AVMEDIA_TYPE_VIDEO,
278 .name = "roq",
279 .long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),
a2318326 280 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
281 },
282 {
283 .id = AV_CODEC_ID_INTERPLAY_VIDEO,
284 .type = AVMEDIA_TYPE_VIDEO,
285 .name = "interplayvideo",
286 .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE video"),
a2318326 287 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
288 },
289 {
290 .id = AV_CODEC_ID_XAN_WC3,
291 .type = AVMEDIA_TYPE_VIDEO,
292 .name = "xan_wc3",
293 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III / Xan"),
a2318326 294 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
295 },
296 {
297 .id = AV_CODEC_ID_XAN_WC4,
298 .type = AVMEDIA_TYPE_VIDEO,
299 .name = "xan_wc4",
300 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander IV / Xxan"),
a2318326 301 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
302 },
303 {
304 .id = AV_CODEC_ID_RPZA,
305 .type = AVMEDIA_TYPE_VIDEO,
306 .name = "rpza",
307 .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),
a2318326 308 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
309 },
310 {
311 .id = AV_CODEC_ID_CINEPAK,
312 .type = AVMEDIA_TYPE_VIDEO,
313 .name = "cinepak",
314 .long_name = NULL_IF_CONFIG_SMALL("Cinepak"),
a2318326 315 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
316 },
317 {
318 .id = AV_CODEC_ID_WS_VQA,
319 .type = AVMEDIA_TYPE_VIDEO,
320 .name = "ws_vqa",
321 .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA (Vector Quantized Animation) video"),
a2318326 322 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
323 },
324 {
325 .id = AV_CODEC_ID_MSRLE,
326 .type = AVMEDIA_TYPE_VIDEO,
327 .name = "msrle",
328 .long_name = NULL_IF_CONFIG_SMALL("Microsoft RLE"),
a2318326 329 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
330 },
331 {
332 .id = AV_CODEC_ID_MSVIDEO1,
333 .type = AVMEDIA_TYPE_VIDEO,
334 .name = "msvideo1",
335 .long_name = NULL_IF_CONFIG_SMALL("Microsoft Video 1"),
a2318326 336 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
337 },
338 {
339 .id = AV_CODEC_ID_IDCIN,
340 .type = AVMEDIA_TYPE_VIDEO,
341 .name = "idcin",
342 .long_name = NULL_IF_CONFIG_SMALL("id Quake II CIN video"),
a2318326 343 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
344 },
345 {
346 .id = AV_CODEC_ID_8BPS,
347 .type = AVMEDIA_TYPE_VIDEO,
348 .name = "8bps",
349 .long_name = NULL_IF_CONFIG_SMALL("QuickTime 8BPS video"),
a2318326 350 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
351 },
352 {
353 .id = AV_CODEC_ID_SMC,
354 .type = AVMEDIA_TYPE_VIDEO,
355 .name = "smc",
356 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Graphics (SMC)"),
a2318326 357 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
358 },
359 {
360 .id = AV_CODEC_ID_FLIC,
361 .type = AVMEDIA_TYPE_VIDEO,
362 .name = "flic",
363 .long_name = NULL_IF_CONFIG_SMALL("Autodesk Animator Flic video"),
a2318326 364 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
365 },
366 {
367 .id = AV_CODEC_ID_TRUEMOTION1,
368 .type = AVMEDIA_TYPE_VIDEO,
369 .name = "truemotion1",
370 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 1.0"),
a2318326 371 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
372 },
373 {
374 .id = AV_CODEC_ID_VMDVIDEO,
375 .type = AVMEDIA_TYPE_VIDEO,
376 .name = "vmdvideo",
377 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD video"),
a2318326 378 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
379 },
380 {
381 .id = AV_CODEC_ID_MSZH,
382 .type = AVMEDIA_TYPE_VIDEO,
383 .name = "mszh",
384 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) MSZH"),
a2318326 385 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
386 },
387 {
388 .id = AV_CODEC_ID_ZLIB,
389 .type = AVMEDIA_TYPE_VIDEO,
390 .name = "zlib",
391 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),
a2318326 392 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
393 },
394 {
395 .id = AV_CODEC_ID_QTRLE,
396 .type = AVMEDIA_TYPE_VIDEO,
397 .name = "qtrle",
398 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Animation (RLE) video"),
a2318326 399 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
400 },
401 {
c223d799
AK
402 .id = AV_CODEC_ID_TSCC,
403 .type = AVMEDIA_TYPE_VIDEO,
404 .name = "tscc",
405 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Capture Codec"),
a2318326 406 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
407 },
408 {
409 .id = AV_CODEC_ID_ULTI,
410 .type = AVMEDIA_TYPE_VIDEO,
411 .name = "ulti",
412 .long_name = NULL_IF_CONFIG_SMALL("IBM UltiMotion"),
a2318326 413 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
414 },
415 {
416 .id = AV_CODEC_ID_QDRAW,
417 .type = AVMEDIA_TYPE_VIDEO,
418 .name = "qdraw",
419 .long_name = NULL_IF_CONFIG_SMALL("Apple QuickDraw"),
a2318326 420 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
421 },
422 {
423 .id = AV_CODEC_ID_VIXL,
424 .type = AVMEDIA_TYPE_VIDEO,
425 .name = "vixl",
426 .long_name = NULL_IF_CONFIG_SMALL("Miro VideoXL"),
a2318326 427 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
428 },
429 {
430 .id = AV_CODEC_ID_QPEG,
431 .type = AVMEDIA_TYPE_VIDEO,
432 .name = "qpeg",
433 .long_name = NULL_IF_CONFIG_SMALL("Q-team QPEG"),
a2318326 434 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
435 },
436 {
c223d799
AK
437 .id = AV_CODEC_ID_FFVHUFF,
438 .type = AVMEDIA_TYPE_VIDEO,
439 .name = "ffvhuff",
440 .long_name = NULL_IF_CONFIG_SMALL("Huffyuv FFmpeg variant"),
a2318326 441 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
442 },
443 {
444 .id = AV_CODEC_ID_RV30,
445 .type = AVMEDIA_TYPE_VIDEO,
446 .name = "rv30",
447 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
c5fca017 448 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
449 },
450 {
451 .id = AV_CODEC_ID_RV40,
452 .type = AVMEDIA_TYPE_VIDEO,
453 .name = "rv40",
454 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 4.0"),
c5fca017 455 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
456 },
457 {
458 .id = AV_CODEC_ID_VC1,
459 .type = AVMEDIA_TYPE_VIDEO,
460 .name = "vc1",
461 .long_name = NULL_IF_CONFIG_SMALL("SMPTE VC-1"),
c5fca017 462 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
463 },
464 {
465 .id = AV_CODEC_ID_WMV3,
466 .type = AVMEDIA_TYPE_VIDEO,
467 .name = "wmv3",
468 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9"),
c5fca017 469 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
470 },
471 {
472 .id = AV_CODEC_ID_LOCO,
473 .type = AVMEDIA_TYPE_VIDEO,
474 .name = "loco",
475 .long_name = NULL_IF_CONFIG_SMALL("LOCO"),
a2318326 476 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
477 },
478 {
479 .id = AV_CODEC_ID_WNV1,
480 .type = AVMEDIA_TYPE_VIDEO,
481 .name = "wnv1",
482 .long_name = NULL_IF_CONFIG_SMALL("Winnov WNV1"),
a2318326 483 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
484 },
485 {
486 .id = AV_CODEC_ID_AASC,
487 .type = AVMEDIA_TYPE_VIDEO,
488 .name = "aasc",
489 .long_name = NULL_IF_CONFIG_SMALL("Autodesk RLE"),
a2318326 490 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
491 },
492 {
493 .id = AV_CODEC_ID_INDEO2,
494 .type = AVMEDIA_TYPE_VIDEO,
495 .name = "indeo2",
496 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 2"),
a2318326 497 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
498 },
499 {
500 .id = AV_CODEC_ID_FRAPS,
501 .type = AVMEDIA_TYPE_VIDEO,
502 .name = "fraps",
503 .long_name = NULL_IF_CONFIG_SMALL("Fraps"),
a2318326 504 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
505 },
506 {
507 .id = AV_CODEC_ID_TRUEMOTION2,
508 .type = AVMEDIA_TYPE_VIDEO,
509 .name = "truemotion2",
510 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0"),
a2318326 511 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
512 },
513 {
514 .id = AV_CODEC_ID_BMP,
515 .type = AVMEDIA_TYPE_VIDEO,
516 .name = "bmp",
517 .long_name = NULL_IF_CONFIG_SMALL("BMP (Windows and OS/2 bitmap)"),
a2318326 518 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
519 },
520 {
521 .id = AV_CODEC_ID_CSCD,
522 .type = AVMEDIA_TYPE_VIDEO,
523 .name = "cscd",
524 .long_name = NULL_IF_CONFIG_SMALL("CamStudio"),
a2318326 525 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
526 },
527 {
528 .id = AV_CODEC_ID_MMVIDEO,
529 .type = AVMEDIA_TYPE_VIDEO,
530 .name = "mmvideo",
531 .long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM Video"),
a2318326 532 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
533 },
534 {
535 .id = AV_CODEC_ID_ZMBV,
536 .type = AVMEDIA_TYPE_VIDEO,
537 .name = "zmbv",
538 .long_name = NULL_IF_CONFIG_SMALL("Zip Motion Blocks Video"),
a2318326 539 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
540 },
541 {
542 .id = AV_CODEC_ID_AVS,
543 .type = AVMEDIA_TYPE_VIDEO,
544 .name = "avs",
545 .long_name = NULL_IF_CONFIG_SMALL("AVS (Audio Video Standard) video"),
a2318326 546 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
547 },
548 {
549 .id = AV_CODEC_ID_SMACKVIDEO,
550 .type = AVMEDIA_TYPE_VIDEO,
551 .name = "smackvideo",
552 .long_name = NULL_IF_CONFIG_SMALL("Smacker video"),
a2318326 553 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
554 },
555 {
556 .id = AV_CODEC_ID_NUV,
557 .type = AVMEDIA_TYPE_VIDEO,
558 .name = "nuv",
559 .long_name = NULL_IF_CONFIG_SMALL("NuppelVideo/RTJPEG"),
a2318326 560 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
561 },
562 {
563 .id = AV_CODEC_ID_KMVC,
564 .type = AVMEDIA_TYPE_VIDEO,
565 .name = "kmvc",
566 .long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
a2318326 567 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
568 },
569 {
570 .id = AV_CODEC_ID_FLASHSV,
571 .type = AVMEDIA_TYPE_VIDEO,
572 .name = "flashsv",
573 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v1"),
a2318326 574 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
575 },
576 {
577 .id = AV_CODEC_ID_CAVS,
578 .type = AVMEDIA_TYPE_VIDEO,
579 .name = "cavs",
580 .long_name = NULL_IF_CONFIG_SMALL("Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)"),
c5fca017 581 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
c223d799
AK
582 },
583 {
584 .id = AV_CODEC_ID_JPEG2000,
585 .type = AVMEDIA_TYPE_VIDEO,
586 .name = "jpeg2000",
587 .long_name = NULL_IF_CONFIG_SMALL("JPEG 2000"),
a2318326
AK
588 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
589 AV_CODEC_PROP_LOSSLESS,
c223d799
AK
590 },
591 {
592 .id = AV_CODEC_ID_VMNC,
593 .type = AVMEDIA_TYPE_VIDEO,
594 .name = "vmnc",
595 .long_name = NULL_IF_CONFIG_SMALL("VMware Screen Codec / VMware Video"),
a2318326 596 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
597 },
598 {
599 .id = AV_CODEC_ID_VP5,
600 .type = AVMEDIA_TYPE_VIDEO,
601 .name = "vp5",
602 .long_name = NULL_IF_CONFIG_SMALL("On2 VP5"),
a2318326 603 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
604 },
605 {
606 .id = AV_CODEC_ID_VP6,
607 .type = AVMEDIA_TYPE_VIDEO,
608 .name = "vp6",
609 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6"),
a2318326 610 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
611 },
612 {
613 .id = AV_CODEC_ID_VP6F,
614 .type = AVMEDIA_TYPE_VIDEO,
615 .name = "vp6f",
616 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version)"),
a2318326 617 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
618 },
619 {
c223d799
AK
620 .id = AV_CODEC_ID_DSICINVIDEO,
621 .type = AVMEDIA_TYPE_VIDEO,
622 .name = "dsicinvideo",
623 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN video"),
a2318326 624 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
625 },
626 {
627 .id = AV_CODEC_ID_TIERTEXSEQVIDEO,
628 .type = AVMEDIA_TYPE_VIDEO,
629 .name = "tiertexseqvideo",
630 .long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ video"),
a2318326 631 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
632 },
633 {
c223d799
AK
634 .id = AV_CODEC_ID_DXA,
635 .type = AVMEDIA_TYPE_VIDEO,
636 .name = "dxa",
637 .long_name = NULL_IF_CONFIG_SMALL("Feeble Files/ScummVM DXA"),
a2318326 638 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
639 },
640 {
641 .id = AV_CODEC_ID_DNXHD,
642 .type = AVMEDIA_TYPE_VIDEO,
643 .name = "dnxhd",
644 .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"),
a2318326 645 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
646 },
647 {
648 .id = AV_CODEC_ID_THP,
649 .type = AVMEDIA_TYPE_VIDEO,
650 .name = "thp",
651 .long_name = NULL_IF_CONFIG_SMALL("Nintendo Gamecube THP video"),
a2318326 652 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
653 },
654 {
c223d799
AK
655 .id = AV_CODEC_ID_C93,
656 .type = AVMEDIA_TYPE_VIDEO,
657 .name = "c93",
658 .long_name = NULL_IF_CONFIG_SMALL("Interplay C93"),
a2318326 659 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
660 },
661 {
662 .id = AV_CODEC_ID_BETHSOFTVID,
663 .type = AVMEDIA_TYPE_VIDEO,
664 .name = "bethsoftvid",
665 .long_name = NULL_IF_CONFIG_SMALL("Bethesda VID video"),
a2318326 666 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
667 },
668 {
c223d799
AK
669 .id = AV_CODEC_ID_VP6A,
670 .type = AVMEDIA_TYPE_VIDEO,
671 .name = "vp6a",
672 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version, with alpha channel)"),
a2318326 673 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
674 },
675 {
676 .id = AV_CODEC_ID_AMV,
677 .type = AVMEDIA_TYPE_VIDEO,
678 .name = "amv",
679 .long_name = NULL_IF_CONFIG_SMALL("AMV Video"),
a2318326 680 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
681 },
682 {
683 .id = AV_CODEC_ID_VB,
684 .type = AVMEDIA_TYPE_VIDEO,
685 .name = "vb",
686 .long_name = NULL_IF_CONFIG_SMALL("Beam Software VB"),
a2318326 687 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
688 },
689 {
c223d799
AK
690 .id = AV_CODEC_ID_INDEO4,
691 .type = AVMEDIA_TYPE_VIDEO,
692 .name = "indeo4",
693 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 4"),
a2318326 694 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
695 },
696 {
697 .id = AV_CODEC_ID_INDEO5,
698 .type = AVMEDIA_TYPE_VIDEO,
699 .name = "indeo5",
700 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 5"),
a2318326 701 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
702 },
703 {
704 .id = AV_CODEC_ID_MIMIC,
705 .type = AVMEDIA_TYPE_VIDEO,
706 .name = "mimic",
707 .long_name = NULL_IF_CONFIG_SMALL("Mimic"),
a2318326 708 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
709 },
710 {
711 .id = AV_CODEC_ID_RL2,
712 .type = AVMEDIA_TYPE_VIDEO,
713 .name = "rl2",
714 .long_name = NULL_IF_CONFIG_SMALL("RL2 video"),
a2318326 715 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
716 },
717 {
718 .id = AV_CODEC_ID_ESCAPE124,
719 .type = AVMEDIA_TYPE_VIDEO,
720 .name = "escape124",
721 .long_name = NULL_IF_CONFIG_SMALL("Escape 124"),
a2318326 722 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
723 },
724 {
725 .id = AV_CODEC_ID_DIRAC,
726 .type = AVMEDIA_TYPE_VIDEO,
727 .name = "dirac",
728 .long_name = NULL_IF_CONFIG_SMALL("Dirac"),
c5fca017 729 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
c223d799
AK
730 },
731 {
732 .id = AV_CODEC_ID_BFI,
733 .type = AVMEDIA_TYPE_VIDEO,
734 .name = "bfi",
735 .long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"),
a2318326 736 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
737 },
738 {
739 .id = AV_CODEC_ID_CMV,
740 .type = AVMEDIA_TYPE_VIDEO,
741 .name = "cmv",
742 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts CMV video"),
a2318326 743 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
744 },
745 {
746 .id = AV_CODEC_ID_MOTIONPIXELS,
747 .type = AVMEDIA_TYPE_VIDEO,
748 .name = "motionpixels",
749 .long_name = NULL_IF_CONFIG_SMALL("Motion Pixels video"),
a2318326 750 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
751 },
752 {
753 .id = AV_CODEC_ID_TGV,
754 .type = AVMEDIA_TYPE_VIDEO,
755 .name = "tgv",
756 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGV video"),
a2318326 757 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
758 },
759 {
760 .id = AV_CODEC_ID_TGQ,
761 .type = AVMEDIA_TYPE_VIDEO,
762 .name = "tgq",
763 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGQ video"),
a2318326 764 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
765 },
766 {
767 .id = AV_CODEC_ID_TQI,
768 .type = AVMEDIA_TYPE_VIDEO,
769 .name = "tqi",
770 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TQI video"),
a2318326 771 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
772 },
773 {
774 .id = AV_CODEC_ID_AURA,
775 .type = AVMEDIA_TYPE_VIDEO,
776 .name = "aura",
777 .long_name = NULL_IF_CONFIG_SMALL("Auravision AURA"),
a2318326 778 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
779 },
780 {
781 .id = AV_CODEC_ID_AURA2,
782 .type = AVMEDIA_TYPE_VIDEO,
783 .name = "aura2",
784 .long_name = NULL_IF_CONFIG_SMALL("Auravision Aura 2"),
a2318326 785 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
786 },
787 {
788 .id = AV_CODEC_ID_V210X,
789 .type = AVMEDIA_TYPE_VIDEO,
790 .name = "v210x",
d42ea067 791 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
a2318326 792 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
793 },
794 {
795 .id = AV_CODEC_ID_TMV,
796 .type = AVMEDIA_TYPE_VIDEO,
797 .name = "tmv",
d42ea067 798 .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"),
a2318326 799 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
800 },
801 {
802 .id = AV_CODEC_ID_V210,
803 .type = AVMEDIA_TYPE_VIDEO,
804 .name = "v210",
805 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
a2318326 806 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
807 },
808 {
c223d799
AK
809 .id = AV_CODEC_ID_MAD,
810 .type = AVMEDIA_TYPE_VIDEO,
811 .name = "mad",
a2318326
AK
812 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Madcow Video"),
813 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
814 },
815 {
816 .id = AV_CODEC_ID_FRWU,
817 .type = AVMEDIA_TYPE_VIDEO,
818 .name = "frwu",
819 .long_name = NULL_IF_CONFIG_SMALL("Forward Uncompressed"),
a2318326 820 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
821 },
822 {
823 .id = AV_CODEC_ID_FLASHSV2,
824 .type = AVMEDIA_TYPE_VIDEO,
825 .name = "flashsv2",
826 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v2"),
a2318326 827 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
828 },
829 {
830 .id = AV_CODEC_ID_CDGRAPHICS,
831 .type = AVMEDIA_TYPE_VIDEO,
832 .name = "cdgraphics",
833 .long_name = NULL_IF_CONFIG_SMALL("CD Graphics video"),
a2318326 834 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
835 },
836 {
837 .id = AV_CODEC_ID_R210,
838 .type = AVMEDIA_TYPE_VIDEO,
839 .name = "r210",
840 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed RGB 10-bit"),
a2318326 841 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
842 },
843 {
844 .id = AV_CODEC_ID_ANM,
845 .type = AVMEDIA_TYPE_VIDEO,
846 .name = "anm",
847 .long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"),
a2318326 848 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
849 },
850 {
851 .id = AV_CODEC_ID_BINKVIDEO,
852 .type = AVMEDIA_TYPE_VIDEO,
853 .name = "binkvideo",
854 .long_name = NULL_IF_CONFIG_SMALL("Bink video"),
a2318326 855 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
856 },
857 {
858 .id = AV_CODEC_ID_IFF_ILBM,
859 .type = AVMEDIA_TYPE_VIDEO,
860 .name = "iff_ilbm",
861 .long_name = NULL_IF_CONFIG_SMALL("IFF ILBM"),
a2318326 862 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
863 },
864 {
865 .id = AV_CODEC_ID_IFF_BYTERUN1,
866 .type = AVMEDIA_TYPE_VIDEO,
867 .name = "iff_byterun1",
868 .long_name = NULL_IF_CONFIG_SMALL("IFF ByteRun1"),
a2318326 869 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
870 },
871 {
872 .id = AV_CODEC_ID_KGV1,
873 .type = AVMEDIA_TYPE_VIDEO,
874 .name = "kgv1",
875 .long_name = NULL_IF_CONFIG_SMALL("Kega Game Video"),
a2318326 876 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
877 },
878 {
879 .id = AV_CODEC_ID_YOP,
880 .type = AVMEDIA_TYPE_VIDEO,
881 .name = "yop",
882 .long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP Video"),
a2318326 883 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
884 },
885 {
886 .id = AV_CODEC_ID_VP8,
887 .type = AVMEDIA_TYPE_VIDEO,
888 .name = "vp8",
889 .long_name = NULL_IF_CONFIG_SMALL("On2 VP8"),
a2318326 890 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
891 },
892 {
dab1f543
LB
893 .id = AV_CODEC_ID_VP9,
894 .type = AVMEDIA_TYPE_VIDEO,
895 .name = "vp9",
896 .long_name = NULL_IF_CONFIG_SMALL("Google VP9"),
897 .props = AV_CODEC_PROP_LOSSY,
898 },
899 {
c223d799
AK
900 .id = AV_CODEC_ID_PICTOR,
901 .type = AVMEDIA_TYPE_VIDEO,
902 .name = "pictor",
903 .long_name = NULL_IF_CONFIG_SMALL("Pictor/PC Paint"),
a2318326 904 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
905 },
906 {
c223d799
AK
907 .id = AV_CODEC_ID_A64_MULTI,
908 .type = AVMEDIA_TYPE_VIDEO,
909 .name = "a64_multi",
910 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64"),
a2318326 911 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
912 },
913 {
914 .id = AV_CODEC_ID_A64_MULTI5,
915 .type = AVMEDIA_TYPE_VIDEO,
916 .name = "a64_multi5",
917 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64, extended with 5th color (colram)"),
a2318326 918 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
919 },
920 {
921 .id = AV_CODEC_ID_R10K,
922 .type = AVMEDIA_TYPE_VIDEO,
923 .name = "r10k",
924 .long_name = NULL_IF_CONFIG_SMALL("AJA Kona 10-bit RGB Codec"),
a2318326 925 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
926 },
927 {
86a04326
PR
928 .id = AV_CODEC_ID_MVC1,
929 .type = AVMEDIA_TYPE_VIDEO,
930 .name = "mvc1",
931 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 1"),
932 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
933 },
934 {
935 .id = AV_CODEC_ID_MVC2,
936 .type = AVMEDIA_TYPE_VIDEO,
937 .name = "mvc2",
938 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 2"),
939 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
940 },
941 {
c223d799
AK
942 .id = AV_CODEC_ID_MXPEG,
943 .type = AVMEDIA_TYPE_VIDEO,
944 .name = "mxpeg",
945 .long_name = NULL_IF_CONFIG_SMALL("Mobotix MxPEG video"),
a2318326 946 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
947 },
948 {
949 .id = AV_CODEC_ID_LAGARITH,
950 .type = AVMEDIA_TYPE_VIDEO,
951 .name = "lagarith",
952 .long_name = NULL_IF_CONFIG_SMALL("Lagarith lossless"),
a2318326 953 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
954 },
955 {
956 .id = AV_CODEC_ID_PRORES,
957 .type = AVMEDIA_TYPE_VIDEO,
958 .name = "prores",
959 .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
a2318326 960 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
961 },
962 {
963 .id = AV_CODEC_ID_JV,
964 .type = AVMEDIA_TYPE_VIDEO,
965 .name = "jv",
966 .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"),
a2318326 967 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
c223d799
AK
968 },
969 {
970 .id = AV_CODEC_ID_DFA,
971 .type = AVMEDIA_TYPE_VIDEO,
972 .name = "dfa",
973 .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"),
a2318326 974 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
975 },
976 {
c223d799
AK
977 .id = AV_CODEC_ID_UTVIDEO,
978 .type = AVMEDIA_TYPE_VIDEO,
979 .name = "utvideo",
980 .long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
a2318326 981 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
982 },
983 {
984 .id = AV_CODEC_ID_BMV_VIDEO,
985 .type = AVMEDIA_TYPE_VIDEO,
986 .name = "bmv_video",
987 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV video"),
a2318326 988 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
989 },
990 {
991 .id = AV_CODEC_ID_VBLE,
992 .type = AVMEDIA_TYPE_VIDEO,
993 .name = "vble",
994 .long_name = NULL_IF_CONFIG_SMALL("VBLE Lossless Codec"),
a2318326 995 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
996 },
997 {
998 .id = AV_CODEC_ID_DXTORY,
999 .type = AVMEDIA_TYPE_VIDEO,
1000 .name = "dxtory",
1001 .long_name = NULL_IF_CONFIG_SMALL("Dxtory"),
a2318326 1002 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1003 },
1004 {
1005 .id = AV_CODEC_ID_V410,
1006 .type = AVMEDIA_TYPE_VIDEO,
1007 .name = "v410",
1008 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:4:4 10-bit"),
a2318326 1009 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1010 },
1011 {
c223d799
AK
1012 .id = AV_CODEC_ID_CDXL,
1013 .type = AVMEDIA_TYPE_VIDEO,
1014 .name = "cdxl",
1015 .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"),
a2318326 1016 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1017 },
1018 {
c223d799
AK
1019 .id = AV_CODEC_ID_ZEROCODEC,
1020 .type = AVMEDIA_TYPE_VIDEO,
1021 .name = "zerocodec",
1022 .long_name = NULL_IF_CONFIG_SMALL("ZeroCodec Lossless Video"),
a2318326 1023 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1024 },
1025 {
1026 .id = AV_CODEC_ID_MSS1,
1027 .type = AVMEDIA_TYPE_VIDEO,
1028 .name = "mss1",
1029 .long_name = NULL_IF_CONFIG_SMALL("MS Screen 1"),
a2318326 1030 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1031 },
1032 {
1033 .id = AV_CODEC_ID_MSA1,
1034 .type = AVMEDIA_TYPE_VIDEO,
1035 .name = "msa1",
1036 .long_name = NULL_IF_CONFIG_SMALL("MS ATC Screen"),
a2318326 1037 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1038 },
1039 {
1040 .id = AV_CODEC_ID_TSCC2,
1041 .type = AVMEDIA_TYPE_VIDEO,
1042 .name = "tscc2",
1043 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Codec 2"),
a2318326 1044 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1045 },
1046 {
1047 .id = AV_CODEC_ID_MTS2,
1048 .type = AVMEDIA_TYPE_VIDEO,
1049 .name = "mts2",
1050 .long_name = NULL_IF_CONFIG_SMALL("MS Expression Encoder Screen"),
a2318326 1051 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1052 },
1053 {
1054 .id = AV_CODEC_ID_CLLC,
1055 .type = AVMEDIA_TYPE_VIDEO,
1056 .name = "cllc",
1057 .long_name = NULL_IF_CONFIG_SMALL("Canopus Lossless Codec"),
a2318326 1058 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
c223d799 1059 },
ee769c6a
AD
1060 {
1061 .id = AV_CODEC_ID_MSS2,
1062 .type = AVMEDIA_TYPE_VIDEO,
1063 .name = "mss2",
1064 .long_name = NULL_IF_CONFIG_SMALL("MS Windows Media Video V9 Screen"),
1065 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1066 },
1232a164
KS
1067 {
1068 .id = AV_CODEC_ID_AIC,
1069 .type = AVMEDIA_TYPE_VIDEO,
1070 .name = "aic",
1071 .long_name = NULL_IF_CONFIG_SMALL("Apple Intermediate Codec"),
1072 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1073 },
350914fc
EF
1074 {
1075 .id = AV_CODEC_ID_ESCAPE130,
1076 .type = AVMEDIA_TYPE_VIDEO,
1077 .name = "escape130",
1078 .long_name = NULL_IF_CONFIG_SMALL("Escape 130"),
1079 .props = AV_CODEC_PROP_LOSSY,
1080 },
2d66a58c
KS
1081 {
1082 .id = AV_CODEC_ID_G2M,
1083 .type = AVMEDIA_TYPE_VIDEO,
1084 .name = "g2m",
1085 .long_name = NULL_IF_CONFIG_SMALL("Go2Meeting"),
1086 .props = AV_CODEC_PROP_LOSSY,
1087 },
c4bfa098 1088 {
9af7a852
DK
1089 .id = AV_CODEC_ID_HNM4_VIDEO,
1090 .type = AVMEDIA_TYPE_VIDEO,
1091 .name = "hnm4video",
1092 .long_name = NULL_IF_CONFIG_SMALL("HNM 4 video"),
1093 .props = AV_CODEC_PROP_LOSSY,
1094 },
064698d3
GM
1095 {
1096 .id = AV_CODEC_ID_HEVC,
1097 .type = AVMEDIA_TYPE_VIDEO,
1098 .name = "hevc",
1099 .long_name = NULL_IF_CONFIG_SMALL("HEVC (High Efficiency Video Coding)"),
c5fca017 1100 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
064698d3 1101 },
cde7df25
KS
1102 {
1103 .id = AV_CODEC_ID_FIC,
1104 .type = AVMEDIA_TYPE_VIDEO,
1105 .name = "fic",
1106 .long_name = NULL_IF_CONFIG_SMALL("Mirillis FIC"),
1107 .props = AV_CODEC_PROP_LOSSY,
1108 },
70daeacd
PM
1109 {
1110 .id = AV_CODEC_ID_PAF_VIDEO,
1111 .type = AVMEDIA_TYPE_VIDEO,
1112 .name = "paf_video",
1113 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Video"),
1114 .props = AV_CODEC_PROP_LOSSY,
1115 },
ac4b32df
PR
1116 {
1117 .id = AV_CODEC_ID_VP7,
1118 .type = AVMEDIA_TYPE_VIDEO,
1119 .name = "vp7",
1120 .long_name = NULL_IF_CONFIG_SMALL("On2 VP7"),
1121 .props = AV_CODEC_PROP_LOSSY,
1122 },
a420ccd4
PM
1123 {
1124 .id = AV_CODEC_ID_SANM,
1125 .type = AVMEDIA_TYPE_VIDEO,
1126 .name = "sanm",
1127 .long_name = NULL_IF_CONFIG_SMALL("LucasArts SANM video"),
1128 .props = AV_CODEC_PROP_LOSSY,
1129 },
07761294
PR
1130 {
1131 .id = AV_CODEC_ID_SGIRLE,
1132 .type = AVMEDIA_TYPE_VIDEO,
1133 .name = "sgirle",
1134 .long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
1135 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1136 },
35c6ce76
VG
1137 {
1138 .id = AV_CODEC_ID_HQX,
1139 .type = AVMEDIA_TYPE_VIDEO,
1140 .name = "hqx",
1141 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQX"),
1142 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1143 },
22526c1f
VG
1144 {
1145 .id = AV_CODEC_ID_HQ_HQA,
1146 .type = AVMEDIA_TYPE_VIDEO,
1147 .name = "hq_hqa",
1148 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQ/HQA"),
1149 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1150 },
7ca3e520
VG
1151 {
1152 .id = AV_CODEC_ID_HAP,
1153 .type = AVMEDIA_TYPE_VIDEO,
1154 .name = "hap",
1155 .long_name = NULL_IF_CONFIG_SMALL("Vidvox Hap decoder"),
1156 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1157 },
3b8e8952
VG
1158 {
1159 .id = AV_CODEC_ID_DXV,
1160 .type = AVMEDIA_TYPE_VIDEO,
1161 .name = "dxv",
1162 .long_name = NULL_IF_CONFIG_SMALL("Resolume DXV"),
1163 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1164 },
c223d799 1165
f2097792
VG
1166 /* image codecs */
1167 {
e50f5d3c
VG
1168 .id = AV_CODEC_ID_ALIAS_PIX,
1169 .type = AVMEDIA_TYPE_VIDEO,
1170 .name = "alias_pix",
1171 .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"),
1172 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1173 },
1174 {
f2097792
VG
1175 .id = AV_CODEC_ID_ANSI,
1176 .type = AVMEDIA_TYPE_VIDEO,
1177 .name = "ansi",
1178 .long_name = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
1179 .props = AV_CODEC_PROP_LOSSY,
1180 },
1181 {
ae17878f
AN
1182 .id = AV_CODEC_ID_BRENDER_PIX,
1183 .type = AVMEDIA_TYPE_VIDEO,
1184 .name = "brender_pix",
1185 .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"),
1186 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1187 },
1188 {
5c018ee1
VG
1189 .id = AV_CODEC_ID_DDS,
1190 .type = AVMEDIA_TYPE_VIDEO,
1191 .name = "dds",
1192 .long_name = NULL_IF_CONFIG_SMALL("DirectDraw Surface image decoder"),
1193 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1194 AV_CODEC_PROP_LOSSLESS,
1195 },
1196 {
f2097792
VG
1197 .id = AV_CODEC_ID_DPX,
1198 .type = AVMEDIA_TYPE_VIDEO,
1199 .name = "dpx",
1200 .long_name = NULL_IF_CONFIG_SMALL("DPX image"),
ca36aa9e 1201 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
f2097792
VG
1202 },
1203 {
38389058
JC
1204 .id = AV_CODEC_ID_EXR,
1205 .type = AVMEDIA_TYPE_VIDEO,
1206 .name = "exr",
1207 .long_name = NULL_IF_CONFIG_SMALL("OpenEXR image"),
1208 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1209 AV_CODEC_PROP_LOSSLESS,
1210 },
1211 {
f2097792
VG
1212 .id = AV_CODEC_ID_GIF,
1213 .type = AVMEDIA_TYPE_VIDEO,
1214 .name = "gif",
1215 .long_name = NULL_IF_CONFIG_SMALL("GIF (Graphics Interchange Format)"),
1216 .props = AV_CODEC_PROP_LOSSLESS,
1217 },
1218 {
1219 .id = AV_CODEC_ID_JPEGLS,
1220 .type = AVMEDIA_TYPE_VIDEO,
1221 .name = "jpegls",
1222 .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),
1223 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1224 AV_CODEC_PROP_LOSSLESS,
1225 },
1226 {
1227 .id = AV_CODEC_ID_LJPEG,
1228 .type = AVMEDIA_TYPE_VIDEO,
1229 .name = "ljpeg",
1230 .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
1231 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1232 },
1233 {
1234 .id = AV_CODEC_ID_PAM,
1235 .type = AVMEDIA_TYPE_VIDEO,
1236 .name = "pam",
1237 .long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
1238 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1239 },
1240 {
1241 .id = AV_CODEC_ID_PBM,
1242 .type = AVMEDIA_TYPE_VIDEO,
1243 .name = "pbm",
1244 .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
1245 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1246 },
1247 {
1248 .id = AV_CODEC_ID_PCX,
1249 .type = AVMEDIA_TYPE_VIDEO,
1250 .name = "pcx",
1251 .long_name = NULL_IF_CONFIG_SMALL("PC Paintbrush PCX image"),
1252 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1253 },
1254 {
1255 .id = AV_CODEC_ID_PGM,
1256 .type = AVMEDIA_TYPE_VIDEO,
1257 .name = "pgm",
1258 .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
1259 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1260 },
1261 {
1262 .id = AV_CODEC_ID_PGMYUV,
1263 .type = AVMEDIA_TYPE_VIDEO,
1264 .name = "pgmyuv",
1265 .long_name = NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
1266 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1267 },
1268 {
1269 .id = AV_CODEC_ID_PNG,
1270 .type = AVMEDIA_TYPE_VIDEO,
1271 .name = "png",
1272 .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),
1273 .props = AV_CODEC_PROP_LOSSLESS,
1274 },
1275 {
1276 .id = AV_CODEC_ID_PPM,
1277 .type = AVMEDIA_TYPE_VIDEO,
1278 .name = "ppm",
1279 .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
1280 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1281 },
1282 {
1283 .id = AV_CODEC_ID_PTX,
1284 .type = AVMEDIA_TYPE_VIDEO,
1285 .name = "ptx",
1286 .long_name = NULL_IF_CONFIG_SMALL("V.Flash PTX image"),
1287 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1288 },
1289 {
1290 .id = AV_CODEC_ID_SGI,
1291 .type = AVMEDIA_TYPE_VIDEO,
1292 .name = "sgi",
1293 .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
ca36aa9e 1294 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
f2097792
VG
1295 },
1296 {
1297 .id = AV_CODEC_ID_SP5X,
1298 .type = AVMEDIA_TYPE_VIDEO,
1299 .name = "sp5x",
1300 .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),
1301 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1302 },
1303 {
1304 .id = AV_CODEC_ID_SUNRAST,
1305 .type = AVMEDIA_TYPE_VIDEO,
1306 .name = "sunrast",
1307 .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
1308 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1309 },
1310 {
1311 .id = AV_CODEC_ID_TARGA,
1312 .type = AVMEDIA_TYPE_VIDEO,
1313 .name = "targa",
1314 .long_name = NULL_IF_CONFIG_SMALL("Truevision Targa image"),
1315 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1316 },
1317 {
247e370e
VG
1318 .id = AV_CODEC_ID_TDSC,
1319 .type = AVMEDIA_TYPE_VIDEO,
1320 .name = "tdsc",
1321 .long_name = NULL_IF_CONFIG_SMALL("TDSC"),
1322 .props = AV_CODEC_PROP_LOSSY,
1323 },
1324 {
f2097792
VG
1325 .id = AV_CODEC_ID_TIFF,
1326 .type = AVMEDIA_TYPE_VIDEO,
1327 .name = "tiff",
1328 .long_name = NULL_IF_CONFIG_SMALL("TIFF image"),
1329 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1330 },
1331 {
1332 .id = AV_CODEC_ID_TXD,
1333 .type = AVMEDIA_TYPE_VIDEO,
1334 .name = "txd",
1335 .long_name = NULL_IF_CONFIG_SMALL("Renderware TXD (TeXture Dictionary) image"),
1336 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1337 },
1338 {
1339 .id = AV_CODEC_ID_VC1IMAGE,
1340 .type = AVMEDIA_TYPE_VIDEO,
1341 .name = "vc1image",
1342 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image v2"),
1343 .props = AV_CODEC_PROP_LOSSY,
1344 },
1345 {
1346 .id = AV_CODEC_ID_WEBP,
1347 .type = AVMEDIA_TYPE_VIDEO,
1348 .name = "webp",
1349 .long_name = NULL_IF_CONFIG_SMALL("WebP"),
1350 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1351 AV_CODEC_PROP_LOSSLESS,
1352 },
1353 {
1354 .id = AV_CODEC_ID_WMV3IMAGE,
1355 .type = AVMEDIA_TYPE_VIDEO,
1356 .name = "wmv3image",
1357 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image"),
1358 .props = AV_CODEC_PROP_LOSSY,
1359 },
1360 {
1361 .id = AV_CODEC_ID_XBM,
1362 .type = AVMEDIA_TYPE_VIDEO,
1363 .name = "xbm",
1364 .long_name = NULL_IF_CONFIG_SMALL("XBM (X BitMap) image"),
1365 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1366 },
1367 {
1368 .id = AV_CODEC_ID_XWD,
1369 .type = AVMEDIA_TYPE_VIDEO,
1370 .name = "xwd",
1371 .long_name = NULL_IF_CONFIG_SMALL("XWD (X Window Dump) image"),
1372 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1373 },
1374
c223d799
AK
1375 /* various PCM "codecs" */
1376 {
1377 .id = AV_CODEC_ID_PCM_S16LE,
1378 .type = AVMEDIA_TYPE_AUDIO,
1379 .name = "pcm_s16le",
1380 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
a2318326 1381 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1382 },
1383 {
1384 .id = AV_CODEC_ID_PCM_S16BE,
1385 .type = AVMEDIA_TYPE_AUDIO,
1386 .name = "pcm_s16be",
1387 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
a2318326 1388 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1389 },
1390 {
1391 .id = AV_CODEC_ID_PCM_U16LE,
1392 .type = AVMEDIA_TYPE_AUDIO,
1393 .name = "pcm_u16le",
1394 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
a2318326 1395 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1396 },
1397 {
1398 .id = AV_CODEC_ID_PCM_U16BE,
1399 .type = AVMEDIA_TYPE_AUDIO,
1400 .name = "pcm_u16be",
1401 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
a2318326 1402 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1403 },
1404 {
1405 .id = AV_CODEC_ID_PCM_S8,
1406 .type = AVMEDIA_TYPE_AUDIO,
1407 .name = "pcm_s8",
1408 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
a2318326 1409 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1410 },
1411 {
1412 .id = AV_CODEC_ID_PCM_U8,
1413 .type = AVMEDIA_TYPE_AUDIO,
1414 .name = "pcm_u8",
1415 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
a2318326 1416 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1417 },
1418 {
1419 .id = AV_CODEC_ID_PCM_MULAW,
1420 .type = AVMEDIA_TYPE_AUDIO,
1421 .name = "pcm_mulaw",
1422 .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law"),
1423 },
1424 {
1425 .id = AV_CODEC_ID_PCM_ALAW,
1426 .type = AVMEDIA_TYPE_AUDIO,
1427 .name = "pcm_alaw",
1428 .long_name = NULL_IF_CONFIG_SMALL("PCM A-law"),
1429 },
1430 {
1431 .id = AV_CODEC_ID_PCM_S32LE,
1432 .type = AVMEDIA_TYPE_AUDIO,
1433 .name = "pcm_s32le",
1434 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
a2318326 1435 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1436 },
1437 {
1438 .id = AV_CODEC_ID_PCM_S32BE,
1439 .type = AVMEDIA_TYPE_AUDIO,
1440 .name = "pcm_s32be",
1441 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
a2318326 1442 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1443 },
1444 {
1445 .id = AV_CODEC_ID_PCM_U32LE,
1446 .type = AVMEDIA_TYPE_AUDIO,
1447 .name = "pcm_u32le",
1448 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
a2318326 1449 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1450 },
1451 {
1452 .id = AV_CODEC_ID_PCM_U32BE,
1453 .type = AVMEDIA_TYPE_AUDIO,
1454 .name = "pcm_u32be",
1455 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
a2318326 1456 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1457 },
1458 {
1459 .id = AV_CODEC_ID_PCM_S24LE,
1460 .type = AVMEDIA_TYPE_AUDIO,
1461 .name = "pcm_s24le",
1462 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
a2318326 1463 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1464 },
1465 {
1466 .id = AV_CODEC_ID_PCM_S24BE,
1467 .type = AVMEDIA_TYPE_AUDIO,
1468 .name = "pcm_s24be",
1469 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
a2318326 1470 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1471 },
1472 {
1473 .id = AV_CODEC_ID_PCM_U24LE,
1474 .type = AVMEDIA_TYPE_AUDIO,
1475 .name = "pcm_u24le",
1476 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
a2318326 1477 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1478 },
1479 {
1480 .id = AV_CODEC_ID_PCM_U24BE,
1481 .type = AVMEDIA_TYPE_AUDIO,
1482 .name = "pcm_u24be",
1483 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
a2318326 1484 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1485 },
1486 {
1487 .id = AV_CODEC_ID_PCM_S24DAUD,
1488 .type = AVMEDIA_TYPE_AUDIO,
1489 .name = "pcm_s24daud",
1490 .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
a2318326 1491 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1492 },
1493 {
1494 .id = AV_CODEC_ID_PCM_ZORK,
1495 .type = AVMEDIA_TYPE_AUDIO,
1496 .name = "pcm_zork",
1497 .long_name = NULL_IF_CONFIG_SMALL("PCM Zork"),
a2318326 1498 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1499 },
1500 {
5a79bf02
PM
1501 .id = AV_CODEC_ID_PCM_S16BE_PLANAR,
1502 .type = AVMEDIA_TYPE_AUDIO,
1503 .name = "pcm_s16be_planar",
1504 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
1505 .props = AV_CODEC_PROP_LOSSLESS,
1506 },
1507 {
c223d799
AK
1508 .id = AV_CODEC_ID_PCM_S16LE_PLANAR,
1509 .type = AVMEDIA_TYPE_AUDIO,
1510 .name = "pcm_s16le_planar",
1511 .long_name = NULL_IF_CONFIG_SMALL("PCM 16-bit little-endian planar"),
a2318326 1512 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1513 },
1514 {
7e52080c
PM
1515 .id = AV_CODEC_ID_PCM_S24LE_PLANAR,
1516 .type = AVMEDIA_TYPE_AUDIO,
1517 .name = "pcm_s24le_planar",
1518 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
1519 .props = AV_CODEC_PROP_LOSSLESS,
1520 },
1521 {
1522 .id = AV_CODEC_ID_PCM_S32LE_PLANAR,
1523 .type = AVMEDIA_TYPE_AUDIO,
1524 .name = "pcm_s32le_planar",
1525 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
1526 .props = AV_CODEC_PROP_LOSSLESS,
1527 },
1528 {
c223d799
AK
1529 .id = AV_CODEC_ID_PCM_DVD,
1530 .type = AVMEDIA_TYPE_AUDIO,
1531 .name = "pcm_dvd",
1532 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20|24-bit big-endian"),
a2318326 1533 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1534 },
1535 {
1536 .id = AV_CODEC_ID_PCM_F32BE,
1537 .type = AVMEDIA_TYPE_AUDIO,
1538 .name = "pcm_f32be",
1539 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
a2318326 1540 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1541 },
1542 {
1543 .id = AV_CODEC_ID_PCM_F32LE,
1544 .type = AVMEDIA_TYPE_AUDIO,
1545 .name = "pcm_f32le",
1546 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
a2318326 1547 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1548 },
1549 {
1550 .id = AV_CODEC_ID_PCM_F64BE,
1551 .type = AVMEDIA_TYPE_AUDIO,
1552 .name = "pcm_f64be",
1553 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
a2318326 1554 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1555 },
1556 {
1557 .id = AV_CODEC_ID_PCM_F64LE,
1558 .type = AVMEDIA_TYPE_AUDIO,
1559 .name = "pcm_f64le",
1560 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
a2318326 1561 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1562 },
1563 {
1564 .id = AV_CODEC_ID_PCM_BLURAY,
1565 .type = AVMEDIA_TYPE_AUDIO,
1566 .name = "pcm_bluray",
1567 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
a2318326 1568 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1569 },
1570 {
1571 .id = AV_CODEC_ID_PCM_LXF,
1572 .type = AVMEDIA_TYPE_AUDIO,
1573 .name = "pcm_lxf",
1574 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
a2318326 1575 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1576 },
1577 {
1578 .id = AV_CODEC_ID_S302M,
1579 .type = AVMEDIA_TYPE_AUDIO,
1580 .name = "s302m",
1581 .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
a2318326 1582 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1583 },
1584 {
1585 .id = AV_CODEC_ID_PCM_S8_PLANAR,
1586 .type = AVMEDIA_TYPE_AUDIO,
1587 .name = "pcm_s8_planar",
1588 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
a2318326 1589 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1590 },
1591
1592 /* various ADPCM codecs */
1593 {
1594 .id = AV_CODEC_ID_ADPCM_IMA_QT,
1595 .type = AVMEDIA_TYPE_AUDIO,
1596 .name = "adpcm_ima_qt",
1597 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
a2318326 1598 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1599 },
1600 {
1601 .id = AV_CODEC_ID_ADPCM_IMA_WAV,
1602 .type = AVMEDIA_TYPE_AUDIO,
1603 .name = "adpcm_ima_wav",
1604 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
a2318326 1605 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1606 },
1607 {
1608 .id = AV_CODEC_ID_ADPCM_IMA_DK3,
1609 .type = AVMEDIA_TYPE_AUDIO,
1610 .name = "adpcm_ima_dk3",
1611 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
a2318326 1612 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1613 },
1614 {
1615 .id = AV_CODEC_ID_ADPCM_IMA_DK4,
1616 .type = AVMEDIA_TYPE_AUDIO,
1617 .name = "adpcm_ima_dk4",
1618 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
a2318326 1619 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1620 },
1621 {
1622 .id = AV_CODEC_ID_ADPCM_IMA_WS,
1623 .type = AVMEDIA_TYPE_AUDIO,
1624 .name = "adpcm_ima_ws",
1625 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
a2318326 1626 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1627 },
1628 {
1629 .id = AV_CODEC_ID_ADPCM_IMA_SMJPEG,
1630 .type = AVMEDIA_TYPE_AUDIO,
1631 .name = "adpcm_ima_smjpeg",
1632 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
a2318326 1633 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1634 },
1635 {
1636 .id = AV_CODEC_ID_ADPCM_MS,
1637 .type = AVMEDIA_TYPE_AUDIO,
1638 .name = "adpcm_ms",
1639 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
a2318326 1640 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1641 },
1642 {
1643 .id = AV_CODEC_ID_ADPCM_4XM,
1644 .type = AVMEDIA_TYPE_AUDIO,
1645 .name = "adpcm_4xm",
1646 .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
a2318326 1647 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1648 },
1649 {
1650 .id = AV_CODEC_ID_ADPCM_XA,
1651 .type = AVMEDIA_TYPE_AUDIO,
1652 .name = "adpcm_xa",
1653 .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
a2318326 1654 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1655 },
1656 {
1657 .id = AV_CODEC_ID_ADPCM_ADX,
1658 .type = AVMEDIA_TYPE_AUDIO,
1659 .name = "adpcm_adx",
1660 .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
a2318326 1661 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1662 },
1663 {
1664 .id = AV_CODEC_ID_ADPCM_EA,
1665 .type = AVMEDIA_TYPE_AUDIO,
1666 .name = "adpcm_ea",
1667 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
a2318326 1668 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1669 },
1670 {
1671 .id = AV_CODEC_ID_ADPCM_G726,
1672 .type = AVMEDIA_TYPE_AUDIO,
1673 .name = "adpcm_g726",
1674 .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
a2318326 1675 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1676 },
1677 {
1678 .id = AV_CODEC_ID_ADPCM_CT,
1679 .type = AVMEDIA_TYPE_AUDIO,
1680 .name = "adpcm_ct",
1681 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
a2318326 1682 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1683 },
1684 {
1685 .id = AV_CODEC_ID_ADPCM_SWF,
1686 .type = AVMEDIA_TYPE_AUDIO,
1687 .name = "adpcm_swf",
1688 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
a2318326 1689 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1690 },
1691 {
1692 .id = AV_CODEC_ID_ADPCM_YAMAHA,
1693 .type = AVMEDIA_TYPE_AUDIO,
1694 .name = "adpcm_yamaha",
1695 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
a2318326 1696 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1697 },
1698 {
1699 .id = AV_CODEC_ID_ADPCM_SBPRO_4,
1700 .type = AVMEDIA_TYPE_AUDIO,
1701 .name = "adpcm_sbpro_4",
1702 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
a2318326 1703 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1704 },
1705 {
1706 .id = AV_CODEC_ID_ADPCM_SBPRO_3,
1707 .type = AVMEDIA_TYPE_AUDIO,
1708 .name = "adpcm_sbpro_3",
1709 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
a2318326 1710 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1711 },
1712 {
1713 .id = AV_CODEC_ID_ADPCM_SBPRO_2,
1714 .type = AVMEDIA_TYPE_AUDIO,
1715 .name = "adpcm_sbpro_2",
1716 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
a2318326 1717 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1718 },
1719 {
1720 .id = AV_CODEC_ID_ADPCM_THP,
1721 .type = AVMEDIA_TYPE_AUDIO,
1722 .name = "adpcm_thp",
1723 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube THP"),
a2318326 1724 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1725 },
1726 {
1727 .id = AV_CODEC_ID_ADPCM_IMA_AMV,
1728 .type = AVMEDIA_TYPE_AUDIO,
1729 .name = "adpcm_ima_amv",
1730 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
a2318326 1731 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1732 },
1733 {
1734 .id = AV_CODEC_ID_ADPCM_EA_R1,
1735 .type = AVMEDIA_TYPE_AUDIO,
1736 .name = "adpcm_ea_r1",
1737 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
a2318326 1738 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1739 },
1740 {
1741 .id = AV_CODEC_ID_ADPCM_EA_R3,
1742 .type = AVMEDIA_TYPE_AUDIO,
1743 .name = "adpcm_ea_r3",
1744 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
a2318326 1745 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1746 },
1747 {
1748 .id = AV_CODEC_ID_ADPCM_EA_R2,
1749 .type = AVMEDIA_TYPE_AUDIO,
1750 .name = "adpcm_ea_r2",
1751 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
a2318326 1752 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1753 },
1754 {
1755 .id = AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
1756 .type = AVMEDIA_TYPE_AUDIO,
1757 .name = "adpcm_ima_ea_sead",
1758 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
a2318326 1759 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1760 },
1761 {
1762 .id = AV_CODEC_ID_ADPCM_IMA_EA_EACS,
1763 .type = AVMEDIA_TYPE_AUDIO,
1764 .name = "adpcm_ima_ea_eacs",
1765 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
a2318326 1766 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1767 },
1768 {
1769 .id = AV_CODEC_ID_ADPCM_EA_XAS,
1770 .type = AVMEDIA_TYPE_AUDIO,
1771 .name = "adpcm_ea_xas",
1772 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
a2318326 1773 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1774 },
1775 {
1776 .id = AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
1777 .type = AVMEDIA_TYPE_AUDIO,
1778 .name = "adpcm_ea_maxis_xa",
1779 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
a2318326 1780 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1781 },
1782 {
1783 .id = AV_CODEC_ID_ADPCM_IMA_ISS,
1784 .type = AVMEDIA_TYPE_AUDIO,
1785 .name = "adpcm_ima_iss",
1786 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
a2318326 1787 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1788 },
1789 {
1790 .id = AV_CODEC_ID_ADPCM_G722,
1791 .type = AVMEDIA_TYPE_AUDIO,
1792 .name = "adpcm_g722",
1793 .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
a2318326 1794 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1795 },
1796 {
1797 .id = AV_CODEC_ID_ADPCM_IMA_APC,
1798 .type = AVMEDIA_TYPE_AUDIO,
1799 .name = "adpcm_ima_apc",
1800 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
a2318326 1801 .props = AV_CODEC_PROP_LOSSY,
6f273093
PM
1802 },
1803 {
1804 .id = AV_CODEC_ID_ADPCM_VIMA,
1805 .type = AVMEDIA_TYPE_AUDIO,
1806 .name = "adpcm_vima",
1807 .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
1808 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1809 },
1810
1811 /* AMR */
1812 {
1813 .id = AV_CODEC_ID_AMR_NB,
1814 .type = AVMEDIA_TYPE_AUDIO,
1815 .name = "amr_nb",
1816 .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
a2318326 1817 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1818 },
1819 {
1820 .id = AV_CODEC_ID_AMR_WB,
1821 .type = AVMEDIA_TYPE_AUDIO,
1822 .name = "amr_wb",
1823 .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
a2318326 1824 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1825 },
1826
1827 /* RealAudio codecs*/
1828 {
1829 .id = AV_CODEC_ID_RA_144,
1830 .type = AVMEDIA_TYPE_AUDIO,
1831 .name = "ra_144",
1832 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
a2318326 1833 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1834 },
1835 {
1836 .id = AV_CODEC_ID_RA_288,
1837 .type = AVMEDIA_TYPE_AUDIO,
1838 .name = "ra_288",
1839 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
a2318326 1840 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1841 },
1842
1843 /* various DPCM codecs */
1844 {
1845 .id = AV_CODEC_ID_ROQ_DPCM,
1846 .type = AVMEDIA_TYPE_AUDIO,
1847 .name = "roq_dpcm",
1848 .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
a2318326 1849 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1850 },
1851 {
1852 .id = AV_CODEC_ID_INTERPLAY_DPCM,
1853 .type = AVMEDIA_TYPE_AUDIO,
1854 .name = "interplay_dpcm",
1855 .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
a2318326 1856 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1857 },
1858 {
1859 .id = AV_CODEC_ID_XAN_DPCM,
1860 .type = AVMEDIA_TYPE_AUDIO,
1861 .name = "xan_dpcm",
1862 .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
a2318326 1863 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1864 },
1865 {
1866 .id = AV_CODEC_ID_SOL_DPCM,
1867 .type = AVMEDIA_TYPE_AUDIO,
1868 .name = "sol_dpcm",
1869 .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
a2318326 1870 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1871 },
1872
1873 /* audio codecs */
1874 {
1875 .id = AV_CODEC_ID_MP2,
1876 .type = AVMEDIA_TYPE_AUDIO,
1877 .name = "mp2",
1878 .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
a2318326 1879 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1880 },
1881 {
1882 .id = AV_CODEC_ID_MP3,
1883 .type = AVMEDIA_TYPE_AUDIO,
1884 .name = "mp3",
1885 .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
a2318326 1886 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1887 },
1888 {
1889 .id = AV_CODEC_ID_AAC,
1890 .type = AVMEDIA_TYPE_AUDIO,
1891 .name = "aac",
1892 .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
a2318326 1893 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1894 },
1895 {
1896 .id = AV_CODEC_ID_AC3,
1897 .type = AVMEDIA_TYPE_AUDIO,
1898 .name = "ac3",
1899 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
a2318326 1900 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1901 },
1902 {
1903 .id = AV_CODEC_ID_DTS,
1904 .type = AVMEDIA_TYPE_AUDIO,
1905 .name = "dts",
999d31d3 1906 .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
a2318326 1907 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1908 },
1909 {
1910 .id = AV_CODEC_ID_VORBIS,
1911 .type = AVMEDIA_TYPE_AUDIO,
1912 .name = "vorbis",
999d31d3 1913 .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
a2318326 1914 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1915 },
1916 {
1917 .id = AV_CODEC_ID_DVAUDIO,
1918 .type = AVMEDIA_TYPE_AUDIO,
1919 .name = "dvaudio",
f7518f1a 1920 .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
a2318326 1921 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1922 },
1923 {
1924 .id = AV_CODEC_ID_WMAV1,
1925 .type = AVMEDIA_TYPE_AUDIO,
1926 .name = "wmav1",
1927 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
a2318326 1928 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1929 },
1930 {
1931 .id = AV_CODEC_ID_WMAV2,
1932 .type = AVMEDIA_TYPE_AUDIO,
1933 .name = "wmav2",
1934 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
a2318326 1935 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1936 },
1937 {
1938 .id = AV_CODEC_ID_MACE3,
1939 .type = AVMEDIA_TYPE_AUDIO,
1940 .name = "mace3",
1941 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
a2318326 1942 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1943 },
1944 {
1945 .id = AV_CODEC_ID_MACE6,
1946 .type = AVMEDIA_TYPE_AUDIO,
1947 .name = "mace6",
1948 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
a2318326 1949 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1950 },
1951 {
1952 .id = AV_CODEC_ID_VMDAUDIO,
1953 .type = AVMEDIA_TYPE_AUDIO,
1954 .name = "vmdaudio",
1955 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
a2318326 1956 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1957 },
1958 {
1959 .id = AV_CODEC_ID_FLAC,
1960 .type = AVMEDIA_TYPE_AUDIO,
1961 .name = "flac",
1962 .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
a2318326 1963 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1964 },
1965 {
1966 .id = AV_CODEC_ID_MP3ADU,
1967 .type = AVMEDIA_TYPE_AUDIO,
1968 .name = "mp3adu",
1969 .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
a2318326 1970 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1971 },
1972 {
1973 .id = AV_CODEC_ID_MP3ON4,
1974 .type = AVMEDIA_TYPE_AUDIO,
1975 .name = "mp3on4",
1976 .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
a2318326 1977 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1978 },
1979 {
1980 .id = AV_CODEC_ID_SHORTEN,
1981 .type = AVMEDIA_TYPE_AUDIO,
1982 .name = "shorten",
1983 .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
a2318326 1984 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1985 },
1986 {
1987 .id = AV_CODEC_ID_ALAC,
1988 .type = AVMEDIA_TYPE_AUDIO,
1989 .name = "alac",
1990 .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
a2318326 1991 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
1992 },
1993 {
1994 .id = AV_CODEC_ID_WESTWOOD_SND1,
1995 .type = AVMEDIA_TYPE_AUDIO,
1996 .name = "westwood_snd1",
1997 .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
a2318326 1998 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
1999 },
2000 {
2001 .id = AV_CODEC_ID_GSM,
2002 .type = AVMEDIA_TYPE_AUDIO,
2003 .name = "gsm",
2004 .long_name = NULL_IF_CONFIG_SMALL("GSM"),
a2318326 2005 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2006 },
2007 {
2008 .id = AV_CODEC_ID_QDM2,
2009 .type = AVMEDIA_TYPE_AUDIO,
2010 .name = "qdm2",
2011 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
a2318326 2012 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2013 },
2014 {
2015 .id = AV_CODEC_ID_COOK,
2016 .type = AVMEDIA_TYPE_AUDIO,
2017 .name = "cook",
2018 .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
a2318326 2019 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2020 },
2021 {
2022 .id = AV_CODEC_ID_TRUESPEECH,
2023 .type = AVMEDIA_TYPE_AUDIO,
2024 .name = "truespeech",
2025 .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
a2318326 2026 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2027 },
2028 {
2029 .id = AV_CODEC_ID_TTA,
2030 .type = AVMEDIA_TYPE_AUDIO,
2031 .name = "tta",
2032 .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
a2318326 2033 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2034 },
2035 {
2036 .id = AV_CODEC_ID_SMACKAUDIO,
2037 .type = AVMEDIA_TYPE_AUDIO,
2038 .name = "smackaudio",
2039 .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
a2318326 2040 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2041 },
2042 {
2043 .id = AV_CODEC_ID_QCELP,
2044 .type = AVMEDIA_TYPE_AUDIO,
2045 .name = "qcelp",
2046 .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
a2318326 2047 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2048 },
2049 {
2050 .id = AV_CODEC_ID_WAVPACK,
2051 .type = AVMEDIA_TYPE_AUDIO,
2052 .name = "wavpack",
2053 .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
a2318326 2054 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2055 },
2056 {
2057 .id = AV_CODEC_ID_DSICINAUDIO,
2058 .type = AVMEDIA_TYPE_AUDIO,
2059 .name = "dsicinaudio",
2060 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
a2318326 2061 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2062 },
2063 {
2064 .id = AV_CODEC_ID_IMC,
2065 .type = AVMEDIA_TYPE_AUDIO,
2066 .name = "imc",
2067 .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
a2318326 2068 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2069 },
2070 {
2071 .id = AV_CODEC_ID_MUSEPACK7,
2072 .type = AVMEDIA_TYPE_AUDIO,
2073 .name = "musepack7",
2074 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
a2318326 2075 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2076 },
2077 {
2078 .id = AV_CODEC_ID_MLP,
2079 .type = AVMEDIA_TYPE_AUDIO,
2080 .name = "mlp",
2081 .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
a2318326 2082 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2083 },
2084 {
2085 .id = AV_CODEC_ID_GSM_MS,
2086 .type = AVMEDIA_TYPE_AUDIO,
2087 .name = "gsm_ms",
2088 .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
a2318326 2089 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2090 },
2091 {
2092 .id = AV_CODEC_ID_ATRAC3,
2093 .type = AVMEDIA_TYPE_AUDIO,
2094 .name = "atrac3",
7df9e693 2095 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
a2318326 2096 .props = AV_CODEC_PROP_LOSSY,
c223d799 2097 },
f544c586 2098#if FF_API_VOXWARE
c223d799
AK
2099 {
2100 .id = AV_CODEC_ID_VOXWARE,
2101 .type = AVMEDIA_TYPE_AUDIO,
2102 .name = "voxware",
2103 .long_name = NULL_IF_CONFIG_SMALL("Voxware RT29 Metasound"),
a2318326 2104 .props = AV_CODEC_PROP_LOSSY,
c223d799 2105 },
f544c586 2106#endif
c223d799
AK
2107 {
2108 .id = AV_CODEC_ID_APE,
2109 .type = AVMEDIA_TYPE_AUDIO,
2110 .name = "ape",
2111 .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
a2318326 2112 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2113 },
2114 {
2115 .id = AV_CODEC_ID_NELLYMOSER,
2116 .type = AVMEDIA_TYPE_AUDIO,
2117 .name = "nellymoser",
2118 .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
a2318326 2119 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2120 },
2121 {
2122 .id = AV_CODEC_ID_MUSEPACK8,
2123 .type = AVMEDIA_TYPE_AUDIO,
2124 .name = "musepack8",
2125 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
a2318326 2126 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2127 },
2128 {
2129 .id = AV_CODEC_ID_SPEEX,
2130 .type = AVMEDIA_TYPE_AUDIO,
2131 .name = "speex",
2132 .long_name = NULL_IF_CONFIG_SMALL("Speex"),
a2318326 2133 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2134 },
2135 {
2136 .id = AV_CODEC_ID_WMAVOICE,
2137 .type = AVMEDIA_TYPE_AUDIO,
2138 .name = "wmavoice",
2139 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
a2318326 2140 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2141 },
2142 {
2143 .id = AV_CODEC_ID_WMAPRO,
2144 .type = AVMEDIA_TYPE_AUDIO,
2145 .name = "wmapro",
2146 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
a2318326 2147 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2148 },
2149 {
2150 .id = AV_CODEC_ID_WMALOSSLESS,
2151 .type = AVMEDIA_TYPE_AUDIO,
2152 .name = "wmalossless",
2153 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
a2318326 2154 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2155 },
2156 {
2157 .id = AV_CODEC_ID_ATRAC3P,
2158 .type = AVMEDIA_TYPE_AUDIO,
2159 .name = "atrac3p",
7df9e693 2160 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
a2318326 2161 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2162 },
2163 {
2164 .id = AV_CODEC_ID_EAC3,
2165 .type = AVMEDIA_TYPE_AUDIO,
2166 .name = "eac3",
2167 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
a2318326 2168 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2169 },
2170 {
2171 .id = AV_CODEC_ID_SIPR,
2172 .type = AVMEDIA_TYPE_AUDIO,
2173 .name = "sipr",
2174 .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
a2318326 2175 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2176 },
2177 {
2178 .id = AV_CODEC_ID_MP1,
2179 .type = AVMEDIA_TYPE_AUDIO,
2180 .name = "mp1",
2181 .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
a2318326 2182 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2183 },
2184 {
2185 .id = AV_CODEC_ID_TWINVQ,
2186 .type = AVMEDIA_TYPE_AUDIO,
2187 .name = "twinvq",
2188 .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
a2318326 2189 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2190 },
2191 {
2192 .id = AV_CODEC_ID_TRUEHD,
2193 .type = AVMEDIA_TYPE_AUDIO,
2194 .name = "truehd",
2195 .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
a2318326 2196 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2197 },
2198 {
2199 .id = AV_CODEC_ID_MP4ALS,
2200 .type = AVMEDIA_TYPE_AUDIO,
2201 .name = "mp4als",
2202 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
a2318326 2203 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2204 },
2205 {
2206 .id = AV_CODEC_ID_ATRAC1,
2207 .type = AVMEDIA_TYPE_AUDIO,
2208 .name = "atrac1",
7df9e693 2209 .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
a2318326 2210 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2211 },
2212 {
2213 .id = AV_CODEC_ID_BINKAUDIO_RDFT,
2214 .type = AVMEDIA_TYPE_AUDIO,
2215 .name = "binkaudio_rdft",
a2318326
AK
2216 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
2217 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2218 },
2219 {
2220 .id = AV_CODEC_ID_BINKAUDIO_DCT,
2221 .type = AVMEDIA_TYPE_AUDIO,
2222 .name = "binkaudio_dct",
a2318326
AK
2223 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
2224 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2225 },
2226 {
2227 .id = AV_CODEC_ID_AAC_LATM,
2228 .type = AVMEDIA_TYPE_AUDIO,
2229 .name = "aac_latm",
2230 .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
a2318326 2231 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2232 },
2233 {
2234 .id = AV_CODEC_ID_QDMC,
2235 .type = AVMEDIA_TYPE_AUDIO,
2236 .name = "qdmc",
2237 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
a2318326 2238 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2239 },
2240 {
2241 .id = AV_CODEC_ID_CELT,
2242 .type = AVMEDIA_TYPE_AUDIO,
2243 .name = "celt",
2244 .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
a2318326 2245 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2246 },
2247 {
2248 .id = AV_CODEC_ID_G723_1,
2249 .type = AVMEDIA_TYPE_AUDIO,
2250 .name = "g723_1",
2251 .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
a2318326 2252 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2253 },
2254 {
c56b9b1e
OR
2255 .id = AV_CODEC_ID_DSS_SP,
2256 .type = AVMEDIA_TYPE_AUDIO,
2257 .name = "dss_sp",
2258 .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
2259 .props = AV_CODEC_PROP_LOSSY,
2260 },
2261 {
c223d799
AK
2262 .id = AV_CODEC_ID_G729,
2263 .type = AVMEDIA_TYPE_AUDIO,
2264 .name = "g729",
2265 .long_name = NULL_IF_CONFIG_SMALL("G.729"),
a2318326 2266 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2267 },
2268 {
2269 .id = AV_CODEC_ID_8SVX_EXP,
2270 .type = AVMEDIA_TYPE_AUDIO,
2271 .name = "8svx_exp",
2272 .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
a2318326 2273 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2274 },
2275 {
2276 .id = AV_CODEC_ID_8SVX_FIB,
2277 .type = AVMEDIA_TYPE_AUDIO,
2278 .name = "8svx_fib",
2279 .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
a2318326 2280 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2281 },
2282 {
2283 .id = AV_CODEC_ID_BMV_AUDIO,
2284 .type = AVMEDIA_TYPE_AUDIO,
2285 .name = "bmv_audio",
2286 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
a2318326 2287 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2288 },
2289 {
2290 .id = AV_CODEC_ID_RALF,
2291 .type = AVMEDIA_TYPE_AUDIO,
2292 .name = "ralf",
2293 .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
a2318326 2294 .props = AV_CODEC_PROP_LOSSLESS,
c223d799
AK
2295 },
2296 {
2297 .id = AV_CODEC_ID_IAC,
2298 .type = AVMEDIA_TYPE_AUDIO,
2299 .name = "iac",
2300 .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
a2318326 2301 .props = AV_CODEC_PROP_LOSSY,
c223d799
AK
2302 },
2303 {
2304 .id = AV_CODEC_ID_ILBC,
2305 .type = AVMEDIA_TYPE_AUDIO,
2306 .name = "ilbc",
2307 .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
a2318326 2308 .props = AV_CODEC_PROP_LOSSY,
c223d799 2309 },
2a3d82ab
AA
2310 {
2311 .id = AV_CODEC_ID_OPUS,
2312 .type = AVMEDIA_TYPE_AUDIO,
2313 .name = "opus",
2314 .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
2315 .props = AV_CODEC_PROP_LOSSY,
2316 },
9b500b8f
MS
2317 {
2318 .id = AV_CODEC_ID_COMFORT_NOISE,
2319 .type = AVMEDIA_TYPE_AUDIO,
2320 .name = "comfortnoise",
2321 .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
2322 .props = AV_CODEC_PROP_LOSSY,
2323 },
57231e4d
PM
2324 {
2325 .id = AV_CODEC_ID_TAK,
2326 .type = AVMEDIA_TYPE_AUDIO,
2327 .name = "tak",
2328 .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
2329 .props = AV_CODEC_PROP_LOSSLESS,
2330 },
f544c586
KS
2331 {
2332 .id = AV_CODEC_ID_METASOUND,
2333 .type = AVMEDIA_TYPE_AUDIO,
2334 .name = "metasound",
2335 .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
2336 .props = AV_CODEC_PROP_LOSSY,
2337 },
70daeacd
PM
2338 {
2339 .id = AV_CODEC_ID_PAF_AUDIO,
2340 .type = AVMEDIA_TYPE_AUDIO,
2341 .name = "paf_audio",
2342 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
2343 .props = AV_CODEC_PROP_LOSSY,
2344 },
e2834567
KS
2345 {
2346 .id = AV_CODEC_ID_ON2AVC,
2347 .type = AVMEDIA_TYPE_AUDIO,
2348 .name = "avc",
2349 .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
2350 .props = AV_CODEC_PROP_LOSSY,
2351 },
c223d799
AK
2352
2353 /* subtitle codecs */
2354 {
2355 .id = AV_CODEC_ID_DVD_SUBTITLE,
2356 .type = AVMEDIA_TYPE_SUBTITLE,
2357 .name = "dvd_subtitle",
2358 .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
2359 },
2360 {
2361 .id = AV_CODEC_ID_DVB_SUBTITLE,
2362 .type = AVMEDIA_TYPE_SUBTITLE,
2363 .name = "dvb_subtitle",
2364 .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
2365 },
2366 {
2367 .id = AV_CODEC_ID_TEXT,
2368 .type = AVMEDIA_TYPE_SUBTITLE,
2369 .name = "text",
2370 .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
2371 },
2372 {
2373 .id = AV_CODEC_ID_XSUB,
2374 .type = AVMEDIA_TYPE_SUBTITLE,
2375 .name = "xsub",
2376 .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
2377 },
2378 {
2379 .id = AV_CODEC_ID_SSA,
2380 .type = AVMEDIA_TYPE_SUBTITLE,
2381 .name = "ssa",
2382 .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) / ASS (Advanced SSA) subtitle"),
2383 },
2384 {
2385 .id = AV_CODEC_ID_MOV_TEXT,
2386 .type = AVMEDIA_TYPE_SUBTITLE,
2387 .name = "mov_text",
2388 .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
2389 },
2390 {
2391 .id = AV_CODEC_ID_HDMV_PGS_SUBTITLE,
2392 .type = AVMEDIA_TYPE_SUBTITLE,
2393 .name = "hdmv_pgs_subtitle",
2394 .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
2395 },
2396 {
2397 .id = AV_CODEC_ID_DVB_TELETEXT,
2398 .type = AVMEDIA_TYPE_SUBTITLE,
2399 .name = "dvb_teletext",
2400 .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
2401 },
2402 {
2403 .id = AV_CODEC_ID_SRT,
2404 .type = AVMEDIA_TYPE_SUBTITLE,
2405 .name = "srt",
2406 .long_name = NULL_IF_CONFIG_SMALL("SubRip Text"),
2407 },
2408};
2409
2410const AVCodecDescriptor *avcodec_descriptor_get(enum AVCodecID id)
2411{
2412 int i;
2413
2414 for (i = 0; i < FF_ARRAY_ELEMS(codec_descriptors); i++)
2415 if (codec_descriptors[i].id == id)
2416 return &codec_descriptors[i];
2417 return NULL;
2418}
2419
2420const AVCodecDescriptor *avcodec_descriptor_next(const AVCodecDescriptor *prev)
2421{
2422 if (!prev)
2423 return &codec_descriptors[0];
2424 if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
2425 return prev + 1;
2426 return NULL;
2427}
91e59fea
AK
2428
2429const AVCodecDescriptor *avcodec_descriptor_get_by_name(const char *name)
2430{
2431 const AVCodecDescriptor *desc = NULL;
2432
999d31d3 2433 while ((desc = avcodec_descriptor_next(desc)))
91e59fea
AK
2434 if (!strcmp(desc->name, name))
2435 return desc;
91e59fea
AK
2436 return NULL;
2437}