FFmpeg coverage


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