FFmpeg coverage


Directory: ../../../ffmpeg/
File: src/libavcodec/codec_desc.c
Date: 2026-10-29 07:45:57
Exec Total Coverage
Lines: 20 21 95.2%
Functions: 5 5 100.0%
Branches: 8 10 80.0%

Line Branch Exec Source
1 /*
2 * This file is part of FFmpeg.
3 *
4 * This table was generated from the long and short names of AVCodecs
5 * please see the respective codec sources for authorship
6 *
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22 #include <stdlib.h>
23 #include <string.h>
24
25 #include "libavutil/internal.h"
26 #include "libavutil/macros.h"
27
28 #include "codec_id.h"
29 #include "codec_desc.h"
30 #include "profiles.h"
31
32 #define MT(...) (const char *const[]){ __VA_ARGS__, NULL }
33
34 static const AVCodecDescriptor codec_descriptors[] = {
35 /* video codecs */
36 {
37 .id = AV_CODEC_ID_MPEG1VIDEO,
38 .type = AVMEDIA_TYPE_VIDEO,
39 .name = "mpeg1video",
40 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
41 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER |
42 // FIXME this is strigly speaking not true, as MPEG-1 does
43 // not allow field coding, but our mpeg12 code (decoder and
44 // parser) can sometimes change codec id at runtime, so
45 // this is safer
46 AV_CODEC_PROP_FIELDS,
47 },
48 {
49 .id = AV_CODEC_ID_MPEG2VIDEO,
50 .type = AVMEDIA_TYPE_VIDEO,
51 .name = "mpeg2video",
52 .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),
53 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER |
54 AV_CODEC_PROP_FIELDS,
55 .profiles = NULL_IF_CONFIG_SMALL(ff_mpeg2_video_profiles),
56 },
57 {
58 .id = AV_CODEC_ID_H261,
59 .type = AVMEDIA_TYPE_VIDEO,
60 .name = "h261",
61 .long_name = NULL_IF_CONFIG_SMALL("H.261"),
62 .props = AV_CODEC_PROP_LOSSY,
63 },
64 {
65 .id = AV_CODEC_ID_H263,
66 .type = AVMEDIA_TYPE_VIDEO,
67 .name = "h263",
68 .long_name = NULL_IF_CONFIG_SMALL("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),
69 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
70 },
71 {
72 .id = AV_CODEC_ID_RV10,
73 .type = AVMEDIA_TYPE_VIDEO,
74 .name = "rv10",
75 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
76 .props = AV_CODEC_PROP_LOSSY,
77 },
78 {
79 .id = AV_CODEC_ID_RV20,
80 .type = AVMEDIA_TYPE_VIDEO,
81 .name = "rv20",
82 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
83 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
84 },
85 {
86 .id = AV_CODEC_ID_MJPEG,
87 .type = AVMEDIA_TYPE_VIDEO,
88 .name = "mjpeg",
89 .long_name = NULL_IF_CONFIG_SMALL("Motion JPEG"),
90 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
91 .mime_types= MT("image/jpeg"),
92 .profiles = NULL_IF_CONFIG_SMALL(ff_mjpeg_profiles),
93 },
94 {
95 .id = AV_CODEC_ID_MJPEGB,
96 .type = AVMEDIA_TYPE_VIDEO,
97 .name = "mjpegb",
98 .long_name = NULL_IF_CONFIG_SMALL("Apple MJPEG-B"),
99 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
100 },
101 {
102 .id = AV_CODEC_ID_LJPEG,
103 .type = AVMEDIA_TYPE_VIDEO,
104 .name = "ljpeg",
105 .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
106 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
107 },
108 {
109 .id = AV_CODEC_ID_SP5X,
110 .type = AVMEDIA_TYPE_VIDEO,
111 .name = "sp5x",
112 .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),
113 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
114 },
115 {
116 .id = AV_CODEC_ID_JPEGLS,
117 .type = AVMEDIA_TYPE_VIDEO,
118 .name = "jpegls",
119 .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),
120 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
121 AV_CODEC_PROP_LOSSLESS,
122 },
123 {
124 .id = AV_CODEC_ID_MPEG4,
125 .type = AVMEDIA_TYPE_VIDEO,
126 .name = "mpeg4",
127 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),
128 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
129 .profiles = NULL_IF_CONFIG_SMALL(ff_mpeg4_video_profiles),
130 },
131 {
132 .id = AV_CODEC_ID_RAWVIDEO,
133 .type = AVMEDIA_TYPE_VIDEO,
134 .name = "rawvideo",
135 .long_name = NULL_IF_CONFIG_SMALL("raw video"),
136 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
137 },
138 {
139 .id = AV_CODEC_ID_MSMPEG4V1,
140 .type = AVMEDIA_TYPE_VIDEO,
141 .name = "msmpeg4v1",
142 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 1"),
143 .props = AV_CODEC_PROP_LOSSY,
144 },
145 {
146 .id = AV_CODEC_ID_MSMPEG4V2,
147 .type = AVMEDIA_TYPE_VIDEO,
148 .name = "msmpeg4v2",
149 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"),
150 .props = AV_CODEC_PROP_LOSSY,
151 },
152 {
153 .id = AV_CODEC_ID_MSMPEG4V3,
154 .type = AVMEDIA_TYPE_VIDEO,
155 .name = "msmpeg4v3",
156 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"),
157 .props = AV_CODEC_PROP_LOSSY,
158 },
159 {
160 .id = AV_CODEC_ID_WMV1,
161 .type = AVMEDIA_TYPE_VIDEO,
162 .name = "wmv1",
163 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"),
164 .props = AV_CODEC_PROP_LOSSY,
165 },
166 {
167 .id = AV_CODEC_ID_WMV2,
168 .type = AVMEDIA_TYPE_VIDEO,
169 .name = "wmv2",
170 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"),
171 .props = AV_CODEC_PROP_LOSSY,
172 },
173 {
174 .id = AV_CODEC_ID_H263P,
175 .type = AVMEDIA_TYPE_VIDEO,
176 .name = "h263p",
177 .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 2"),
178 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
179 },
180 {
181 .id = AV_CODEC_ID_H263I,
182 .type = AVMEDIA_TYPE_VIDEO,
183 .name = "h263i",
184 .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),
185 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
186 },
187 {
188 .id = AV_CODEC_ID_FLV1,
189 .type = AVMEDIA_TYPE_VIDEO,
190 .name = "flv1",
191 .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"),
192 .props = AV_CODEC_PROP_LOSSY,
193 },
194 {
195 .id = AV_CODEC_ID_SVQ1,
196 .type = AVMEDIA_TYPE_VIDEO,
197 .name = "svq1",
198 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1"),
199 .props = AV_CODEC_PROP_LOSSY,
200 },
201 {
202 .id = AV_CODEC_ID_SVQ3,
203 .type = AVMEDIA_TYPE_VIDEO,
204 .name = "svq3",
205 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3"),
206 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
207 },
208 {
209 .id = AV_CODEC_ID_DVVIDEO,
210 .type = AVMEDIA_TYPE_VIDEO,
211 .name = "dvvideo",
212 .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),
213 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
214 },
215 {
216 .id = AV_CODEC_ID_HUFFYUV,
217 .type = AVMEDIA_TYPE_VIDEO,
218 .name = "huffyuv",
219 .long_name = NULL_IF_CONFIG_SMALL("HuffYUV"),
220 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
221 },
222 {
223 .id = AV_CODEC_ID_CYUV,
224 .type = AVMEDIA_TYPE_VIDEO,
225 .name = "cyuv",
226 .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"),
227 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
228 },
229 {
230 .id = AV_CODEC_ID_H264,
231 .type = AVMEDIA_TYPE_VIDEO,
232 .name = "h264",
233 .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
234 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS |
235 AV_CODEC_PROP_REORDER | AV_CODEC_PROP_FIELDS,
236 .profiles = NULL_IF_CONFIG_SMALL(ff_h264_profiles),
237 },
238 {
239 .id = AV_CODEC_ID_INDEO3,
240 .type = AVMEDIA_TYPE_VIDEO,
241 .name = "indeo3",
242 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 3"),
243 .props = AV_CODEC_PROP_LOSSY,
244 },
245 {
246 .id = AV_CODEC_ID_VP3,
247 .type = AVMEDIA_TYPE_VIDEO,
248 .name = "vp3",
249 .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),
250 .props = AV_CODEC_PROP_LOSSY,
251 },
252 {
253 .id = AV_CODEC_ID_THEORA,
254 .type = AVMEDIA_TYPE_VIDEO,
255 .name = "theora",
256 .long_name = NULL_IF_CONFIG_SMALL("Theora"),
257 .props = AV_CODEC_PROP_LOSSY,
258 },
259 {
260 .id = AV_CODEC_ID_ASV1,
261 .type = AVMEDIA_TYPE_VIDEO,
262 .name = "asv1",
263 .long_name = NULL_IF_CONFIG_SMALL("ASUS V1"),
264 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
265 },
266 {
267 .id = AV_CODEC_ID_ASV2,
268 .type = AVMEDIA_TYPE_VIDEO,
269 .name = "asv2",
270 .long_name = NULL_IF_CONFIG_SMALL("ASUS V2"),
271 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
272 },
273 {
274 .id = AV_CODEC_ID_FFV1,
275 .type = AVMEDIA_TYPE_VIDEO,
276 .name = "ffv1",
277 .long_name = NULL_IF_CONFIG_SMALL("FFmpeg video codec #1"),
278 .props = AV_CODEC_PROP_LOSSLESS,
279 },
280 {
281 .id = AV_CODEC_ID_4XM,
282 .type = AVMEDIA_TYPE_VIDEO,
283 .name = "4xm",
284 .long_name = NULL_IF_CONFIG_SMALL("4X Movie"),
285 .props = AV_CODEC_PROP_LOSSY,
286 },
287 {
288 .id = AV_CODEC_ID_VCR1,
289 .type = AVMEDIA_TYPE_VIDEO,
290 .name = "vcr1",
291 .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),
292 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
293 },
294 {
295 .id = AV_CODEC_ID_CLJR,
296 .type = AVMEDIA_TYPE_VIDEO,
297 .name = "cljr",
298 .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"),
299 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
300 },
301 {
302 .id = AV_CODEC_ID_MDEC,
303 .type = AVMEDIA_TYPE_VIDEO,
304 .name = "mdec",
305 .long_name = NULL_IF_CONFIG_SMALL("Sony PlayStation MDEC (Motion DECoder)"),
306 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
307 },
308 {
309 .id = AV_CODEC_ID_ROQ,
310 .type = AVMEDIA_TYPE_VIDEO,
311 .name = "roq",
312 .long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),
313 .props = AV_CODEC_PROP_LOSSY,
314 },
315 {
316 .id = AV_CODEC_ID_INTERPLAY_VIDEO,
317 .type = AVMEDIA_TYPE_VIDEO,
318 .name = "interplayvideo",
319 .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE video"),
320 .props = AV_CODEC_PROP_LOSSY,
321 },
322 {
323 .id = AV_CODEC_ID_XAN_WC3,
324 .type = AVMEDIA_TYPE_VIDEO,
325 .name = "xan_wc3",
326 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III / Xan"),
327 .props = AV_CODEC_PROP_LOSSY,
328 },
329 {
330 .id = AV_CODEC_ID_XAN_WC4,
331 .type = AVMEDIA_TYPE_VIDEO,
332 .name = "xan_wc4",
333 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander IV / Xxan"),
334 .props = AV_CODEC_PROP_LOSSY,
335 },
336 {
337 .id = AV_CODEC_ID_RPZA,
338 .type = AVMEDIA_TYPE_VIDEO,
339 .name = "rpza",
340 .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),
341 .props = AV_CODEC_PROP_LOSSY,
342 },
343 {
344 .id = AV_CODEC_ID_CINEPAK,
345 .type = AVMEDIA_TYPE_VIDEO,
346 .name = "cinepak",
347 .long_name = NULL_IF_CONFIG_SMALL("Cinepak"),
348 .props = AV_CODEC_PROP_LOSSY,
349 },
350 {
351 .id = AV_CODEC_ID_WS_VQA,
352 .type = AVMEDIA_TYPE_VIDEO,
353 .name = "ws_vqa",
354 .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA (Vector Quantized Animation) video"),
355 .props = AV_CODEC_PROP_LOSSY,
356 },
357 {
358 .id = AV_CODEC_ID_MSRLE,
359 .type = AVMEDIA_TYPE_VIDEO,
360 .name = "msrle",
361 .long_name = NULL_IF_CONFIG_SMALL("Microsoft RLE"),
362 .props = AV_CODEC_PROP_LOSSLESS,
363 },
364 {
365 .id = AV_CODEC_ID_MSVIDEO1,
366 .type = AVMEDIA_TYPE_VIDEO,
367 .name = "msvideo1",
368 .long_name = NULL_IF_CONFIG_SMALL("Microsoft Video 1"),
369 .props = AV_CODEC_PROP_LOSSY,
370 },
371 {
372 .id = AV_CODEC_ID_IDCIN,
373 .type = AVMEDIA_TYPE_VIDEO,
374 .name = "idcin",
375 .long_name = NULL_IF_CONFIG_SMALL("id Quake II CIN video"),
376 .props = AV_CODEC_PROP_LOSSY,
377 },
378 {
379 .id = AV_CODEC_ID_8BPS,
380 .type = AVMEDIA_TYPE_VIDEO,
381 .name = "8bps",
382 .long_name = NULL_IF_CONFIG_SMALL("QuickTime 8BPS video"),
383 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
384 },
385 {
386 .id = AV_CODEC_ID_SMC,
387 .type = AVMEDIA_TYPE_VIDEO,
388 .name = "smc",
389 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Graphics (SMC)"),
390 .props = AV_CODEC_PROP_LOSSY,
391 },
392 {
393 .id = AV_CODEC_ID_FLIC,
394 .type = AVMEDIA_TYPE_VIDEO,
395 .name = "flic",
396 .long_name = NULL_IF_CONFIG_SMALL("Autodesk Animator Flic video"),
397 .props = AV_CODEC_PROP_LOSSLESS,
398 },
399 {
400 .id = AV_CODEC_ID_TRUEMOTION1,
401 .type = AVMEDIA_TYPE_VIDEO,
402 .name = "truemotion1",
403 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 1.0"),
404 .props = AV_CODEC_PROP_LOSSY,
405 },
406 {
407 .id = AV_CODEC_ID_VMDVIDEO,
408 .type = AVMEDIA_TYPE_VIDEO,
409 .name = "vmdvideo",
410 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD video"),
411 .props = AV_CODEC_PROP_LOSSY,
412 },
413 {
414 .id = AV_CODEC_ID_MSZH,
415 .type = AVMEDIA_TYPE_VIDEO,
416 .name = "mszh",
417 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) MSZH"),
418 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
419 },
420 {
421 .id = AV_CODEC_ID_ZLIB,
422 .type = AVMEDIA_TYPE_VIDEO,
423 .name = "zlib",
424 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),
425 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
426 },
427 {
428 .id = AV_CODEC_ID_QTRLE,
429 .type = AVMEDIA_TYPE_VIDEO,
430 .name = "qtrle",
431 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Animation (RLE) video"),
432 .props = AV_CODEC_PROP_LOSSLESS,
433 },
434 {
435 .id = AV_CODEC_ID_TSCC,
436 .type = AVMEDIA_TYPE_VIDEO,
437 .name = "tscc",
438 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Capture Codec"),
439 .props = AV_CODEC_PROP_LOSSLESS,
440 },
441 {
442 .id = AV_CODEC_ID_ULTI,
443 .type = AVMEDIA_TYPE_VIDEO,
444 .name = "ulti",
445 .long_name = NULL_IF_CONFIG_SMALL("IBM UltiMotion"),
446 .props = AV_CODEC_PROP_LOSSY,
447 },
448 {
449 .id = AV_CODEC_ID_QDRAW,
450 .type = AVMEDIA_TYPE_VIDEO,
451 .name = "qdraw",
452 .long_name = NULL_IF_CONFIG_SMALL("Apple QuickDraw"),
453 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
454 },
455 {
456 .id = AV_CODEC_ID_VIXL,
457 .type = AVMEDIA_TYPE_VIDEO,
458 .name = "vixl",
459 .long_name = NULL_IF_CONFIG_SMALL("Miro VideoXL"),
460 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
461 },
462 {
463 .id = AV_CODEC_ID_QPEG,
464 .type = AVMEDIA_TYPE_VIDEO,
465 .name = "qpeg",
466 .long_name = NULL_IF_CONFIG_SMALL("Q-team QPEG"),
467 .props = AV_CODEC_PROP_LOSSY,
468 },
469 {
470 .id = AV_CODEC_ID_PNG,
471 .type = AVMEDIA_TYPE_VIDEO,
472 .name = "png",
473 .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),
474 .props = AV_CODEC_PROP_LOSSLESS,
475 .mime_types= MT("image/png"),
476 },
477 {
478 .id = AV_CODEC_ID_PPM,
479 .type = AVMEDIA_TYPE_VIDEO,
480 .name = "ppm",
481 .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
482 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
483 },
484 {
485 .id = AV_CODEC_ID_PBM,
486 .type = AVMEDIA_TYPE_VIDEO,
487 .name = "pbm",
488 .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
489 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
490 },
491 {
492 .id = AV_CODEC_ID_PGM,
493 .type = AVMEDIA_TYPE_VIDEO,
494 .name = "pgm",
495 .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
496 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
497 },
498 {
499 .id = AV_CODEC_ID_PGMYUV,
500 .type = AVMEDIA_TYPE_VIDEO,
501 .name = "pgmyuv",
502 .long_name = NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
503 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
504 },
505 {
506 .id = AV_CODEC_ID_PAM,
507 .type = AVMEDIA_TYPE_VIDEO,
508 .name = "pam",
509 .long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
510 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
511 .mime_types= MT("image/x-portable-pixmap"),
512 },
513 {
514 .id = AV_CODEC_ID_FFVHUFF,
515 .type = AVMEDIA_TYPE_VIDEO,
516 .name = "ffvhuff",
517 .long_name = NULL_IF_CONFIG_SMALL("Huffyuv FFmpeg variant"),
518 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
519 },
520 {
521 .id = AV_CODEC_ID_RV30,
522 .type = AVMEDIA_TYPE_VIDEO,
523 .name = "rv30",
524 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
525 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
526 },
527 {
528 .id = AV_CODEC_ID_RV40,
529 .type = AVMEDIA_TYPE_VIDEO,
530 .name = "rv40",
531 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 4.0"),
532 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
533 },
534 {
535 .id = AV_CODEC_ID_VC1,
536 .type = AVMEDIA_TYPE_VIDEO,
537 .name = "vc1",
538 .long_name = NULL_IF_CONFIG_SMALL("SMPTE VC-1"),
539 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER |
540 AV_CODEC_PROP_FIELDS,
541 .profiles = NULL_IF_CONFIG_SMALL(ff_vc1_profiles),
542 },
543 {
544 .id = AV_CODEC_ID_WMV3,
545 .type = AVMEDIA_TYPE_VIDEO,
546 .name = "wmv3",
547 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9"),
548 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
549 .profiles = NULL_IF_CONFIG_SMALL(ff_vc1_profiles),
550 },
551 {
552 .id = AV_CODEC_ID_LOCO,
553 .type = AVMEDIA_TYPE_VIDEO,
554 .name = "loco",
555 .long_name = NULL_IF_CONFIG_SMALL("LOCO"),
556 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
557 },
558 {
559 .id = AV_CODEC_ID_WNV1,
560 .type = AVMEDIA_TYPE_VIDEO,
561 .name = "wnv1",
562 .long_name = NULL_IF_CONFIG_SMALL("Winnov WNV1"),
563 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
564 },
565 {
566 .id = AV_CODEC_ID_AASC,
567 .type = AVMEDIA_TYPE_VIDEO,
568 .name = "aasc",
569 .long_name = NULL_IF_CONFIG_SMALL("Autodesk RLE"),
570 .props = AV_CODEC_PROP_LOSSLESS,
571 },
572 {
573 .id = AV_CODEC_ID_INDEO2,
574 .type = AVMEDIA_TYPE_VIDEO,
575 .name = "indeo2",
576 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 2"),
577 .props = AV_CODEC_PROP_LOSSY,
578 },
579 {
580 .id = AV_CODEC_ID_FRAPS,
581 .type = AVMEDIA_TYPE_VIDEO,
582 .name = "fraps",
583 .long_name = NULL_IF_CONFIG_SMALL("Fraps"),
584 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
585 },
586 {
587 .id = AV_CODEC_ID_TRUEMOTION2,
588 .type = AVMEDIA_TYPE_VIDEO,
589 .name = "truemotion2",
590 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0"),
591 .props = AV_CODEC_PROP_LOSSY,
592 },
593 {
594 .id = AV_CODEC_ID_BMP,
595 .type = AVMEDIA_TYPE_VIDEO,
596 .name = "bmp",
597 .long_name = NULL_IF_CONFIG_SMALL("BMP (Windows and OS/2 bitmap)"),
598 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
599 .mime_types= MT("image/x-ms-bmp"),
600 },
601 {
602 .id = AV_CODEC_ID_CSCD,
603 .type = AVMEDIA_TYPE_VIDEO,
604 .name = "cscd",
605 .long_name = NULL_IF_CONFIG_SMALL("CamStudio"),
606 .props = AV_CODEC_PROP_LOSSLESS,
607 },
608 {
609 .id = AV_CODEC_ID_MMVIDEO,
610 .type = AVMEDIA_TYPE_VIDEO,
611 .name = "mmvideo",
612 .long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM Video"),
613 .props = AV_CODEC_PROP_LOSSY,
614 },
615 {
616 .id = AV_CODEC_ID_ZMBV,
617 .type = AVMEDIA_TYPE_VIDEO,
618 .name = "zmbv",
619 .long_name = NULL_IF_CONFIG_SMALL("Zip Motion Blocks Video"),
620 .props = AV_CODEC_PROP_LOSSLESS,
621 },
622 {
623 .id = AV_CODEC_ID_AVS,
624 .type = AVMEDIA_TYPE_VIDEO,
625 .name = "avs",
626 .long_name = NULL_IF_CONFIG_SMALL("AVS (Audio Video Standard) video"),
627 .props = AV_CODEC_PROP_LOSSY,
628 },
629 {
630 .id = AV_CODEC_ID_SMACKVIDEO,
631 .type = AVMEDIA_TYPE_VIDEO,
632 .name = "smackvideo",
633 .long_name = NULL_IF_CONFIG_SMALL("Smacker video"),
634 .props = AV_CODEC_PROP_LOSSY,
635 },
636 {
637 .id = AV_CODEC_ID_NUV,
638 .type = AVMEDIA_TYPE_VIDEO,
639 .name = "nuv",
640 .long_name = NULL_IF_CONFIG_SMALL("NuppelVideo/RTJPEG"),
641 .props = AV_CODEC_PROP_LOSSY,
642 },
643 {
644 .id = AV_CODEC_ID_KMVC,
645 .type = AVMEDIA_TYPE_VIDEO,
646 .name = "kmvc",
647 .long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
648 .props = AV_CODEC_PROP_LOSSY,
649 },
650 {
651 .id = AV_CODEC_ID_FLASHSV,
652 .type = AVMEDIA_TYPE_VIDEO,
653 .name = "flashsv",
654 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v1"),
655 .props = AV_CODEC_PROP_LOSSLESS,
656 },
657 {
658 .id = AV_CODEC_ID_CAVS,
659 .type = AVMEDIA_TYPE_VIDEO,
660 .name = "cavs",
661 .long_name = NULL_IF_CONFIG_SMALL("Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)"),
662 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
663 },
664 {
665 .id = AV_CODEC_ID_JPEG2000,
666 .type = AVMEDIA_TYPE_VIDEO,
667 .name = "jpeg2000",
668 .long_name = NULL_IF_CONFIG_SMALL("JPEG 2000"),
669 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
670 AV_CODEC_PROP_LOSSLESS,
671 .mime_types= MT("image/jp2"),
672 .profiles = NULL_IF_CONFIG_SMALL(ff_jpeg2000_profiles),
673 },
674 {
675 .id = AV_CODEC_ID_VMNC,
676 .type = AVMEDIA_TYPE_VIDEO,
677 .name = "vmnc",
678 .long_name = NULL_IF_CONFIG_SMALL("VMware Screen Codec / VMware Video"),
679 .props = AV_CODEC_PROP_LOSSLESS,
680 },
681 {
682 .id = AV_CODEC_ID_VP5,
683 .type = AVMEDIA_TYPE_VIDEO,
684 .name = "vp5",
685 .long_name = NULL_IF_CONFIG_SMALL("On2 VP5"),
686 .props = AV_CODEC_PROP_LOSSY,
687 },
688 {
689 .id = AV_CODEC_ID_VP6,
690 .type = AVMEDIA_TYPE_VIDEO,
691 .name = "vp6",
692 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6"),
693 .props = AV_CODEC_PROP_LOSSY,
694 },
695 {
696 .id = AV_CODEC_ID_VP6F,
697 .type = AVMEDIA_TYPE_VIDEO,
698 .name = "vp6f",
699 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version)"),
700 .props = AV_CODEC_PROP_LOSSY,
701 },
702 {
703 .id = AV_CODEC_ID_TARGA,
704 .type = AVMEDIA_TYPE_VIDEO,
705 .name = "targa",
706 .long_name = NULL_IF_CONFIG_SMALL("Truevision Targa image"),
707 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
708 .mime_types= MT("image/x-targa", "image/x-tga"),
709 },
710 {
711 .id = AV_CODEC_ID_DSICINVIDEO,
712 .type = AVMEDIA_TYPE_VIDEO,
713 .name = "dsicinvideo",
714 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN video"),
715 .props = AV_CODEC_PROP_LOSSY,
716 },
717 {
718 .id = AV_CODEC_ID_TIERTEXSEQVIDEO,
719 .type = AVMEDIA_TYPE_VIDEO,
720 .name = "tiertexseqvideo",
721 .long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ video"),
722 .props = AV_CODEC_PROP_LOSSY,
723 },
724 {
725 .id = AV_CODEC_ID_TIFF,
726 .type = AVMEDIA_TYPE_VIDEO,
727 .name = "tiff",
728 .long_name = NULL_IF_CONFIG_SMALL("TIFF image"),
729 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
730 .mime_types= MT("image/tiff"),
731 },
732 {
733 .id = AV_CODEC_ID_GIF,
734 .type = AVMEDIA_TYPE_VIDEO,
735 .name = "gif",
736 .long_name = NULL_IF_CONFIG_SMALL("CompuServe GIF (Graphics Interchange Format)"),
737 .props = AV_CODEC_PROP_LOSSLESS,
738 .mime_types= MT("image/gif"),
739 },
740 {
741 .id = AV_CODEC_ID_DXA,
742 .type = AVMEDIA_TYPE_VIDEO,
743 .name = "dxa",
744 .long_name = NULL_IF_CONFIG_SMALL("Feeble Files/ScummVM DXA"),
745 .props = AV_CODEC_PROP_LOSSLESS,
746 },
747 {
748 .id = AV_CODEC_ID_DNXHD,
749 .type = AVMEDIA_TYPE_VIDEO,
750 .name = "dnxhd",
751 .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"),
752 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
753 .profiles = NULL_IF_CONFIG_SMALL(ff_dnxhd_profiles),
754 },
755 {
756 .id = AV_CODEC_ID_THP,
757 .type = AVMEDIA_TYPE_VIDEO,
758 .name = "thp",
759 .long_name = NULL_IF_CONFIG_SMALL("Nintendo Gamecube THP video"),
760 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
761 },
762 {
763 .id = AV_CODEC_ID_SGI,
764 .type = AVMEDIA_TYPE_VIDEO,
765 .name = "sgi",
766 .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
767 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
768 },
769 {
770 .id = AV_CODEC_ID_C93,
771 .type = AVMEDIA_TYPE_VIDEO,
772 .name = "c93",
773 .long_name = NULL_IF_CONFIG_SMALL("Interplay C93"),
774 .props = AV_CODEC_PROP_LOSSY,
775 },
776 {
777 .id = AV_CODEC_ID_BETHSOFTVID,
778 .type = AVMEDIA_TYPE_VIDEO,
779 .name = "bethsoftvid",
780 .long_name = NULL_IF_CONFIG_SMALL("Bethesda VID video"),
781 .props = AV_CODEC_PROP_LOSSY,
782 },
783 {
784 .id = AV_CODEC_ID_PTX,
785 .type = AVMEDIA_TYPE_VIDEO,
786 .name = "ptx",
787 .long_name = NULL_IF_CONFIG_SMALL("V.Flash PTX image"),
788 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
789 },
790 {
791 .id = AV_CODEC_ID_TXD,
792 .type = AVMEDIA_TYPE_VIDEO,
793 .name = "txd",
794 .long_name = NULL_IF_CONFIG_SMALL("Renderware TXD (TeXture Dictionary) image"),
795 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
796 },
797 {
798 .id = AV_CODEC_ID_VP6A,
799 .type = AVMEDIA_TYPE_VIDEO,
800 .name = "vp6a",
801 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version, with alpha channel)"),
802 .props = AV_CODEC_PROP_LOSSY,
803 },
804 {
805 .id = AV_CODEC_ID_AMV,
806 .type = AVMEDIA_TYPE_VIDEO,
807 .name = "amv",
808 .long_name = NULL_IF_CONFIG_SMALL("AMV Video"),
809 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
810 },
811 {
812 .id = AV_CODEC_ID_VB,
813 .type = AVMEDIA_TYPE_VIDEO,
814 .name = "vb",
815 .long_name = NULL_IF_CONFIG_SMALL("Beam Software VB"),
816 .props = AV_CODEC_PROP_LOSSY,
817 },
818 {
819 .id = AV_CODEC_ID_PCX,
820 .type = AVMEDIA_TYPE_VIDEO,
821 .name = "pcx",
822 .long_name = NULL_IF_CONFIG_SMALL("PC Paintbrush PCX image"),
823 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
824 .mime_types= MT("image/x-pcx"),
825 },
826 {
827 .id = AV_CODEC_ID_SUNRAST,
828 .type = AVMEDIA_TYPE_VIDEO,
829 .name = "sunrast",
830 .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
831 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
832 },
833 {
834 .id = AV_CODEC_ID_INDEO4,
835 .type = AVMEDIA_TYPE_VIDEO,
836 .name = "indeo4",
837 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 4"),
838 .props = AV_CODEC_PROP_LOSSY,
839 },
840 {
841 .id = AV_CODEC_ID_INDEO5,
842 .type = AVMEDIA_TYPE_VIDEO,
843 .name = "indeo5",
844 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 5"),
845 .props = AV_CODEC_PROP_LOSSY,
846 },
847 {
848 .id = AV_CODEC_ID_MIMIC,
849 .type = AVMEDIA_TYPE_VIDEO,
850 .name = "mimic",
851 .long_name = NULL_IF_CONFIG_SMALL("Mimic"),
852 .props = AV_CODEC_PROP_LOSSY,
853 },
854 {
855 .id = AV_CODEC_ID_RL2,
856 .type = AVMEDIA_TYPE_VIDEO,
857 .name = "rl2",
858 .long_name = NULL_IF_CONFIG_SMALL("RL2 video"),
859 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
860 },
861 {
862 .id = AV_CODEC_ID_ESCAPE124,
863 .type = AVMEDIA_TYPE_VIDEO,
864 .name = "escape124",
865 .long_name = NULL_IF_CONFIG_SMALL("Escape 124"),
866 .props = AV_CODEC_PROP_LOSSY,
867 },
868 {
869 .id = AV_CODEC_ID_DIRAC,
870 .type = AVMEDIA_TYPE_VIDEO,
871 .name = "dirac",
872 .long_name = NULL_IF_CONFIG_SMALL("Dirac"),
873 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
874 },
875 {
876 .id = AV_CODEC_ID_BFI,
877 .type = AVMEDIA_TYPE_VIDEO,
878 .name = "bfi",
879 .long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"),
880 .props = AV_CODEC_PROP_LOSSY,
881 },
882 {
883 .id = AV_CODEC_ID_CMV,
884 .type = AVMEDIA_TYPE_VIDEO,
885 .name = "cmv",
886 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts CMV video"),
887 .props = AV_CODEC_PROP_LOSSY,
888 },
889 {
890 .id = AV_CODEC_ID_MOTIONPIXELS,
891 .type = AVMEDIA_TYPE_VIDEO,
892 .name = "motionpixels",
893 .long_name = NULL_IF_CONFIG_SMALL("Motion Pixels video"),
894 .props = AV_CODEC_PROP_LOSSY,
895 },
896 {
897 .id = AV_CODEC_ID_TGV,
898 .type = AVMEDIA_TYPE_VIDEO,
899 .name = "tgv",
900 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGV video"),
901 .props = AV_CODEC_PROP_LOSSY,
902 },
903 {
904 .id = AV_CODEC_ID_TGQ,
905 .type = AVMEDIA_TYPE_VIDEO,
906 .name = "tgq",
907 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGQ video"),
908 .props = AV_CODEC_PROP_LOSSY,
909 },
910 {
911 .id = AV_CODEC_ID_TQI,
912 .type = AVMEDIA_TYPE_VIDEO,
913 .name = "tqi",
914 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TQI video"),
915 .props = AV_CODEC_PROP_LOSSY,
916 },
917 {
918 .id = AV_CODEC_ID_AURA,
919 .type = AVMEDIA_TYPE_VIDEO,
920 .name = "aura",
921 .long_name = NULL_IF_CONFIG_SMALL("Auravision AURA"),
922 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
923 },
924 {
925 .id = AV_CODEC_ID_AURA2,
926 .type = AVMEDIA_TYPE_VIDEO,
927 .name = "aura2",
928 .long_name = NULL_IF_CONFIG_SMALL("Auravision Aura 2"),
929 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
930 },
931 {
932 .id = AV_CODEC_ID_V210X,
933 .type = AVMEDIA_TYPE_VIDEO,
934 .name = "v210x",
935 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
936 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
937 },
938 {
939 .id = AV_CODEC_ID_TMV,
940 .type = AVMEDIA_TYPE_VIDEO,
941 .name = "tmv",
942 .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"),
943 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
944 },
945 {
946 .id = AV_CODEC_ID_V210,
947 .type = AVMEDIA_TYPE_VIDEO,
948 .name = "v210",
949 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
950 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
951 },
952 {
953 .id = AV_CODEC_ID_DPX,
954 .type = AVMEDIA_TYPE_VIDEO,
955 .name = "dpx",
956 .long_name = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
957 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
958 },
959 {
960 .id = AV_CODEC_ID_MAD,
961 .type = AVMEDIA_TYPE_VIDEO,
962 .name = "mad",
963 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Madcow Video"),
964 .props = AV_CODEC_PROP_LOSSY,
965 },
966 {
967 .id = AV_CODEC_ID_FRWU,
968 .type = AVMEDIA_TYPE_VIDEO,
969 .name = "frwu",
970 .long_name = NULL_IF_CONFIG_SMALL("Forward Uncompressed"),
971 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
972 },
973 {
974 .id = AV_CODEC_ID_FLASHSV2,
975 .type = AVMEDIA_TYPE_VIDEO,
976 .name = "flashsv2",
977 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v2"),
978 .props = AV_CODEC_PROP_LOSSY,
979 },
980 {
981 .id = AV_CODEC_ID_CDGRAPHICS,
982 .type = AVMEDIA_TYPE_VIDEO,
983 .name = "cdgraphics",
984 .long_name = NULL_IF_CONFIG_SMALL("CD Graphics video"),
985 .props = AV_CODEC_PROP_LOSSY,
986 },
987 {
988 .id = AV_CODEC_ID_R210,
989 .type = AVMEDIA_TYPE_VIDEO,
990 .name = "r210",
991 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed RGB 10-bit"),
992 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
993 },
994 {
995 .id = AV_CODEC_ID_ANM,
996 .type = AVMEDIA_TYPE_VIDEO,
997 .name = "anm",
998 .long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"),
999 .props = AV_CODEC_PROP_LOSSY,
1000 },
1001 {
1002 .id = AV_CODEC_ID_BINKVIDEO,
1003 .type = AVMEDIA_TYPE_VIDEO,
1004 .name = "binkvideo",
1005 .long_name = NULL_IF_CONFIG_SMALL("Bink video"),
1006 .props = AV_CODEC_PROP_LOSSY,
1007 },
1008 {
1009 .id = AV_CODEC_ID_IFF_ILBM,
1010 .type = AVMEDIA_TYPE_VIDEO,
1011 .name = "iff_ilbm",
1012 .long_name = NULL_IF_CONFIG_SMALL("IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN"),
1013 .props = AV_CODEC_PROP_LOSSY,
1014 },
1015 {
1016 .id = AV_CODEC_ID_KGV1,
1017 .type = AVMEDIA_TYPE_VIDEO,
1018 .name = "kgv1",
1019 .long_name = NULL_IF_CONFIG_SMALL("Kega Game Video"),
1020 .props = AV_CODEC_PROP_LOSSY,
1021 },
1022 {
1023 .id = AV_CODEC_ID_YOP,
1024 .type = AVMEDIA_TYPE_VIDEO,
1025 .name = "yop",
1026 .long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP Video"),
1027 .props = AV_CODEC_PROP_LOSSY,
1028 },
1029 {
1030 .id = AV_CODEC_ID_VP8,
1031 .type = AVMEDIA_TYPE_VIDEO,
1032 .name = "vp8",
1033 .long_name = NULL_IF_CONFIG_SMALL("On2 VP8"),
1034 .props = AV_CODEC_PROP_LOSSY,
1035 },
1036 {
1037 .id = AV_CODEC_ID_PICTOR,
1038 .type = AVMEDIA_TYPE_VIDEO,
1039 .name = "pictor",
1040 .long_name = NULL_IF_CONFIG_SMALL("Pictor/PC Paint"),
1041 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1042 },
1043 {
1044 .id = AV_CODEC_ID_ANSI,
1045 .type = AVMEDIA_TYPE_VIDEO,
1046 .name = "ansi",
1047 .long_name = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
1048 .props = AV_CODEC_PROP_LOSSY,
1049 },
1050 {
1051 .id = AV_CODEC_ID_A64_MULTI,
1052 .type = AVMEDIA_TYPE_VIDEO,
1053 .name = "a64_multi",
1054 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64"),
1055 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1056 },
1057 {
1058 .id = AV_CODEC_ID_A64_MULTI5,
1059 .type = AVMEDIA_TYPE_VIDEO,
1060 .name = "a64_multi5",
1061 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64, extended with 5th color (colram)"),
1062 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1063 },
1064 {
1065 .id = AV_CODEC_ID_R10K,
1066 .type = AVMEDIA_TYPE_VIDEO,
1067 .name = "r10k",
1068 .long_name = NULL_IF_CONFIG_SMALL("AJA Kona 10-bit RGB Codec"),
1069 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1070 },
1071 {
1072 .id = AV_CODEC_ID_MXPEG,
1073 .type = AVMEDIA_TYPE_VIDEO,
1074 .name = "mxpeg",
1075 .long_name = NULL_IF_CONFIG_SMALL("Mobotix MxPEG video"),
1076 .props = AV_CODEC_PROP_LOSSY,
1077 },
1078 {
1079 .id = AV_CODEC_ID_LAGARITH,
1080 .type = AVMEDIA_TYPE_VIDEO,
1081 .name = "lagarith",
1082 .long_name = NULL_IF_CONFIG_SMALL("Lagarith lossless"),
1083 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1084 },
1085 {
1086 .id = AV_CODEC_ID_PRORES,
1087 .type = AVMEDIA_TYPE_VIDEO,
1088 .name = "prores",
1089 .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
1090 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1091 .profiles = NULL_IF_CONFIG_SMALL(ff_prores_profiles),
1092 },
1093 {
1094 .id = AV_CODEC_ID_JV,
1095 .type = AVMEDIA_TYPE_VIDEO,
1096 .name = "jv",
1097 .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"),
1098 .props = AV_CODEC_PROP_LOSSY,
1099 },
1100 {
1101 .id = AV_CODEC_ID_DFA,
1102 .type = AVMEDIA_TYPE_VIDEO,
1103 .name = "dfa",
1104 .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"),
1105 .props = AV_CODEC_PROP_LOSSY,
1106 },
1107 {
1108 .id = AV_CODEC_ID_WMV3IMAGE,
1109 .type = AVMEDIA_TYPE_VIDEO,
1110 .name = "wmv3image",
1111 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image"),
1112 .props = AV_CODEC_PROP_LOSSY,
1113 },
1114 {
1115 .id = AV_CODEC_ID_VC1IMAGE,
1116 .type = AVMEDIA_TYPE_VIDEO,
1117 .name = "vc1image",
1118 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image v2"),
1119 .props = AV_CODEC_PROP_LOSSY,
1120 },
1121 {
1122 .id = AV_CODEC_ID_UTVIDEO,
1123 .type = AVMEDIA_TYPE_VIDEO,
1124 .name = "utvideo",
1125 .long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
1126 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1127 },
1128 {
1129 .id = AV_CODEC_ID_BMV_VIDEO,
1130 .type = AVMEDIA_TYPE_VIDEO,
1131 .name = "bmv_video",
1132 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV video"),
1133 .props = AV_CODEC_PROP_LOSSLESS,
1134 },
1135 {
1136 .id = AV_CODEC_ID_VBLE,
1137 .type = AVMEDIA_TYPE_VIDEO,
1138 .name = "vble",
1139 .long_name = NULL_IF_CONFIG_SMALL("VBLE Lossless Codec"),
1140 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1141 },
1142 {
1143 .id = AV_CODEC_ID_DXTORY,
1144 .type = AVMEDIA_TYPE_VIDEO,
1145 .name = "dxtory",
1146 .long_name = NULL_IF_CONFIG_SMALL("Dxtory"),
1147 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1148 },
1149 {
1150 .id = AV_CODEC_ID_XWD,
1151 .type = AVMEDIA_TYPE_VIDEO,
1152 .name = "xwd",
1153 .long_name = NULL_IF_CONFIG_SMALL("XWD (X Window Dump) image"),
1154 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1155 .mime_types= MT("image/x-xwindowdump"),
1156 },
1157 {
1158 .id = AV_CODEC_ID_CDXL,
1159 .type = AVMEDIA_TYPE_VIDEO,
1160 .name = "cdxl",
1161 .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"),
1162 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1163 },
1164 {
1165 .id = AV_CODEC_ID_XBM,
1166 .type = AVMEDIA_TYPE_VIDEO,
1167 .name = "xbm",
1168 .long_name = NULL_IF_CONFIG_SMALL("XBM (X BitMap) image"),
1169 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1170 .mime_types= MT("image/x-xbitmap"),
1171 },
1172 {
1173 .id = AV_CODEC_ID_ZEROCODEC,
1174 .type = AVMEDIA_TYPE_VIDEO,
1175 .name = "zerocodec",
1176 .long_name = NULL_IF_CONFIG_SMALL("ZeroCodec Lossless Video"),
1177 .props = AV_CODEC_PROP_LOSSLESS,
1178 },
1179 {
1180 .id = AV_CODEC_ID_MSS1,
1181 .type = AVMEDIA_TYPE_VIDEO,
1182 .name = "mss1",
1183 .long_name = NULL_IF_CONFIG_SMALL("MS Screen 1"),
1184 .props = AV_CODEC_PROP_LOSSY,
1185 },
1186 {
1187 .id = AV_CODEC_ID_MSA1,
1188 .type = AVMEDIA_TYPE_VIDEO,
1189 .name = "msa1",
1190 .long_name = NULL_IF_CONFIG_SMALL("MS ATC Screen"),
1191 .props = AV_CODEC_PROP_LOSSY,
1192 },
1193 {
1194 .id = AV_CODEC_ID_TSCC2,
1195 .type = AVMEDIA_TYPE_VIDEO,
1196 .name = "tscc2",
1197 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Codec 2"),
1198 .props = AV_CODEC_PROP_LOSSY,
1199 },
1200 {
1201 .id = AV_CODEC_ID_MTS2,
1202 .type = AVMEDIA_TYPE_VIDEO,
1203 .name = "mts2",
1204 .long_name = NULL_IF_CONFIG_SMALL("MS Expression Encoder Screen"),
1205 .props = AV_CODEC_PROP_LOSSY,
1206 },
1207 {
1208 .id = AV_CODEC_ID_CLLC,
1209 .type = AVMEDIA_TYPE_VIDEO,
1210 .name = "cllc",
1211 .long_name = NULL_IF_CONFIG_SMALL("Canopus Lossless Codec"),
1212 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1213 },
1214 {
1215 .id = AV_CODEC_ID_MSS2,
1216 .type = AVMEDIA_TYPE_VIDEO,
1217 .name = "mss2",
1218 .long_name = NULL_IF_CONFIG_SMALL("MS Windows Media Video V9 Screen"),
1219 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1220 },
1221 {
1222 .id = AV_CODEC_ID_VP9,
1223 .type = AVMEDIA_TYPE_VIDEO,
1224 .name = "vp9",
1225 .long_name = NULL_IF_CONFIG_SMALL("Google VP9"),
1226 .props = AV_CODEC_PROP_LOSSY,
1227 .profiles = NULL_IF_CONFIG_SMALL(ff_vp9_profiles),
1228 },
1229 {
1230 .id = AV_CODEC_ID_AIC,
1231 .type = AVMEDIA_TYPE_VIDEO,
1232 .name = "aic",
1233 .long_name = NULL_IF_CONFIG_SMALL("Apple Intermediate Codec"),
1234 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1235 },
1236 {
1237 .id = AV_CODEC_ID_ESCAPE130,
1238 .type = AVMEDIA_TYPE_VIDEO,
1239 .name = "escape130",
1240 .long_name = NULL_IF_CONFIG_SMALL("Escape 130"),
1241 .props = AV_CODEC_PROP_LOSSY,
1242 },
1243 {
1244 .id = AV_CODEC_ID_G2M,
1245 .type = AVMEDIA_TYPE_VIDEO,
1246 .name = "g2m",
1247 .long_name = NULL_IF_CONFIG_SMALL("Go2Meeting"),
1248 .props = AV_CODEC_PROP_LOSSY,
1249 },
1250 {
1251 .id = AV_CODEC_ID_WEBP,
1252 .type = AVMEDIA_TYPE_VIDEO,
1253 .name = "webp",
1254 .long_name = NULL_IF_CONFIG_SMALL("WebP"),
1255 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1256 AV_CODEC_PROP_LOSSLESS,
1257 .mime_types= MT("image/webp"),
1258 },
1259 {
1260 .id = AV_CODEC_ID_HNM4_VIDEO,
1261 .type = AVMEDIA_TYPE_VIDEO,
1262 .name = "hnm4video",
1263 .long_name = NULL_IF_CONFIG_SMALL("HNM 4 video"),
1264 .props = AV_CODEC_PROP_LOSSY,
1265 },
1266 {
1267 .id = AV_CODEC_ID_HEVC,
1268 .type = AVMEDIA_TYPE_VIDEO,
1269 .name = "hevc",
1270 .long_name = NULL_IF_CONFIG_SMALL("H.265 / HEVC (High Efficiency Video Coding)"),
1271 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
1272 .profiles = NULL_IF_CONFIG_SMALL(ff_hevc_profiles),
1273 },
1274 {
1275 .id = AV_CODEC_ID_FIC,
1276 .type = AVMEDIA_TYPE_VIDEO,
1277 .name = "fic",
1278 .long_name = NULL_IF_CONFIG_SMALL("Mirillis FIC"),
1279 .props = AV_CODEC_PROP_LOSSY,
1280 },
1281 {
1282 .id = AV_CODEC_ID_ALIAS_PIX,
1283 .type = AVMEDIA_TYPE_VIDEO,
1284 .name = "alias_pix",
1285 .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"),
1286 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1287 },
1288 {
1289 .id = AV_CODEC_ID_BRENDER_PIX,
1290 .type = AVMEDIA_TYPE_VIDEO,
1291 .name = "brender_pix",
1292 .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"),
1293 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1294 },
1295 {
1296 .id = AV_CODEC_ID_PAF_VIDEO,
1297 .type = AVMEDIA_TYPE_VIDEO,
1298 .name = "paf_video",
1299 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Video"),
1300 .props = AV_CODEC_PROP_LOSSY,
1301 },
1302 {
1303 .id = AV_CODEC_ID_EXR,
1304 .type = AVMEDIA_TYPE_VIDEO,
1305 .name = "exr",
1306 .long_name = NULL_IF_CONFIG_SMALL("OpenEXR image"),
1307 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1308 AV_CODEC_PROP_LOSSLESS,
1309 },
1310 {
1311 .id = AV_CODEC_ID_VP7,
1312 .type = AVMEDIA_TYPE_VIDEO,
1313 .name = "vp7",
1314 .long_name = NULL_IF_CONFIG_SMALL("On2 VP7"),
1315 .props = AV_CODEC_PROP_LOSSY,
1316 },
1317 {
1318 .id = AV_CODEC_ID_SANM,
1319 .type = AVMEDIA_TYPE_VIDEO,
1320 .name = "sanm",
1321 .long_name = NULL_IF_CONFIG_SMALL("LucasArts SANM/SMUSH video"),
1322 .props = AV_CODEC_PROP_LOSSY,
1323 },
1324 {
1325 .id = AV_CODEC_ID_SGIRLE,
1326 .type = AVMEDIA_TYPE_VIDEO,
1327 .name = "sgirle",
1328 .long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
1329 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1330 },
1331 {
1332 .id = AV_CODEC_ID_MVC1,
1333 .type = AVMEDIA_TYPE_VIDEO,
1334 .name = "mvc1",
1335 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 1"),
1336 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1337 },
1338 {
1339 .id = AV_CODEC_ID_MVC2,
1340 .type = AVMEDIA_TYPE_VIDEO,
1341 .name = "mvc2",
1342 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 2"),
1343 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1344 },
1345 {
1346 .id = AV_CODEC_ID_HQX,
1347 .type = AVMEDIA_TYPE_VIDEO,
1348 .name = "hqx",
1349 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQX"),
1350 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1351 },
1352 {
1353 .id = AV_CODEC_ID_TDSC,
1354 .type = AVMEDIA_TYPE_VIDEO,
1355 .name = "tdsc",
1356 .long_name = NULL_IF_CONFIG_SMALL("TDSC"),
1357 .props = AV_CODEC_PROP_LOSSY,
1358 },
1359 {
1360 .id = AV_CODEC_ID_HQ_HQA,
1361 .type = AVMEDIA_TYPE_VIDEO,
1362 .name = "hq_hqa",
1363 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQ/HQA"),
1364 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1365 },
1366 {
1367 .id = AV_CODEC_ID_HAP,
1368 .type = AVMEDIA_TYPE_VIDEO,
1369 .name = "hap",
1370 .long_name = NULL_IF_CONFIG_SMALL("Vidvox Hap"),
1371 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1372 },
1373 {
1374 .id = AV_CODEC_ID_DDS,
1375 .type = AVMEDIA_TYPE_VIDEO,
1376 .name = "dds",
1377 .long_name = NULL_IF_CONFIG_SMALL("DirectDraw Surface image decoder"),
1378 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1379 AV_CODEC_PROP_LOSSLESS,
1380 },
1381 {
1382 .id = AV_CODEC_ID_DXV,
1383 .type = AVMEDIA_TYPE_VIDEO,
1384 .name = "dxv",
1385 .long_name = NULL_IF_CONFIG_SMALL("Resolume DXV"),
1386 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1387 },
1388 {
1389 .id = AV_CODEC_ID_SCREENPRESSO,
1390 .type = AVMEDIA_TYPE_VIDEO,
1391 .name = "screenpresso",
1392 .long_name = NULL_IF_CONFIG_SMALL("Screenpresso"),
1393 .props = AV_CODEC_PROP_LOSSLESS,
1394 },
1395 {
1396 .id = AV_CODEC_ID_RSCC,
1397 .type = AVMEDIA_TYPE_VIDEO,
1398 .name = "rscc",
1399 .long_name = NULL_IF_CONFIG_SMALL("innoHeim/Rsupport Screen Capture Codec"),
1400 .props = AV_CODEC_PROP_LOSSLESS,
1401 },
1402 {
1403 .id = AV_CODEC_ID_AVS2,
1404 .type = AVMEDIA_TYPE_VIDEO,
1405 .name = "avs2",
1406 .long_name = NULL_IF_CONFIG_SMALL("AVS2-P2/IEEE1857.4"),
1407 .props = AV_CODEC_PROP_LOSSY,
1408 },
1409 {
1410 .id = AV_CODEC_ID_PGX,
1411 .type = AVMEDIA_TYPE_VIDEO,
1412 .name = "pgx",
1413 .long_name = NULL_IF_CONFIG_SMALL("PGX (JPEG2000 Test Format)"),
1414 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1415 },
1416 {
1417 .id = AV_CODEC_ID_AVS3,
1418 .type = AVMEDIA_TYPE_VIDEO,
1419 .name = "avs3",
1420 .long_name = NULL_IF_CONFIG_SMALL("AVS3-P2/IEEE1857.10"),
1421 .props = AV_CODEC_PROP_LOSSY,
1422 },
1423 {
1424 .id = AV_CODEC_ID_MSP2,
1425 .type = AVMEDIA_TYPE_VIDEO,
1426 .name = "msp2",
1427 .long_name = NULL_IF_CONFIG_SMALL("Microsoft Paint (MSP) version 2"),
1428 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1429 },
1430 {
1431 .id = AV_CODEC_ID_VVC,
1432 .type = AVMEDIA_TYPE_VIDEO,
1433 .name = "vvc",
1434 .long_name = NULL_IF_CONFIG_SMALL("H.266 / VVC (Versatile Video Coding)"),
1435 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
1436 .profiles = NULL_IF_CONFIG_SMALL(ff_vvc_profiles),
1437 },
1438 {
1439 .id = AV_CODEC_ID_Y41P,
1440 .type = AVMEDIA_TYPE_VIDEO,
1441 .name = "y41p",
1442 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed YUV 4:1:1 12-bit"),
1443 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1444 },
1445 {
1446 .id = AV_CODEC_ID_AVRP,
1447 .type = AVMEDIA_TYPE_VIDEO,
1448 .name = "avrp",
1449 .long_name = NULL_IF_CONFIG_SMALL("Avid 1:1 10-bit RGB Packer"),
1450 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1451 },
1452 {
1453 .id = AV_CODEC_ID_012V,
1454 .type = AVMEDIA_TYPE_VIDEO,
1455 .name = "012v",
1456 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
1457 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1458 },
1459 {
1460 .id = AV_CODEC_ID_AVUI,
1461 .type = AVMEDIA_TYPE_VIDEO,
1462 .name = "avui",
1463 .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
1464 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1465 },
1466 {
1467 .id = AV_CODEC_ID_TARGA_Y216,
1468 .type = AVMEDIA_TYPE_VIDEO,
1469 .name = "targa_y216",
1470 .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"),
1471 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1472 },
1473 {
1474 .id = AV_CODEC_ID_YUV4,
1475 .type = AVMEDIA_TYPE_VIDEO,
1476 .name = "yuv4",
1477 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:2:0"),
1478 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1479 },
1480 {
1481 .id = AV_CODEC_ID_AVRN,
1482 .type = AVMEDIA_TYPE_VIDEO,
1483 .name = "avrn",
1484 .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"),
1485 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1486 },
1487 {
1488 .id = AV_CODEC_ID_CPIA,
1489 .type = AVMEDIA_TYPE_VIDEO,
1490 .name = "cpia",
1491 .long_name = NULL_IF_CONFIG_SMALL("CPiA video format"),
1492 },
1493 {
1494 .id = AV_CODEC_ID_XFACE,
1495 .type = AVMEDIA_TYPE_VIDEO,
1496 .name = "xface",
1497 .long_name = NULL_IF_CONFIG_SMALL("X-face image"),
1498 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1499 },
1500 {
1501 .id = AV_CODEC_ID_SNOW,
1502 .type = AVMEDIA_TYPE_VIDEO,
1503 .name = "snow",
1504 .long_name = NULL_IF_CONFIG_SMALL("Snow"),
1505 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1506 },
1507 {
1508 .id = AV_CODEC_ID_SMVJPEG,
1509 .type = AVMEDIA_TYPE_VIDEO,
1510 .name = "smvjpeg",
1511 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1512 .long_name = NULL_IF_CONFIG_SMALL("Sigmatel Motion Video"),
1513 },
1514 {
1515 .id = AV_CODEC_ID_APNG,
1516 .type = AVMEDIA_TYPE_VIDEO,
1517 .name = "apng",
1518 .long_name = NULL_IF_CONFIG_SMALL("APNG (Animated Portable Network Graphics) image"),
1519 .props = AV_CODEC_PROP_LOSSLESS,
1520 .mime_types= MT("image/png"),
1521 },
1522 {
1523 .id = AV_CODEC_ID_DAALA,
1524 .type = AVMEDIA_TYPE_VIDEO,
1525 .name = "daala",
1526 .long_name = NULL_IF_CONFIG_SMALL("Daala"),
1527 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1528 },
1529 {
1530 .id = AV_CODEC_ID_CFHD,
1531 .type = AVMEDIA_TYPE_VIDEO,
1532 .name = "cfhd",
1533 .long_name = NULL_IF_CONFIG_SMALL("GoPro CineForm HD"),
1534 .props = AV_CODEC_PROP_LOSSY,
1535 },
1536 {
1537 .id = AV_CODEC_ID_TRUEMOTION2RT,
1538 .type = AVMEDIA_TYPE_VIDEO,
1539 .name = "truemotion2rt",
1540 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0 Real Time"),
1541 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1542 },
1543 {
1544 .id = AV_CODEC_ID_M101,
1545 .type = AVMEDIA_TYPE_VIDEO,
1546 .name = "m101",
1547 .long_name = NULL_IF_CONFIG_SMALL("Matrox Uncompressed SD"),
1548 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1549 },
1550 {
1551 .id = AV_CODEC_ID_MAGICYUV,
1552 .type = AVMEDIA_TYPE_VIDEO,
1553 .name = "magicyuv",
1554 .long_name = NULL_IF_CONFIG_SMALL("MagicYUV video"),
1555 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1556 },
1557 {
1558 .id = AV_CODEC_ID_SHEERVIDEO,
1559 .type = AVMEDIA_TYPE_VIDEO,
1560 .name = "sheervideo",
1561 .long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
1562 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1563 },
1564 {
1565 .id = AV_CODEC_ID_YLC,
1566 .type = AVMEDIA_TYPE_VIDEO,
1567 .name = "ylc",
1568 .long_name = NULL_IF_CONFIG_SMALL("YUY2 Lossless Codec"),
1569 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1570 },
1571 {
1572 .id = AV_CODEC_ID_PSD,
1573 .type = AVMEDIA_TYPE_VIDEO,
1574 .name = "psd",
1575 .long_name = NULL_IF_CONFIG_SMALL("Photoshop PSD file"),
1576 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1577 },
1578 {
1579 .id = AV_CODEC_ID_PIXLET,
1580 .type = AVMEDIA_TYPE_VIDEO,
1581 .name = "pixlet",
1582 .long_name = NULL_IF_CONFIG_SMALL("Apple Pixlet"),
1583 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1584 },
1585 {
1586 .id = AV_CODEC_ID_SPEEDHQ,
1587 .type = AVMEDIA_TYPE_VIDEO,
1588 .name = "speedhq",
1589 .long_name = NULL_IF_CONFIG_SMALL("NewTek SpeedHQ"),
1590 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1591 },
1592 {
1593 .id = AV_CODEC_ID_FMVC,
1594 .type = AVMEDIA_TYPE_VIDEO,
1595 .name = "fmvc",
1596 .long_name = NULL_IF_CONFIG_SMALL("FM Screen Capture Codec"),
1597 .props = AV_CODEC_PROP_LOSSLESS,
1598 },
1599 {
1600 .id = AV_CODEC_ID_SCPR,
1601 .type = AVMEDIA_TYPE_VIDEO,
1602 .name = "scpr",
1603 .long_name = NULL_IF_CONFIG_SMALL("ScreenPressor"),
1604 .props = AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_LOSSY,
1605 },
1606 {
1607 .id = AV_CODEC_ID_CLEARVIDEO,
1608 .type = AVMEDIA_TYPE_VIDEO,
1609 .name = "clearvideo",
1610 .long_name = NULL_IF_CONFIG_SMALL("Iterated Systems ClearVideo"),
1611 .props = AV_CODEC_PROP_LOSSY,
1612 },
1613 {
1614 .id = AV_CODEC_ID_XPM,
1615 .type = AVMEDIA_TYPE_VIDEO,
1616 .name = "xpm",
1617 .long_name = NULL_IF_CONFIG_SMALL("XPM (X PixMap) image"),
1618 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1619 .mime_types= MT("image/x-xpixmap"),
1620 },
1621 {
1622 .id = AV_CODEC_ID_AV1,
1623 .type = AVMEDIA_TYPE_VIDEO,
1624 .name = "av1",
1625 .long_name = NULL_IF_CONFIG_SMALL("Alliance for Open Media AV1"),
1626 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1627 .profiles = NULL_IF_CONFIG_SMALL(ff_av1_profiles),
1628 },
1629 {
1630 .id = AV_CODEC_ID_BITPACKED,
1631 .type = AVMEDIA_TYPE_VIDEO,
1632 .name = "bitpacked",
1633 .long_name = NULL_IF_CONFIG_SMALL("Bitpacked"),
1634 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1635 },
1636 {
1637 .id = AV_CODEC_ID_MSCC,
1638 .type = AVMEDIA_TYPE_VIDEO,
1639 .name = "mscc",
1640 .long_name = NULL_IF_CONFIG_SMALL("Mandsoft Screen Capture Codec"),
1641 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1642 },
1643 {
1644 .id = AV_CODEC_ID_SRGC,
1645 .type = AVMEDIA_TYPE_VIDEO,
1646 .name = "srgc",
1647 .long_name = NULL_IF_CONFIG_SMALL("Screen Recorder Gold Codec"),
1648 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1649 },
1650 {
1651 .id = AV_CODEC_ID_SVG,
1652 .type = AVMEDIA_TYPE_VIDEO,
1653 .name = "svg",
1654 .long_name = NULL_IF_CONFIG_SMALL("Scalable Vector Graphics"),
1655 .props = AV_CODEC_PROP_LOSSLESS,
1656 .mime_types= MT("image/svg+xml"),
1657 },
1658 {
1659 .id = AV_CODEC_ID_GDV,
1660 .type = AVMEDIA_TYPE_VIDEO,
1661 .name = "gdv",
1662 .long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"),
1663 .props = AV_CODEC_PROP_LOSSY,
1664 },
1665 {
1666 .id = AV_CODEC_ID_FITS,
1667 .type = AVMEDIA_TYPE_VIDEO,
1668 .name = "fits",
1669 .long_name = NULL_IF_CONFIG_SMALL("FITS (Flexible Image Transport System)"),
1670 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1671 },
1672 {
1673 .id = AV_CODEC_ID_IMM4,
1674 .type = AVMEDIA_TYPE_VIDEO,
1675 .name = "imm4",
1676 .long_name = NULL_IF_CONFIG_SMALL("Infinity IMM4"),
1677 .props = AV_CODEC_PROP_LOSSY,
1678 },
1679 {
1680 .id = AV_CODEC_ID_PROSUMER,
1681 .type = AVMEDIA_TYPE_VIDEO,
1682 .name = "prosumer",
1683 .long_name = NULL_IF_CONFIG_SMALL("Brooktree ProSumer Video"),
1684 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1685 },
1686 {
1687 .id = AV_CODEC_ID_MWSC,
1688 .type = AVMEDIA_TYPE_VIDEO,
1689 .name = "mwsc",
1690 .long_name = NULL_IF_CONFIG_SMALL("MatchWare Screen Capture Codec"),
1691 .props = AV_CODEC_PROP_LOSSLESS,
1692 },
1693 {
1694 .id = AV_CODEC_ID_WCMV,
1695 .type = AVMEDIA_TYPE_VIDEO,
1696 .name = "wcmv",
1697 .long_name = NULL_IF_CONFIG_SMALL("WinCAM Motion Video"),
1698 .props = AV_CODEC_PROP_LOSSLESS,
1699 },
1700 {
1701 .id = AV_CODEC_ID_RASC,
1702 .type = AVMEDIA_TYPE_VIDEO,
1703 .name = "rasc",
1704 .long_name = NULL_IF_CONFIG_SMALL("RemotelyAnywhere Screen Capture"),
1705 .props = AV_CODEC_PROP_LOSSY,
1706 },
1707 {
1708 .id = AV_CODEC_ID_HYMT,
1709 .type = AVMEDIA_TYPE_VIDEO,
1710 .name = "hymt",
1711 .long_name = NULL_IF_CONFIG_SMALL("HuffYUV MT"),
1712 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1713 },
1714 {
1715 .id = AV_CODEC_ID_ARBC,
1716 .type = AVMEDIA_TYPE_VIDEO,
1717 .name = "arbc",
1718 .long_name = NULL_IF_CONFIG_SMALL("Gryphon's Anim Compressor"),
1719 .props = AV_CODEC_PROP_LOSSY,
1720 },
1721 {
1722 .id = AV_CODEC_ID_AGM,
1723 .type = AVMEDIA_TYPE_VIDEO,
1724 .name = "agm",
1725 .long_name = NULL_IF_CONFIG_SMALL("Amuse Graphics Movie"),
1726 .props = AV_CODEC_PROP_LOSSY,
1727 },
1728 {
1729 .id = AV_CODEC_ID_LSCR,
1730 .type = AVMEDIA_TYPE_VIDEO,
1731 .name = "lscr",
1732 .long_name = NULL_IF_CONFIG_SMALL("LEAD Screen Capture"),
1733 .props = AV_CODEC_PROP_LOSSY,
1734 },
1735 {
1736 .id = AV_CODEC_ID_VP4,
1737 .type = AVMEDIA_TYPE_VIDEO,
1738 .name = "vp4",
1739 .long_name = NULL_IF_CONFIG_SMALL("On2 VP4"),
1740 .props = AV_CODEC_PROP_LOSSY,
1741 },
1742 {
1743 .id = AV_CODEC_ID_IMM5,
1744 .type = AVMEDIA_TYPE_VIDEO,
1745 .name = "imm5",
1746 .long_name = NULL_IF_CONFIG_SMALL("Infinity IMM5"),
1747 .props = AV_CODEC_PROP_LOSSY,
1748 },
1749 {
1750 .id = AV_CODEC_ID_MVDV,
1751 .type = AVMEDIA_TYPE_VIDEO,
1752 .name = "mvdv",
1753 .long_name = NULL_IF_CONFIG_SMALL("MidiVid VQ"),
1754 .props = AV_CODEC_PROP_LOSSY,
1755 },
1756 {
1757 .id = AV_CODEC_ID_MVHA,
1758 .type = AVMEDIA_TYPE_VIDEO,
1759 .name = "mvha",
1760 .long_name = NULL_IF_CONFIG_SMALL("MidiVid Archive Codec"),
1761 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1762 },
1763 {
1764 .id = AV_CODEC_ID_CDTOONS,
1765 .type = AVMEDIA_TYPE_VIDEO,
1766 .name = "cdtoons",
1767 .long_name = NULL_IF_CONFIG_SMALL("CDToons video"),
1768 .props = AV_CODEC_PROP_LOSSLESS,
1769 },
1770 {
1771 .id = AV_CODEC_ID_MV30,
1772 .type = AVMEDIA_TYPE_VIDEO,
1773 .name = "mv30",
1774 .long_name = NULL_IF_CONFIG_SMALL("MidiVid 3.0"),
1775 .props = AV_CODEC_PROP_LOSSY,
1776 },
1777 {
1778 .id = AV_CODEC_ID_NOTCHLC,
1779 .type = AVMEDIA_TYPE_VIDEO,
1780 .name = "notchlc",
1781 .long_name = NULL_IF_CONFIG_SMALL("NotchLC"),
1782 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1783 },
1784 {
1785 .id = AV_CODEC_ID_PFM,
1786 .type = AVMEDIA_TYPE_VIDEO,
1787 .name = "pfm",
1788 .long_name = NULL_IF_CONFIG_SMALL("PFM (Portable FloatMap) image"),
1789 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1790 },
1791 {
1792 .id = AV_CODEC_ID_MOBICLIP,
1793 .type = AVMEDIA_TYPE_VIDEO,
1794 .name = "mobiclip",
1795 .long_name = NULL_IF_CONFIG_SMALL("MobiClip Video"),
1796 .props = AV_CODEC_PROP_LOSSY,
1797 },
1798 {
1799 .id = AV_CODEC_ID_PHOTOCD,
1800 .type = AVMEDIA_TYPE_VIDEO,
1801 .name = "photocd",
1802 .long_name = NULL_IF_CONFIG_SMALL("Kodak Photo CD"),
1803 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1804 },
1805 {
1806 .id = AV_CODEC_ID_IPU,
1807 .type = AVMEDIA_TYPE_VIDEO,
1808 .name = "ipu",
1809 .long_name = NULL_IF_CONFIG_SMALL("IPU Video"),
1810 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1811 },
1812 {
1813 .id = AV_CODEC_ID_ARGO,
1814 .type = AVMEDIA_TYPE_VIDEO,
1815 .name = "argo",
1816 .long_name = NULL_IF_CONFIG_SMALL("Argonaut Games Video"),
1817 .props = AV_CODEC_PROP_LOSSY,
1818 },
1819 {
1820 .id = AV_CODEC_ID_CRI,
1821 .type = AVMEDIA_TYPE_VIDEO,
1822 .name = "cri",
1823 .long_name = NULL_IF_CONFIG_SMALL("Cintel RAW"),
1824 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1825 },
1826 {
1827 .id = AV_CODEC_ID_SIMBIOSIS_IMX,
1828 .type = AVMEDIA_TYPE_VIDEO,
1829 .name = "simbiosis_imx",
1830 .long_name = NULL_IF_CONFIG_SMALL("Simbiosis Interactive IMX Video"),
1831 .props = AV_CODEC_PROP_LOSSY,
1832 },
1833 {
1834 .id = AV_CODEC_ID_SGA_VIDEO,
1835 .type = AVMEDIA_TYPE_VIDEO,
1836 .name = "sga",
1837 .long_name = NULL_IF_CONFIG_SMALL("Digital Pictures SGA Video"),
1838 .props = AV_CODEC_PROP_LOSSY,
1839 },
1840 {
1841 .id = AV_CODEC_ID_GEM,
1842 .type = AVMEDIA_TYPE_VIDEO,
1843 .name = "gem",
1844 .long_name = NULL_IF_CONFIG_SMALL("GEM Raster image"),
1845 .props = AV_CODEC_PROP_LOSSY,
1846 },
1847 {
1848 .id = AV_CODEC_ID_VBN,
1849 .type = AVMEDIA_TYPE_VIDEO,
1850 .name = "vbn",
1851 .long_name = NULL_IF_CONFIG_SMALL("Vizrt Binary Image"),
1852 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1853 },
1854 {
1855 .id = AV_CODEC_ID_JPEGXL,
1856 .type = AVMEDIA_TYPE_VIDEO,
1857 .name = "jpegxl",
1858 .long_name = NULL_IF_CONFIG_SMALL("JPEG XL"),
1859 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1860 AV_CODEC_PROP_LOSSLESS,
1861 .mime_types= MT("image/jxl"),
1862 },
1863 {
1864 .id = AV_CODEC_ID_QOI,
1865 .type = AVMEDIA_TYPE_VIDEO,
1866 .name = "qoi",
1867 .long_name = NULL_IF_CONFIG_SMALL("QOI (Quite OK Image)"),
1868 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1869 },
1870 {
1871 .id = AV_CODEC_ID_PHM,
1872 .type = AVMEDIA_TYPE_VIDEO,
1873 .name = "phm",
1874 .long_name = NULL_IF_CONFIG_SMALL("PHM (Portable HalfFloatMap) image"),
1875 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1876 },
1877 {
1878 .id = AV_CODEC_ID_RADIANCE_HDR,
1879 .type = AVMEDIA_TYPE_VIDEO,
1880 .name = "hdr",
1881 .long_name = NULL_IF_CONFIG_SMALL("HDR (Radiance RGBE format) image"),
1882 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1883 },
1884 {
1885 .id = AV_CODEC_ID_WBMP,
1886 .type = AVMEDIA_TYPE_VIDEO,
1887 .name = "wbmp",
1888 .long_name = NULL_IF_CONFIG_SMALL("WBMP (Wireless Application Protocol Bitmap) image"),
1889 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1890 },
1891 {
1892 .id = AV_CODEC_ID_MEDIA100,
1893 .type = AVMEDIA_TYPE_VIDEO,
1894 .name = "media100",
1895 .long_name = NULL_IF_CONFIG_SMALL("Media 100i"),
1896 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1897 },
1898 {
1899 .id = AV_CODEC_ID_VQC,
1900 .type = AVMEDIA_TYPE_VIDEO,
1901 .name = "vqc",
1902 .long_name = NULL_IF_CONFIG_SMALL("ViewQuest VQC"),
1903 .props = AV_CODEC_PROP_LOSSY,
1904 },
1905 {
1906 .id = AV_CODEC_ID_PDV,
1907 .type = AVMEDIA_TYPE_VIDEO,
1908 .name = "pdv",
1909 .long_name = NULL_IF_CONFIG_SMALL("PDV (PlayDate Video)"),
1910 .props = AV_CODEC_PROP_LOSSY,
1911 },
1912 {
1913 .id = AV_CODEC_ID_EVC,
1914 .type = AVMEDIA_TYPE_VIDEO,
1915 .name = "evc",
1916 .long_name = NULL_IF_CONFIG_SMALL("MPEG-5 EVC (Essential Video Coding)"),
1917 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
1918 .profiles = NULL_IF_CONFIG_SMALL(ff_evc_profiles),
1919 },
1920 {
1921 .id = AV_CODEC_ID_RTV1,
1922 .type = AVMEDIA_TYPE_VIDEO,
1923 .name = "rtv1",
1924 .long_name = NULL_IF_CONFIG_SMALL("RTV1 (RivaTuner Video)"),
1925 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1926 },
1927 {
1928 .id = AV_CODEC_ID_VMIX,
1929 .type = AVMEDIA_TYPE_VIDEO,
1930 .name = "vmix",
1931 .long_name = NULL_IF_CONFIG_SMALL("vMix Video"),
1932 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1933 },
1934 {
1935 .id = AV_CODEC_ID_LEAD,
1936 .type = AVMEDIA_TYPE_VIDEO,
1937 .name = "lead",
1938 .long_name = NULL_IF_CONFIG_SMALL("LEAD MCMP"),
1939 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1940 },
1941 {
1942 .id = AV_CODEC_ID_DNXUC,
1943 .type = AVMEDIA_TYPE_VIDEO,
1944 .name = "dnxuc",
1945 .long_name = NULL_IF_CONFIG_SMALL("DNxUncompressed / SMPTE RDD 50"),
1946 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1947 },
1948 {
1949 .id = AV_CODEC_ID_RV60,
1950 .type = AVMEDIA_TYPE_VIDEO,
1951 .name = "rv60",
1952 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 6.0"),
1953 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
1954 },
1955 {
1956 .id = AV_CODEC_ID_JPEGXL_ANIM,
1957 .type = AVMEDIA_TYPE_VIDEO,
1958 .name = "jpegxl_anim",
1959 .long_name = NULL_IF_CONFIG_SMALL("JPEG XL animated"),
1960 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1961 .mime_types= MT("image/jxl"),
1962 },
1963 {
1964 .id = AV_CODEC_ID_APV,
1965 .type = AVMEDIA_TYPE_VIDEO,
1966 .name = "apv",
1967 .long_name = NULL_IF_CONFIG_SMALL("Advanced Professional Video"),
1968 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1969 },
1970 {
1971 .id = AV_CODEC_ID_PRORES_RAW,
1972 .type = AVMEDIA_TYPE_VIDEO,
1973 .name = "prores_raw",
1974 .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes RAW"),
1975 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1976 .profiles = NULL_IF_CONFIG_SMALL(ff_prores_raw_profiles),
1977 },
1978 {
1979 .id = AV_CODEC_ID_JPEGXS,
1980 .type = AVMEDIA_TYPE_VIDEO,
1981 .name = "jpegxs",
1982 .long_name = NULL_IF_CONFIG_SMALL("JPEG XS"),
1983 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1984 AV_CODEC_PROP_LOSSLESS,
1985 .mime_types= MT("image/jxs"),
1986 },
1987 {
1988 .id = AV_CODEC_ID_WEBP_ANIM,
1989 .type = AVMEDIA_TYPE_VIDEO,
1990 .name = "webp_anim",
1991 .long_name = NULL_IF_CONFIG_SMALL("Animated WebP"),
1992 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1993 .mime_types= MT("image/webp"),
1994 },
1995 {
1996 .id = AV_CODEC_ID_ASTC,
1997 .type = AVMEDIA_TYPE_VIDEO,
1998 .name = "astc",
1999 .long_name = NULL_IF_CONFIG_SMALL("ASTC (Adaptive Scalable Texture Compression)"),
2000 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2001 .profiles = NULL_IF_CONFIG_SMALL(ff_astc_profiles),
2002 .mime_types= MT("image/astc"),
2003 },
2004 {
2005 .id = AV_CODEC_ID_RW2,
2006 .type = AVMEDIA_TYPE_VIDEO,
2007 .name = "rw2",
2008 .long_name = NULL_IF_CONFIG_SMALL("Panasonic RW2"),
2009 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2010 .mime_types= MT("image/x-panasonic-rw2"),
2011 },
2012 {
2013 .id = AV_CODEC_ID_IMM6,
2014 .type = AVMEDIA_TYPE_VIDEO,
2015 .name = "imm6",
2016 .long_name = NULL_IF_CONFIG_SMALL("Infinity IMM6"),
2017 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
2018 },
2019
2020 /* various PCM "codecs" */
2021 {
2022 .id = AV_CODEC_ID_PCM_S16LE,
2023 .type = AVMEDIA_TYPE_AUDIO,
2024 .name = "pcm_s16le",
2025 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
2026 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2027 },
2028 {
2029 .id = AV_CODEC_ID_PCM_S16BE,
2030 .type = AVMEDIA_TYPE_AUDIO,
2031 .name = "pcm_s16be",
2032 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
2033 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2034 },
2035 {
2036 .id = AV_CODEC_ID_PCM_U16LE,
2037 .type = AVMEDIA_TYPE_AUDIO,
2038 .name = "pcm_u16le",
2039 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
2040 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2041 },
2042 {
2043 .id = AV_CODEC_ID_PCM_U16BE,
2044 .type = AVMEDIA_TYPE_AUDIO,
2045 .name = "pcm_u16be",
2046 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
2047 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2048 },
2049 {
2050 .id = AV_CODEC_ID_PCM_S8,
2051 .type = AVMEDIA_TYPE_AUDIO,
2052 .name = "pcm_s8",
2053 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
2054 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2055 },
2056 {
2057 .id = AV_CODEC_ID_PCM_U8,
2058 .type = AVMEDIA_TYPE_AUDIO,
2059 .name = "pcm_u8",
2060 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
2061 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2062 },
2063 {
2064 .id = AV_CODEC_ID_PCM_MULAW,
2065 .type = AVMEDIA_TYPE_AUDIO,
2066 .name = "pcm_mulaw",
2067 .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law / G.711 mu-law"),
2068 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2069 },
2070 {
2071 .id = AV_CODEC_ID_PCM_ALAW,
2072 .type = AVMEDIA_TYPE_AUDIO,
2073 .name = "pcm_alaw",
2074 .long_name = NULL_IF_CONFIG_SMALL("PCM A-law / G.711 A-law"),
2075 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2076 },
2077 {
2078 .id = AV_CODEC_ID_PCM_S32LE,
2079 .type = AVMEDIA_TYPE_AUDIO,
2080 .name = "pcm_s32le",
2081 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
2082 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2083 },
2084 {
2085 .id = AV_CODEC_ID_PCM_S32BE,
2086 .type = AVMEDIA_TYPE_AUDIO,
2087 .name = "pcm_s32be",
2088 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
2089 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2090 },
2091 {
2092 .id = AV_CODEC_ID_PCM_U32LE,
2093 .type = AVMEDIA_TYPE_AUDIO,
2094 .name = "pcm_u32le",
2095 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
2096 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2097 },
2098 {
2099 .id = AV_CODEC_ID_PCM_U32BE,
2100 .type = AVMEDIA_TYPE_AUDIO,
2101 .name = "pcm_u32be",
2102 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
2103 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2104 },
2105 {
2106 .id = AV_CODEC_ID_PCM_S24LE,
2107 .type = AVMEDIA_TYPE_AUDIO,
2108 .name = "pcm_s24le",
2109 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
2110 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2111 },
2112 {
2113 .id = AV_CODEC_ID_PCM_S24BE,
2114 .type = AVMEDIA_TYPE_AUDIO,
2115 .name = "pcm_s24be",
2116 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
2117 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2118 },
2119 {
2120 .id = AV_CODEC_ID_PCM_U24LE,
2121 .type = AVMEDIA_TYPE_AUDIO,
2122 .name = "pcm_u24le",
2123 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
2124 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2125 },
2126 {
2127 .id = AV_CODEC_ID_PCM_U24BE,
2128 .type = AVMEDIA_TYPE_AUDIO,
2129 .name = "pcm_u24be",
2130 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
2131 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2132 },
2133 {
2134 .id = AV_CODEC_ID_PCM_S24DAUD,
2135 .type = AVMEDIA_TYPE_AUDIO,
2136 .name = "pcm_s24daud",
2137 .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
2138 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2139 },
2140 {
2141 .id = AV_CODEC_ID_PCM_S16LE_PLANAR,
2142 .type = AVMEDIA_TYPE_AUDIO,
2143 .name = "pcm_s16le_planar",
2144 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian planar"),
2145 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2146 },
2147 {
2148 .id = AV_CODEC_ID_PCM_DVD,
2149 .type = AVMEDIA_TYPE_AUDIO,
2150 .name = "pcm_dvd",
2151 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for DVD-Video media"),
2152 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2153 },
2154 {
2155 .id = AV_CODEC_ID_PCM_F32BE,
2156 .type = AVMEDIA_TYPE_AUDIO,
2157 .name = "pcm_f32be",
2158 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
2159 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2160 },
2161 {
2162 .id = AV_CODEC_ID_PCM_F32LE,
2163 .type = AVMEDIA_TYPE_AUDIO,
2164 .name = "pcm_f32le",
2165 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
2166 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2167 },
2168 {
2169 .id = AV_CODEC_ID_PCM_F64BE,
2170 .type = AVMEDIA_TYPE_AUDIO,
2171 .name = "pcm_f64be",
2172 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
2173 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2174 },
2175 {
2176 .id = AV_CODEC_ID_PCM_F64LE,
2177 .type = AVMEDIA_TYPE_AUDIO,
2178 .name = "pcm_f64le",
2179 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
2180 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2181 },
2182 {
2183 .id = AV_CODEC_ID_PCM_BLURAY,
2184 .type = AVMEDIA_TYPE_AUDIO,
2185 .name = "pcm_bluray",
2186 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
2187 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2188 },
2189 {
2190 .id = AV_CODEC_ID_PCM_LXF,
2191 .type = AVMEDIA_TYPE_AUDIO,
2192 .name = "pcm_lxf",
2193 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
2194 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2195 },
2196 {
2197 .id = AV_CODEC_ID_S302M,
2198 .type = AVMEDIA_TYPE_AUDIO,
2199 .name = "s302m",
2200 .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
2201 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2202 },
2203 {
2204 .id = AV_CODEC_ID_PCM_S8_PLANAR,
2205 .type = AVMEDIA_TYPE_AUDIO,
2206 .name = "pcm_s8_planar",
2207 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
2208 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2209 },
2210 {
2211 .id = AV_CODEC_ID_PCM_S24LE_PLANAR,
2212 .type = AVMEDIA_TYPE_AUDIO,
2213 .name = "pcm_s24le_planar",
2214 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
2215 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2216 },
2217 {
2218 .id = AV_CODEC_ID_PCM_S32LE_PLANAR,
2219 .type = AVMEDIA_TYPE_AUDIO,
2220 .name = "pcm_s32le_planar",
2221 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
2222 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2223 },
2224 {
2225 .id = AV_CODEC_ID_PCM_S16BE_PLANAR,
2226 .type = AVMEDIA_TYPE_AUDIO,
2227 .name = "pcm_s16be_planar",
2228 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
2229 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2230 },
2231 {
2232 .id = AV_CODEC_ID_PCM_S64LE,
2233 .type = AVMEDIA_TYPE_AUDIO,
2234 .name = "pcm_s64le",
2235 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit little-endian"),
2236 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2237 },
2238 {
2239 .id = AV_CODEC_ID_PCM_S64BE,
2240 .type = AVMEDIA_TYPE_AUDIO,
2241 .name = "pcm_s64be",
2242 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit big-endian"),
2243 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2244 },
2245 {
2246 .id = AV_CODEC_ID_PCM_F16LE,
2247 .type = AVMEDIA_TYPE_AUDIO,
2248 .name = "pcm_f16le",
2249 .long_name = NULL_IF_CONFIG_SMALL("PCM 16.8 floating point little-endian"),
2250 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2251 },
2252 {
2253 .id = AV_CODEC_ID_PCM_F24LE,
2254 .type = AVMEDIA_TYPE_AUDIO,
2255 .name = "pcm_f24le",
2256 .long_name = NULL_IF_CONFIG_SMALL("PCM 24.0 floating point little-endian"),
2257 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2258 },
2259 {
2260 .id = AV_CODEC_ID_PCM_VIDC,
2261 .type = AVMEDIA_TYPE_AUDIO,
2262 .name = "pcm_vidc",
2263 .long_name = NULL_IF_CONFIG_SMALL("PCM Archimedes VIDC"),
2264 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2265 },
2266 {
2267 .id = AV_CODEC_ID_PCM_SGA,
2268 .type = AVMEDIA_TYPE_AUDIO,
2269 .name = "pcm_sga",
2270 .long_name = NULL_IF_CONFIG_SMALL("PCM SGA"),
2271 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2272 },
2273 {
2274 .id = AV_CODEC_ID_PCM_DVDA,
2275 .type = AVMEDIA_TYPE_AUDIO,
2276 .name = "pcm_dvda",
2277 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for DVD-Audio media"),
2278 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2279 },
2280
2281 /* various ADPCM codecs */
2282 {
2283 .id = AV_CODEC_ID_ADPCM_IMA_QT,
2284 .type = AVMEDIA_TYPE_AUDIO,
2285 .name = "adpcm_ima_qt",
2286 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
2287 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2288 },
2289 {
2290 .id = AV_CODEC_ID_ADPCM_IMA_WAV,
2291 .type = AVMEDIA_TYPE_AUDIO,
2292 .name = "adpcm_ima_wav",
2293 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
2294 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2295 },
2296 {
2297 .id = AV_CODEC_ID_ADPCM_IMA_DK3,
2298 .type = AVMEDIA_TYPE_AUDIO,
2299 .name = "adpcm_ima_dk3",
2300 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
2301 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2302 },
2303 {
2304 .id = AV_CODEC_ID_ADPCM_IMA_DK4,
2305 .type = AVMEDIA_TYPE_AUDIO,
2306 .name = "adpcm_ima_dk4",
2307 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
2308 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2309 },
2310 {
2311 .id = AV_CODEC_ID_ADPCM_IMA_WS,
2312 .type = AVMEDIA_TYPE_AUDIO,
2313 .name = "adpcm_ima_ws",
2314 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
2315 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2316 },
2317 {
2318 .id = AV_CODEC_ID_ADPCM_IMA_SMJPEG,
2319 .type = AVMEDIA_TYPE_AUDIO,
2320 .name = "adpcm_ima_smjpeg",
2321 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
2322 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2323 },
2324 {
2325 .id = AV_CODEC_ID_ADPCM_MS,
2326 .type = AVMEDIA_TYPE_AUDIO,
2327 .name = "adpcm_ms",
2328 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
2329 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2330 },
2331 {
2332 .id = AV_CODEC_ID_ADPCM_4XM,
2333 .type = AVMEDIA_TYPE_AUDIO,
2334 .name = "adpcm_4xm",
2335 .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
2336 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2337 },
2338 {
2339 .id = AV_CODEC_ID_ADPCM_XA,
2340 .type = AVMEDIA_TYPE_AUDIO,
2341 .name = "adpcm_xa",
2342 .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
2343 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2344 },
2345 {
2346 .id = AV_CODEC_ID_ADPCM_ADX,
2347 .type = AVMEDIA_TYPE_AUDIO,
2348 .name = "adpcm_adx",
2349 .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
2350 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2351 },
2352 {
2353 .id = AV_CODEC_ID_ADPCM_EA,
2354 .type = AVMEDIA_TYPE_AUDIO,
2355 .name = "adpcm_ea",
2356 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
2357 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2358 },
2359 {
2360 .id = AV_CODEC_ID_ADPCM_G726,
2361 .type = AVMEDIA_TYPE_AUDIO,
2362 .name = "adpcm_g726",
2363 .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
2364 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2365 },
2366 {
2367 .id = AV_CODEC_ID_ADPCM_CT,
2368 .type = AVMEDIA_TYPE_AUDIO,
2369 .name = "adpcm_ct",
2370 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
2371 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2372 },
2373 {
2374 .id = AV_CODEC_ID_ADPCM_SWF,
2375 .type = AVMEDIA_TYPE_AUDIO,
2376 .name = "adpcm_swf",
2377 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
2378 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2379 },
2380 {
2381 .id = AV_CODEC_ID_ADPCM_YAMAHA,
2382 .type = AVMEDIA_TYPE_AUDIO,
2383 .name = "adpcm_yamaha",
2384 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
2385 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2386 },
2387 {
2388 .id = AV_CODEC_ID_ADPCM_SBPRO_4,
2389 .type = AVMEDIA_TYPE_AUDIO,
2390 .name = "adpcm_sbpro_4",
2391 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
2392 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2393 },
2394 {
2395 .id = AV_CODEC_ID_ADPCM_SBPRO_3,
2396 .type = AVMEDIA_TYPE_AUDIO,
2397 .name = "adpcm_sbpro_3",
2398 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
2399 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2400 },
2401 {
2402 .id = AV_CODEC_ID_ADPCM_SBPRO_2,
2403 .type = AVMEDIA_TYPE_AUDIO,
2404 .name = "adpcm_sbpro_2",
2405 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
2406 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2407 },
2408 {
2409 .id = AV_CODEC_ID_ADPCM_THP,
2410 .type = AVMEDIA_TYPE_AUDIO,
2411 .name = "adpcm_thp",
2412 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP"),
2413 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2414 },
2415 {
2416 .id = AV_CODEC_ID_ADPCM_IMA_AMV,
2417 .type = AVMEDIA_TYPE_AUDIO,
2418 .name = "adpcm_ima_amv",
2419 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
2420 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2421 },
2422 {
2423 .id = AV_CODEC_ID_ADPCM_EA_R1,
2424 .type = AVMEDIA_TYPE_AUDIO,
2425 .name = "adpcm_ea_r1",
2426 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
2427 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2428 },
2429 {
2430 .id = AV_CODEC_ID_ADPCM_EA_R3,
2431 .type = AVMEDIA_TYPE_AUDIO,
2432 .name = "adpcm_ea_r3",
2433 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
2434 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2435 },
2436 {
2437 .id = AV_CODEC_ID_ADPCM_EA_R2,
2438 .type = AVMEDIA_TYPE_AUDIO,
2439 .name = "adpcm_ea_r2",
2440 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
2441 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2442 },
2443 {
2444 .id = AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
2445 .type = AVMEDIA_TYPE_AUDIO,
2446 .name = "adpcm_ima_ea_sead",
2447 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
2448 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2449 },
2450 {
2451 .id = AV_CODEC_ID_ADPCM_IMA_EA_EACS,
2452 .type = AVMEDIA_TYPE_AUDIO,
2453 .name = "adpcm_ima_ea_eacs",
2454 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
2455 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2456 },
2457 {
2458 .id = AV_CODEC_ID_ADPCM_EA_XAS,
2459 .type = AVMEDIA_TYPE_AUDIO,
2460 .name = "adpcm_ea_xas",
2461 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
2462 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2463 },
2464 {
2465 .id = AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
2466 .type = AVMEDIA_TYPE_AUDIO,
2467 .name = "adpcm_ea_maxis_xa",
2468 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
2469 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2470 },
2471 {
2472 .id = AV_CODEC_ID_ADPCM_IMA_ISS,
2473 .type = AVMEDIA_TYPE_AUDIO,
2474 .name = "adpcm_ima_iss",
2475 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
2476 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2477 },
2478 {
2479 .id = AV_CODEC_ID_ADPCM_G722,
2480 .type = AVMEDIA_TYPE_AUDIO,
2481 .name = "adpcm_g722",
2482 .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
2483 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2484 },
2485 {
2486 .id = AV_CODEC_ID_ADPCM_IMA_APC,
2487 .type = AVMEDIA_TYPE_AUDIO,
2488 .name = "adpcm_ima_apc",
2489 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
2490 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2491 },
2492 {
2493 .id = AV_CODEC_ID_ADPCM_VIMA,
2494 .type = AVMEDIA_TYPE_AUDIO,
2495 .name = "adpcm_vima",
2496 .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
2497 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2498 },
2499 {
2500 .id = AV_CODEC_ID_ADPCM_AFC,
2501 .type = AVMEDIA_TYPE_AUDIO,
2502 .name = "adpcm_afc",
2503 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube AFC"),
2504 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2505 },
2506 {
2507 .id = AV_CODEC_ID_ADPCM_IMA_OKI,
2508 .type = AVMEDIA_TYPE_AUDIO,
2509 .name = "adpcm_ima_oki",
2510 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Dialogic OKI"),
2511 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2512 },
2513 {
2514 .id = AV_CODEC_ID_ADPCM_DTK,
2515 .type = AVMEDIA_TYPE_AUDIO,
2516 .name = "adpcm_dtk",
2517 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube DTK"),
2518 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2519 },
2520 {
2521 .id = AV_CODEC_ID_ADPCM_IMA_RAD,
2522 .type = AVMEDIA_TYPE_AUDIO,
2523 .name = "adpcm_ima_rad",
2524 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Radical"),
2525 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2526 },
2527 {
2528 .id = AV_CODEC_ID_ADPCM_G726LE,
2529 .type = AVMEDIA_TYPE_AUDIO,
2530 .name = "adpcm_g726le",
2531 .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM little-endian"),
2532 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2533 },
2534 {
2535 .id = AV_CODEC_ID_ADPCM_THP_LE,
2536 .type = AVMEDIA_TYPE_AUDIO,
2537 .name = "adpcm_thp_le",
2538 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP (Little-Endian)"),
2539 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2540 },
2541 {
2542 .id = AV_CODEC_ID_ADPCM_PSX,
2543 .type = AVMEDIA_TYPE_AUDIO,
2544 .name = "adpcm_psx",
2545 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation"),
2546 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2547 },
2548 {
2549 .id = AV_CODEC_ID_ADPCM_AICA,
2550 .type = AVMEDIA_TYPE_AUDIO,
2551 .name = "adpcm_aica",
2552 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha AICA"),
2553 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2554 },
2555 {
2556 .id = AV_CODEC_ID_ADPCM_IMA_DAT4,
2557 .type = AVMEDIA_TYPE_AUDIO,
2558 .name = "adpcm_ima_dat4",
2559 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Eurocom DAT4"),
2560 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2561 },
2562 {
2563 .id = AV_CODEC_ID_ADPCM_MTAF,
2564 .type = AVMEDIA_TYPE_AUDIO,
2565 .name = "adpcm_mtaf",
2566 .long_name = NULL_IF_CONFIG_SMALL("ADPCM MTAF"),
2567 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2568 },
2569 {
2570 .id = AV_CODEC_ID_ADPCM_AGM,
2571 .type = AVMEDIA_TYPE_AUDIO,
2572 .name = "adpcm_agm",
2573 .long_name = NULL_IF_CONFIG_SMALL("ADPCM AmuseGraphics Movie AGM"),
2574 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2575 },
2576 {
2577 .id = AV_CODEC_ID_ADPCM_ARGO,
2578 .type = AVMEDIA_TYPE_AUDIO,
2579 .name = "adpcm_argo",
2580 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Argonaut Games"),
2581 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2582 },
2583 {
2584 .id = AV_CODEC_ID_ADPCM_IMA_SSI,
2585 .type = AVMEDIA_TYPE_AUDIO,
2586 .name = "adpcm_ima_ssi",
2587 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Simon & Schuster Interactive"),
2588 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2589 },
2590 {
2591 .id = AV_CODEC_ID_ADPCM_ZORK,
2592 .type = AVMEDIA_TYPE_AUDIO,
2593 .name = "adpcm_zork",
2594 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Zork"),
2595 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2596 },
2597 {
2598 .id = AV_CODEC_ID_ADPCM_IMA_APM,
2599 .type = AVMEDIA_TYPE_AUDIO,
2600 .name = "adpcm_ima_apm",
2601 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Ubisoft APM"),
2602 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2603 },
2604 {
2605 .id = AV_CODEC_ID_ADPCM_IMA_ALP,
2606 .type = AVMEDIA_TYPE_AUDIO,
2607 .name = "adpcm_ima_alp",
2608 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA High Voltage Software ALP"),
2609 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2610 },
2611 {
2612 .id = AV_CODEC_ID_ADPCM_IMA_MTF,
2613 .type = AVMEDIA_TYPE_AUDIO,
2614 .name = "adpcm_ima_mtf",
2615 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Capcom's MT Framework"),
2616 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2617 },
2618 {
2619 .id = AV_CODEC_ID_ADPCM_IMA_CUNNING,
2620 .type = AVMEDIA_TYPE_AUDIO,
2621 .name = "adpcm_ima_cunning",
2622 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Cunning Developments"),
2623 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2624 },
2625 {
2626 .id = AV_CODEC_ID_ADPCM_IMA_MOFLEX,
2627 .type = AVMEDIA_TYPE_AUDIO,
2628 .name = "adpcm_ima_moflex",
2629 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA MobiClip MOFLEX"),
2630 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2631 },
2632 {
2633 .id = AV_CODEC_ID_ADPCM_IMA_ACORN,
2634 .type = AVMEDIA_TYPE_AUDIO,
2635 .name = "adpcm_ima_acorn",
2636 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Acorn Replay"),
2637 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2638 },
2639 {
2640 .id = AV_CODEC_ID_ADPCM_XMD,
2641 .type = AVMEDIA_TYPE_AUDIO,
2642 .name = "adpcm_xmd",
2643 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Konami XMD"),
2644 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2645 },
2646 {
2647 .id = AV_CODEC_ID_ADPCM_IMA_XBOX,
2648 .type = AVMEDIA_TYPE_AUDIO,
2649 .name = "adpcm_ima_xbox",
2650 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Xbox"),
2651 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2652 },
2653 {
2654 .id = AV_CODEC_ID_ADPCM_SANYO,
2655 .type = AVMEDIA_TYPE_AUDIO,
2656 .name = "adpcm_sanyo",
2657 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sanyo"),
2658 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2659 },
2660 {
2661 .id = AV_CODEC_ID_ADPCM_IMA_HVQM4,
2662 .type = AVMEDIA_TYPE_AUDIO,
2663 .name = "adpcm_ima_hvqm4",
2664 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA HVQM4"),
2665 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2666 },
2667 {
2668 .id = AV_CODEC_ID_ADPCM_IMA_PDA,
2669 .type = AVMEDIA_TYPE_AUDIO,
2670 .name = "adpcm_ima_pda",
2671 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA PlayDate"),
2672 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2673 },
2674 {
2675 .id = AV_CODEC_ID_ADPCM_N64,
2676 .type = AVMEDIA_TYPE_AUDIO,
2677 .name = "adpcm_n64",
2678 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Silicon Graphics N64"),
2679 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2680 },
2681 {
2682 .id = AV_CODEC_ID_ADPCM_IMA_HVQM2,
2683 .type = AVMEDIA_TYPE_AUDIO,
2684 .name = "adpcm_ima_hvqm2",
2685 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA HVQM2"),
2686 .props = AV_CODEC_PROP_LOSSY,
2687 },
2688 {
2689 .id = AV_CODEC_ID_ADPCM_IMA_MAGIX,
2690 .type = AVMEDIA_TYPE_AUDIO,
2691 .name = "adpcm_ima_magix",
2692 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Magix"),
2693 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2694 },
2695 {
2696 .id = AV_CODEC_ID_ADPCM_PSXC,
2697 .type = AVMEDIA_TYPE_AUDIO,
2698 .name = "adpcm_psxc",
2699 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation C"),
2700 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2701 },
2702 {
2703 .id = AV_CODEC_ID_ADPCM_CIRCUS,
2704 .type = AVMEDIA_TYPE_AUDIO,
2705 .name = "adpcm_circus",
2706 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Circus"),
2707 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2708 },
2709 {
2710 .id = AV_CODEC_ID_ADPCM_IMA_ESCAPE,
2711 .type = AVMEDIA_TYPE_AUDIO,
2712 .name = "adpcm_ima_escape",
2713 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Acorn Escape"),
2714 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2715 },
2716 {
2717 .id = AV_CODEC_ID_ADPCM_RHETOREX,
2718 .type = AVMEDIA_TYPE_AUDIO,
2719 .name = "adpcm_rhetorex",
2720 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Rhetorex"),
2721 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2722 },
2723 {
2724 .id = AV_CODEC_ID_ADPCM_IMA_CITRIX,
2725 .type = AVMEDIA_TYPE_AUDIO,
2726 .name = "adpcm_citrix",
2727 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Citrix"),
2728 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2729 },
2730
2731 /* AMR */
2732 {
2733 .id = AV_CODEC_ID_AMR_NB,
2734 .type = AVMEDIA_TYPE_AUDIO,
2735 .name = "amr_nb",
2736 .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
2737 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2738 },
2739 {
2740 .id = AV_CODEC_ID_AMR_WB,
2741 .type = AVMEDIA_TYPE_AUDIO,
2742 .name = "amr_wb",
2743 .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
2744 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2745 },
2746
2747 /* RealAudio codecs*/
2748 {
2749 .id = AV_CODEC_ID_RA_144,
2750 .type = AVMEDIA_TYPE_AUDIO,
2751 .name = "ra_144",
2752 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
2753 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2754 },
2755 {
2756 .id = AV_CODEC_ID_RA_288,
2757 .type = AVMEDIA_TYPE_AUDIO,
2758 .name = "ra_288",
2759 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
2760 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2761 },
2762
2763 /* various DPCM codecs */
2764 {
2765 .id = AV_CODEC_ID_ROQ_DPCM,
2766 .type = AVMEDIA_TYPE_AUDIO,
2767 .name = "roq_dpcm",
2768 .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
2769 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2770 },
2771 {
2772 .id = AV_CODEC_ID_INTERPLAY_DPCM,
2773 .type = AVMEDIA_TYPE_AUDIO,
2774 .name = "interplay_dpcm",
2775 .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
2776 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2777 },
2778 {
2779 .id = AV_CODEC_ID_XAN_DPCM,
2780 .type = AVMEDIA_TYPE_AUDIO,
2781 .name = "xan_dpcm",
2782 .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
2783 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2784 },
2785 {
2786 .id = AV_CODEC_ID_SOL_DPCM,
2787 .type = AVMEDIA_TYPE_AUDIO,
2788 .name = "sol_dpcm",
2789 .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
2790 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2791 },
2792 {
2793 .id = AV_CODEC_ID_SDX2_DPCM,
2794 .type = AVMEDIA_TYPE_AUDIO,
2795 .name = "sdx2_dpcm",
2796 .long_name = NULL_IF_CONFIG_SMALL("DPCM Squareroot-Delta-Exact"),
2797 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2798 },
2799 {
2800 .id = AV_CODEC_ID_GREMLIN_DPCM,
2801 .type = AVMEDIA_TYPE_AUDIO,
2802 .name = "gremlin_dpcm",
2803 .long_name = NULL_IF_CONFIG_SMALL("DPCM Gremlin"),
2804 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2805 },
2806 {
2807 .id = AV_CODEC_ID_DERF_DPCM,
2808 .type = AVMEDIA_TYPE_AUDIO,
2809 .name = "derf_dpcm",
2810 .long_name = NULL_IF_CONFIG_SMALL("DPCM Xilam DERF"),
2811 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2812 },
2813 {
2814 .id = AV_CODEC_ID_WADY_DPCM,
2815 .type = AVMEDIA_TYPE_AUDIO,
2816 .name = "wady_dpcm",
2817 .long_name = NULL_IF_CONFIG_SMALL("DPCM Marble WADY"),
2818 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2819 },
2820 {
2821 .id = AV_CODEC_ID_CBD2_DPCM,
2822 .type = AVMEDIA_TYPE_AUDIO,
2823 .name = "cbd2_dpcm",
2824 .long_name = NULL_IF_CONFIG_SMALL("DPCM Cuberoot-Delta-Exact"),
2825 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2826 },
2827
2828 /* audio codecs */
2829 {
2830 .id = AV_CODEC_ID_MP2,
2831 .type = AVMEDIA_TYPE_AUDIO,
2832 .name = "mp2",
2833 .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
2834 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2835 },
2836 {
2837 .id = AV_CODEC_ID_MP3,
2838 .type = AVMEDIA_TYPE_AUDIO,
2839 .name = "mp3",
2840 .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
2841 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2842 },
2843 {
2844 .id = AV_CODEC_ID_AAC,
2845 .type = AVMEDIA_TYPE_AUDIO,
2846 .name = "aac",
2847 .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
2848 .props = AV_CODEC_PROP_LOSSY,
2849 .profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles),
2850 },
2851 {
2852 .id = AV_CODEC_ID_AC3,
2853 .type = AVMEDIA_TYPE_AUDIO,
2854 .name = "ac3",
2855 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
2856 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2857 },
2858 {
2859 .id = AV_CODEC_ID_DTS,
2860 .type = AVMEDIA_TYPE_AUDIO,
2861 .name = "dts",
2862 .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
2863 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
2864 .profiles = NULL_IF_CONFIG_SMALL(ff_dca_profiles),
2865 },
2866 {
2867 .id = AV_CODEC_ID_VORBIS,
2868 .type = AVMEDIA_TYPE_AUDIO,
2869 .name = "vorbis",
2870 .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
2871 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2872 },
2873 {
2874 .id = AV_CODEC_ID_DVAUDIO,
2875 .type = AVMEDIA_TYPE_AUDIO,
2876 .name = "dvaudio",
2877 .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
2878 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2879 },
2880 {
2881 .id = AV_CODEC_ID_WMAV1,
2882 .type = AVMEDIA_TYPE_AUDIO,
2883 .name = "wmav1",
2884 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
2885 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2886 },
2887 {
2888 .id = AV_CODEC_ID_WMAV2,
2889 .type = AVMEDIA_TYPE_AUDIO,
2890 .name = "wmav2",
2891 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
2892 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2893 },
2894 {
2895 .id = AV_CODEC_ID_MACE3,
2896 .type = AVMEDIA_TYPE_AUDIO,
2897 .name = "mace3",
2898 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
2899 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2900 },
2901 {
2902 .id = AV_CODEC_ID_MACE6,
2903 .type = AVMEDIA_TYPE_AUDIO,
2904 .name = "mace6",
2905 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
2906 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2907 },
2908 {
2909 .id = AV_CODEC_ID_VMDAUDIO,
2910 .type = AVMEDIA_TYPE_AUDIO,
2911 .name = "vmdaudio",
2912 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
2913 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2914 },
2915 {
2916 .id = AV_CODEC_ID_FLAC,
2917 .type = AVMEDIA_TYPE_AUDIO,
2918 .name = "flac",
2919 .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
2920 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2921 },
2922 {
2923 .id = AV_CODEC_ID_MP3ADU,
2924 .type = AVMEDIA_TYPE_AUDIO,
2925 .name = "mp3adu",
2926 .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
2927 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2928 },
2929 {
2930 .id = AV_CODEC_ID_MP3ON4,
2931 .type = AVMEDIA_TYPE_AUDIO,
2932 .name = "mp3on4",
2933 .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
2934 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2935 },
2936 {
2937 .id = AV_CODEC_ID_SHORTEN,
2938 .type = AVMEDIA_TYPE_AUDIO,
2939 .name = "shorten",
2940 .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
2941 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2942 },
2943 {
2944 .id = AV_CODEC_ID_ALAC,
2945 .type = AVMEDIA_TYPE_AUDIO,
2946 .name = "alac",
2947 .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
2948 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2949 },
2950 {
2951 .id = AV_CODEC_ID_WESTWOOD_SND1,
2952 .type = AVMEDIA_TYPE_AUDIO,
2953 .name = "westwood_snd1",
2954 .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
2955 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2956 },
2957 {
2958 .id = AV_CODEC_ID_GSM,
2959 .type = AVMEDIA_TYPE_AUDIO,
2960 .name = "gsm",
2961 .long_name = NULL_IF_CONFIG_SMALL("GSM"),
2962 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2963 },
2964 {
2965 .id = AV_CODEC_ID_QDM2,
2966 .type = AVMEDIA_TYPE_AUDIO,
2967 .name = "qdm2",
2968 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
2969 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2970 },
2971 {
2972 .id = AV_CODEC_ID_COOK,
2973 .type = AVMEDIA_TYPE_AUDIO,
2974 .name = "cook",
2975 .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
2976 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2977 },
2978 {
2979 .id = AV_CODEC_ID_TRUESPEECH,
2980 .type = AVMEDIA_TYPE_AUDIO,
2981 .name = "truespeech",
2982 .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
2983 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2984 },
2985 {
2986 .id = AV_CODEC_ID_TTA,
2987 .type = AVMEDIA_TYPE_AUDIO,
2988 .name = "tta",
2989 .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
2990 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2991 },
2992 {
2993 .id = AV_CODEC_ID_SMACKAUDIO,
2994 .type = AVMEDIA_TYPE_AUDIO,
2995 .name = "smackaudio",
2996 .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
2997 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
2998 },
2999 {
3000 .id = AV_CODEC_ID_QCELP,
3001 .type = AVMEDIA_TYPE_AUDIO,
3002 .name = "qcelp",
3003 .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
3004 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3005 },
3006 {
3007 .id = AV_CODEC_ID_WAVPACK,
3008 .type = AVMEDIA_TYPE_AUDIO,
3009 .name = "wavpack",
3010 .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
3011 .props = AV_CODEC_PROP_INTRA_ONLY |
3012 AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
3013 },
3014 {
3015 .id = AV_CODEC_ID_DSICINAUDIO,
3016 .type = AVMEDIA_TYPE_AUDIO,
3017 .name = "dsicinaudio",
3018 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
3019 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3020 },
3021 {
3022 .id = AV_CODEC_ID_IMC,
3023 .type = AVMEDIA_TYPE_AUDIO,
3024 .name = "imc",
3025 .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
3026 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3027 },
3028 {
3029 .id = AV_CODEC_ID_MUSEPACK7,
3030 .type = AVMEDIA_TYPE_AUDIO,
3031 .name = "musepack7",
3032 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
3033 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3034 },
3035 {
3036 .id = AV_CODEC_ID_MLP,
3037 .type = AVMEDIA_TYPE_AUDIO,
3038 .name = "mlp",
3039 .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
3040 .props = AV_CODEC_PROP_LOSSLESS,
3041 },
3042 {
3043 .id = AV_CODEC_ID_GSM_MS,
3044 .type = AVMEDIA_TYPE_AUDIO,
3045 .name = "gsm_ms",
3046 .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
3047 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3048 },
3049 {
3050 .id = AV_CODEC_ID_ATRAC3,
3051 .type = AVMEDIA_TYPE_AUDIO,
3052 .name = "atrac3",
3053 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
3054 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3055 },
3056 {
3057 .id = AV_CODEC_ID_APE,
3058 .type = AVMEDIA_TYPE_AUDIO,
3059 .name = "ape",
3060 .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
3061 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3062 },
3063 {
3064 .id = AV_CODEC_ID_NELLYMOSER,
3065 .type = AVMEDIA_TYPE_AUDIO,
3066 .name = "nellymoser",
3067 .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
3068 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3069 },
3070 {
3071 .id = AV_CODEC_ID_MUSEPACK8,
3072 .type = AVMEDIA_TYPE_AUDIO,
3073 .name = "musepack8",
3074 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
3075 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3076 },
3077 {
3078 .id = AV_CODEC_ID_SPEEX,
3079 .type = AVMEDIA_TYPE_AUDIO,
3080 .name = "speex",
3081 .long_name = NULL_IF_CONFIG_SMALL("Speex"),
3082 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3083 },
3084 {
3085 .id = AV_CODEC_ID_WMAVOICE,
3086 .type = AVMEDIA_TYPE_AUDIO,
3087 .name = "wmavoice",
3088 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
3089 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3090 },
3091 {
3092 .id = AV_CODEC_ID_WMAPRO,
3093 .type = AVMEDIA_TYPE_AUDIO,
3094 .name = "wmapro",
3095 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
3096 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3097 },
3098 {
3099 .id = AV_CODEC_ID_WMALOSSLESS,
3100 .type = AVMEDIA_TYPE_AUDIO,
3101 .name = "wmalossless",
3102 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
3103 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3104 },
3105 {
3106 .id = AV_CODEC_ID_ATRAC3P,
3107 .type = AVMEDIA_TYPE_AUDIO,
3108 .name = "atrac3p",
3109 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
3110 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3111 },
3112 {
3113 .id = AV_CODEC_ID_EAC3,
3114 .type = AVMEDIA_TYPE_AUDIO,
3115 .name = "eac3",
3116 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
3117 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3118 .profiles = NULL_IF_CONFIG_SMALL(ff_eac3_profiles),
3119 },
3120 {
3121 .id = AV_CODEC_ID_SIPR,
3122 .type = AVMEDIA_TYPE_AUDIO,
3123 .name = "sipr",
3124 .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
3125 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3126 },
3127 {
3128 .id = AV_CODEC_ID_MP1,
3129 .type = AVMEDIA_TYPE_AUDIO,
3130 .name = "mp1",
3131 .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
3132 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3133 },
3134 {
3135 .id = AV_CODEC_ID_TWINVQ,
3136 .type = AVMEDIA_TYPE_AUDIO,
3137 .name = "twinvq",
3138 .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
3139 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3140 },
3141 {
3142 .id = AV_CODEC_ID_TRUEHD,
3143 .type = AVMEDIA_TYPE_AUDIO,
3144 .name = "truehd",
3145 .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
3146 .props = AV_CODEC_PROP_LOSSLESS,
3147 .profiles = NULL_IF_CONFIG_SMALL(ff_truehd_profiles),
3148 },
3149 {
3150 .id = AV_CODEC_ID_MP4ALS,
3151 .type = AVMEDIA_TYPE_AUDIO,
3152 .name = "mp4als",
3153 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
3154 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3155 },
3156 {
3157 .id = AV_CODEC_ID_ATRAC1,
3158 .type = AVMEDIA_TYPE_AUDIO,
3159 .name = "atrac1",
3160 .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
3161 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3162 },
3163 {
3164 .id = AV_CODEC_ID_BINKAUDIO_RDFT,
3165 .type = AVMEDIA_TYPE_AUDIO,
3166 .name = "binkaudio_rdft",
3167 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
3168 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3169 },
3170 {
3171 .id = AV_CODEC_ID_BINKAUDIO_DCT,
3172 .type = AVMEDIA_TYPE_AUDIO,
3173 .name = "binkaudio_dct",
3174 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
3175 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3176 },
3177 {
3178 .id = AV_CODEC_ID_AAC_LATM,
3179 .type = AVMEDIA_TYPE_AUDIO,
3180 .name = "aac_latm",
3181 .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
3182 .props = AV_CODEC_PROP_LOSSY,
3183 .profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles),
3184 },
3185 {
3186 .id = AV_CODEC_ID_QDMC,
3187 .type = AVMEDIA_TYPE_AUDIO,
3188 .name = "qdmc",
3189 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
3190 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3191 },
3192 {
3193 .id = AV_CODEC_ID_CELT,
3194 .type = AVMEDIA_TYPE_AUDIO,
3195 .name = "celt",
3196 .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
3197 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3198 },
3199 {
3200 .id = AV_CODEC_ID_G723_1,
3201 .type = AVMEDIA_TYPE_AUDIO,
3202 .name = "g723_1",
3203 .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
3204 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3205 },
3206 {
3207 .id = AV_CODEC_ID_G729,
3208 .type = AVMEDIA_TYPE_AUDIO,
3209 .name = "g729",
3210 .long_name = NULL_IF_CONFIG_SMALL("G.729"),
3211 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3212 },
3213 {
3214 .id = AV_CODEC_ID_8SVX_EXP,
3215 .type = AVMEDIA_TYPE_AUDIO,
3216 .name = "8svx_exp",
3217 .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
3218 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3219 },
3220 {
3221 .id = AV_CODEC_ID_8SVX_FIB,
3222 .type = AVMEDIA_TYPE_AUDIO,
3223 .name = "8svx_fib",
3224 .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
3225 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3226 },
3227 {
3228 .id = AV_CODEC_ID_BMV_AUDIO,
3229 .type = AVMEDIA_TYPE_AUDIO,
3230 .name = "bmv_audio",
3231 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
3232 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3233 },
3234 {
3235 .id = AV_CODEC_ID_RALF,
3236 .type = AVMEDIA_TYPE_AUDIO,
3237 .name = "ralf",
3238 .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
3239 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3240 },
3241 {
3242 .id = AV_CODEC_ID_IAC,
3243 .type = AVMEDIA_TYPE_AUDIO,
3244 .name = "iac",
3245 .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
3246 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3247 },
3248 {
3249 .id = AV_CODEC_ID_ILBC,
3250 .type = AVMEDIA_TYPE_AUDIO,
3251 .name = "ilbc",
3252 .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
3253 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3254 },
3255 {
3256 .id = AV_CODEC_ID_OPUS,
3257 .type = AVMEDIA_TYPE_AUDIO,
3258 .name = "opus",
3259 .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
3260 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3261 },
3262 {
3263 .id = AV_CODEC_ID_COMFORT_NOISE,
3264 .type = AVMEDIA_TYPE_AUDIO,
3265 .name = "comfortnoise",
3266 .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
3267 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3268 },
3269 {
3270 .id = AV_CODEC_ID_TAK,
3271 .type = AVMEDIA_TYPE_AUDIO,
3272 .name = "tak",
3273 .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
3274 .props = AV_CODEC_PROP_LOSSLESS,
3275 },
3276 {
3277 .id = AV_CODEC_ID_METASOUND,
3278 .type = AVMEDIA_TYPE_AUDIO,
3279 .name = "metasound",
3280 .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
3281 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3282 },
3283 {
3284 .id = AV_CODEC_ID_PAF_AUDIO,
3285 .type = AVMEDIA_TYPE_AUDIO,
3286 .name = "paf_audio",
3287 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
3288 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3289 },
3290 {
3291 .id = AV_CODEC_ID_ON2AVC,
3292 .type = AVMEDIA_TYPE_AUDIO,
3293 .name = "avc",
3294 .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
3295 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3296 },
3297 {
3298 .id = AV_CODEC_ID_DSS_SP,
3299 .type = AVMEDIA_TYPE_AUDIO,
3300 .name = "dss_sp",
3301 .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
3302 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3303 },
3304 {
3305 .id = AV_CODEC_ID_CODEC2,
3306 .type = AVMEDIA_TYPE_AUDIO,
3307 .name = "codec2",
3308 .long_name = NULL_IF_CONFIG_SMALL("codec2 (very low bitrate speech codec)"),
3309 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3310 },
3311 {
3312 .id = AV_CODEC_ID_FFWAVESYNTH,
3313 .type = AVMEDIA_TYPE_AUDIO,
3314 .name = "wavesynth",
3315 .long_name = NULL_IF_CONFIG_SMALL("Wave synthesis pseudo-codec"),
3316 .props = AV_CODEC_PROP_INTRA_ONLY,
3317 },
3318 {
3319 .id = AV_CODEC_ID_SONIC,
3320 .type = AVMEDIA_TYPE_AUDIO,
3321 .name = "sonic",
3322 .long_name = NULL_IF_CONFIG_SMALL("Sonic"),
3323 .props = AV_CODEC_PROP_INTRA_ONLY,
3324 },
3325 {
3326 .id = AV_CODEC_ID_SONIC_LS,
3327 .type = AVMEDIA_TYPE_AUDIO,
3328 .name = "sonicls",
3329 .long_name = NULL_IF_CONFIG_SMALL("Sonic lossless"),
3330 .props = AV_CODEC_PROP_INTRA_ONLY,
3331 },
3332 {
3333 .id = AV_CODEC_ID_EVRC,
3334 .type = AVMEDIA_TYPE_AUDIO,
3335 .name = "evrc",
3336 .long_name = NULL_IF_CONFIG_SMALL("EVRC (Enhanced Variable Rate Codec)"),
3337 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3338 },
3339 {
3340 .id = AV_CODEC_ID_SMV,
3341 .type = AVMEDIA_TYPE_AUDIO,
3342 .name = "smv",
3343 .long_name = NULL_IF_CONFIG_SMALL("SMV (Selectable Mode Vocoder)"),
3344 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3345 },
3346 {
3347 .id = AV_CODEC_ID_DSD_LSBF,
3348 .type = AVMEDIA_TYPE_AUDIO,
3349 .name = "dsd_lsbf",
3350 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first"),
3351 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3352 },
3353 {
3354 .id = AV_CODEC_ID_DSD_MSBF,
3355 .type = AVMEDIA_TYPE_AUDIO,
3356 .name = "dsd_msbf",
3357 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first"),
3358 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3359 },
3360 {
3361 .id = AV_CODEC_ID_DSD_LSBF_PLANAR,
3362 .type = AVMEDIA_TYPE_AUDIO,
3363 .name = "dsd_lsbf_planar",
3364 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first, planar"),
3365 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3366 },
3367 {
3368 .id = AV_CODEC_ID_DSD_MSBF_PLANAR,
3369 .type = AVMEDIA_TYPE_AUDIO,
3370 .name = "dsd_msbf_planar",
3371 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first, planar"),
3372 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3373 },
3374 {
3375 .id = AV_CODEC_ID_4GV,
3376 .type = AVMEDIA_TYPE_AUDIO,
3377 .name = "4gv",
3378 .long_name = NULL_IF_CONFIG_SMALL("4GV (Fourth Generation Vocoder)"),
3379 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3380 },
3381 {
3382 .id = AV_CODEC_ID_INTERPLAY_ACM,
3383 .type = AVMEDIA_TYPE_AUDIO,
3384 .name = "interplayacm",
3385 .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"),
3386 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3387 },
3388 {
3389 .id = AV_CODEC_ID_XMA1,
3390 .type = AVMEDIA_TYPE_AUDIO,
3391 .name = "xma1",
3392 .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 1"),
3393 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3394 },
3395 {
3396 .id = AV_CODEC_ID_XMA2,
3397 .type = AVMEDIA_TYPE_AUDIO,
3398 .name = "xma2",
3399 .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 2"),
3400 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3401 },
3402 {
3403 .id = AV_CODEC_ID_DST,
3404 .type = AVMEDIA_TYPE_AUDIO,
3405 .name = "dst",
3406 .long_name = NULL_IF_CONFIG_SMALL("DST (Direct Stream Transfer)"),
3407 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3408 },
3409 {
3410 .id = AV_CODEC_ID_ATRAC3AL,
3411 .type = AVMEDIA_TYPE_AUDIO,
3412 .name = "atrac3al",
3413 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)"),
3414 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3415 },
3416 {
3417 .id = AV_CODEC_ID_ATRAC3PAL,
3418 .type = AVMEDIA_TYPE_AUDIO,
3419 .name = "atrac3pal",
3420 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless)"),
3421 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3422 },
3423 {
3424 .id = AV_CODEC_ID_DOLBY_E,
3425 .type = AVMEDIA_TYPE_AUDIO,
3426 .name = "dolby_e",
3427 .long_name = NULL_IF_CONFIG_SMALL("Dolby E"),
3428 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3429 },
3430 {
3431 .id = AV_CODEC_ID_APTX,
3432 .type = AVMEDIA_TYPE_AUDIO,
3433 .name = "aptx",
3434 .long_name = NULL_IF_CONFIG_SMALL("aptX (Audio Processing Technology for Bluetooth)"),
3435 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3436 },
3437 {
3438 .id = AV_CODEC_ID_APTX_HD,
3439 .type = AVMEDIA_TYPE_AUDIO,
3440 .name = "aptx_hd",
3441 .long_name = NULL_IF_CONFIG_SMALL("aptX HD (Audio Processing Technology for Bluetooth)"),
3442 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3443 },
3444 {
3445 .id = AV_CODEC_ID_SBC,
3446 .type = AVMEDIA_TYPE_AUDIO,
3447 .name = "sbc",
3448 .long_name = NULL_IF_CONFIG_SMALL("SBC (low-complexity subband codec)"),
3449 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3450 },
3451 {
3452 .id = AV_CODEC_ID_ATRAC9,
3453 .type = AVMEDIA_TYPE_AUDIO,
3454 .name = "atrac9",
3455 .long_name = NULL_IF_CONFIG_SMALL("ATRAC9 (Adaptive TRansform Acoustic Coding 9)"),
3456 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3457 },
3458 {
3459 .id = AV_CODEC_ID_HCOM,
3460 .type = AVMEDIA_TYPE_AUDIO,
3461 .name = "hcom",
3462 .long_name = NULL_IF_CONFIG_SMALL("HCOM Audio"),
3463 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3464 },
3465 {
3466 .id = AV_CODEC_ID_ACELP_KELVIN,
3467 .type = AVMEDIA_TYPE_AUDIO,
3468 .name = "acelp.kelvin",
3469 .long_name = NULL_IF_CONFIG_SMALL("Sipro ACELP.KELVIN"),
3470 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3471 },
3472 {
3473 .id = AV_CODEC_ID_MPEGH_3D_AUDIO,
3474 .type = AVMEDIA_TYPE_AUDIO,
3475 .name = "mpegh_3d_audio",
3476 .long_name = NULL_IF_CONFIG_SMALL("MPEG-H 3D Audio"),
3477 .props = AV_CODEC_PROP_LOSSY,
3478 .profiles = NULL_IF_CONFIG_SMALL(ff_mpegh_3da_profiles),
3479 },
3480 {
3481 .id = AV_CODEC_ID_SIREN,
3482 .type = AVMEDIA_TYPE_AUDIO,
3483 .name = "siren",
3484 .long_name = NULL_IF_CONFIG_SMALL("Siren"),
3485 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3486 },
3487 {
3488 .id = AV_CODEC_ID_HCA,
3489 .type = AVMEDIA_TYPE_AUDIO,
3490 .name = "hca",
3491 .long_name = NULL_IF_CONFIG_SMALL("CRI HCA"),
3492 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3493 },
3494 {
3495 .id = AV_CODEC_ID_FASTAUDIO,
3496 .type = AVMEDIA_TYPE_AUDIO,
3497 .name = "fastaudio",
3498 .long_name = NULL_IF_CONFIG_SMALL("MobiClip FastAudio"),
3499 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3500 },
3501 {
3502 .id = AV_CODEC_ID_MSNSIREN,
3503 .type = AVMEDIA_TYPE_AUDIO,
3504 .name = "msnsiren",
3505 .long_name = NULL_IF_CONFIG_SMALL("MSN Siren"),
3506 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3507 },
3508 {
3509 .id = AV_CODEC_ID_DFPWM,
3510 .type = AVMEDIA_TYPE_AUDIO,
3511 .name = "dfpwm",
3512 .long_name = NULL_IF_CONFIG_SMALL("DFPWM (Dynamic Filter Pulse Width Modulation)"),
3513 .props = AV_CODEC_PROP_LOSSY,
3514 },
3515 {
3516 .id = AV_CODEC_ID_BONK,
3517 .type = AVMEDIA_TYPE_AUDIO,
3518 .name = "bonk",
3519 .long_name = NULL_IF_CONFIG_SMALL("Bonk audio"),
3520 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3521 },
3522 {
3523 .id = AV_CODEC_ID_MISC4,
3524 .type = AVMEDIA_TYPE_AUDIO,
3525 .name = "misc4",
3526 .long_name = NULL_IF_CONFIG_SMALL("Micronas SC-4 Audio"),
3527 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_INTRA_ONLY,
3528 },
3529 {
3530 .id = AV_CODEC_ID_APAC,
3531 .type = AVMEDIA_TYPE_AUDIO,
3532 .name = "apac",
3533 .long_name = NULL_IF_CONFIG_SMALL("Marian's A-pac audio"),
3534 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3535 },
3536 {
3537 .id = AV_CODEC_ID_FTR,
3538 .type = AVMEDIA_TYPE_AUDIO,
3539 .name = "ftr",
3540 .long_name = NULL_IF_CONFIG_SMALL("FTR Voice"),
3541 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3542 },
3543 {
3544 .id = AV_CODEC_ID_WAVARC,
3545 .type = AVMEDIA_TYPE_AUDIO,
3546 .name = "wavarc",
3547 .long_name = NULL_IF_CONFIG_SMALL("Waveform Archiver"),
3548 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3549 },
3550 {
3551 .id = AV_CODEC_ID_RKA,
3552 .type = AVMEDIA_TYPE_AUDIO,
3553 .name = "rka",
3554 .long_name = NULL_IF_CONFIG_SMALL("RKA (RK Audio)"),
3555 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
3556 },
3557 {
3558 .id = AV_CODEC_ID_AC4,
3559 .type = AVMEDIA_TYPE_AUDIO,
3560 .name = "ac4",
3561 .long_name = NULL_IF_CONFIG_SMALL("AC-4"),
3562 .props = AV_CODEC_PROP_LOSSY,
3563 },
3564 {
3565 .id = AV_CODEC_ID_OSQ,
3566 .type = AVMEDIA_TYPE_AUDIO,
3567 .name = "osq",
3568 .long_name = NULL_IF_CONFIG_SMALL("OSQ (Original Sound Quality)"),
3569 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
3570 },
3571 {
3572 .id = AV_CODEC_ID_QOA,
3573 .type = AVMEDIA_TYPE_AUDIO,
3574 .name = "qoa",
3575 .long_name = NULL_IF_CONFIG_SMALL("QOA (Quite OK Audio)"),
3576 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3577 },
3578 {
3579 .id = AV_CODEC_ID_LC3,
3580 .type = AVMEDIA_TYPE_AUDIO,
3581 .name = "lc3",
3582 .long_name = NULL_IF_CONFIG_SMALL("LC3 (Low Complexity Communication Codec)"),
3583 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3584 },
3585 {
3586 .id = AV_CODEC_ID_G728,
3587 .type = AVMEDIA_TYPE_AUDIO,
3588 .name = "g728",
3589 .long_name = NULL_IF_CONFIG_SMALL("G.728"),
3590 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3591 },
3592 {
3593 .id = AV_CODEC_ID_AHX,
3594 .type = AVMEDIA_TYPE_AUDIO,
3595 .name = "ahx",
3596 .long_name = NULL_IF_CONFIG_SMALL("CRI AHX"),
3597 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
3598 },
3599 {
3600 .id = AV_CODEC_ID_APPLE_APAC,
3601 .type = AVMEDIA_TYPE_AUDIO,
3602 .name = "apple_apac",
3603 .long_name = NULL_IF_CONFIG_SMALL("Apple Positional Audio Codec"),
3604 .props = AV_CODEC_PROP_LOSSY,
3605 },
3606
3607 /* subtitle codecs */
3608 {
3609 .id = AV_CODEC_ID_DVD_SUBTITLE,
3610 .type = AVMEDIA_TYPE_SUBTITLE,
3611 .name = "dvd_subtitle",
3612 .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
3613 .props = AV_CODEC_PROP_BITMAP_SUB,
3614 },
3615 {
3616 .id = AV_CODEC_ID_DVB_SUBTITLE,
3617 .type = AVMEDIA_TYPE_SUBTITLE,
3618 .name = "dvb_subtitle",
3619 .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
3620 .props = AV_CODEC_PROP_BITMAP_SUB,
3621 },
3622 {
3623 .id = AV_CODEC_ID_TEXT,
3624 .type = AVMEDIA_TYPE_SUBTITLE,
3625 .name = "text",
3626 .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
3627 .props = AV_CODEC_PROP_TEXT_SUB,
3628 },
3629 {
3630 .id = AV_CODEC_ID_XSUB,
3631 .type = AVMEDIA_TYPE_SUBTITLE,
3632 .name = "xsub",
3633 .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
3634 .props = AV_CODEC_PROP_BITMAP_SUB,
3635 },
3636 {
3637 .id = AV_CODEC_ID_SSA,
3638 .type = AVMEDIA_TYPE_SUBTITLE,
3639 .name = "ssa",
3640 .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"),
3641 .props = AV_CODEC_PROP_TEXT_SUB,
3642 },
3643 {
3644 .id = AV_CODEC_ID_MOV_TEXT,
3645 .type = AVMEDIA_TYPE_SUBTITLE,
3646 .name = "mov_text",
3647 .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
3648 .props = AV_CODEC_PROP_TEXT_SUB,
3649 },
3650 {
3651 .id = AV_CODEC_ID_HDMV_PGS_SUBTITLE,
3652 .type = AVMEDIA_TYPE_SUBTITLE,
3653 .name = "hdmv_pgs_subtitle",
3654 .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
3655 .props = AV_CODEC_PROP_BITMAP_SUB,
3656 },
3657 {
3658 .id = AV_CODEC_ID_DVB_TELETEXT,
3659 .type = AVMEDIA_TYPE_SUBTITLE,
3660 .name = "dvb_teletext",
3661 .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
3662 },
3663 {
3664 .id = AV_CODEC_ID_SRT,
3665 .type = AVMEDIA_TYPE_SUBTITLE,
3666 .name = "srt",
3667 .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle with embedded timing"),
3668 .props = AV_CODEC_PROP_TEXT_SUB,
3669 },
3670 {
3671 .id = AV_CODEC_ID_MICRODVD,
3672 .type = AVMEDIA_TYPE_SUBTITLE,
3673 .name = "microdvd",
3674 .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle"),
3675 .props = AV_CODEC_PROP_TEXT_SUB,
3676 },
3677 {
3678 .id = AV_CODEC_ID_EIA_608,
3679 .type = AVMEDIA_TYPE_SUBTITLE,
3680 .name = "eia_608",
3681 .long_name = NULL_IF_CONFIG_SMALL("EIA-608 closed captions"),
3682 .props = AV_CODEC_PROP_TEXT_SUB,
3683 },
3684 {
3685 .id = AV_CODEC_ID_JACOSUB,
3686 .type = AVMEDIA_TYPE_SUBTITLE,
3687 .name = "jacosub",
3688 .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
3689 .props = AV_CODEC_PROP_TEXT_SUB,
3690 },
3691 {
3692 .id = AV_CODEC_ID_SAMI,
3693 .type = AVMEDIA_TYPE_SUBTITLE,
3694 .name = "sami",
3695 .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle"),
3696 .props = AV_CODEC_PROP_TEXT_SUB,
3697 },
3698 {
3699 .id = AV_CODEC_ID_REALTEXT,
3700 .type = AVMEDIA_TYPE_SUBTITLE,
3701 .name = "realtext",
3702 .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle"),
3703 .props = AV_CODEC_PROP_TEXT_SUB,
3704 },
3705 {
3706 .id = AV_CODEC_ID_STL,
3707 .type = AVMEDIA_TYPE_SUBTITLE,
3708 .name = "stl",
3709 .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"),
3710 .props = AV_CODEC_PROP_TEXT_SUB,
3711 },
3712 {
3713 .id = AV_CODEC_ID_SUBVIEWER1,
3714 .type = AVMEDIA_TYPE_SUBTITLE,
3715 .name = "subviewer1",
3716 .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle"),
3717 .props = AV_CODEC_PROP_TEXT_SUB,
3718 },
3719 {
3720 .id = AV_CODEC_ID_SUBVIEWER,
3721 .type = AVMEDIA_TYPE_SUBTITLE,
3722 .name = "subviewer",
3723 .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle"),
3724 .props = AV_CODEC_PROP_TEXT_SUB,
3725 },
3726 {
3727 .id = AV_CODEC_ID_SUBRIP,
3728 .type = AVMEDIA_TYPE_SUBTITLE,
3729 .name = "subrip",
3730 .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"),
3731 .props = AV_CODEC_PROP_TEXT_SUB,
3732 },
3733 {
3734 .id = AV_CODEC_ID_WEBVTT,
3735 .type = AVMEDIA_TYPE_SUBTITLE,
3736 .name = "webvtt",
3737 .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
3738 .props = AV_CODEC_PROP_TEXT_SUB,
3739 },
3740 {
3741 .id = AV_CODEC_ID_MPL2,
3742 .type = AVMEDIA_TYPE_SUBTITLE,
3743 .name = "mpl2",
3744 .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitle"),
3745 .props = AV_CODEC_PROP_TEXT_SUB,
3746 },
3747 {
3748 .id = AV_CODEC_ID_VPLAYER,
3749 .type = AVMEDIA_TYPE_SUBTITLE,
3750 .name = "vplayer",
3751 .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"),
3752 .props = AV_CODEC_PROP_TEXT_SUB,
3753 },
3754 {
3755 .id = AV_CODEC_ID_PJS,
3756 .type = AVMEDIA_TYPE_SUBTITLE,
3757 .name = "pjs",
3758 .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitle"),
3759 .props = AV_CODEC_PROP_TEXT_SUB,
3760 },
3761 {
3762 .id = AV_CODEC_ID_ASS,
3763 .type = AVMEDIA_TYPE_SUBTITLE,
3764 .name = "ass",
3765 .long_name = NULL_IF_CONFIG_SMALL("ASS (Advanced SSA) subtitle"),
3766 .props = AV_CODEC_PROP_TEXT_SUB,
3767 },
3768 {
3769 .id = AV_CODEC_ID_HDMV_TEXT_SUBTITLE,
3770 .type = AVMEDIA_TYPE_SUBTITLE,
3771 .name = "hdmv_text_subtitle",
3772 .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
3773 .props = AV_CODEC_PROP_TEXT_SUB,
3774 },
3775 {
3776 .id = AV_CODEC_ID_TTML,
3777 .type = AVMEDIA_TYPE_SUBTITLE,
3778 .name = "ttml",
3779 .long_name = NULL_IF_CONFIG_SMALL("Timed Text Markup Language"),
3780 .props = AV_CODEC_PROP_TEXT_SUB,
3781 },
3782 {
3783 .id = AV_CODEC_ID_ARIB_CAPTION,
3784 .type = AVMEDIA_TYPE_SUBTITLE,
3785 .name = "arib_caption",
3786 .long_name = NULL_IF_CONFIG_SMALL("ARIB STD-B24 caption"),
3787 .profiles = NULL_IF_CONFIG_SMALL(ff_arib_caption_profiles),
3788 },
3789 {
3790 .id = AV_CODEC_ID_IVTV_VBI,
3791 .type = AVMEDIA_TYPE_SUBTITLE,
3792 .name = "ivtv_vbi",
3793 .long_name = NULL_IF_CONFIG_SMALL("ivtv VBI captions"),
3794 },
3795
3796 /* other kind of codecs and pseudo-codecs */
3797 {
3798 .id = AV_CODEC_ID_TTF,
3799 .type = AVMEDIA_TYPE_DATA,
3800 .name = "ttf",
3801 .long_name = NULL_IF_CONFIG_SMALL("TrueType font"),
3802 .mime_types= MT("application/x-truetype-font", "application/x-font"),
3803 },
3804 {
3805 .id = AV_CODEC_ID_SCTE_35,
3806 .type = AVMEDIA_TYPE_DATA,
3807 .name = "scte_35",
3808 .long_name = NULL_IF_CONFIG_SMALL("SCTE 35 Message Queue"),
3809 },
3810 {
3811 .id = AV_CODEC_ID_EPG,
3812 .type = AVMEDIA_TYPE_DATA,
3813 .name = "epg",
3814 .long_name = NULL_IF_CONFIG_SMALL("Electronic Program Guide"),
3815 },
3816 {
3817 .id = AV_CODEC_ID_BINTEXT,
3818 .type = AVMEDIA_TYPE_VIDEO,
3819 .name = "bintext",
3820 .long_name = NULL_IF_CONFIG_SMALL("Binary text"),
3821 .props = AV_CODEC_PROP_INTRA_ONLY,
3822 },
3823 {
3824 .id = AV_CODEC_ID_XBIN,
3825 .type = AVMEDIA_TYPE_VIDEO,
3826 .name = "xbin",
3827 .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text"),
3828 .props = AV_CODEC_PROP_INTRA_ONLY,
3829 },
3830 {
3831 .id = AV_CODEC_ID_IDF,
3832 .type = AVMEDIA_TYPE_VIDEO,
3833 .name = "idf",
3834 .long_name = NULL_IF_CONFIG_SMALL("iCEDraw text"),
3835 .props = AV_CODEC_PROP_INTRA_ONLY,
3836 },
3837 {
3838 .id = AV_CODEC_ID_OTF,
3839 .type = AVMEDIA_TYPE_DATA,
3840 .name = "otf",
3841 .long_name = NULL_IF_CONFIG_SMALL("OpenType font"),
3842 .mime_types= MT("application/vnd.ms-opentype"),
3843 },
3844 {
3845 .id = AV_CODEC_ID_SMPTE_KLV,
3846 .type = AVMEDIA_TYPE_DATA,
3847 .name = "klv",
3848 .long_name = NULL_IF_CONFIG_SMALL("SMPTE 336M Key-Length-Value (KLV) metadata"),
3849 },
3850 {
3851 .id = AV_CODEC_ID_DVD_NAV,
3852 .type = AVMEDIA_TYPE_DATA,
3853 .name = "dvd_nav_packet",
3854 .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"),
3855 },
3856 {
3857 .id = AV_CODEC_ID_TIMED_ID3,
3858 .type = AVMEDIA_TYPE_DATA,
3859 .name = "timed_id3",
3860 .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"),
3861 },
3862 {
3863 .id = AV_CODEC_ID_BIN_DATA,
3864 .type = AVMEDIA_TYPE_DATA,
3865 .name = "bin_data",
3866 .long_name = NULL_IF_CONFIG_SMALL("binary data"),
3867 .mime_types= MT("application/octet-stream"),
3868 },
3869 {
3870 .id = AV_CODEC_ID_SMPTE_2038,
3871 .type = AVMEDIA_TYPE_DATA,
3872 .name = "smpte_2038",
3873 .long_name = NULL_IF_CONFIG_SMALL("SMPTE ST 2038 VANC in MPEG-2 TS"),
3874 },
3875 {
3876 .id = AV_CODEC_ID_LCEVC,
3877 .type = AVMEDIA_TYPE_VIDEO,
3878 .name = "lcevc",
3879 .long_name = NULL_IF_CONFIG_SMALL("LCEVC (Low Complexity Enhancement Video Coding) / MPEG-5 LCEVC / MPEG-5 part 2"),
3880 .props = AV_CODEC_PROP_ENHANCEMENT,
3881 },
3882 {
3883 .id = AV_CODEC_ID_SMPTE_436M_ANC,
3884 .type = AVMEDIA_TYPE_DATA,
3885 .name = "smpte_436m_anc",
3886 .long_name = NULL_IF_CONFIG_SMALL("MXF SMPTE-436M ANC"),
3887 },
3888 {
3889 .id = AV_CODEC_ID_ITUT_T35,
3890 .type = AVMEDIA_TYPE_DATA,
3891 .name = "itut_t35",
3892 .long_name = NULL_IF_CONFIG_SMALL("ITU-T T.35 metadata"),
3893 },
3894 {
3895 .id = AV_CODEC_ID_MPEG2TS,
3896 .type = AVMEDIA_TYPE_DATA,
3897 .name = "mpegts",
3898 .long_name = NULL_IF_CONFIG_SMALL("raw MPEG-TS stream"),
3899 .mime_types= MT("application/MP2T"),
3900 },
3901 {
3902 .id = AV_CODEC_ID_WRAPPED_AVFRAME,
3903 .type = AVMEDIA_TYPE_VIDEO,
3904 .name = "wrapped_avframe",
3905 .long_name = NULL_IF_CONFIG_SMALL("AVFrame to AVPacket passthrough"),
3906 .props = AV_CODEC_PROP_LOSSLESS,
3907 },
3908 {
3909 .id = AV_CODEC_ID_VNULL,
3910 .type = AVMEDIA_TYPE_VIDEO,
3911 .name = "vnull",
3912 .long_name = NULL_IF_CONFIG_SMALL("Null video codec"),
3913 },
3914 {
3915 .id = AV_CODEC_ID_ANULL,
3916 .type = AVMEDIA_TYPE_AUDIO,
3917 .name = "anull",
3918 .long_name = NULL_IF_CONFIG_SMALL("Null audio codec"),
3919 },
3920 };
3921
3922 12996020 static int descriptor_compare(const void *key, const void *member)
3923 {
3924 12996020 enum AVCodecID id = *(const enum AVCodecID *) key;
3925 12996020 const AVCodecDescriptor *desc = member;
3926
3927 12996020 return id - desc->id;
3928 }
3929
3930 1723430 const AVCodecDescriptor *avcodec_descriptor_get(enum AVCodecID id)
3931 {
3932 1723430 return bsearch(&id, codec_descriptors, FF_ARRAY_ELEMS(codec_descriptors),
3933 sizeof(codec_descriptors[0]), descriptor_compare);
3934 }
3935
3936 149899 const AVCodecDescriptor *avcodec_descriptor_next(const AVCodecDescriptor *prev)
3937 {
3938
2/2
✓ Branch 0 taken 548 times.
✓ Branch 1 taken 149351 times.
149899 if (!prev)
3939 548 return &codec_descriptors[0];
3940
2/2
✓ Branch 0 taken 149350 times.
✓ Branch 1 taken 1 times.
149351 if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
3941 149350 return prev + 1;
3942 1 return NULL;
3943 }
3944
3945 547 const AVCodecDescriptor *avcodec_descriptor_get_by_name(const char *name)
3946 {
3947 547 const AVCodecDescriptor *desc = NULL;
3948
3949
1/2
✓ Branch 1 taken 149352 times.
✗ Branch 2 not taken.
149352 while ((desc = avcodec_descriptor_next(desc)))
3950
2/2
✓ Branch 0 taken 547 times.
✓ Branch 1 taken 148805 times.
149352 if (!strcmp(desc->name, name))
3951 547 return desc;
3952 ✗ return NULL;
3953 }
3954
3955 2 enum AVMediaType avcodec_get_type(enum AVCodecID codec_id)
3956 {
3957 2 const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id);
3958
1/2
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
2 return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN;
3959 }
3960