2 * This file is part of FFmpeg.
4 * This table was generated from the long and short names of AVCodecs
5 * please see the respective codec sources for authorship
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.
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.
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
24 #include "libavutil/avassert.h"
25 #include "libavutil/common.h"
26 #include "libavutil/internal.h"
27 #include "libavutil/thread.h"
32 #define MT(...) (const char *const[]){ __VA_ARGS__, NULL }
34 static const AVCodecDescriptor codec_descriptors[] = {
37 .id = AV_CODEC_ID_MPEG1VIDEO,
38 .type = AVMEDIA_TYPE_VIDEO,
40 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
41 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
44 .id = AV_CODEC_ID_MPEG2VIDEO,
45 .type = AVMEDIA_TYPE_VIDEO,
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),
52 .id = AV_CODEC_ID_H261,
53 .type = AVMEDIA_TYPE_VIDEO,
55 .long_name = NULL_IF_CONFIG_SMALL("H.261"),
56 .props = AV_CODEC_PROP_LOSSY,
59 .id = AV_CODEC_ID_H263,
60 .type = AVMEDIA_TYPE_VIDEO,
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,
66 .id = AV_CODEC_ID_RV10,
67 .type = AVMEDIA_TYPE_VIDEO,
69 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
70 .props = AV_CODEC_PROP_LOSSY,
73 .id = AV_CODEC_ID_RV20,
74 .type = AVMEDIA_TYPE_VIDEO,
76 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
77 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
80 .id = AV_CODEC_ID_MJPEG,
81 .type = AVMEDIA_TYPE_VIDEO,
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"),
88 .id = AV_CODEC_ID_MJPEGB,
89 .type = AVMEDIA_TYPE_VIDEO,
91 .long_name = NULL_IF_CONFIG_SMALL("Apple MJPEG-B"),
92 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
95 .id = AV_CODEC_ID_LJPEG,
96 .type = AVMEDIA_TYPE_VIDEO,
98 .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
99 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
102 .id = AV_CODEC_ID_SP5X,
103 .type = AVMEDIA_TYPE_VIDEO,
105 .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),
106 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
109 .id = AV_CODEC_ID_JPEGLS,
110 .type = AVMEDIA_TYPE_VIDEO,
112 .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),
113 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
114 AV_CODEC_PROP_LOSSLESS,
117 .id = AV_CODEC_ID_MPEG4,
118 .type = AVMEDIA_TYPE_VIDEO,
120 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),
121 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
122 .profiles = NULL_IF_CONFIG_SMALL(ff_mpeg4_video_profiles),
125 .id = AV_CODEC_ID_RAWVIDEO,
126 .type = AVMEDIA_TYPE_VIDEO,
128 .long_name = NULL_IF_CONFIG_SMALL("raw video"),
129 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
132 .id = AV_CODEC_ID_MSMPEG4V1,
133 .type = AVMEDIA_TYPE_VIDEO,
135 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 1"),
136 .props = AV_CODEC_PROP_LOSSY,
139 .id = AV_CODEC_ID_MSMPEG4V2,
140 .type = AVMEDIA_TYPE_VIDEO,
142 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"),
143 .props = AV_CODEC_PROP_LOSSY,
146 .id = AV_CODEC_ID_MSMPEG4V3,
147 .type = AVMEDIA_TYPE_VIDEO,
149 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"),
150 .props = AV_CODEC_PROP_LOSSY,
153 .id = AV_CODEC_ID_WMV1,
154 .type = AVMEDIA_TYPE_VIDEO,
156 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"),
157 .props = AV_CODEC_PROP_LOSSY,
160 .id = AV_CODEC_ID_WMV2,
161 .type = AVMEDIA_TYPE_VIDEO,
163 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"),
164 .props = AV_CODEC_PROP_LOSSY,
167 .id = AV_CODEC_ID_H263P,
168 .type = AVMEDIA_TYPE_VIDEO,
170 .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 2"),
171 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
174 .id = AV_CODEC_ID_H263I,
175 .type = AVMEDIA_TYPE_VIDEO,
177 .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),
178 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
181 .id = AV_CODEC_ID_FLV1,
182 .type = AVMEDIA_TYPE_VIDEO,
184 .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"),
185 .props = AV_CODEC_PROP_LOSSY,
188 .id = AV_CODEC_ID_SVQ1,
189 .type = AVMEDIA_TYPE_VIDEO,
191 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1"),
192 .props = AV_CODEC_PROP_LOSSY,
195 .id = AV_CODEC_ID_SVQ3,
196 .type = AVMEDIA_TYPE_VIDEO,
198 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3"),
199 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
202 .id = AV_CODEC_ID_DVVIDEO,
203 .type = AVMEDIA_TYPE_VIDEO,
205 .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),
206 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
209 .id = AV_CODEC_ID_HUFFYUV,
210 .type = AVMEDIA_TYPE_VIDEO,
212 .long_name = NULL_IF_CONFIG_SMALL("HuffYUV"),
213 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
216 .id = AV_CODEC_ID_CYUV,
217 .type = AVMEDIA_TYPE_VIDEO,
219 .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"),
220 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
223 .id = AV_CODEC_ID_H264,
224 .type = AVMEDIA_TYPE_VIDEO,
226 .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
227 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
228 .profiles = NULL_IF_CONFIG_SMALL(ff_h264_profiles),
231 .id = AV_CODEC_ID_INDEO3,
232 .type = AVMEDIA_TYPE_VIDEO,
234 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 3"),
235 .props = AV_CODEC_PROP_LOSSY,
238 .id = AV_CODEC_ID_VP3,
239 .type = AVMEDIA_TYPE_VIDEO,
241 .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),
242 .props = AV_CODEC_PROP_LOSSY,
245 .id = AV_CODEC_ID_THEORA,
246 .type = AVMEDIA_TYPE_VIDEO,
248 .long_name = NULL_IF_CONFIG_SMALL("Theora"),
249 .props = AV_CODEC_PROP_LOSSY,
252 .id = AV_CODEC_ID_ASV1,
253 .type = AVMEDIA_TYPE_VIDEO,
255 .long_name = NULL_IF_CONFIG_SMALL("ASUS V1"),
256 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
259 .id = AV_CODEC_ID_ASV2,
260 .type = AVMEDIA_TYPE_VIDEO,
262 .long_name = NULL_IF_CONFIG_SMALL("ASUS V2"),
263 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
266 .id = AV_CODEC_ID_FFV1,
267 .type = AVMEDIA_TYPE_VIDEO,
269 .long_name = NULL_IF_CONFIG_SMALL("FFmpeg video codec #1"),
270 .props = AV_CODEC_PROP_LOSSLESS,
273 .id = AV_CODEC_ID_4XM,
274 .type = AVMEDIA_TYPE_VIDEO,
276 .long_name = NULL_IF_CONFIG_SMALL("4X Movie"),
277 .props = AV_CODEC_PROP_LOSSY,
280 .id = AV_CODEC_ID_VCR1,
281 .type = AVMEDIA_TYPE_VIDEO,
283 .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),
284 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
287 .id = AV_CODEC_ID_CLJR,
288 .type = AVMEDIA_TYPE_VIDEO,
290 .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"),
291 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
294 .id = AV_CODEC_ID_MDEC,
295 .type = AVMEDIA_TYPE_VIDEO,
297 .long_name = NULL_IF_CONFIG_SMALL("Sony PlayStation MDEC (Motion DECoder)"),
298 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
301 .id = AV_CODEC_ID_ROQ,
302 .type = AVMEDIA_TYPE_VIDEO,
304 .long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),
305 .props = AV_CODEC_PROP_LOSSY,
308 .id = AV_CODEC_ID_INTERPLAY_VIDEO,
309 .type = AVMEDIA_TYPE_VIDEO,
310 .name = "interplayvideo",
311 .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE video"),
312 .props = AV_CODEC_PROP_LOSSY,
315 .id = AV_CODEC_ID_XAN_WC3,
316 .type = AVMEDIA_TYPE_VIDEO,
318 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III / Xan"),
319 .props = AV_CODEC_PROP_LOSSY,
322 .id = AV_CODEC_ID_XAN_WC4,
323 .type = AVMEDIA_TYPE_VIDEO,
325 .long_name = NULL_IF_CONFIG_SMALL("Wing Commander IV / Xxan"),
326 .props = AV_CODEC_PROP_LOSSY,
329 .id = AV_CODEC_ID_RPZA,
330 .type = AVMEDIA_TYPE_VIDEO,
332 .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),
333 .props = AV_CODEC_PROP_LOSSY,
336 .id = AV_CODEC_ID_CINEPAK,
337 .type = AVMEDIA_TYPE_VIDEO,
339 .long_name = NULL_IF_CONFIG_SMALL("Cinepak"),
340 .props = AV_CODEC_PROP_LOSSY,
343 .id = AV_CODEC_ID_WS_VQA,
344 .type = AVMEDIA_TYPE_VIDEO,
346 .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA (Vector Quantized Animation) video"),
347 .props = AV_CODEC_PROP_LOSSY,
350 .id = AV_CODEC_ID_MSRLE,
351 .type = AVMEDIA_TYPE_VIDEO,
353 .long_name = NULL_IF_CONFIG_SMALL("Microsoft RLE"),
354 .props = AV_CODEC_PROP_LOSSLESS,
357 .id = AV_CODEC_ID_MSVIDEO1,
358 .type = AVMEDIA_TYPE_VIDEO,
360 .long_name = NULL_IF_CONFIG_SMALL("Microsoft Video 1"),
361 .props = AV_CODEC_PROP_LOSSY,
364 .id = AV_CODEC_ID_IDCIN,
365 .type = AVMEDIA_TYPE_VIDEO,
367 .long_name = NULL_IF_CONFIG_SMALL("id Quake II CIN video"),
368 .props = AV_CODEC_PROP_LOSSY,
371 .id = AV_CODEC_ID_8BPS,
372 .type = AVMEDIA_TYPE_VIDEO,
374 .long_name = NULL_IF_CONFIG_SMALL("QuickTime 8BPS video"),
375 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
378 .id = AV_CODEC_ID_SMC,
379 .type = AVMEDIA_TYPE_VIDEO,
381 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Graphics (SMC)"),
382 .props = AV_CODEC_PROP_LOSSY,
385 .id = AV_CODEC_ID_FLIC,
386 .type = AVMEDIA_TYPE_VIDEO,
388 .long_name = NULL_IF_CONFIG_SMALL("Autodesk Animator Flic video"),
389 .props = AV_CODEC_PROP_LOSSLESS,
392 .id = AV_CODEC_ID_TRUEMOTION1,
393 .type = AVMEDIA_TYPE_VIDEO,
394 .name = "truemotion1",
395 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 1.0"),
396 .props = AV_CODEC_PROP_LOSSY,
399 .id = AV_CODEC_ID_VMDVIDEO,
400 .type = AVMEDIA_TYPE_VIDEO,
402 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD video"),
403 .props = AV_CODEC_PROP_LOSSY,
406 .id = AV_CODEC_ID_MSZH,
407 .type = AVMEDIA_TYPE_VIDEO,
409 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) MSZH"),
410 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
413 .id = AV_CODEC_ID_ZLIB,
414 .type = AVMEDIA_TYPE_VIDEO,
416 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),
417 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
420 .id = AV_CODEC_ID_QTRLE,
421 .type = AVMEDIA_TYPE_VIDEO,
423 .long_name = NULL_IF_CONFIG_SMALL("QuickTime Animation (RLE) video"),
424 .props = AV_CODEC_PROP_LOSSLESS,
427 .id = AV_CODEC_ID_TSCC,
428 .type = AVMEDIA_TYPE_VIDEO,
430 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Capture Codec"),
431 .props = AV_CODEC_PROP_LOSSLESS,
434 .id = AV_CODEC_ID_ULTI,
435 .type = AVMEDIA_TYPE_VIDEO,
437 .long_name = NULL_IF_CONFIG_SMALL("IBM UltiMotion"),
438 .props = AV_CODEC_PROP_LOSSY,
441 .id = AV_CODEC_ID_QDRAW,
442 .type = AVMEDIA_TYPE_VIDEO,
444 .long_name = NULL_IF_CONFIG_SMALL("Apple QuickDraw"),
445 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
448 .id = AV_CODEC_ID_VIXL,
449 .type = AVMEDIA_TYPE_VIDEO,
451 .long_name = NULL_IF_CONFIG_SMALL("Miro VideoXL"),
452 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
455 .id = AV_CODEC_ID_QPEG,
456 .type = AVMEDIA_TYPE_VIDEO,
458 .long_name = NULL_IF_CONFIG_SMALL("Q-team QPEG"),
459 .props = AV_CODEC_PROP_LOSSY,
462 .id = AV_CODEC_ID_PNG,
463 .type = AVMEDIA_TYPE_VIDEO,
465 .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),
466 .props = AV_CODEC_PROP_LOSSLESS,
467 .mime_types= MT("image/png"),
470 .id = AV_CODEC_ID_PPM,
471 .type = AVMEDIA_TYPE_VIDEO,
473 .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
474 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
477 .id = AV_CODEC_ID_PBM,
478 .type = AVMEDIA_TYPE_VIDEO,
480 .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
481 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
484 .id = AV_CODEC_ID_PGM,
485 .type = AVMEDIA_TYPE_VIDEO,
487 .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
488 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
491 .id = AV_CODEC_ID_PGMYUV,
492 .type = AVMEDIA_TYPE_VIDEO,
494 .long_name = NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
495 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
498 .id = AV_CODEC_ID_PAM,
499 .type = AVMEDIA_TYPE_VIDEO,
501 .long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
502 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
503 .mime_types= MT("image/x-portable-pixmap"),
506 .id = AV_CODEC_ID_FFVHUFF,
507 .type = AVMEDIA_TYPE_VIDEO,
509 .long_name = NULL_IF_CONFIG_SMALL("Huffyuv FFmpeg variant"),
510 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
513 .id = AV_CODEC_ID_RV30,
514 .type = AVMEDIA_TYPE_VIDEO,
516 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
517 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
520 .id = AV_CODEC_ID_RV40,
521 .type = AVMEDIA_TYPE_VIDEO,
523 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 4.0"),
524 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
527 .id = AV_CODEC_ID_VC1,
528 .type = AVMEDIA_TYPE_VIDEO,
530 .long_name = NULL_IF_CONFIG_SMALL("SMPTE VC-1"),
531 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
532 .profiles = NULL_IF_CONFIG_SMALL(ff_vc1_profiles),
535 .id = AV_CODEC_ID_WMV3,
536 .type = AVMEDIA_TYPE_VIDEO,
538 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9"),
539 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
540 .profiles = NULL_IF_CONFIG_SMALL(ff_vc1_profiles),
543 .id = AV_CODEC_ID_LOCO,
544 .type = AVMEDIA_TYPE_VIDEO,
546 .long_name = NULL_IF_CONFIG_SMALL("LOCO"),
547 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
550 .id = AV_CODEC_ID_WNV1,
551 .type = AVMEDIA_TYPE_VIDEO,
553 .long_name = NULL_IF_CONFIG_SMALL("Winnov WNV1"),
554 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
557 .id = AV_CODEC_ID_AASC,
558 .type = AVMEDIA_TYPE_VIDEO,
560 .long_name = NULL_IF_CONFIG_SMALL("Autodesk RLE"),
561 .props = AV_CODEC_PROP_LOSSLESS,
564 .id = AV_CODEC_ID_INDEO2,
565 .type = AVMEDIA_TYPE_VIDEO,
567 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 2"),
568 .props = AV_CODEC_PROP_LOSSY,
571 .id = AV_CODEC_ID_FRAPS,
572 .type = AVMEDIA_TYPE_VIDEO,
574 .long_name = NULL_IF_CONFIG_SMALL("Fraps"),
575 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
578 .id = AV_CODEC_ID_TRUEMOTION2,
579 .type = AVMEDIA_TYPE_VIDEO,
580 .name = "truemotion2",
581 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0"),
582 .props = AV_CODEC_PROP_LOSSY,
585 .id = AV_CODEC_ID_BMP,
586 .type = AVMEDIA_TYPE_VIDEO,
588 .long_name = NULL_IF_CONFIG_SMALL("BMP (Windows and OS/2 bitmap)"),
589 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
590 .mime_types= MT("image/x-ms-bmp"),
593 .id = AV_CODEC_ID_CSCD,
594 .type = AVMEDIA_TYPE_VIDEO,
596 .long_name = NULL_IF_CONFIG_SMALL("CamStudio"),
597 .props = AV_CODEC_PROP_LOSSLESS,
600 .id = AV_CODEC_ID_MMVIDEO,
601 .type = AVMEDIA_TYPE_VIDEO,
603 .long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM Video"),
604 .props = AV_CODEC_PROP_LOSSY,
607 .id = AV_CODEC_ID_ZMBV,
608 .type = AVMEDIA_TYPE_VIDEO,
610 .long_name = NULL_IF_CONFIG_SMALL("Zip Motion Blocks Video"),
611 .props = AV_CODEC_PROP_LOSSLESS,
614 .id = AV_CODEC_ID_AVS,
615 .type = AVMEDIA_TYPE_VIDEO,
617 .long_name = NULL_IF_CONFIG_SMALL("AVS (Audio Video Standard) video"),
618 .props = AV_CODEC_PROP_LOSSY,
621 .id = AV_CODEC_ID_SMACKVIDEO,
622 .type = AVMEDIA_TYPE_VIDEO,
623 .name = "smackvideo",
624 .long_name = NULL_IF_CONFIG_SMALL("Smacker video"),
625 .props = AV_CODEC_PROP_LOSSY,
628 .id = AV_CODEC_ID_NUV,
629 .type = AVMEDIA_TYPE_VIDEO,
631 .long_name = NULL_IF_CONFIG_SMALL("NuppelVideo/RTJPEG"),
632 .props = AV_CODEC_PROP_LOSSY,
635 .id = AV_CODEC_ID_KMVC,
636 .type = AVMEDIA_TYPE_VIDEO,
638 .long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
639 .props = AV_CODEC_PROP_LOSSY,
642 .id = AV_CODEC_ID_FLASHSV,
643 .type = AVMEDIA_TYPE_VIDEO,
645 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v1"),
646 .props = AV_CODEC_PROP_LOSSLESS,
649 .id = AV_CODEC_ID_CAVS,
650 .type = AVMEDIA_TYPE_VIDEO,
652 .long_name = NULL_IF_CONFIG_SMALL("Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)"),
653 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
656 .id = AV_CODEC_ID_JPEG2000,
657 .type = AVMEDIA_TYPE_VIDEO,
659 .long_name = NULL_IF_CONFIG_SMALL("JPEG 2000"),
660 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
661 AV_CODEC_PROP_LOSSLESS,
662 .mime_types= MT("image/jp2"),
663 .profiles = NULL_IF_CONFIG_SMALL(ff_jpeg2000_profiles),
666 .id = AV_CODEC_ID_VMNC,
667 .type = AVMEDIA_TYPE_VIDEO,
669 .long_name = NULL_IF_CONFIG_SMALL("VMware Screen Codec / VMware Video"),
670 .props = AV_CODEC_PROP_LOSSLESS,
673 .id = AV_CODEC_ID_VP5,
674 .type = AVMEDIA_TYPE_VIDEO,
676 .long_name = NULL_IF_CONFIG_SMALL("On2 VP5"),
677 .props = AV_CODEC_PROP_LOSSY,
680 .id = AV_CODEC_ID_VP6,
681 .type = AVMEDIA_TYPE_VIDEO,
683 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6"),
684 .props = AV_CODEC_PROP_LOSSY,
687 .id = AV_CODEC_ID_VP6F,
688 .type = AVMEDIA_TYPE_VIDEO,
690 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version)"),
691 .props = AV_CODEC_PROP_LOSSY,
694 .id = AV_CODEC_ID_TARGA,
695 .type = AVMEDIA_TYPE_VIDEO,
697 .long_name = NULL_IF_CONFIG_SMALL("Truevision Targa image"),
698 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
699 .mime_types= MT("image/x-targa", "image/x-tga"),
702 .id = AV_CODEC_ID_DSICINVIDEO,
703 .type = AVMEDIA_TYPE_VIDEO,
704 .name = "dsicinvideo",
705 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN video"),
706 .props = AV_CODEC_PROP_LOSSY,
709 .id = AV_CODEC_ID_TIERTEXSEQVIDEO,
710 .type = AVMEDIA_TYPE_VIDEO,
711 .name = "tiertexseqvideo",
712 .long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ video"),
713 .props = AV_CODEC_PROP_LOSSY,
716 .id = AV_CODEC_ID_TIFF,
717 .type = AVMEDIA_TYPE_VIDEO,
719 .long_name = NULL_IF_CONFIG_SMALL("TIFF image"),
720 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
721 .mime_types= MT("image/tiff"),
724 .id = AV_CODEC_ID_GIF,
725 .type = AVMEDIA_TYPE_VIDEO,
727 .long_name = NULL_IF_CONFIG_SMALL("GIF (Graphics Interchange Format)"),
728 .props = AV_CODEC_PROP_LOSSLESS,
729 .mime_types= MT("image/gif"),
732 .id = AV_CODEC_ID_DXA,
733 .type = AVMEDIA_TYPE_VIDEO,
735 .long_name = NULL_IF_CONFIG_SMALL("Feeble Files/ScummVM DXA"),
736 .props = AV_CODEC_PROP_LOSSLESS,
739 .id = AV_CODEC_ID_DNXHD,
740 .type = AVMEDIA_TYPE_VIDEO,
742 .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"),
743 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
744 .profiles = NULL_IF_CONFIG_SMALL(ff_dnxhd_profiles),
747 .id = AV_CODEC_ID_THP,
748 .type = AVMEDIA_TYPE_VIDEO,
750 .long_name = NULL_IF_CONFIG_SMALL("Nintendo Gamecube THP video"),
751 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
754 .id = AV_CODEC_ID_SGI,
755 .type = AVMEDIA_TYPE_VIDEO,
757 .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
758 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
761 .id = AV_CODEC_ID_C93,
762 .type = AVMEDIA_TYPE_VIDEO,
764 .long_name = NULL_IF_CONFIG_SMALL("Interplay C93"),
765 .props = AV_CODEC_PROP_LOSSY,
768 .id = AV_CODEC_ID_BETHSOFTVID,
769 .type = AVMEDIA_TYPE_VIDEO,
770 .name = "bethsoftvid",
771 .long_name = NULL_IF_CONFIG_SMALL("Bethesda VID video"),
772 .props = AV_CODEC_PROP_LOSSY,
775 .id = AV_CODEC_ID_PTX,
776 .type = AVMEDIA_TYPE_VIDEO,
778 .long_name = NULL_IF_CONFIG_SMALL("V.Flash PTX image"),
779 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
782 .id = AV_CODEC_ID_TXD,
783 .type = AVMEDIA_TYPE_VIDEO,
785 .long_name = NULL_IF_CONFIG_SMALL("Renderware TXD (TeXture Dictionary) image"),
786 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
789 .id = AV_CODEC_ID_VP6A,
790 .type = AVMEDIA_TYPE_VIDEO,
792 .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version, with alpha channel)"),
793 .props = AV_CODEC_PROP_LOSSY,
796 .id = AV_CODEC_ID_AMV,
797 .type = AVMEDIA_TYPE_VIDEO,
799 .long_name = NULL_IF_CONFIG_SMALL("AMV Video"),
800 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
803 .id = AV_CODEC_ID_VB,
804 .type = AVMEDIA_TYPE_VIDEO,
806 .long_name = NULL_IF_CONFIG_SMALL("Beam Software VB"),
807 .props = AV_CODEC_PROP_LOSSY,
810 .id = AV_CODEC_ID_PCX,
811 .type = AVMEDIA_TYPE_VIDEO,
813 .long_name = NULL_IF_CONFIG_SMALL("PC Paintbrush PCX image"),
814 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
815 .mime_types= MT("image/x-pcx"),
818 .id = AV_CODEC_ID_SUNRAST,
819 .type = AVMEDIA_TYPE_VIDEO,
821 .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
822 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
825 .id = AV_CODEC_ID_INDEO4,
826 .type = AVMEDIA_TYPE_VIDEO,
828 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 4"),
829 .props = AV_CODEC_PROP_LOSSY,
832 .id = AV_CODEC_ID_INDEO5,
833 .type = AVMEDIA_TYPE_VIDEO,
835 .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 5"),
836 .props = AV_CODEC_PROP_LOSSY,
839 .id = AV_CODEC_ID_MIMIC,
840 .type = AVMEDIA_TYPE_VIDEO,
842 .long_name = NULL_IF_CONFIG_SMALL("Mimic"),
843 .props = AV_CODEC_PROP_LOSSY,
846 .id = AV_CODEC_ID_RL2,
847 .type = AVMEDIA_TYPE_VIDEO,
849 .long_name = NULL_IF_CONFIG_SMALL("RL2 video"),
850 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
853 .id = AV_CODEC_ID_ESCAPE124,
854 .type = AVMEDIA_TYPE_VIDEO,
856 .long_name = NULL_IF_CONFIG_SMALL("Escape 124"),
857 .props = AV_CODEC_PROP_LOSSY,
860 .id = AV_CODEC_ID_DIRAC,
861 .type = AVMEDIA_TYPE_VIDEO,
863 .long_name = NULL_IF_CONFIG_SMALL("Dirac"),
864 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_REORDER,
867 .id = AV_CODEC_ID_BFI,
868 .type = AVMEDIA_TYPE_VIDEO,
870 .long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"),
871 .props = AV_CODEC_PROP_LOSSY,
874 .id = AV_CODEC_ID_CMV,
875 .type = AVMEDIA_TYPE_VIDEO,
877 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts CMV video"),
878 .props = AV_CODEC_PROP_LOSSY,
881 .id = AV_CODEC_ID_MOTIONPIXELS,
882 .type = AVMEDIA_TYPE_VIDEO,
883 .name = "motionpixels",
884 .long_name = NULL_IF_CONFIG_SMALL("Motion Pixels video"),
885 .props = AV_CODEC_PROP_LOSSY,
888 .id = AV_CODEC_ID_TGV,
889 .type = AVMEDIA_TYPE_VIDEO,
891 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGV video"),
892 .props = AV_CODEC_PROP_LOSSY,
895 .id = AV_CODEC_ID_TGQ,
896 .type = AVMEDIA_TYPE_VIDEO,
898 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGQ video"),
899 .props = AV_CODEC_PROP_LOSSY,
902 .id = AV_CODEC_ID_TQI,
903 .type = AVMEDIA_TYPE_VIDEO,
905 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TQI video"),
906 .props = AV_CODEC_PROP_LOSSY,
909 .id = AV_CODEC_ID_AURA,
910 .type = AVMEDIA_TYPE_VIDEO,
912 .long_name = NULL_IF_CONFIG_SMALL("Auravision AURA"),
913 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
916 .id = AV_CODEC_ID_AURA2,
917 .type = AVMEDIA_TYPE_VIDEO,
919 .long_name = NULL_IF_CONFIG_SMALL("Auravision Aura 2"),
920 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
923 .id = AV_CODEC_ID_V210X,
924 .type = AVMEDIA_TYPE_VIDEO,
926 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
927 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
930 .id = AV_CODEC_ID_TMV,
931 .type = AVMEDIA_TYPE_VIDEO,
933 .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"),
934 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
937 .id = AV_CODEC_ID_V210,
938 .type = AVMEDIA_TYPE_VIDEO,
940 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
941 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
944 .id = AV_CODEC_ID_DPX,
945 .type = AVMEDIA_TYPE_VIDEO,
947 .long_name = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
948 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
951 .id = AV_CODEC_ID_MAD,
952 .type = AVMEDIA_TYPE_VIDEO,
954 .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Madcow Video"),
955 .props = AV_CODEC_PROP_LOSSY,
958 .id = AV_CODEC_ID_FRWU,
959 .type = AVMEDIA_TYPE_VIDEO,
961 .long_name = NULL_IF_CONFIG_SMALL("Forward Uncompressed"),
962 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
965 .id = AV_CODEC_ID_FLASHSV2,
966 .type = AVMEDIA_TYPE_VIDEO,
968 .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v2"),
969 .props = AV_CODEC_PROP_LOSSY,
972 .id = AV_CODEC_ID_CDGRAPHICS,
973 .type = AVMEDIA_TYPE_VIDEO,
974 .name = "cdgraphics",
975 .long_name = NULL_IF_CONFIG_SMALL("CD Graphics video"),
976 .props = AV_CODEC_PROP_LOSSY,
979 .id = AV_CODEC_ID_R210,
980 .type = AVMEDIA_TYPE_VIDEO,
982 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed RGB 10-bit"),
983 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
986 .id = AV_CODEC_ID_ANM,
987 .type = AVMEDIA_TYPE_VIDEO,
989 .long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"),
990 .props = AV_CODEC_PROP_LOSSY,
993 .id = AV_CODEC_ID_BINKVIDEO,
994 .type = AVMEDIA_TYPE_VIDEO,
996 .long_name = NULL_IF_CONFIG_SMALL("Bink video"),
997 .props = AV_CODEC_PROP_LOSSY,
1000 .id = AV_CODEC_ID_IFF_ILBM,
1001 .type = AVMEDIA_TYPE_VIDEO,
1003 .long_name = NULL_IF_CONFIG_SMALL("IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN"),
1004 .props = AV_CODEC_PROP_LOSSY,
1007 .id = AV_CODEC_ID_KGV1,
1008 .type = AVMEDIA_TYPE_VIDEO,
1010 .long_name = NULL_IF_CONFIG_SMALL("Kega Game Video"),
1011 .props = AV_CODEC_PROP_LOSSY,
1014 .id = AV_CODEC_ID_YOP,
1015 .type = AVMEDIA_TYPE_VIDEO,
1017 .long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP Video"),
1018 .props = AV_CODEC_PROP_LOSSY,
1021 .id = AV_CODEC_ID_VP8,
1022 .type = AVMEDIA_TYPE_VIDEO,
1024 .long_name = NULL_IF_CONFIG_SMALL("On2 VP8"),
1025 .props = AV_CODEC_PROP_LOSSY,
1028 .id = AV_CODEC_ID_PICTOR,
1029 .type = AVMEDIA_TYPE_VIDEO,
1031 .long_name = NULL_IF_CONFIG_SMALL("Pictor/PC Paint"),
1032 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1035 .id = AV_CODEC_ID_ANSI,
1036 .type = AVMEDIA_TYPE_VIDEO,
1038 .long_name = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
1039 .props = AV_CODEC_PROP_LOSSY,
1042 .id = AV_CODEC_ID_A64_MULTI,
1043 .type = AVMEDIA_TYPE_VIDEO,
1044 .name = "a64_multi",
1045 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64"),
1046 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1049 .id = AV_CODEC_ID_A64_MULTI5,
1050 .type = AVMEDIA_TYPE_VIDEO,
1051 .name = "a64_multi5",
1052 .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64, extended with 5th color (colram)"),
1053 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1056 .id = AV_CODEC_ID_R10K,
1057 .type = AVMEDIA_TYPE_VIDEO,
1059 .long_name = NULL_IF_CONFIG_SMALL("AJA Kona 10-bit RGB Codec"),
1060 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1063 .id = AV_CODEC_ID_MXPEG,
1064 .type = AVMEDIA_TYPE_VIDEO,
1066 .long_name = NULL_IF_CONFIG_SMALL("Mobotix MxPEG video"),
1067 .props = AV_CODEC_PROP_LOSSY,
1070 .id = AV_CODEC_ID_LAGARITH,
1071 .type = AVMEDIA_TYPE_VIDEO,
1073 .long_name = NULL_IF_CONFIG_SMALL("Lagarith lossless"),
1074 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1077 .id = AV_CODEC_ID_PRORES,
1078 .type = AVMEDIA_TYPE_VIDEO,
1080 .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
1081 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1084 .id = AV_CODEC_ID_JV,
1085 .type = AVMEDIA_TYPE_VIDEO,
1087 .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"),
1088 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1091 .id = AV_CODEC_ID_DFA,
1092 .type = AVMEDIA_TYPE_VIDEO,
1094 .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"),
1095 .props = AV_CODEC_PROP_LOSSY,
1098 .id = AV_CODEC_ID_WMV3IMAGE,
1099 .type = AVMEDIA_TYPE_VIDEO,
1100 .name = "wmv3image",
1101 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image"),
1102 .props = AV_CODEC_PROP_LOSSY,
1105 .id = AV_CODEC_ID_VC1IMAGE,
1106 .type = AVMEDIA_TYPE_VIDEO,
1108 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image v2"),
1109 .props = AV_CODEC_PROP_LOSSY,
1112 .id = AV_CODEC_ID_UTVIDEO,
1113 .type = AVMEDIA_TYPE_VIDEO,
1115 .long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
1116 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1119 .id = AV_CODEC_ID_BMV_VIDEO,
1120 .type = AVMEDIA_TYPE_VIDEO,
1121 .name = "bmv_video",
1122 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV video"),
1123 .props = AV_CODEC_PROP_LOSSLESS,
1126 .id = AV_CODEC_ID_VBLE,
1127 .type = AVMEDIA_TYPE_VIDEO,
1129 .long_name = NULL_IF_CONFIG_SMALL("VBLE Lossless Codec"),
1130 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1133 .id = AV_CODEC_ID_DXTORY,
1134 .type = AVMEDIA_TYPE_VIDEO,
1136 .long_name = NULL_IF_CONFIG_SMALL("Dxtory"),
1137 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1140 .id = AV_CODEC_ID_V410,
1141 .type = AVMEDIA_TYPE_VIDEO,
1143 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:4:4 10-bit"),
1144 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1147 .id = AV_CODEC_ID_XWD,
1148 .type = AVMEDIA_TYPE_VIDEO,
1150 .long_name = NULL_IF_CONFIG_SMALL("XWD (X Window Dump) image"),
1151 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1152 .mime_types= MT("image/x-xwindowdump"),
1155 .id = AV_CODEC_ID_CDXL,
1156 .type = AVMEDIA_TYPE_VIDEO,
1158 .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"),
1159 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1162 .id = AV_CODEC_ID_XBM,
1163 .type = AVMEDIA_TYPE_VIDEO,
1165 .long_name = NULL_IF_CONFIG_SMALL("XBM (X BitMap) image"),
1166 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1167 .mime_types= MT("image/x-xbitmap"),
1170 .id = AV_CODEC_ID_ZEROCODEC,
1171 .type = AVMEDIA_TYPE_VIDEO,
1172 .name = "zerocodec",
1173 .long_name = NULL_IF_CONFIG_SMALL("ZeroCodec Lossless Video"),
1174 .props = AV_CODEC_PROP_LOSSLESS,
1177 .id = AV_CODEC_ID_MSS1,
1178 .type = AVMEDIA_TYPE_VIDEO,
1180 .long_name = NULL_IF_CONFIG_SMALL("MS Screen 1"),
1181 .props = AV_CODEC_PROP_LOSSY,
1184 .id = AV_CODEC_ID_MSA1,
1185 .type = AVMEDIA_TYPE_VIDEO,
1187 .long_name = NULL_IF_CONFIG_SMALL("MS ATC Screen"),
1188 .props = AV_CODEC_PROP_LOSSY,
1191 .id = AV_CODEC_ID_TSCC2,
1192 .type = AVMEDIA_TYPE_VIDEO,
1194 .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Codec 2"),
1195 .props = AV_CODEC_PROP_LOSSY,
1198 .id = AV_CODEC_ID_MTS2,
1199 .type = AVMEDIA_TYPE_VIDEO,
1201 .long_name = NULL_IF_CONFIG_SMALL("MS Expression Encoder Screen"),
1202 .props = AV_CODEC_PROP_LOSSY,
1205 .id = AV_CODEC_ID_CLLC,
1206 .type = AVMEDIA_TYPE_VIDEO,
1208 .long_name = NULL_IF_CONFIG_SMALL("Canopus Lossless Codec"),
1209 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1212 .id = AV_CODEC_ID_MSS2,
1213 .type = AVMEDIA_TYPE_VIDEO,
1215 .long_name = NULL_IF_CONFIG_SMALL("MS Windows Media Video V9 Screen"),
1216 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1219 .id = AV_CODEC_ID_VP9,
1220 .type = AVMEDIA_TYPE_VIDEO,
1222 .long_name = NULL_IF_CONFIG_SMALL("Google VP9"),
1223 .props = AV_CODEC_PROP_LOSSY,
1224 .profiles = NULL_IF_CONFIG_SMALL(ff_vp9_profiles),
1227 .id = AV_CODEC_ID_AIC,
1228 .type = AVMEDIA_TYPE_VIDEO,
1230 .long_name = NULL_IF_CONFIG_SMALL("Apple Intermediate Codec"),
1231 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1234 .id = AV_CODEC_ID_ESCAPE130,
1235 .type = AVMEDIA_TYPE_VIDEO,
1236 .name = "escape130",
1237 .long_name = NULL_IF_CONFIG_SMALL("Escape 130"),
1238 .props = AV_CODEC_PROP_LOSSY,
1241 .id = AV_CODEC_ID_G2M,
1242 .type = AVMEDIA_TYPE_VIDEO,
1244 .long_name = NULL_IF_CONFIG_SMALL("Go2Meeting"),
1245 .props = AV_CODEC_PROP_LOSSY,
1248 .id = AV_CODEC_ID_WEBP,
1249 .type = AVMEDIA_TYPE_VIDEO,
1251 .long_name = NULL_IF_CONFIG_SMALL("WebP"),
1252 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1253 AV_CODEC_PROP_LOSSLESS,
1254 .mime_types= MT("image/webp"),
1257 .id = AV_CODEC_ID_HNM4_VIDEO,
1258 .type = AVMEDIA_TYPE_VIDEO,
1259 .name = "hnm4video",
1260 .long_name = NULL_IF_CONFIG_SMALL("HNM 4 video"),
1261 .props = AV_CODEC_PROP_LOSSY,
1264 .id = AV_CODEC_ID_HEVC,
1265 .type = AVMEDIA_TYPE_VIDEO,
1267 .long_name = NULL_IF_CONFIG_SMALL("H.265 / HEVC (High Efficiency Video Coding)"),
1268 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
1269 .profiles = NULL_IF_CONFIG_SMALL(ff_hevc_profiles),
1272 .id = AV_CODEC_ID_FIC,
1273 .type = AVMEDIA_TYPE_VIDEO,
1275 .long_name = NULL_IF_CONFIG_SMALL("Mirillis FIC"),
1276 .props = AV_CODEC_PROP_LOSSY,
1279 .id = AV_CODEC_ID_ALIAS_PIX,
1280 .type = AVMEDIA_TYPE_VIDEO,
1281 .name = "alias_pix",
1282 .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"),
1283 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1286 .id = AV_CODEC_ID_BRENDER_PIX,
1287 .type = AVMEDIA_TYPE_VIDEO,
1288 .name = "brender_pix",
1289 .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"),
1290 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1293 .id = AV_CODEC_ID_PAF_VIDEO,
1294 .type = AVMEDIA_TYPE_VIDEO,
1295 .name = "paf_video",
1296 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Video"),
1297 .props = AV_CODEC_PROP_LOSSY,
1300 .id = AV_CODEC_ID_EXR,
1301 .type = AVMEDIA_TYPE_VIDEO,
1303 .long_name = NULL_IF_CONFIG_SMALL("OpenEXR image"),
1304 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1305 AV_CODEC_PROP_LOSSLESS,
1308 .id = AV_CODEC_ID_VP7,
1309 .type = AVMEDIA_TYPE_VIDEO,
1311 .long_name = NULL_IF_CONFIG_SMALL("On2 VP7"),
1312 .props = AV_CODEC_PROP_LOSSY,
1315 .id = AV_CODEC_ID_SANM,
1316 .type = AVMEDIA_TYPE_VIDEO,
1318 .long_name = NULL_IF_CONFIG_SMALL("LucasArts SANM/SMUSH video"),
1319 .props = AV_CODEC_PROP_LOSSY,
1322 .id = AV_CODEC_ID_SGIRLE,
1323 .type = AVMEDIA_TYPE_VIDEO,
1325 .long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
1326 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1329 .id = AV_CODEC_ID_MVC1,
1330 .type = AVMEDIA_TYPE_VIDEO,
1332 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 1"),
1333 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1336 .id = AV_CODEC_ID_MVC2,
1337 .type = AVMEDIA_TYPE_VIDEO,
1339 .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 2"),
1340 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1343 .id = AV_CODEC_ID_HQX,
1344 .type = AVMEDIA_TYPE_VIDEO,
1346 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQX"),
1347 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1350 .id = AV_CODEC_ID_TDSC,
1351 .type = AVMEDIA_TYPE_VIDEO,
1353 .long_name = NULL_IF_CONFIG_SMALL("TDSC"),
1354 .props = AV_CODEC_PROP_LOSSY,
1357 .id = AV_CODEC_ID_HQ_HQA,
1358 .type = AVMEDIA_TYPE_VIDEO,
1360 .long_name = NULL_IF_CONFIG_SMALL("Canopus HQ/HQA"),
1361 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1364 .id = AV_CODEC_ID_HAP,
1365 .type = AVMEDIA_TYPE_VIDEO,
1367 .long_name = NULL_IF_CONFIG_SMALL("Vidvox Hap"),
1368 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1371 .id = AV_CODEC_ID_DDS,
1372 .type = AVMEDIA_TYPE_VIDEO,
1374 .long_name = NULL_IF_CONFIG_SMALL("DirectDraw Surface image decoder"),
1375 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |
1376 AV_CODEC_PROP_LOSSLESS,
1379 .id = AV_CODEC_ID_DXV,
1380 .type = AVMEDIA_TYPE_VIDEO,
1382 .long_name = NULL_IF_CONFIG_SMALL("Resolume DXV"),
1383 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1386 .id = AV_CODEC_ID_SCREENPRESSO,
1387 .type = AVMEDIA_TYPE_VIDEO,
1388 .name = "screenpresso",
1389 .long_name = NULL_IF_CONFIG_SMALL("Screenpresso"),
1390 .props = AV_CODEC_PROP_LOSSLESS,
1393 .id = AV_CODEC_ID_RSCC,
1394 .type = AVMEDIA_TYPE_VIDEO,
1396 .long_name = NULL_IF_CONFIG_SMALL("innoHeim/Rsupport Screen Capture Codec"),
1397 .props = AV_CODEC_PROP_LOSSLESS,
1400 .id = AV_CODEC_ID_Y41P,
1401 .type = AVMEDIA_TYPE_VIDEO,
1403 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed YUV 4:1:1 12-bit"),
1404 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1407 .id = AV_CODEC_ID_AVRP,
1408 .type = AVMEDIA_TYPE_VIDEO,
1410 .long_name = NULL_IF_CONFIG_SMALL("Avid 1:1 10-bit RGB Packer"),
1411 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1414 .id = AV_CODEC_ID_012V,
1415 .type = AVMEDIA_TYPE_VIDEO,
1417 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
1418 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1421 .id = AV_CODEC_ID_AVUI,
1422 .type = AVMEDIA_TYPE_VIDEO,
1424 .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
1425 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1428 .id = AV_CODEC_ID_AYUV,
1429 .type = AVMEDIA_TYPE_VIDEO,
1431 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"),
1432 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1435 .id = AV_CODEC_ID_TARGA_Y216,
1436 .type = AVMEDIA_TYPE_VIDEO,
1437 .name = "targa_y216",
1438 .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"),
1439 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1442 .id = AV_CODEC_ID_V308,
1443 .type = AVMEDIA_TYPE_VIDEO,
1445 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"),
1446 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1449 .id = AV_CODEC_ID_V408,
1450 .type = AVMEDIA_TYPE_VIDEO,
1452 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed QT 4:4:4:4"),
1453 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1456 .id = AV_CODEC_ID_YUV4,
1457 .type = AVMEDIA_TYPE_VIDEO,
1459 .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:2:0"),
1460 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1463 .id = AV_CODEC_ID_AVRN,
1464 .type = AVMEDIA_TYPE_VIDEO,
1466 .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"),
1469 .id = AV_CODEC_ID_CPIA,
1470 .type = AVMEDIA_TYPE_VIDEO,
1472 .long_name = NULL_IF_CONFIG_SMALL("CPiA video format"),
1475 .id = AV_CODEC_ID_XFACE,
1476 .type = AVMEDIA_TYPE_VIDEO,
1478 .long_name = NULL_IF_CONFIG_SMALL("X-face image"),
1479 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1482 .id = AV_CODEC_ID_SNOW,
1483 .type = AVMEDIA_TYPE_VIDEO,
1485 .long_name = NULL_IF_CONFIG_SMALL("Snow"),
1486 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1489 .id = AV_CODEC_ID_SMVJPEG,
1490 .type = AVMEDIA_TYPE_VIDEO,
1492 .long_name = NULL_IF_CONFIG_SMALL("Sigmatel Motion Video"),
1495 .id = AV_CODEC_ID_APNG,
1496 .type = AVMEDIA_TYPE_VIDEO,
1498 .long_name = NULL_IF_CONFIG_SMALL("APNG (Animated Portable Network Graphics) image"),
1499 .props = AV_CODEC_PROP_LOSSLESS,
1500 .mime_types= MT("image/png"),
1503 .id = AV_CODEC_ID_DAALA,
1504 .type = AVMEDIA_TYPE_VIDEO,
1506 .long_name = NULL_IF_CONFIG_SMALL("Daala"),
1507 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
1510 .id = AV_CODEC_ID_CFHD,
1511 .type = AVMEDIA_TYPE_VIDEO,
1513 .long_name = NULL_IF_CONFIG_SMALL("Cineform HD"),
1514 .props = AV_CODEC_PROP_LOSSY,
1517 .id = AV_CODEC_ID_TRUEMOTION2RT,
1518 .type = AVMEDIA_TYPE_VIDEO,
1519 .name = "truemotion2rt",
1520 .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0 Real Time"),
1521 .props = AV_CODEC_PROP_LOSSY,
1524 .id = AV_CODEC_ID_M101,
1525 .type = AVMEDIA_TYPE_VIDEO,
1527 .long_name = NULL_IF_CONFIG_SMALL("Matrox Uncompressed SD"),
1528 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1531 .id = AV_CODEC_ID_MAGICYUV,
1532 .type = AVMEDIA_TYPE_VIDEO,
1534 .long_name = NULL_IF_CONFIG_SMALL("MagicYUV video"),
1535 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1538 .id = AV_CODEC_ID_SHEERVIDEO,
1539 .type = AVMEDIA_TYPE_VIDEO,
1540 .name = "sheervideo",
1541 .long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
1542 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1545 .id = AV_CODEC_ID_YLC,
1546 .type = AVMEDIA_TYPE_VIDEO,
1548 .long_name = NULL_IF_CONFIG_SMALL("YUY2 Lossless Codec"),
1549 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1552 .id = AV_CODEC_ID_PSD,
1553 .type = AVMEDIA_TYPE_VIDEO,
1555 .long_name = NULL_IF_CONFIG_SMALL("Photoshop PSD file"),
1556 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1559 .id = AV_CODEC_ID_PIXLET,
1560 .type = AVMEDIA_TYPE_VIDEO,
1562 .long_name = NULL_IF_CONFIG_SMALL("Apple Pixlet"),
1563 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1566 .id = AV_CODEC_ID_SPEEDHQ,
1567 .type = AVMEDIA_TYPE_VIDEO,
1569 .long_name = NULL_IF_CONFIG_SMALL("NewTek SpeedHQ"),
1570 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,
1573 .id = AV_CODEC_ID_FMVC,
1574 .type = AVMEDIA_TYPE_VIDEO,
1576 .long_name = NULL_IF_CONFIG_SMALL("FM Screen Capture Codec"),
1577 .props = AV_CODEC_PROP_LOSSLESS,
1580 .id = AV_CODEC_ID_SCPR,
1581 .type = AVMEDIA_TYPE_VIDEO,
1583 .long_name = NULL_IF_CONFIG_SMALL("ScreenPressor"),
1584 .props = AV_CODEC_PROP_LOSSLESS | AV_CODEC_PROP_LOSSY,
1587 .id = AV_CODEC_ID_CLEARVIDEO,
1588 .type = AVMEDIA_TYPE_VIDEO,
1589 .name = "clearvideo",
1590 .long_name = NULL_IF_CONFIG_SMALL("Iterated Systems ClearVideo"),
1591 .props = AV_CODEC_PROP_LOSSY,
1594 .id = AV_CODEC_ID_XPM,
1595 .type = AVMEDIA_TYPE_VIDEO,
1597 .long_name = NULL_IF_CONFIG_SMALL("XPM (X PixMap) image"),
1598 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1599 .mime_types= MT("image/x-xpixmap"),
1602 .id = AV_CODEC_ID_AV1,
1603 .type = AVMEDIA_TYPE_VIDEO,
1605 .long_name = NULL_IF_CONFIG_SMALL("Alliance for Open Media AV1"),
1606 .props = AV_CODEC_PROP_LOSSY,
1609 .id = AV_CODEC_ID_BITPACKED,
1610 .type = AVMEDIA_TYPE_VIDEO,
1611 .name = "bitpacked",
1612 .long_name = NULL_IF_CONFIG_SMALL("Bitpacked"),
1613 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1616 .id = AV_CODEC_ID_MSCC,
1617 .type = AVMEDIA_TYPE_VIDEO,
1619 .long_name = NULL_IF_CONFIG_SMALL("Mandsoft Screen Capture Codec"),
1620 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1623 .id = AV_CODEC_ID_SRGC,
1624 .type = AVMEDIA_TYPE_VIDEO,
1626 .long_name = NULL_IF_CONFIG_SMALL("Screen Recorder Gold Codec"),
1627 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1630 .id = AV_CODEC_ID_SVG,
1631 .type = AVMEDIA_TYPE_VIDEO,
1633 .long_name = NULL_IF_CONFIG_SMALL("Scalable Vector Graphics"),
1634 .props = AV_CODEC_PROP_LOSSLESS,
1635 .mime_types= MT("image/svg+xml"),
1638 .id = AV_CODEC_ID_GDV,
1639 .type = AVMEDIA_TYPE_VIDEO,
1641 .long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"),
1642 .props = AV_CODEC_PROP_LOSSY,
1645 .id = AV_CODEC_ID_FITS,
1646 .type = AVMEDIA_TYPE_VIDEO,
1648 .long_name = NULL_IF_CONFIG_SMALL("FITS (Flexible Image Transport System)"),
1649 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
1652 /* various PCM "codecs" */
1654 .id = AV_CODEC_ID_PCM_S16LE,
1655 .type = AVMEDIA_TYPE_AUDIO,
1656 .name = "pcm_s16le",
1657 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
1658 .props = AV_CODEC_PROP_LOSSLESS,
1661 .id = AV_CODEC_ID_PCM_S16BE,
1662 .type = AVMEDIA_TYPE_AUDIO,
1663 .name = "pcm_s16be",
1664 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
1665 .props = AV_CODEC_PROP_LOSSLESS,
1668 .id = AV_CODEC_ID_PCM_U16LE,
1669 .type = AVMEDIA_TYPE_AUDIO,
1670 .name = "pcm_u16le",
1671 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
1672 .props = AV_CODEC_PROP_LOSSLESS,
1675 .id = AV_CODEC_ID_PCM_U16BE,
1676 .type = AVMEDIA_TYPE_AUDIO,
1677 .name = "pcm_u16be",
1678 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
1679 .props = AV_CODEC_PROP_LOSSLESS,
1682 .id = AV_CODEC_ID_PCM_S8,
1683 .type = AVMEDIA_TYPE_AUDIO,
1685 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
1686 .props = AV_CODEC_PROP_LOSSLESS,
1689 .id = AV_CODEC_ID_PCM_U8,
1690 .type = AVMEDIA_TYPE_AUDIO,
1692 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
1693 .props = AV_CODEC_PROP_LOSSLESS,
1696 .id = AV_CODEC_ID_PCM_MULAW,
1697 .type = AVMEDIA_TYPE_AUDIO,
1698 .name = "pcm_mulaw",
1699 .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law / G.711 mu-law"),
1700 .props = AV_CODEC_PROP_LOSSY,
1703 .id = AV_CODEC_ID_PCM_ALAW,
1704 .type = AVMEDIA_TYPE_AUDIO,
1706 .long_name = NULL_IF_CONFIG_SMALL("PCM A-law / G.711 A-law"),
1707 .props = AV_CODEC_PROP_LOSSY,
1710 .id = AV_CODEC_ID_PCM_S32LE,
1711 .type = AVMEDIA_TYPE_AUDIO,
1712 .name = "pcm_s32le",
1713 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
1714 .props = AV_CODEC_PROP_LOSSLESS,
1717 .id = AV_CODEC_ID_PCM_S32BE,
1718 .type = AVMEDIA_TYPE_AUDIO,
1719 .name = "pcm_s32be",
1720 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
1721 .props = AV_CODEC_PROP_LOSSLESS,
1724 .id = AV_CODEC_ID_PCM_U32LE,
1725 .type = AVMEDIA_TYPE_AUDIO,
1726 .name = "pcm_u32le",
1727 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
1728 .props = AV_CODEC_PROP_LOSSLESS,
1731 .id = AV_CODEC_ID_PCM_U32BE,
1732 .type = AVMEDIA_TYPE_AUDIO,
1733 .name = "pcm_u32be",
1734 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
1735 .props = AV_CODEC_PROP_LOSSLESS,
1738 .id = AV_CODEC_ID_PCM_S24LE,
1739 .type = AVMEDIA_TYPE_AUDIO,
1740 .name = "pcm_s24le",
1741 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
1742 .props = AV_CODEC_PROP_LOSSLESS,
1745 .id = AV_CODEC_ID_PCM_S24BE,
1746 .type = AVMEDIA_TYPE_AUDIO,
1747 .name = "pcm_s24be",
1748 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
1749 .props = AV_CODEC_PROP_LOSSLESS,
1752 .id = AV_CODEC_ID_PCM_U24LE,
1753 .type = AVMEDIA_TYPE_AUDIO,
1754 .name = "pcm_u24le",
1755 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
1756 .props = AV_CODEC_PROP_LOSSLESS,
1759 .id = AV_CODEC_ID_PCM_U24BE,
1760 .type = AVMEDIA_TYPE_AUDIO,
1761 .name = "pcm_u24be",
1762 .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
1763 .props = AV_CODEC_PROP_LOSSLESS,
1766 .id = AV_CODEC_ID_PCM_S24DAUD,
1767 .type = AVMEDIA_TYPE_AUDIO,
1768 .name = "pcm_s24daud",
1769 .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
1770 .props = AV_CODEC_PROP_LOSSLESS,
1773 .id = AV_CODEC_ID_PCM_ZORK,
1774 .type = AVMEDIA_TYPE_AUDIO,
1776 .long_name = NULL_IF_CONFIG_SMALL("PCM Zork"),
1777 .props = AV_CODEC_PROP_LOSSY,
1780 .id = AV_CODEC_ID_PCM_S16LE_PLANAR,
1781 .type = AVMEDIA_TYPE_AUDIO,
1782 .name = "pcm_s16le_planar",
1783 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian planar"),
1784 .props = AV_CODEC_PROP_LOSSLESS,
1787 .id = AV_CODEC_ID_PCM_DVD,
1788 .type = AVMEDIA_TYPE_AUDIO,
1790 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20|24-bit big-endian"),
1791 .props = AV_CODEC_PROP_LOSSLESS,
1794 .id = AV_CODEC_ID_PCM_F32BE,
1795 .type = AVMEDIA_TYPE_AUDIO,
1796 .name = "pcm_f32be",
1797 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
1798 .props = AV_CODEC_PROP_LOSSLESS,
1801 .id = AV_CODEC_ID_PCM_F32LE,
1802 .type = AVMEDIA_TYPE_AUDIO,
1803 .name = "pcm_f32le",
1804 .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
1805 .props = AV_CODEC_PROP_LOSSLESS,
1808 .id = AV_CODEC_ID_PCM_F64BE,
1809 .type = AVMEDIA_TYPE_AUDIO,
1810 .name = "pcm_f64be",
1811 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
1812 .props = AV_CODEC_PROP_LOSSLESS,
1815 .id = AV_CODEC_ID_PCM_F64LE,
1816 .type = AVMEDIA_TYPE_AUDIO,
1817 .name = "pcm_f64le",
1818 .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
1819 .props = AV_CODEC_PROP_LOSSLESS,
1822 .id = AV_CODEC_ID_PCM_BLURAY,
1823 .type = AVMEDIA_TYPE_AUDIO,
1824 .name = "pcm_bluray",
1825 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
1826 .props = AV_CODEC_PROP_LOSSLESS,
1829 .id = AV_CODEC_ID_PCM_LXF,
1830 .type = AVMEDIA_TYPE_AUDIO,
1832 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
1833 .props = AV_CODEC_PROP_LOSSLESS,
1836 .id = AV_CODEC_ID_S302M,
1837 .type = AVMEDIA_TYPE_AUDIO,
1839 .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
1840 .props = AV_CODEC_PROP_LOSSLESS,
1843 .id = AV_CODEC_ID_PCM_S8_PLANAR,
1844 .type = AVMEDIA_TYPE_AUDIO,
1845 .name = "pcm_s8_planar",
1846 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
1847 .props = AV_CODEC_PROP_LOSSLESS,
1850 .id = AV_CODEC_ID_PCM_S24LE_PLANAR,
1851 .type = AVMEDIA_TYPE_AUDIO,
1852 .name = "pcm_s24le_planar",
1853 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
1854 .props = AV_CODEC_PROP_LOSSLESS,
1857 .id = AV_CODEC_ID_PCM_S32LE_PLANAR,
1858 .type = AVMEDIA_TYPE_AUDIO,
1859 .name = "pcm_s32le_planar",
1860 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
1861 .props = AV_CODEC_PROP_LOSSLESS,
1864 .id = AV_CODEC_ID_PCM_S16BE_PLANAR,
1865 .type = AVMEDIA_TYPE_AUDIO,
1866 .name = "pcm_s16be_planar",
1867 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
1868 .props = AV_CODEC_PROP_LOSSLESS,
1871 .id = AV_CODEC_ID_PCM_S64LE,
1872 .type = AVMEDIA_TYPE_AUDIO,
1873 .name = "pcm_s64le",
1874 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit little-endian"),
1875 .props = AV_CODEC_PROP_LOSSLESS,
1878 .id = AV_CODEC_ID_PCM_S64BE,
1879 .type = AVMEDIA_TYPE_AUDIO,
1880 .name = "pcm_s64be",
1881 .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit big-endian"),
1882 .props = AV_CODEC_PROP_LOSSLESS,
1885 .id = AV_CODEC_ID_PCM_F16LE,
1886 .type = AVMEDIA_TYPE_AUDIO,
1887 .name = "pcm_f16le",
1888 .long_name = NULL_IF_CONFIG_SMALL("PCM 16.8 floating point little-endian"),
1889 .props = AV_CODEC_PROP_LOSSLESS,
1892 .id = AV_CODEC_ID_PCM_F24LE,
1893 .type = AVMEDIA_TYPE_AUDIO,
1894 .name = "pcm_f24le",
1895 .long_name = NULL_IF_CONFIG_SMALL("PCM 24.0 floating point little-endian"),
1896 .props = AV_CODEC_PROP_LOSSLESS,
1899 /* various ADPCM codecs */
1901 .id = AV_CODEC_ID_ADPCM_IMA_QT,
1902 .type = AVMEDIA_TYPE_AUDIO,
1903 .name = "adpcm_ima_qt",
1904 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
1905 .props = AV_CODEC_PROP_LOSSY,
1908 .id = AV_CODEC_ID_ADPCM_IMA_WAV,
1909 .type = AVMEDIA_TYPE_AUDIO,
1910 .name = "adpcm_ima_wav",
1911 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
1912 .props = AV_CODEC_PROP_LOSSY,
1915 .id = AV_CODEC_ID_ADPCM_IMA_DK3,
1916 .type = AVMEDIA_TYPE_AUDIO,
1917 .name = "adpcm_ima_dk3",
1918 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
1919 .props = AV_CODEC_PROP_LOSSY,
1922 .id = AV_CODEC_ID_ADPCM_IMA_DK4,
1923 .type = AVMEDIA_TYPE_AUDIO,
1924 .name = "adpcm_ima_dk4",
1925 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
1926 .props = AV_CODEC_PROP_LOSSY,
1929 .id = AV_CODEC_ID_ADPCM_IMA_WS,
1930 .type = AVMEDIA_TYPE_AUDIO,
1931 .name = "adpcm_ima_ws",
1932 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
1933 .props = AV_CODEC_PROP_LOSSY,
1936 .id = AV_CODEC_ID_ADPCM_IMA_SMJPEG,
1937 .type = AVMEDIA_TYPE_AUDIO,
1938 .name = "adpcm_ima_smjpeg",
1939 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
1940 .props = AV_CODEC_PROP_LOSSY,
1943 .id = AV_CODEC_ID_ADPCM_MS,
1944 .type = AVMEDIA_TYPE_AUDIO,
1946 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
1947 .props = AV_CODEC_PROP_LOSSY,
1950 .id = AV_CODEC_ID_ADPCM_4XM,
1951 .type = AVMEDIA_TYPE_AUDIO,
1952 .name = "adpcm_4xm",
1953 .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
1954 .props = AV_CODEC_PROP_LOSSY,
1957 .id = AV_CODEC_ID_ADPCM_XA,
1958 .type = AVMEDIA_TYPE_AUDIO,
1960 .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
1961 .props = AV_CODEC_PROP_LOSSY,
1964 .id = AV_CODEC_ID_ADPCM_ADX,
1965 .type = AVMEDIA_TYPE_AUDIO,
1966 .name = "adpcm_adx",
1967 .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
1968 .props = AV_CODEC_PROP_LOSSY,
1971 .id = AV_CODEC_ID_ADPCM_EA,
1972 .type = AVMEDIA_TYPE_AUDIO,
1974 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
1975 .props = AV_CODEC_PROP_LOSSY,
1978 .id = AV_CODEC_ID_ADPCM_G726,
1979 .type = AVMEDIA_TYPE_AUDIO,
1980 .name = "adpcm_g726",
1981 .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
1982 .props = AV_CODEC_PROP_LOSSY,
1985 .id = AV_CODEC_ID_ADPCM_CT,
1986 .type = AVMEDIA_TYPE_AUDIO,
1988 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
1989 .props = AV_CODEC_PROP_LOSSY,
1992 .id = AV_CODEC_ID_ADPCM_SWF,
1993 .type = AVMEDIA_TYPE_AUDIO,
1994 .name = "adpcm_swf",
1995 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
1996 .props = AV_CODEC_PROP_LOSSY,
1999 .id = AV_CODEC_ID_ADPCM_YAMAHA,
2000 .type = AVMEDIA_TYPE_AUDIO,
2001 .name = "adpcm_yamaha",
2002 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
2003 .props = AV_CODEC_PROP_LOSSY,
2006 .id = AV_CODEC_ID_ADPCM_SBPRO_4,
2007 .type = AVMEDIA_TYPE_AUDIO,
2008 .name = "adpcm_sbpro_4",
2009 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
2010 .props = AV_CODEC_PROP_LOSSY,
2013 .id = AV_CODEC_ID_ADPCM_SBPRO_3,
2014 .type = AVMEDIA_TYPE_AUDIO,
2015 .name = "adpcm_sbpro_3",
2016 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
2017 .props = AV_CODEC_PROP_LOSSY,
2020 .id = AV_CODEC_ID_ADPCM_SBPRO_2,
2021 .type = AVMEDIA_TYPE_AUDIO,
2022 .name = "adpcm_sbpro_2",
2023 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
2024 .props = AV_CODEC_PROP_LOSSY,
2027 .id = AV_CODEC_ID_ADPCM_THP,
2028 .type = AVMEDIA_TYPE_AUDIO,
2029 .name = "adpcm_thp",
2030 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP"),
2031 .props = AV_CODEC_PROP_LOSSY,
2034 .id = AV_CODEC_ID_ADPCM_IMA_AMV,
2035 .type = AVMEDIA_TYPE_AUDIO,
2036 .name = "adpcm_ima_amv",
2037 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
2038 .props = AV_CODEC_PROP_LOSSY,
2041 .id = AV_CODEC_ID_ADPCM_EA_R1,
2042 .type = AVMEDIA_TYPE_AUDIO,
2043 .name = "adpcm_ea_r1",
2044 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
2045 .props = AV_CODEC_PROP_LOSSY,
2048 .id = AV_CODEC_ID_ADPCM_EA_R3,
2049 .type = AVMEDIA_TYPE_AUDIO,
2050 .name = "adpcm_ea_r3",
2051 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
2052 .props = AV_CODEC_PROP_LOSSY,
2055 .id = AV_CODEC_ID_ADPCM_EA_R2,
2056 .type = AVMEDIA_TYPE_AUDIO,
2057 .name = "adpcm_ea_r2",
2058 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
2059 .props = AV_CODEC_PROP_LOSSY,
2062 .id = AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
2063 .type = AVMEDIA_TYPE_AUDIO,
2064 .name = "adpcm_ima_ea_sead",
2065 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
2066 .props = AV_CODEC_PROP_LOSSY,
2069 .id = AV_CODEC_ID_ADPCM_IMA_EA_EACS,
2070 .type = AVMEDIA_TYPE_AUDIO,
2071 .name = "adpcm_ima_ea_eacs",
2072 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
2073 .props = AV_CODEC_PROP_LOSSY,
2076 .id = AV_CODEC_ID_ADPCM_EA_XAS,
2077 .type = AVMEDIA_TYPE_AUDIO,
2078 .name = "adpcm_ea_xas",
2079 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
2080 .props = AV_CODEC_PROP_LOSSY,
2083 .id = AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
2084 .type = AVMEDIA_TYPE_AUDIO,
2085 .name = "adpcm_ea_maxis_xa",
2086 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
2087 .props = AV_CODEC_PROP_LOSSY,
2090 .id = AV_CODEC_ID_ADPCM_IMA_ISS,
2091 .type = AVMEDIA_TYPE_AUDIO,
2092 .name = "adpcm_ima_iss",
2093 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
2094 .props = AV_CODEC_PROP_LOSSY,
2097 .id = AV_CODEC_ID_ADPCM_G722,
2098 .type = AVMEDIA_TYPE_AUDIO,
2099 .name = "adpcm_g722",
2100 .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
2101 .props = AV_CODEC_PROP_LOSSY,
2104 .id = AV_CODEC_ID_ADPCM_IMA_APC,
2105 .type = AVMEDIA_TYPE_AUDIO,
2106 .name = "adpcm_ima_apc",
2107 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
2108 .props = AV_CODEC_PROP_LOSSY,
2111 .id = AV_CODEC_ID_ADPCM_VIMA,
2112 .type = AVMEDIA_TYPE_AUDIO,
2113 .name = "adpcm_vima",
2114 .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
2115 .props = AV_CODEC_PROP_LOSSY,
2118 .id = AV_CODEC_ID_ADPCM_AFC,
2119 .type = AVMEDIA_TYPE_AUDIO,
2120 .name = "adpcm_afc",
2121 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube AFC"),
2122 .props = AV_CODEC_PROP_LOSSY,
2125 .id = AV_CODEC_ID_ADPCM_IMA_OKI,
2126 .type = AVMEDIA_TYPE_AUDIO,
2127 .name = "adpcm_ima_oki",
2128 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Dialogic OKI"),
2129 .props = AV_CODEC_PROP_LOSSY,
2132 .id = AV_CODEC_ID_ADPCM_DTK,
2133 .type = AVMEDIA_TYPE_AUDIO,
2134 .name = "adpcm_dtk",
2135 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube DTK"),
2136 .props = AV_CODEC_PROP_LOSSY,
2139 .id = AV_CODEC_ID_ADPCM_IMA_RAD,
2140 .type = AVMEDIA_TYPE_AUDIO,
2141 .name = "adpcm_ima_rad",
2142 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Radical"),
2143 .props = AV_CODEC_PROP_LOSSY,
2146 .id = AV_CODEC_ID_ADPCM_G726LE,
2147 .type = AVMEDIA_TYPE_AUDIO,
2148 .name = "adpcm_g726le",
2149 .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM little-endian"),
2150 .props = AV_CODEC_PROP_LOSSY,
2153 .id = AV_CODEC_ID_ADPCM_THP_LE,
2154 .type = AVMEDIA_TYPE_AUDIO,
2155 .name = "adpcm_thp_le",
2156 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP (Little-Endian)"),
2157 .props = AV_CODEC_PROP_LOSSY,
2160 .id = AV_CODEC_ID_ADPCM_PSX,
2161 .type = AVMEDIA_TYPE_AUDIO,
2162 .name = "adpcm_psx",
2163 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation"),
2164 .props = AV_CODEC_PROP_LOSSY,
2167 .id = AV_CODEC_ID_ADPCM_AICA,
2168 .type = AVMEDIA_TYPE_AUDIO,
2169 .name = "adpcm_aica",
2170 .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha AICA"),
2171 .props = AV_CODEC_PROP_LOSSY,
2174 .id = AV_CODEC_ID_ADPCM_IMA_DAT4,
2175 .type = AVMEDIA_TYPE_AUDIO,
2176 .name = "adpcm_ima_dat4",
2177 .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Eurocom DAT4"),
2178 .props = AV_CODEC_PROP_LOSSY,
2181 .id = AV_CODEC_ID_ADPCM_MTAF,
2182 .type = AVMEDIA_TYPE_AUDIO,
2183 .name = "adpcm_mtaf",
2184 .long_name = NULL_IF_CONFIG_SMALL("ADPCM MTAF"),
2185 .props = AV_CODEC_PROP_LOSSY,
2190 .id = AV_CODEC_ID_AMR_NB,
2191 .type = AVMEDIA_TYPE_AUDIO,
2193 .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
2194 .props = AV_CODEC_PROP_LOSSY,
2197 .id = AV_CODEC_ID_AMR_WB,
2198 .type = AVMEDIA_TYPE_AUDIO,
2200 .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
2201 .props = AV_CODEC_PROP_LOSSY,
2204 /* RealAudio codecs*/
2206 .id = AV_CODEC_ID_RA_144,
2207 .type = AVMEDIA_TYPE_AUDIO,
2209 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
2210 .props = AV_CODEC_PROP_LOSSY,
2213 .id = AV_CODEC_ID_RA_288,
2214 .type = AVMEDIA_TYPE_AUDIO,
2216 .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
2217 .props = AV_CODEC_PROP_LOSSY,
2220 /* various DPCM codecs */
2222 .id = AV_CODEC_ID_ROQ_DPCM,
2223 .type = AVMEDIA_TYPE_AUDIO,
2225 .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
2226 .props = AV_CODEC_PROP_LOSSY,
2229 .id = AV_CODEC_ID_INTERPLAY_DPCM,
2230 .type = AVMEDIA_TYPE_AUDIO,
2231 .name = "interplay_dpcm",
2232 .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
2233 .props = AV_CODEC_PROP_LOSSY,
2236 .id = AV_CODEC_ID_XAN_DPCM,
2237 .type = AVMEDIA_TYPE_AUDIO,
2239 .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
2240 .props = AV_CODEC_PROP_LOSSY,
2243 .id = AV_CODEC_ID_SOL_DPCM,
2244 .type = AVMEDIA_TYPE_AUDIO,
2246 .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
2247 .props = AV_CODEC_PROP_LOSSY,
2250 .id = AV_CODEC_ID_SDX2_DPCM,
2251 .type = AVMEDIA_TYPE_AUDIO,
2252 .name = "sdx2_dpcm",
2253 .long_name = NULL_IF_CONFIG_SMALL("DPCM Squareroot-Delta-Exact"),
2254 .props = AV_CODEC_PROP_LOSSY,
2257 .id = AV_CODEC_ID_GREMLIN_DPCM,
2258 .type = AVMEDIA_TYPE_AUDIO,
2259 .name = "gremlin_dpcm",
2260 .long_name = NULL_IF_CONFIG_SMALL("DPCM Gremlin"),
2261 .props = AV_CODEC_PROP_LOSSY,
2266 .id = AV_CODEC_ID_MP2,
2267 .type = AVMEDIA_TYPE_AUDIO,
2269 .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
2270 .props = AV_CODEC_PROP_LOSSY,
2273 .id = AV_CODEC_ID_MP3,
2274 .type = AVMEDIA_TYPE_AUDIO,
2276 .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
2277 .props = AV_CODEC_PROP_LOSSY,
2280 .id = AV_CODEC_ID_AAC,
2281 .type = AVMEDIA_TYPE_AUDIO,
2283 .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
2284 .props = AV_CODEC_PROP_LOSSY,
2285 .profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles),
2288 .id = AV_CODEC_ID_AC3,
2289 .type = AVMEDIA_TYPE_AUDIO,
2291 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
2292 .props = AV_CODEC_PROP_LOSSY,
2295 .id = AV_CODEC_ID_DTS,
2296 .type = AVMEDIA_TYPE_AUDIO,
2298 .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
2299 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
2300 .profiles = NULL_IF_CONFIG_SMALL(ff_dca_profiles),
2303 .id = AV_CODEC_ID_VORBIS,
2304 .type = AVMEDIA_TYPE_AUDIO,
2306 .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
2307 .props = AV_CODEC_PROP_LOSSY,
2310 .id = AV_CODEC_ID_DVAUDIO,
2311 .type = AVMEDIA_TYPE_AUDIO,
2313 .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
2314 .props = AV_CODEC_PROP_LOSSY,
2317 .id = AV_CODEC_ID_WMAV1,
2318 .type = AVMEDIA_TYPE_AUDIO,
2320 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
2321 .props = AV_CODEC_PROP_LOSSY,
2324 .id = AV_CODEC_ID_WMAV2,
2325 .type = AVMEDIA_TYPE_AUDIO,
2327 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
2328 .props = AV_CODEC_PROP_LOSSY,
2331 .id = AV_CODEC_ID_MACE3,
2332 .type = AVMEDIA_TYPE_AUDIO,
2334 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
2335 .props = AV_CODEC_PROP_LOSSY,
2338 .id = AV_CODEC_ID_MACE6,
2339 .type = AVMEDIA_TYPE_AUDIO,
2341 .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
2342 .props = AV_CODEC_PROP_LOSSY,
2345 .id = AV_CODEC_ID_VMDAUDIO,
2346 .type = AVMEDIA_TYPE_AUDIO,
2348 .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
2349 .props = AV_CODEC_PROP_LOSSY,
2352 .id = AV_CODEC_ID_FLAC,
2353 .type = AVMEDIA_TYPE_AUDIO,
2355 .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
2356 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2359 .id = AV_CODEC_ID_MP3ADU,
2360 .type = AVMEDIA_TYPE_AUDIO,
2362 .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
2363 .props = AV_CODEC_PROP_LOSSY,
2366 .id = AV_CODEC_ID_MP3ON4,
2367 .type = AVMEDIA_TYPE_AUDIO,
2369 .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
2370 .props = AV_CODEC_PROP_LOSSY,
2373 .id = AV_CODEC_ID_SHORTEN,
2374 .type = AVMEDIA_TYPE_AUDIO,
2376 .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
2377 .props = AV_CODEC_PROP_LOSSLESS,
2380 .id = AV_CODEC_ID_ALAC,
2381 .type = AVMEDIA_TYPE_AUDIO,
2383 .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
2384 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2387 .id = AV_CODEC_ID_WESTWOOD_SND1,
2388 .type = AVMEDIA_TYPE_AUDIO,
2389 .name = "westwood_snd1",
2390 .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
2391 .props = AV_CODEC_PROP_LOSSY,
2394 .id = AV_CODEC_ID_GSM,
2395 .type = AVMEDIA_TYPE_AUDIO,
2397 .long_name = NULL_IF_CONFIG_SMALL("GSM"),
2398 .props = AV_CODEC_PROP_LOSSY,
2401 .id = AV_CODEC_ID_QDM2,
2402 .type = AVMEDIA_TYPE_AUDIO,
2404 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
2405 .props = AV_CODEC_PROP_LOSSY,
2408 .id = AV_CODEC_ID_COOK,
2409 .type = AVMEDIA_TYPE_AUDIO,
2411 .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
2412 .props = AV_CODEC_PROP_LOSSY,
2415 .id = AV_CODEC_ID_TRUESPEECH,
2416 .type = AVMEDIA_TYPE_AUDIO,
2417 .name = "truespeech",
2418 .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
2419 .props = AV_CODEC_PROP_LOSSY,
2422 .id = AV_CODEC_ID_TTA,
2423 .type = AVMEDIA_TYPE_AUDIO,
2425 .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
2426 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2429 .id = AV_CODEC_ID_SMACKAUDIO,
2430 .type = AVMEDIA_TYPE_AUDIO,
2431 .name = "smackaudio",
2432 .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
2433 .props = AV_CODEC_PROP_LOSSY,
2436 .id = AV_CODEC_ID_QCELP,
2437 .type = AVMEDIA_TYPE_AUDIO,
2439 .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
2440 .props = AV_CODEC_PROP_LOSSY,
2443 .id = AV_CODEC_ID_WAVPACK,
2444 .type = AVMEDIA_TYPE_AUDIO,
2446 .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
2447 .props = AV_CODEC_PROP_INTRA_ONLY |
2448 AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS,
2451 .id = AV_CODEC_ID_DSICINAUDIO,
2452 .type = AVMEDIA_TYPE_AUDIO,
2453 .name = "dsicinaudio",
2454 .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
2455 .props = AV_CODEC_PROP_LOSSY,
2458 .id = AV_CODEC_ID_IMC,
2459 .type = AVMEDIA_TYPE_AUDIO,
2461 .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
2462 .props = AV_CODEC_PROP_LOSSY,
2465 .id = AV_CODEC_ID_MUSEPACK7,
2466 .type = AVMEDIA_TYPE_AUDIO,
2467 .name = "musepack7",
2468 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
2469 .props = AV_CODEC_PROP_LOSSY,
2472 .id = AV_CODEC_ID_MLP,
2473 .type = AVMEDIA_TYPE_AUDIO,
2475 .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
2476 .props = AV_CODEC_PROP_LOSSLESS,
2479 .id = AV_CODEC_ID_GSM_MS,
2480 .type = AVMEDIA_TYPE_AUDIO,
2482 .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
2483 .props = AV_CODEC_PROP_LOSSY,
2486 .id = AV_CODEC_ID_ATRAC3,
2487 .type = AVMEDIA_TYPE_AUDIO,
2489 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
2490 .props = AV_CODEC_PROP_LOSSY,
2493 .id = AV_CODEC_ID_APE,
2494 .type = AVMEDIA_TYPE_AUDIO,
2496 .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
2497 .props = AV_CODEC_PROP_LOSSLESS,
2500 .id = AV_CODEC_ID_NELLYMOSER,
2501 .type = AVMEDIA_TYPE_AUDIO,
2502 .name = "nellymoser",
2503 .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
2504 .props = AV_CODEC_PROP_LOSSY,
2507 .id = AV_CODEC_ID_MUSEPACK8,
2508 .type = AVMEDIA_TYPE_AUDIO,
2509 .name = "musepack8",
2510 .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
2511 .props = AV_CODEC_PROP_LOSSY,
2514 .id = AV_CODEC_ID_SPEEX,
2515 .type = AVMEDIA_TYPE_AUDIO,
2517 .long_name = NULL_IF_CONFIG_SMALL("Speex"),
2518 .props = AV_CODEC_PROP_LOSSY,
2521 .id = AV_CODEC_ID_WMAVOICE,
2522 .type = AVMEDIA_TYPE_AUDIO,
2524 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
2525 .props = AV_CODEC_PROP_LOSSY,
2528 .id = AV_CODEC_ID_WMAPRO,
2529 .type = AVMEDIA_TYPE_AUDIO,
2531 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
2532 .props = AV_CODEC_PROP_LOSSY,
2535 .id = AV_CODEC_ID_WMALOSSLESS,
2536 .type = AVMEDIA_TYPE_AUDIO,
2537 .name = "wmalossless",
2538 .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
2539 .props = AV_CODEC_PROP_LOSSLESS,
2542 .id = AV_CODEC_ID_ATRAC3P,
2543 .type = AVMEDIA_TYPE_AUDIO,
2545 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
2546 .props = AV_CODEC_PROP_LOSSY,
2549 .id = AV_CODEC_ID_EAC3,
2550 .type = AVMEDIA_TYPE_AUDIO,
2552 .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
2553 .props = AV_CODEC_PROP_LOSSY,
2556 .id = AV_CODEC_ID_SIPR,
2557 .type = AVMEDIA_TYPE_AUDIO,
2559 .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
2560 .props = AV_CODEC_PROP_LOSSY,
2563 .id = AV_CODEC_ID_MP1,
2564 .type = AVMEDIA_TYPE_AUDIO,
2566 .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
2567 .props = AV_CODEC_PROP_LOSSY,
2570 .id = AV_CODEC_ID_TWINVQ,
2571 .type = AVMEDIA_TYPE_AUDIO,
2573 .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
2574 .props = AV_CODEC_PROP_LOSSY,
2577 .id = AV_CODEC_ID_TRUEHD,
2578 .type = AVMEDIA_TYPE_AUDIO,
2580 .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
2581 .props = AV_CODEC_PROP_LOSSLESS,
2584 .id = AV_CODEC_ID_MP4ALS,
2585 .type = AVMEDIA_TYPE_AUDIO,
2587 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
2588 .props = AV_CODEC_PROP_LOSSLESS,
2591 .id = AV_CODEC_ID_ATRAC1,
2592 .type = AVMEDIA_TYPE_AUDIO,
2594 .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
2595 .props = AV_CODEC_PROP_LOSSY,
2598 .id = AV_CODEC_ID_BINKAUDIO_RDFT,
2599 .type = AVMEDIA_TYPE_AUDIO,
2600 .name = "binkaudio_rdft",
2601 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
2602 .props = AV_CODEC_PROP_LOSSY,
2605 .id = AV_CODEC_ID_BINKAUDIO_DCT,
2606 .type = AVMEDIA_TYPE_AUDIO,
2607 .name = "binkaudio_dct",
2608 .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
2609 .props = AV_CODEC_PROP_LOSSY,
2612 .id = AV_CODEC_ID_AAC_LATM,
2613 .type = AVMEDIA_TYPE_AUDIO,
2615 .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
2616 .props = AV_CODEC_PROP_LOSSY,
2617 .profiles = NULL_IF_CONFIG_SMALL(ff_aac_profiles),
2620 .id = AV_CODEC_ID_QDMC,
2621 .type = AVMEDIA_TYPE_AUDIO,
2623 .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
2624 .props = AV_CODEC_PROP_LOSSY,
2627 .id = AV_CODEC_ID_CELT,
2628 .type = AVMEDIA_TYPE_AUDIO,
2630 .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
2631 .props = AV_CODEC_PROP_LOSSY,
2634 .id = AV_CODEC_ID_G723_1,
2635 .type = AVMEDIA_TYPE_AUDIO,
2637 .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
2638 .props = AV_CODEC_PROP_LOSSY,
2641 .id = AV_CODEC_ID_G729,
2642 .type = AVMEDIA_TYPE_AUDIO,
2644 .long_name = NULL_IF_CONFIG_SMALL("G.729"),
2645 .props = AV_CODEC_PROP_LOSSY,
2648 .id = AV_CODEC_ID_8SVX_EXP,
2649 .type = AVMEDIA_TYPE_AUDIO,
2651 .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
2652 .props = AV_CODEC_PROP_LOSSY,
2655 .id = AV_CODEC_ID_8SVX_FIB,
2656 .type = AVMEDIA_TYPE_AUDIO,
2658 .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
2659 .props = AV_CODEC_PROP_LOSSY,
2662 .id = AV_CODEC_ID_BMV_AUDIO,
2663 .type = AVMEDIA_TYPE_AUDIO,
2664 .name = "bmv_audio",
2665 .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
2666 .props = AV_CODEC_PROP_LOSSY,
2669 .id = AV_CODEC_ID_RALF,
2670 .type = AVMEDIA_TYPE_AUDIO,
2672 .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
2673 .props = AV_CODEC_PROP_LOSSLESS,
2676 .id = AV_CODEC_ID_IAC,
2677 .type = AVMEDIA_TYPE_AUDIO,
2679 .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
2680 .props = AV_CODEC_PROP_LOSSY,
2683 .id = AV_CODEC_ID_ILBC,
2684 .type = AVMEDIA_TYPE_AUDIO,
2686 .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
2687 .props = AV_CODEC_PROP_LOSSY,
2690 .id = AV_CODEC_ID_OPUS,
2691 .type = AVMEDIA_TYPE_AUDIO,
2693 .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
2694 .props = AV_CODEC_PROP_LOSSY,
2697 .id = AV_CODEC_ID_COMFORT_NOISE,
2698 .type = AVMEDIA_TYPE_AUDIO,
2699 .name = "comfortnoise",
2700 .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
2701 .props = AV_CODEC_PROP_LOSSY,
2704 .id = AV_CODEC_ID_TAK,
2705 .type = AVMEDIA_TYPE_AUDIO,
2707 .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
2708 .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
2711 .id = AV_CODEC_ID_METASOUND,
2712 .type = AVMEDIA_TYPE_AUDIO,
2713 .name = "metasound",
2714 .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
2715 .props = AV_CODEC_PROP_LOSSY,
2718 .id = AV_CODEC_ID_PAF_AUDIO,
2719 .type = AVMEDIA_TYPE_AUDIO,
2720 .name = "paf_audio",
2721 .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
2722 .props = AV_CODEC_PROP_LOSSY,
2725 .id = AV_CODEC_ID_ON2AVC,
2726 .type = AVMEDIA_TYPE_AUDIO,
2728 .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
2729 .props = AV_CODEC_PROP_LOSSY,
2732 .id = AV_CODEC_ID_DSS_SP,
2733 .type = AVMEDIA_TYPE_AUDIO,
2735 .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
2736 .props = AV_CODEC_PROP_LOSSY,
2739 .id = AV_CODEC_ID_FFWAVESYNTH,
2740 .type = AVMEDIA_TYPE_AUDIO,
2741 .name = "wavesynth",
2742 .long_name = NULL_IF_CONFIG_SMALL("Wave synthesis pseudo-codec"),
2745 .id = AV_CODEC_ID_SONIC,
2746 .type = AVMEDIA_TYPE_AUDIO,
2748 .long_name = NULL_IF_CONFIG_SMALL("Sonic"),
2751 .id = AV_CODEC_ID_SONIC_LS,
2752 .type = AVMEDIA_TYPE_AUDIO,
2754 .long_name = NULL_IF_CONFIG_SMALL("Sonic lossless"),
2757 .id = AV_CODEC_ID_EVRC,
2758 .type = AVMEDIA_TYPE_AUDIO,
2760 .long_name = NULL_IF_CONFIG_SMALL("EVRC (Enhanced Variable Rate Codec)"),
2761 .props = AV_CODEC_PROP_LOSSY,
2764 .id = AV_CODEC_ID_SMV,
2765 .type = AVMEDIA_TYPE_AUDIO,
2767 .long_name = NULL_IF_CONFIG_SMALL("SMV (Selectable Mode Vocoder)"),
2768 .props = AV_CODEC_PROP_LOSSY,
2771 .id = AV_CODEC_ID_DSD_LSBF,
2772 .type = AVMEDIA_TYPE_AUDIO,
2774 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first"),
2775 .props = AV_CODEC_PROP_LOSSY,
2778 .id = AV_CODEC_ID_DSD_MSBF,
2779 .type = AVMEDIA_TYPE_AUDIO,
2781 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first"),
2782 .props = AV_CODEC_PROP_LOSSY,
2785 .id = AV_CODEC_ID_DSD_LSBF_PLANAR,
2786 .type = AVMEDIA_TYPE_AUDIO,
2787 .name = "dsd_lsbf_planar",
2788 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first, planar"),
2789 .props = AV_CODEC_PROP_LOSSY,
2792 .id = AV_CODEC_ID_DSD_MSBF_PLANAR,
2793 .type = AVMEDIA_TYPE_AUDIO,
2794 .name = "dsd_msbf_planar",
2795 .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first, planar"),
2796 .props = AV_CODEC_PROP_LOSSY,
2799 .id = AV_CODEC_ID_4GV,
2800 .type = AVMEDIA_TYPE_AUDIO,
2802 .long_name = NULL_IF_CONFIG_SMALL("4GV (Fourth Generation Vocoder)"),
2803 .props = AV_CODEC_PROP_LOSSY,
2806 .id = AV_CODEC_ID_INTERPLAY_ACM,
2807 .type = AVMEDIA_TYPE_AUDIO,
2808 .name = "interplayacm",
2809 .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"),
2810 .props = AV_CODEC_PROP_LOSSY,
2813 .id = AV_CODEC_ID_XMA1,
2814 .type = AVMEDIA_TYPE_AUDIO,
2816 .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 1"),
2817 .props = AV_CODEC_PROP_LOSSY,
2820 .id = AV_CODEC_ID_XMA2,
2821 .type = AVMEDIA_TYPE_AUDIO,
2823 .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 2"),
2824 .props = AV_CODEC_PROP_LOSSY,
2827 .id = AV_CODEC_ID_DST,
2828 .type = AVMEDIA_TYPE_AUDIO,
2830 .long_name = NULL_IF_CONFIG_SMALL("DST (Direct Stream Transfer)"),
2831 .props = AV_CODEC_PROP_LOSSLESS,
2834 .id = AV_CODEC_ID_ATRAC3AL,
2835 .type = AVMEDIA_TYPE_AUDIO,
2837 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)"),
2838 .props = AV_CODEC_PROP_LOSSLESS,
2841 .id = AV_CODEC_ID_ATRAC3PAL,
2842 .type = AVMEDIA_TYPE_AUDIO,
2843 .name = "atrac3pal",
2844 .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless)"),
2845 .props = AV_CODEC_PROP_LOSSLESS,
2848 .id = AV_CODEC_ID_DOLBY_E,
2849 .type = AVMEDIA_TYPE_AUDIO,
2851 .long_name = NULL_IF_CONFIG_SMALL("Dolby E"),
2852 .props = AV_CODEC_PROP_LOSSY,
2855 .id = AV_CODEC_ID_APTX,
2856 .type = AVMEDIA_TYPE_AUDIO,
2858 .long_name = NULL_IF_CONFIG_SMALL("aptX (Audio Processing Technology for Bluetooth)"),
2859 .props = AV_CODEC_PROP_LOSSY,
2862 .id = AV_CODEC_ID_APTX_HD,
2863 .type = AVMEDIA_TYPE_AUDIO,
2865 .long_name = NULL_IF_CONFIG_SMALL("aptX HD (Audio Processing Technology for Bluetooth)"),
2866 .props = AV_CODEC_PROP_LOSSY,
2869 /* subtitle codecs */
2871 .id = AV_CODEC_ID_DVD_SUBTITLE,
2872 .type = AVMEDIA_TYPE_SUBTITLE,
2873 .name = "dvd_subtitle",
2874 .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
2875 .props = AV_CODEC_PROP_BITMAP_SUB,
2878 .id = AV_CODEC_ID_DVB_SUBTITLE,
2879 .type = AVMEDIA_TYPE_SUBTITLE,
2880 .name = "dvb_subtitle",
2881 .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
2882 .props = AV_CODEC_PROP_BITMAP_SUB,
2885 .id = AV_CODEC_ID_TEXT,
2886 .type = AVMEDIA_TYPE_SUBTITLE,
2888 .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
2889 .props = AV_CODEC_PROP_TEXT_SUB,
2892 .id = AV_CODEC_ID_XSUB,
2893 .type = AVMEDIA_TYPE_SUBTITLE,
2895 .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
2896 .props = AV_CODEC_PROP_BITMAP_SUB,
2899 .id = AV_CODEC_ID_SSA,
2900 .type = AVMEDIA_TYPE_SUBTITLE,
2902 .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"),
2903 .props = AV_CODEC_PROP_TEXT_SUB,
2906 .id = AV_CODEC_ID_MOV_TEXT,
2907 .type = AVMEDIA_TYPE_SUBTITLE,
2909 .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
2910 .props = AV_CODEC_PROP_TEXT_SUB,
2913 .id = AV_CODEC_ID_HDMV_PGS_SUBTITLE,
2914 .type = AVMEDIA_TYPE_SUBTITLE,
2915 .name = "hdmv_pgs_subtitle",
2916 .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
2917 .props = AV_CODEC_PROP_BITMAP_SUB,
2920 .id = AV_CODEC_ID_DVB_TELETEXT,
2921 .type = AVMEDIA_TYPE_SUBTITLE,
2922 .name = "dvb_teletext",
2923 .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
2926 .id = AV_CODEC_ID_SRT,
2927 .type = AVMEDIA_TYPE_SUBTITLE,
2929 .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle with embedded timing"),
2930 .props = AV_CODEC_PROP_TEXT_SUB,
2933 .id = AV_CODEC_ID_MICRODVD,
2934 .type = AVMEDIA_TYPE_SUBTITLE,
2936 .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle"),
2937 .props = AV_CODEC_PROP_TEXT_SUB,
2940 .id = AV_CODEC_ID_EIA_608,
2941 .type = AVMEDIA_TYPE_SUBTITLE,
2943 .long_name = NULL_IF_CONFIG_SMALL("EIA-608 closed captions"),
2944 .props = AV_CODEC_PROP_TEXT_SUB,
2947 .id = AV_CODEC_ID_JACOSUB,
2948 .type = AVMEDIA_TYPE_SUBTITLE,
2950 .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
2951 .props = AV_CODEC_PROP_TEXT_SUB,
2954 .id = AV_CODEC_ID_SAMI,
2955 .type = AVMEDIA_TYPE_SUBTITLE,
2957 .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle"),
2958 .props = AV_CODEC_PROP_TEXT_SUB,
2961 .id = AV_CODEC_ID_REALTEXT,
2962 .type = AVMEDIA_TYPE_SUBTITLE,
2964 .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle"),
2965 .props = AV_CODEC_PROP_TEXT_SUB,
2968 .id = AV_CODEC_ID_STL,
2969 .type = AVMEDIA_TYPE_SUBTITLE,
2971 .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"),
2972 .props = AV_CODEC_PROP_TEXT_SUB,
2975 .id = AV_CODEC_ID_SUBVIEWER1,
2976 .type = AVMEDIA_TYPE_SUBTITLE,
2977 .name = "subviewer1",
2978 .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle"),
2979 .props = AV_CODEC_PROP_TEXT_SUB,
2982 .id = AV_CODEC_ID_SUBVIEWER,
2983 .type = AVMEDIA_TYPE_SUBTITLE,
2984 .name = "subviewer",
2985 .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle"),
2986 .props = AV_CODEC_PROP_TEXT_SUB,
2989 .id = AV_CODEC_ID_SUBRIP,
2990 .type = AVMEDIA_TYPE_SUBTITLE,
2992 .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"),
2993 .props = AV_CODEC_PROP_TEXT_SUB,
2996 .id = AV_CODEC_ID_WEBVTT,
2997 .type = AVMEDIA_TYPE_SUBTITLE,
2999 .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
3000 .props = AV_CODEC_PROP_TEXT_SUB,
3003 .id = AV_CODEC_ID_MPL2,
3004 .type = AVMEDIA_TYPE_SUBTITLE,
3006 .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitle"),
3007 .props = AV_CODEC_PROP_TEXT_SUB,
3010 .id = AV_CODEC_ID_VPLAYER,
3011 .type = AVMEDIA_TYPE_SUBTITLE,
3013 .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"),
3014 .props = AV_CODEC_PROP_TEXT_SUB,
3017 .id = AV_CODEC_ID_PJS,
3018 .type = AVMEDIA_TYPE_SUBTITLE,
3020 .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitle"),
3021 .props = AV_CODEC_PROP_TEXT_SUB,
3024 .id = AV_CODEC_ID_ASS,
3025 .type = AVMEDIA_TYPE_SUBTITLE,
3027 .long_name = NULL_IF_CONFIG_SMALL("ASS (Advanced SSA) subtitle"),
3028 .props = AV_CODEC_PROP_TEXT_SUB,
3031 .id = AV_CODEC_ID_HDMV_TEXT_SUBTITLE,
3032 .type = AVMEDIA_TYPE_SUBTITLE,
3033 .name = "hdmv_text_subtitle",
3034 .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
3035 .props = AV_CODEC_PROP_TEXT_SUB,
3038 /* other kind of codecs and pseudo-codecs */
3040 .id = AV_CODEC_ID_TTF,
3041 .type = AVMEDIA_TYPE_DATA,
3043 .long_name = NULL_IF_CONFIG_SMALL("TrueType font"),
3044 .mime_types= MT("application/x-truetype-font", "application/x-font"),
3047 .id = AV_CODEC_ID_SCTE_35,
3048 .type = AVMEDIA_TYPE_DATA,
3050 .long_name = NULL_IF_CONFIG_SMALL("SCTE 35 Message Queue"),
3053 .id = AV_CODEC_ID_BINTEXT,
3054 .type = AVMEDIA_TYPE_VIDEO,
3056 .long_name = NULL_IF_CONFIG_SMALL("Binary text"),
3057 .props = AV_CODEC_PROP_INTRA_ONLY,
3060 .id = AV_CODEC_ID_XBIN,
3061 .type = AVMEDIA_TYPE_VIDEO,
3063 .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text"),
3064 .props = AV_CODEC_PROP_INTRA_ONLY,
3067 .id = AV_CODEC_ID_IDF,
3068 .type = AVMEDIA_TYPE_VIDEO,
3070 .long_name = NULL_IF_CONFIG_SMALL("iCEDraw text"),
3071 .props = AV_CODEC_PROP_INTRA_ONLY,
3074 .id = AV_CODEC_ID_OTF,
3075 .type = AVMEDIA_TYPE_DATA,
3077 .long_name = NULL_IF_CONFIG_SMALL("OpenType font"),
3078 .mime_types= MT("application/vnd.ms-opentype"),
3081 .id = AV_CODEC_ID_SMPTE_KLV,
3082 .type = AVMEDIA_TYPE_DATA,
3084 .long_name = NULL_IF_CONFIG_SMALL("SMPTE 336M Key-Length-Value (KLV) metadata"),
3087 .id = AV_CODEC_ID_DVD_NAV,
3088 .type = AVMEDIA_TYPE_DATA,
3089 .name = "dvd_nav_packet",
3090 .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"),
3093 .id = AV_CODEC_ID_TIMED_ID3,
3094 .type = AVMEDIA_TYPE_DATA,
3095 .name = "timed_id3",
3096 .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"),
3099 .id = AV_CODEC_ID_BIN_DATA,
3100 .type = AVMEDIA_TYPE_DATA,
3102 .long_name = NULL_IF_CONFIG_SMALL("binary data"),
3103 .mime_types= MT("application/octet-stream"),
3106 .id = AV_CODEC_ID_WRAPPED_AVFRAME,
3107 .type = AVMEDIA_TYPE_VIDEO,
3108 .name = "wrapped_avframe",
3109 .long_name = NULL_IF_CONFIG_SMALL("AVFrame to AVPacket passthrough"),
3110 .props = AV_CODEC_PROP_LOSSLESS,
3114 #if defined(ASSERT_LEVEL) && ASSERT_LEVEL >= 2
3115 static void check_validity(void)
3119 for (i = 0; i < FF_ARRAY_ELEMS(codec_descriptors) - 1; i++) {
3120 if (codec_descriptors[i].id >= codec_descriptors[i+1].id) {
3121 av_log(NULL, AV_LOG_FATAL, "unsorted codec_id '%s' and '%s'.\n",
3122 codec_descriptors[i].name, codec_descriptors[i+1].name);
3128 static AVOnce check_validity_once = AV_ONCE_INIT;
3129 #define CHECK_VALIDITY() ff_thread_once(&check_validity_once, check_validity);
3131 #define CHECK_VALIDITY() ((void)0)
3134 static int descriptor_compare(const void *key, const void *member)
3136 enum AVCodecID id = *(const enum AVCodecID *) key;
3137 const AVCodecDescriptor *desc = member;
3139 return id - desc->id;
3142 const AVCodecDescriptor *avcodec_descriptor_get(enum AVCodecID id)
3146 return bsearch(&id, codec_descriptors, FF_ARRAY_ELEMS(codec_descriptors),
3147 sizeof(codec_descriptors[0]), descriptor_compare);
3150 const AVCodecDescriptor *avcodec_descriptor_next(const AVCodecDescriptor *prev)
3153 return &codec_descriptors[0];
3154 if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
3159 const AVCodecDescriptor *avcodec_descriptor_get_by_name(const char *name)
3161 const AVCodecDescriptor *desc = NULL;
3163 while ((desc = avcodec_descriptor_next(desc)))
3164 if (!strcmp(desc->name, name))
3169 enum AVMediaType avcodec_get_type(enum AVCodecID codec_id)
3171 const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id);
3172 return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN;