FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
codec_desc.c
Go to the documentation of this file.
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 <string.h>
23 
24 #include "libavutil/common.h"
25 #include "libavutil/internal.h"
26 #include "avcodec.h"
27 #include "profiles.h"
28 #include "version.h"
29 
30 #define MT(...) (const char *const[]){ __VA_ARGS__, NULL }
31 
33  /* video codecs */
34  {
36  .type = AVMEDIA_TYPE_VIDEO,
37  .name = "mpeg1video",
38  .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
40  },
41  {
43  .type = AVMEDIA_TYPE_VIDEO,
44  .name = "mpeg2video",
45  .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),
48  },
49  {
50  .id = AV_CODEC_ID_H261,
51  .type = AVMEDIA_TYPE_VIDEO,
52  .name = "h261",
53  .long_name = NULL_IF_CONFIG_SMALL("H.261"),
54  .props = AV_CODEC_PROP_LOSSY,
55  },
56  {
57  .id = AV_CODEC_ID_H263,
58  .type = AVMEDIA_TYPE_VIDEO,
59  .name = "h263",
60  .long_name = NULL_IF_CONFIG_SMALL("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),
62  },
63  {
64  .id = AV_CODEC_ID_RV10,
65  .type = AVMEDIA_TYPE_VIDEO,
66  .name = "rv10",
67  .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
68  .props = AV_CODEC_PROP_LOSSY,
69  },
70  {
71  .id = AV_CODEC_ID_RV20,
72  .type = AVMEDIA_TYPE_VIDEO,
73  .name = "rv20",
74  .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
76  },
77  {
78  .id = AV_CODEC_ID_MJPEG,
79  .type = AVMEDIA_TYPE_VIDEO,
80  .name = "mjpeg",
81  .long_name = NULL_IF_CONFIG_SMALL("Motion JPEG"),
83  .mime_types= MT("image/jpeg"),
84  },
85  {
86  .id = AV_CODEC_ID_MJPEGB,
87  .type = AVMEDIA_TYPE_VIDEO,
88  .name = "mjpegb",
89  .long_name = NULL_IF_CONFIG_SMALL("Apple MJPEG-B"),
91  },
92  {
93  .id = AV_CODEC_ID_LJPEG,
94  .type = AVMEDIA_TYPE_VIDEO,
95  .name = "ljpeg",
96  .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
98  },
99  {
100  .id = AV_CODEC_ID_SP5X,
101  .type = AVMEDIA_TYPE_VIDEO,
102  .name = "sp5x",
103  .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),
105  },
106  {
107  .id = AV_CODEC_ID_JPEGLS,
108  .type = AVMEDIA_TYPE_VIDEO,
109  .name = "jpegls",
110  .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),
113  },
114  {
115  .id = AV_CODEC_ID_MPEG4,
116  .type = AVMEDIA_TYPE_VIDEO,
117  .name = "mpeg4",
118  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),
121  },
122  {
123  .id = AV_CODEC_ID_RAWVIDEO,
124  .type = AVMEDIA_TYPE_VIDEO,
125  .name = "rawvideo",
126  .long_name = NULL_IF_CONFIG_SMALL("raw video"),
128  },
129  {
130  .id = AV_CODEC_ID_MSMPEG4V1,
131  .type = AVMEDIA_TYPE_VIDEO,
132  .name = "msmpeg4v1",
133  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 1"),
134  .props = AV_CODEC_PROP_LOSSY,
135  },
136  {
137  .id = AV_CODEC_ID_MSMPEG4V2,
138  .type = AVMEDIA_TYPE_VIDEO,
139  .name = "msmpeg4v2",
140  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"),
141  .props = AV_CODEC_PROP_LOSSY,
142  },
143  {
144  .id = AV_CODEC_ID_MSMPEG4V3,
145  .type = AVMEDIA_TYPE_VIDEO,
146  .name = "msmpeg4v3",
147  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"),
148  .props = AV_CODEC_PROP_LOSSY,
149  },
150  {
151  .id = AV_CODEC_ID_WMV1,
152  .type = AVMEDIA_TYPE_VIDEO,
153  .name = "wmv1",
154  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"),
155  .props = AV_CODEC_PROP_LOSSY,
156  },
157  {
158  .id = AV_CODEC_ID_WMV2,
159  .type = AVMEDIA_TYPE_VIDEO,
160  .name = "wmv2",
161  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"),
162  .props = AV_CODEC_PROP_LOSSY,
163  },
164  {
165  .id = AV_CODEC_ID_H263P,
166  .type = AVMEDIA_TYPE_VIDEO,
167  .name = "h263p",
168  .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 2"),
170  },
171  {
172  .id = AV_CODEC_ID_H263I,
173  .type = AVMEDIA_TYPE_VIDEO,
174  .name = "h263i",
175  .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),
177  },
178  {
179  .id = AV_CODEC_ID_FLV1,
180  .type = AVMEDIA_TYPE_VIDEO,
181  .name = "flv1",
182  .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"),
183  .props = AV_CODEC_PROP_LOSSY,
184  },
185  {
186  .id = AV_CODEC_ID_SVQ1,
187  .type = AVMEDIA_TYPE_VIDEO,
188  .name = "svq1",
189  .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1"),
190  .props = AV_CODEC_PROP_LOSSY,
191  },
192  {
193  .id = AV_CODEC_ID_SVQ3,
194  .type = AVMEDIA_TYPE_VIDEO,
195  .name = "svq3",
196  .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3"),
198  },
199  {
200  .id = AV_CODEC_ID_DVVIDEO,
201  .type = AVMEDIA_TYPE_VIDEO,
202  .name = "dvvideo",
203  .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),
205  },
206  {
207  .id = AV_CODEC_ID_HUFFYUV,
208  .type = AVMEDIA_TYPE_VIDEO,
209  .name = "huffyuv",
210  .long_name = NULL_IF_CONFIG_SMALL("HuffYUV"),
212  },
213  {
214  .id = AV_CODEC_ID_CYUV,
215  .type = AVMEDIA_TYPE_VIDEO,
216  .name = "cyuv",
217  .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"),
219  },
220  {
221  .id = AV_CODEC_ID_H264,
222  .type = AVMEDIA_TYPE_VIDEO,
223  .name = "h264",
224  .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),
227  },
228  {
229  .id = AV_CODEC_ID_INDEO3,
230  .type = AVMEDIA_TYPE_VIDEO,
231  .name = "indeo3",
232  .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 3"),
233  .props = AV_CODEC_PROP_LOSSY,
234  },
235  {
236  .id = AV_CODEC_ID_VP3,
237  .type = AVMEDIA_TYPE_VIDEO,
238  .name = "vp3",
239  .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),
240  .props = AV_CODEC_PROP_LOSSY,
241  },
242  {
243  .id = AV_CODEC_ID_THEORA,
244  .type = AVMEDIA_TYPE_VIDEO,
245  .name = "theora",
246  .long_name = NULL_IF_CONFIG_SMALL("Theora"),
247  .props = AV_CODEC_PROP_LOSSY,
248  },
249  {
250  .id = AV_CODEC_ID_ASV1,
251  .type = AVMEDIA_TYPE_VIDEO,
252  .name = "asv1",
253  .long_name = NULL_IF_CONFIG_SMALL("ASUS V1"),
255  },
256  {
257  .id = AV_CODEC_ID_ASV2,
258  .type = AVMEDIA_TYPE_VIDEO,
259  .name = "asv2",
260  .long_name = NULL_IF_CONFIG_SMALL("ASUS V2"),
262  },
263  {
264  .id = AV_CODEC_ID_FFV1,
265  .type = AVMEDIA_TYPE_VIDEO,
266  .name = "ffv1",
267  .long_name = NULL_IF_CONFIG_SMALL("FFmpeg video codec #1"),
268  .props = AV_CODEC_PROP_LOSSLESS,
269  },
270  {
271  .id = AV_CODEC_ID_4XM,
272  .type = AVMEDIA_TYPE_VIDEO,
273  .name = "4xm",
274  .long_name = NULL_IF_CONFIG_SMALL("4X Movie"),
275  .props = AV_CODEC_PROP_LOSSY,
276  },
277  {
278  .id = AV_CODEC_ID_VCR1,
279  .type = AVMEDIA_TYPE_VIDEO,
280  .name = "vcr1",
281  .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),
283  },
284  {
285  .id = AV_CODEC_ID_CLJR,
286  .type = AVMEDIA_TYPE_VIDEO,
287  .name = "cljr",
288  .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"),
290  },
291  {
292  .id = AV_CODEC_ID_MDEC,
293  .type = AVMEDIA_TYPE_VIDEO,
294  .name = "mdec",
295  .long_name = NULL_IF_CONFIG_SMALL("Sony PlayStation MDEC (Motion DECoder)"),
297  },
298  {
299  .id = AV_CODEC_ID_ROQ,
300  .type = AVMEDIA_TYPE_VIDEO,
301  .name = "roq",
302  .long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),
303  .props = AV_CODEC_PROP_LOSSY,
304  },
305  {
307  .type = AVMEDIA_TYPE_VIDEO,
308  .name = "interplayvideo",
309  .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE video"),
310  .props = AV_CODEC_PROP_LOSSY,
311  },
312  {
313  .id = AV_CODEC_ID_XAN_WC3,
314  .type = AVMEDIA_TYPE_VIDEO,
315  .name = "xan_wc3",
316  .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III / Xan"),
317  .props = AV_CODEC_PROP_LOSSY,
318  },
319  {
320  .id = AV_CODEC_ID_XAN_WC4,
321  .type = AVMEDIA_TYPE_VIDEO,
322  .name = "xan_wc4",
323  .long_name = NULL_IF_CONFIG_SMALL("Wing Commander IV / Xxan"),
324  .props = AV_CODEC_PROP_LOSSY,
325  },
326  {
327  .id = AV_CODEC_ID_RPZA,
328  .type = AVMEDIA_TYPE_VIDEO,
329  .name = "rpza",
330  .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),
331  .props = AV_CODEC_PROP_LOSSY,
332  },
333  {
334  .id = AV_CODEC_ID_CINEPAK,
335  .type = AVMEDIA_TYPE_VIDEO,
336  .name = "cinepak",
337  .long_name = NULL_IF_CONFIG_SMALL("Cinepak"),
338  .props = AV_CODEC_PROP_LOSSY,
339  },
340  {
341  .id = AV_CODEC_ID_WS_VQA,
342  .type = AVMEDIA_TYPE_VIDEO,
343  .name = "ws_vqa",
344  .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA (Vector Quantized Animation) video"),
345  .props = AV_CODEC_PROP_LOSSY,
346  },
347  {
348  .id = AV_CODEC_ID_MSRLE,
349  .type = AVMEDIA_TYPE_VIDEO,
350  .name = "msrle",
351  .long_name = NULL_IF_CONFIG_SMALL("Microsoft RLE"),
352  .props = AV_CODEC_PROP_LOSSLESS,
353  },
354  {
355  .id = AV_CODEC_ID_MSVIDEO1,
356  .type = AVMEDIA_TYPE_VIDEO,
357  .name = "msvideo1",
358  .long_name = NULL_IF_CONFIG_SMALL("Microsoft Video 1"),
359  .props = AV_CODEC_PROP_LOSSY,
360  },
361  {
362  .id = AV_CODEC_ID_IDCIN,
363  .type = AVMEDIA_TYPE_VIDEO,
364  .name = "idcin",
365  .long_name = NULL_IF_CONFIG_SMALL("id Quake II CIN video"),
366  .props = AV_CODEC_PROP_LOSSY,
367  },
368  {
369  .id = AV_CODEC_ID_8BPS,
370  .type = AVMEDIA_TYPE_VIDEO,
371  .name = "8bps",
372  .long_name = NULL_IF_CONFIG_SMALL("QuickTime 8BPS video"),
374  },
375  {
376  .id = AV_CODEC_ID_SMC,
377  .type = AVMEDIA_TYPE_VIDEO,
378  .name = "smc",
379  .long_name = NULL_IF_CONFIG_SMALL("QuickTime Graphics (SMC)"),
380  .props = AV_CODEC_PROP_LOSSY,
381  },
382  {
383  .id = AV_CODEC_ID_FLIC,
384  .type = AVMEDIA_TYPE_VIDEO,
385  .name = "flic",
386  .long_name = NULL_IF_CONFIG_SMALL("Autodesk Animator Flic video"),
387  .props = AV_CODEC_PROP_LOSSLESS,
388  },
389  {
391  .type = AVMEDIA_TYPE_VIDEO,
392  .name = "truemotion1",
393  .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 1.0"),
394  .props = AV_CODEC_PROP_LOSSY,
395  },
396  {
397  .id = AV_CODEC_ID_VMDVIDEO,
398  .type = AVMEDIA_TYPE_VIDEO,
399  .name = "vmdvideo",
400  .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD video"),
401  .props = AV_CODEC_PROP_LOSSY,
402  },
403  {
404  .id = AV_CODEC_ID_MSZH,
405  .type = AVMEDIA_TYPE_VIDEO,
406  .name = "mszh",
407  .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) MSZH"),
409  },
410  {
411  .id = AV_CODEC_ID_ZLIB,
412  .type = AVMEDIA_TYPE_VIDEO,
413  .name = "zlib",
414  .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),
416  },
417  {
418  .id = AV_CODEC_ID_QTRLE,
419  .type = AVMEDIA_TYPE_VIDEO,
420  .name = "qtrle",
421  .long_name = NULL_IF_CONFIG_SMALL("QuickTime Animation (RLE) video"),
422  .props = AV_CODEC_PROP_LOSSLESS,
423  },
424  {
425  .id = AV_CODEC_ID_TSCC,
426  .type = AVMEDIA_TYPE_VIDEO,
427  .name = "tscc",
428  .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Capture Codec"),
429  .props = AV_CODEC_PROP_LOSSLESS,
430  },
431  {
432  .id = AV_CODEC_ID_ULTI,
433  .type = AVMEDIA_TYPE_VIDEO,
434  .name = "ulti",
435  .long_name = NULL_IF_CONFIG_SMALL("IBM UltiMotion"),
436  .props = AV_CODEC_PROP_LOSSY,
437  },
438  {
439  .id = AV_CODEC_ID_QDRAW,
440  .type = AVMEDIA_TYPE_VIDEO,
441  .name = "qdraw",
442  .long_name = NULL_IF_CONFIG_SMALL("Apple QuickDraw"),
444  },
445  {
446  .id = AV_CODEC_ID_VIXL,
447  .type = AVMEDIA_TYPE_VIDEO,
448  .name = "vixl",
449  .long_name = NULL_IF_CONFIG_SMALL("Miro VideoXL"),
451  },
452  {
453  .id = AV_CODEC_ID_QPEG,
454  .type = AVMEDIA_TYPE_VIDEO,
455  .name = "qpeg",
456  .long_name = NULL_IF_CONFIG_SMALL("Q-team QPEG"),
457  .props = AV_CODEC_PROP_LOSSY,
458  },
459  {
460  .id = AV_CODEC_ID_PNG,
461  .type = AVMEDIA_TYPE_VIDEO,
462  .name = "png",
463  .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),
464  .props = AV_CODEC_PROP_LOSSLESS,
465  .mime_types= MT("image/png"),
466  },
467  {
468  .id = AV_CODEC_ID_PPM,
469  .type = AVMEDIA_TYPE_VIDEO,
470  .name = "ppm",
471  .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
473  },
474  {
475  .id = AV_CODEC_ID_PBM,
476  .type = AVMEDIA_TYPE_VIDEO,
477  .name = "pbm",
478  .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
480  },
481  {
482  .id = AV_CODEC_ID_PGM,
483  .type = AVMEDIA_TYPE_VIDEO,
484  .name = "pgm",
485  .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
487  },
488  {
489  .id = AV_CODEC_ID_PGMYUV,
490  .type = AVMEDIA_TYPE_VIDEO,
491  .name = "pgmyuv",
492  .long_name = NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
494  },
495  {
496  .id = AV_CODEC_ID_PAM,
497  .type = AVMEDIA_TYPE_VIDEO,
498  .name = "pam",
499  .long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
501  .mime_types= MT("image/x-portable-pixmap"),
502  },
503  {
504  .id = AV_CODEC_ID_FFVHUFF,
505  .type = AVMEDIA_TYPE_VIDEO,
506  .name = "ffvhuff",
507  .long_name = NULL_IF_CONFIG_SMALL("Huffyuv FFmpeg variant"),
509  },
510  {
511  .id = AV_CODEC_ID_RV30,
512  .type = AVMEDIA_TYPE_VIDEO,
513  .name = "rv30",
514  .long_name = NULL_IF_CONFIG_SMALL("RealVideo 3.0"),
516  },
517  {
518  .id = AV_CODEC_ID_RV40,
519  .type = AVMEDIA_TYPE_VIDEO,
520  .name = "rv40",
521  .long_name = NULL_IF_CONFIG_SMALL("RealVideo 4.0"),
523  },
524  {
525  .id = AV_CODEC_ID_VC1,
526  .type = AVMEDIA_TYPE_VIDEO,
527  .name = "vc1",
528  .long_name = NULL_IF_CONFIG_SMALL("SMPTE VC-1"),
531  },
532  {
533  .id = AV_CODEC_ID_WMV3,
534  .type = AVMEDIA_TYPE_VIDEO,
535  .name = "wmv3",
536  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9"),
539  },
540  {
541  .id = AV_CODEC_ID_LOCO,
542  .type = AVMEDIA_TYPE_VIDEO,
543  .name = "loco",
544  .long_name = NULL_IF_CONFIG_SMALL("LOCO"),
546  },
547  {
548  .id = AV_CODEC_ID_WNV1,
549  .type = AVMEDIA_TYPE_VIDEO,
550  .name = "wnv1",
551  .long_name = NULL_IF_CONFIG_SMALL("Winnov WNV1"),
553  },
554  {
555  .id = AV_CODEC_ID_AASC,
556  .type = AVMEDIA_TYPE_VIDEO,
557  .name = "aasc",
558  .long_name = NULL_IF_CONFIG_SMALL("Autodesk RLE"),
559  .props = AV_CODEC_PROP_LOSSLESS,
560  },
561  {
562  .id = AV_CODEC_ID_INDEO2,
563  .type = AVMEDIA_TYPE_VIDEO,
564  .name = "indeo2",
565  .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 2"),
566  .props = AV_CODEC_PROP_LOSSY,
567  },
568  {
569  .id = AV_CODEC_ID_FRAPS,
570  .type = AVMEDIA_TYPE_VIDEO,
571  .name = "fraps",
572  .long_name = NULL_IF_CONFIG_SMALL("Fraps"),
574  },
575  {
577  .type = AVMEDIA_TYPE_VIDEO,
578  .name = "truemotion2",
579  .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0"),
580  .props = AV_CODEC_PROP_LOSSY,
581  },
582  {
583  .id = AV_CODEC_ID_BMP,
584  .type = AVMEDIA_TYPE_VIDEO,
585  .name = "bmp",
586  .long_name = NULL_IF_CONFIG_SMALL("BMP (Windows and OS/2 bitmap)"),
588  .mime_types= MT("image/x-ms-bmp"),
589  },
590  {
591  .id = AV_CODEC_ID_CSCD,
592  .type = AVMEDIA_TYPE_VIDEO,
593  .name = "cscd",
594  .long_name = NULL_IF_CONFIG_SMALL("CamStudio"),
595  .props = AV_CODEC_PROP_LOSSLESS,
596  },
597  {
598  .id = AV_CODEC_ID_MMVIDEO,
599  .type = AVMEDIA_TYPE_VIDEO,
600  .name = "mmvideo",
601  .long_name = NULL_IF_CONFIG_SMALL("American Laser Games MM Video"),
602  .props = AV_CODEC_PROP_LOSSY,
603  },
604  {
605  .id = AV_CODEC_ID_ZMBV,
606  .type = AVMEDIA_TYPE_VIDEO,
607  .name = "zmbv",
608  .long_name = NULL_IF_CONFIG_SMALL("Zip Motion Blocks Video"),
609  .props = AV_CODEC_PROP_LOSSLESS,
610  },
611  {
612  .id = AV_CODEC_ID_AVS,
613  .type = AVMEDIA_TYPE_VIDEO,
614  .name = "avs",
615  .long_name = NULL_IF_CONFIG_SMALL("AVS (Audio Video Standard) video"),
616  .props = AV_CODEC_PROP_LOSSY,
617  },
618  {
620  .type = AVMEDIA_TYPE_VIDEO,
621  .name = "smackvideo",
622  .long_name = NULL_IF_CONFIG_SMALL("Smacker video"),
623  .props = AV_CODEC_PROP_LOSSY,
624  },
625  {
626  .id = AV_CODEC_ID_NUV,
627  .type = AVMEDIA_TYPE_VIDEO,
628  .name = "nuv",
629  .long_name = NULL_IF_CONFIG_SMALL("NuppelVideo/RTJPEG"),
630  .props = AV_CODEC_PROP_LOSSY,
631  },
632  {
633  .id = AV_CODEC_ID_KMVC,
634  .type = AVMEDIA_TYPE_VIDEO,
635  .name = "kmvc",
636  .long_name = NULL_IF_CONFIG_SMALL("Karl Morton's video codec"),
637  .props = AV_CODEC_PROP_LOSSY,
638  },
639  {
640  .id = AV_CODEC_ID_FLASHSV,
641  .type = AVMEDIA_TYPE_VIDEO,
642  .name = "flashsv",
643  .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v1"),
644  .props = AV_CODEC_PROP_LOSSLESS,
645  },
646  {
647  .id = AV_CODEC_ID_CAVS,
648  .type = AVMEDIA_TYPE_VIDEO,
649  .name = "cavs",
650  .long_name = NULL_IF_CONFIG_SMALL("Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)"),
652  },
653  {
654  .id = AV_CODEC_ID_JPEG2000,
655  .type = AVMEDIA_TYPE_VIDEO,
656  .name = "jpeg2000",
657  .long_name = NULL_IF_CONFIG_SMALL("JPEG 2000"),
660  .mime_types= MT("image/jp2"),
662  },
663  {
664  .id = AV_CODEC_ID_VMNC,
665  .type = AVMEDIA_TYPE_VIDEO,
666  .name = "vmnc",
667  .long_name = NULL_IF_CONFIG_SMALL("VMware Screen Codec / VMware Video"),
668  .props = AV_CODEC_PROP_LOSSLESS,
669  },
670  {
671  .id = AV_CODEC_ID_VP5,
672  .type = AVMEDIA_TYPE_VIDEO,
673  .name = "vp5",
674  .long_name = NULL_IF_CONFIG_SMALL("On2 VP5"),
675  .props = AV_CODEC_PROP_LOSSY,
676  },
677  {
678  .id = AV_CODEC_ID_VP6,
679  .type = AVMEDIA_TYPE_VIDEO,
680  .name = "vp6",
681  .long_name = NULL_IF_CONFIG_SMALL("On2 VP6"),
682  .props = AV_CODEC_PROP_LOSSY,
683  },
684  {
685  .id = AV_CODEC_ID_VP6F,
686  .type = AVMEDIA_TYPE_VIDEO,
687  .name = "vp6f",
688  .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version)"),
689  .props = AV_CODEC_PROP_LOSSY,
690  },
691  {
692  .id = AV_CODEC_ID_TARGA,
693  .type = AVMEDIA_TYPE_VIDEO,
694  .name = "targa",
695  .long_name = NULL_IF_CONFIG_SMALL("Truevision Targa image"),
697  .mime_types= MT("image/x-targa", "image/x-tga"),
698  },
699  {
701  .type = AVMEDIA_TYPE_VIDEO,
702  .name = "dsicinvideo",
703  .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN video"),
704  .props = AV_CODEC_PROP_LOSSY,
705  },
706  {
708  .type = AVMEDIA_TYPE_VIDEO,
709  .name = "tiertexseqvideo",
710  .long_name = NULL_IF_CONFIG_SMALL("Tiertex Limited SEQ video"),
711  .props = AV_CODEC_PROP_LOSSY,
712  },
713  {
714  .id = AV_CODEC_ID_TIFF,
715  .type = AVMEDIA_TYPE_VIDEO,
716  .name = "tiff",
717  .long_name = NULL_IF_CONFIG_SMALL("TIFF image"),
719  .mime_types= MT("image/tiff"),
720  },
721  {
722  .id = AV_CODEC_ID_GIF,
723  .type = AVMEDIA_TYPE_VIDEO,
724  .name = "gif",
725  .long_name = NULL_IF_CONFIG_SMALL("GIF (Graphics Interchange Format)"),
726  .props = AV_CODEC_PROP_LOSSLESS,
727  .mime_types= MT("image/gif"),
728  },
729  {
730  .id = AV_CODEC_ID_DXA,
731  .type = AVMEDIA_TYPE_VIDEO,
732  .name = "dxa",
733  .long_name = NULL_IF_CONFIG_SMALL("Feeble Files/ScummVM DXA"),
734  .props = AV_CODEC_PROP_LOSSLESS,
735  },
736  {
737  .id = AV_CODEC_ID_DNXHD,
738  .type = AVMEDIA_TYPE_VIDEO,
739  .name = "dnxhd",
740  .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"),
743  },
744  {
745  .id = AV_CODEC_ID_THP,
746  .type = AVMEDIA_TYPE_VIDEO,
747  .name = "thp",
748  .long_name = NULL_IF_CONFIG_SMALL("Nintendo Gamecube THP video"),
750  },
751  {
752  .id = AV_CODEC_ID_SGI,
753  .type = AVMEDIA_TYPE_VIDEO,
754  .name = "sgi",
755  .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
757  },
758  {
759  .id = AV_CODEC_ID_C93,
760  .type = AVMEDIA_TYPE_VIDEO,
761  .name = "c93",
762  .long_name = NULL_IF_CONFIG_SMALL("Interplay C93"),
763  .props = AV_CODEC_PROP_LOSSY,
764  },
765  {
767  .type = AVMEDIA_TYPE_VIDEO,
768  .name = "bethsoftvid",
769  .long_name = NULL_IF_CONFIG_SMALL("Bethesda VID video"),
770  .props = AV_CODEC_PROP_LOSSY,
771  },
772  {
773  .id = AV_CODEC_ID_PTX,
774  .type = AVMEDIA_TYPE_VIDEO,
775  .name = "ptx",
776  .long_name = NULL_IF_CONFIG_SMALL("V.Flash PTX image"),
778  },
779  {
780  .id = AV_CODEC_ID_TXD,
781  .type = AVMEDIA_TYPE_VIDEO,
782  .name = "txd",
783  .long_name = NULL_IF_CONFIG_SMALL("Renderware TXD (TeXture Dictionary) image"),
785  },
786  {
787  .id = AV_CODEC_ID_VP6A,
788  .type = AVMEDIA_TYPE_VIDEO,
789  .name = "vp6a",
790  .long_name = NULL_IF_CONFIG_SMALL("On2 VP6 (Flash version, with alpha channel)"),
791  .props = AV_CODEC_PROP_LOSSY,
792  },
793  {
794  .id = AV_CODEC_ID_AMV,
795  .type = AVMEDIA_TYPE_VIDEO,
796  .name = "amv",
797  .long_name = NULL_IF_CONFIG_SMALL("AMV Video"),
799  },
800  {
801  .id = AV_CODEC_ID_VB,
802  .type = AVMEDIA_TYPE_VIDEO,
803  .name = "vb",
804  .long_name = NULL_IF_CONFIG_SMALL("Beam Software VB"),
805  .props = AV_CODEC_PROP_LOSSY,
806  },
807  {
808  .id = AV_CODEC_ID_PCX,
809  .type = AVMEDIA_TYPE_VIDEO,
810  .name = "pcx",
811  .long_name = NULL_IF_CONFIG_SMALL("PC Paintbrush PCX image"),
813  .mime_types= MT("image/x-pcx"),
814  },
815  {
816  .id = AV_CODEC_ID_SUNRAST,
817  .type = AVMEDIA_TYPE_VIDEO,
818  .name = "sunrast",
819  .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
821  },
822  {
823  .id = AV_CODEC_ID_INDEO4,
824  .type = AVMEDIA_TYPE_VIDEO,
825  .name = "indeo4",
826  .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 4"),
827  .props = AV_CODEC_PROP_LOSSY,
828  },
829  {
830  .id = AV_CODEC_ID_INDEO5,
831  .type = AVMEDIA_TYPE_VIDEO,
832  .name = "indeo5",
833  .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 5"),
834  .props = AV_CODEC_PROP_LOSSY,
835  },
836  {
837  .id = AV_CODEC_ID_MIMIC,
838  .type = AVMEDIA_TYPE_VIDEO,
839  .name = "mimic",
840  .long_name = NULL_IF_CONFIG_SMALL("Mimic"),
841  .props = AV_CODEC_PROP_LOSSY,
842  },
843  {
844  .id = AV_CODEC_ID_RL2,
845  .type = AVMEDIA_TYPE_VIDEO,
846  .name = "rl2",
847  .long_name = NULL_IF_CONFIG_SMALL("RL2 video"),
849  },
850  {
851  .id = AV_CODEC_ID_ESCAPE124,
852  .type = AVMEDIA_TYPE_VIDEO,
853  .name = "escape124",
854  .long_name = NULL_IF_CONFIG_SMALL("Escape 124"),
855  .props = AV_CODEC_PROP_LOSSY,
856  },
857  {
858  .id = AV_CODEC_ID_DIRAC,
859  .type = AVMEDIA_TYPE_VIDEO,
860  .name = "dirac",
861  .long_name = NULL_IF_CONFIG_SMALL("Dirac"),
863  },
864  {
865  .id = AV_CODEC_ID_BFI,
866  .type = AVMEDIA_TYPE_VIDEO,
867  .name = "bfi",
868  .long_name = NULL_IF_CONFIG_SMALL("Brute Force & Ignorance"),
869  .props = AV_CODEC_PROP_LOSSY,
870  },
871  {
872  .id = AV_CODEC_ID_CMV,
873  .type = AVMEDIA_TYPE_VIDEO,
874  .name = "cmv",
875  .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts CMV video"),
876  .props = AV_CODEC_PROP_LOSSY,
877  },
878  {
880  .type = AVMEDIA_TYPE_VIDEO,
881  .name = "motionpixels",
882  .long_name = NULL_IF_CONFIG_SMALL("Motion Pixels video"),
883  .props = AV_CODEC_PROP_LOSSY,
884  },
885  {
886  .id = AV_CODEC_ID_TGV,
887  .type = AVMEDIA_TYPE_VIDEO,
888  .name = "tgv",
889  .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGV video"),
890  .props = AV_CODEC_PROP_LOSSY,
891  },
892  {
893  .id = AV_CODEC_ID_TGQ,
894  .type = AVMEDIA_TYPE_VIDEO,
895  .name = "tgq",
896  .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGQ video"),
897  .props = AV_CODEC_PROP_LOSSY,
898  },
899  {
900  .id = AV_CODEC_ID_TQI,
901  .type = AVMEDIA_TYPE_VIDEO,
902  .name = "tqi",
903  .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TQI video"),
904  .props = AV_CODEC_PROP_LOSSY,
905  },
906  {
907  .id = AV_CODEC_ID_AURA,
908  .type = AVMEDIA_TYPE_VIDEO,
909  .name = "aura",
910  .long_name = NULL_IF_CONFIG_SMALL("Auravision AURA"),
912  },
913  {
914  .id = AV_CODEC_ID_AURA2,
915  .type = AVMEDIA_TYPE_VIDEO,
916  .name = "aura2",
917  .long_name = NULL_IF_CONFIG_SMALL("Auravision Aura 2"),
919  },
920  {
921  .id = AV_CODEC_ID_V210X,
922  .type = AVMEDIA_TYPE_VIDEO,
923  .name = "v210x",
924  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
926  },
927  {
928  .id = AV_CODEC_ID_TMV,
929  .type = AVMEDIA_TYPE_VIDEO,
930  .name = "tmv",
931  .long_name = NULL_IF_CONFIG_SMALL("8088flex TMV"),
933  },
934  {
935  .id = AV_CODEC_ID_V210,
936  .type = AVMEDIA_TYPE_VIDEO,
937  .name = "v210",
938  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
940  },
941  {
942  .id = AV_CODEC_ID_DPX,
943  .type = AVMEDIA_TYPE_VIDEO,
944  .name = "dpx",
945  .long_name = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
947  },
948  {
949  .id = AV_CODEC_ID_MAD,
950  .type = AVMEDIA_TYPE_VIDEO,
951  .name = "mad",
952  .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts Madcow Video"),
953  .props = AV_CODEC_PROP_LOSSY,
954  },
955  {
956  .id = AV_CODEC_ID_FRWU,
957  .type = AVMEDIA_TYPE_VIDEO,
958  .name = "frwu",
959  .long_name = NULL_IF_CONFIG_SMALL("Forward Uncompressed"),
961  },
962  {
963  .id = AV_CODEC_ID_FLASHSV2,
964  .type = AVMEDIA_TYPE_VIDEO,
965  .name = "flashsv2",
966  .long_name = NULL_IF_CONFIG_SMALL("Flash Screen Video v2"),
967  .props = AV_CODEC_PROP_LOSSY,
968  },
969  {
971  .type = AVMEDIA_TYPE_VIDEO,
972  .name = "cdgraphics",
973  .long_name = NULL_IF_CONFIG_SMALL("CD Graphics video"),
974  .props = AV_CODEC_PROP_LOSSY,
975  },
976  {
977  .id = AV_CODEC_ID_R210,
978  .type = AVMEDIA_TYPE_VIDEO,
979  .name = "r210",
980  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed RGB 10-bit"),
982  },
983  {
984  .id = AV_CODEC_ID_ANM,
985  .type = AVMEDIA_TYPE_VIDEO,
986  .name = "anm",
987  .long_name = NULL_IF_CONFIG_SMALL("Deluxe Paint Animation"),
988  .props = AV_CODEC_PROP_LOSSY,
989  },
990  {
991  .id = AV_CODEC_ID_BINKVIDEO,
992  .type = AVMEDIA_TYPE_VIDEO,
993  .name = "binkvideo",
994  .long_name = NULL_IF_CONFIG_SMALL("Bink video"),
995  .props = AV_CODEC_PROP_LOSSY,
996  },
997  {
998  .id = AV_CODEC_ID_IFF_ILBM,
999  .type = AVMEDIA_TYPE_VIDEO,
1000  .name = "iff_ilbm",
1001  .long_name = NULL_IF_CONFIG_SMALL("IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN"),
1002  .props = AV_CODEC_PROP_LOSSY,
1003  },
1004  {
1005  .id = AV_CODEC_ID_KGV1,
1006  .type = AVMEDIA_TYPE_VIDEO,
1007  .name = "kgv1",
1008  .long_name = NULL_IF_CONFIG_SMALL("Kega Game Video"),
1009  .props = AV_CODEC_PROP_LOSSY,
1010  },
1011  {
1012  .id = AV_CODEC_ID_YOP,
1013  .type = AVMEDIA_TYPE_VIDEO,
1014  .name = "yop",
1015  .long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP Video"),
1016  .props = AV_CODEC_PROP_LOSSY,
1017  },
1018  {
1019  .id = AV_CODEC_ID_VP8,
1020  .type = AVMEDIA_TYPE_VIDEO,
1021  .name = "vp8",
1022  .long_name = NULL_IF_CONFIG_SMALL("On2 VP8"),
1023  .props = AV_CODEC_PROP_LOSSY,
1024  },
1025  {
1026  .id = AV_CODEC_ID_PICTOR,
1027  .type = AVMEDIA_TYPE_VIDEO,
1028  .name = "pictor",
1029  .long_name = NULL_IF_CONFIG_SMALL("Pictor/PC Paint"),
1031  },
1032  {
1033  .id = AV_CODEC_ID_ANSI,
1034  .type = AVMEDIA_TYPE_VIDEO,
1035  .name = "ansi",
1036  .long_name = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
1037  .props = AV_CODEC_PROP_LOSSY,
1038  },
1039  {
1040  .id = AV_CODEC_ID_A64_MULTI,
1041  .type = AVMEDIA_TYPE_VIDEO,
1042  .name = "a64_multi",
1043  .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64"),
1045  },
1046  {
1047  .id = AV_CODEC_ID_A64_MULTI5,
1048  .type = AVMEDIA_TYPE_VIDEO,
1049  .name = "a64_multi5",
1050  .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64, extended with 5th color (colram)"),
1052  },
1053  {
1054  .id = AV_CODEC_ID_R10K,
1055  .type = AVMEDIA_TYPE_VIDEO,
1056  .name = "r10k",
1057  .long_name = NULL_IF_CONFIG_SMALL("AJA Kona 10-bit RGB Codec"),
1059  },
1060  {
1061  .id = AV_CODEC_ID_MXPEG,
1062  .type = AVMEDIA_TYPE_VIDEO,
1063  .name = "mxpeg",
1064  .long_name = NULL_IF_CONFIG_SMALL("Mobotix MxPEG video"),
1065  .props = AV_CODEC_PROP_LOSSY,
1066  },
1067  {
1068  .id = AV_CODEC_ID_LAGARITH,
1069  .type = AVMEDIA_TYPE_VIDEO,
1070  .name = "lagarith",
1071  .long_name = NULL_IF_CONFIG_SMALL("Lagarith lossless"),
1073  },
1074  {
1075  .id = AV_CODEC_ID_PRORES,
1076  .type = AVMEDIA_TYPE_VIDEO,
1077  .name = "prores",
1078  .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
1080  },
1081  {
1082  .id = AV_CODEC_ID_JV,
1083  .type = AVMEDIA_TYPE_VIDEO,
1084  .name = "jv",
1085  .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"),
1087  },
1088  {
1089  .id = AV_CODEC_ID_DFA,
1090  .type = AVMEDIA_TYPE_VIDEO,
1091  .name = "dfa",
1092  .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"),
1093  .props = AV_CODEC_PROP_LOSSY,
1094  },
1095  {
1096  .id = AV_CODEC_ID_WMV3IMAGE,
1097  .type = AVMEDIA_TYPE_VIDEO,
1098  .name = "wmv3image",
1099  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image"),
1100  .props = AV_CODEC_PROP_LOSSY,
1101  },
1102  {
1103  .id = AV_CODEC_ID_VC1IMAGE,
1104  .type = AVMEDIA_TYPE_VIDEO,
1105  .name = "vc1image",
1106  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image v2"),
1107  .props = AV_CODEC_PROP_LOSSY,
1108  },
1109  {
1110  .id = AV_CODEC_ID_UTVIDEO,
1111  .type = AVMEDIA_TYPE_VIDEO,
1112  .name = "utvideo",
1113  .long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
1115  },
1116  {
1117  .id = AV_CODEC_ID_BMV_VIDEO,
1118  .type = AVMEDIA_TYPE_VIDEO,
1119  .name = "bmv_video",
1120  .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV video"),
1121  .props = AV_CODEC_PROP_LOSSLESS,
1122  },
1123  {
1124  .id = AV_CODEC_ID_VBLE,
1125  .type = AVMEDIA_TYPE_VIDEO,
1126  .name = "vble",
1127  .long_name = NULL_IF_CONFIG_SMALL("VBLE Lossless Codec"),
1129  },
1130  {
1131  .id = AV_CODEC_ID_DXTORY,
1132  .type = AVMEDIA_TYPE_VIDEO,
1133  .name = "dxtory",
1134  .long_name = NULL_IF_CONFIG_SMALL("Dxtory"),
1136  },
1137  {
1138  .id = AV_CODEC_ID_V410,
1139  .type = AVMEDIA_TYPE_VIDEO,
1140  .name = "v410",
1141  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:4:4 10-bit"),
1143  },
1144  {
1145  .id = AV_CODEC_ID_XWD,
1146  .type = AVMEDIA_TYPE_VIDEO,
1147  .name = "xwd",
1148  .long_name = NULL_IF_CONFIG_SMALL("XWD (X Window Dump) image"),
1150  .mime_types= MT("image/x-xwindowdump"),
1151  },
1152  {
1153  .id = AV_CODEC_ID_CDXL,
1154  .type = AVMEDIA_TYPE_VIDEO,
1155  .name = "cdxl",
1156  .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"),
1158  },
1159  {
1160  .id = AV_CODEC_ID_XBM,
1161  .type = AVMEDIA_TYPE_VIDEO,
1162  .name = "xbm",
1163  .long_name = NULL_IF_CONFIG_SMALL("XBM (X BitMap) image"),
1165  .mime_types= MT("image/x-xbitmap"),
1166  },
1167  {
1168  .id = AV_CODEC_ID_ZEROCODEC,
1169  .type = AVMEDIA_TYPE_VIDEO,
1170  .name = "zerocodec",
1171  .long_name = NULL_IF_CONFIG_SMALL("ZeroCodec Lossless Video"),
1172  .props = AV_CODEC_PROP_LOSSLESS,
1173  },
1174  {
1175  .id = AV_CODEC_ID_MSS1,
1176  .type = AVMEDIA_TYPE_VIDEO,
1177  .name = "mss1",
1178  .long_name = NULL_IF_CONFIG_SMALL("MS Screen 1"),
1179  .props = AV_CODEC_PROP_LOSSY,
1180  },
1181  {
1182  .id = AV_CODEC_ID_MSA1,
1183  .type = AVMEDIA_TYPE_VIDEO,
1184  .name = "msa1",
1185  .long_name = NULL_IF_CONFIG_SMALL("MS ATC Screen"),
1186  .props = AV_CODEC_PROP_LOSSY,
1187  },
1188  {
1189  .id = AV_CODEC_ID_TSCC2,
1190  .type = AVMEDIA_TYPE_VIDEO,
1191  .name = "tscc2",
1192  .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Codec 2"),
1193  .props = AV_CODEC_PROP_LOSSY,
1194  },
1195  {
1196  .id = AV_CODEC_ID_MTS2,
1197  .type = AVMEDIA_TYPE_VIDEO,
1198  .name = "mts2",
1199  .long_name = NULL_IF_CONFIG_SMALL("MS Expression Encoder Screen"),
1200  .props = AV_CODEC_PROP_LOSSY,
1201  },
1202  {
1203  .id = AV_CODEC_ID_CLLC,
1204  .type = AVMEDIA_TYPE_VIDEO,
1205  .name = "cllc",
1206  .long_name = NULL_IF_CONFIG_SMALL("Canopus Lossless Codec"),
1208  },
1209  {
1210  .id = AV_CODEC_ID_MSS2,
1211  .type = AVMEDIA_TYPE_VIDEO,
1212  .name = "mss2",
1213  .long_name = NULL_IF_CONFIG_SMALL("MS Windows Media Video V9 Screen"),
1215  },
1216  {
1217  .id = AV_CODEC_ID_VP9,
1218  .type = AVMEDIA_TYPE_VIDEO,
1219  .name = "vp9",
1220  .long_name = NULL_IF_CONFIG_SMALL("Google VP9"),
1221  .props = AV_CODEC_PROP_LOSSY,
1223  },
1224  {
1225  .id = AV_CODEC_ID_AIC,
1226  .type = AVMEDIA_TYPE_VIDEO,
1227  .name = "aic",
1228  .long_name = NULL_IF_CONFIG_SMALL("Apple Intermediate Codec"),
1230  },
1231  {
1232  .id = AV_CODEC_ID_ESCAPE130,
1233  .type = AVMEDIA_TYPE_VIDEO,
1234  .name = "escape130",
1235  .long_name = NULL_IF_CONFIG_SMALL("Escape 130"),
1236  .props = AV_CODEC_PROP_LOSSY,
1237  },
1238  {
1239  .id = AV_CODEC_ID_G2M,
1240  .type = AVMEDIA_TYPE_VIDEO,
1241  .name = "g2m",
1242  .long_name = NULL_IF_CONFIG_SMALL("Go2Meeting"),
1243  .props = AV_CODEC_PROP_LOSSY,
1244  },
1245  {
1246  .id = AV_CODEC_ID_WEBP,
1247  .type = AVMEDIA_TYPE_VIDEO,
1248  .name = "webp",
1249  .long_name = NULL_IF_CONFIG_SMALL("WebP"),
1252  .mime_types= MT("image/webp"),
1253  },
1254  {
1255  .id = AV_CODEC_ID_HNM4_VIDEO,
1256  .type = AVMEDIA_TYPE_VIDEO,
1257  .name = "hnm4video",
1258  .long_name = NULL_IF_CONFIG_SMALL("HNM 4 video"),
1259  .props = AV_CODEC_PROP_LOSSY,
1260  },
1261  {
1262  .id = AV_CODEC_ID_HEVC,
1263  .type = AVMEDIA_TYPE_VIDEO,
1264  .name = "hevc",
1265  .long_name = NULL_IF_CONFIG_SMALL("H.265 / HEVC (High Efficiency Video Coding)"),
1268  },
1269  {
1270  .id = AV_CODEC_ID_FIC,
1271  .type = AVMEDIA_TYPE_VIDEO,
1272  .name = "fic",
1273  .long_name = NULL_IF_CONFIG_SMALL("Mirillis FIC"),
1274  .props = AV_CODEC_PROP_LOSSY,
1275  },
1276  {
1277  .id = AV_CODEC_ID_ALIAS_PIX,
1278  .type = AVMEDIA_TYPE_VIDEO,
1279  .name = "alias_pix",
1280  .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"),
1282  },
1283  {
1285  .type = AVMEDIA_TYPE_VIDEO,
1286  .name = "brender_pix",
1287  .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"),
1289  },
1290  {
1291  .id = AV_CODEC_ID_PAF_VIDEO,
1292  .type = AVMEDIA_TYPE_VIDEO,
1293  .name = "paf_video",
1294  .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Video"),
1295  .props = AV_CODEC_PROP_LOSSY,
1296  },
1297  {
1298  .id = AV_CODEC_ID_EXR,
1299  .type = AVMEDIA_TYPE_VIDEO,
1300  .name = "exr",
1301  .long_name = NULL_IF_CONFIG_SMALL("OpenEXR image"),
1304  },
1305  {
1306  .id = AV_CODEC_ID_VP7,
1307  .type = AVMEDIA_TYPE_VIDEO,
1308  .name = "vp7",
1309  .long_name = NULL_IF_CONFIG_SMALL("On2 VP7"),
1310  .props = AV_CODEC_PROP_LOSSY,
1311  },
1312  {
1313  .id = AV_CODEC_ID_SANM,
1314  .type = AVMEDIA_TYPE_VIDEO,
1315  .name = "sanm",
1316  .long_name = NULL_IF_CONFIG_SMALL("LucasArts SANM/SMUSH video"),
1317  .props = AV_CODEC_PROP_LOSSY,
1318  },
1319  {
1320  .id = AV_CODEC_ID_SGIRLE,
1321  .type = AVMEDIA_TYPE_VIDEO,
1322  .name = "sgirle",
1323  .long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
1325  },
1326  {
1327  .id = AV_CODEC_ID_MVC1,
1328  .type = AVMEDIA_TYPE_VIDEO,
1329  .name = "mvc1",
1330  .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 1"),
1332  },
1333  {
1334  .id = AV_CODEC_ID_MVC2,
1335  .type = AVMEDIA_TYPE_VIDEO,
1336  .name = "mvc2",
1337  .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 2"),
1339  },
1340  {
1341  .id = AV_CODEC_ID_HQX,
1342  .type = AVMEDIA_TYPE_VIDEO,
1343  .name = "hqx",
1344  .long_name = NULL_IF_CONFIG_SMALL("Canopus HQX"),
1346  },
1347  {
1348  .id = AV_CODEC_ID_TDSC,
1349  .type = AVMEDIA_TYPE_VIDEO,
1350  .name = "tdsc",
1351  .long_name = NULL_IF_CONFIG_SMALL("TDSC"),
1352  .props = AV_CODEC_PROP_LOSSY,
1353  },
1354  {
1355  .id = AV_CODEC_ID_HQ_HQA,
1356  .type = AVMEDIA_TYPE_VIDEO,
1357  .name = "hq_hqa",
1358  .long_name = NULL_IF_CONFIG_SMALL("Canopus HQ/HQA"),
1360  },
1361  {
1362  .id = AV_CODEC_ID_HAP,
1363  .type = AVMEDIA_TYPE_VIDEO,
1364  .name = "hap",
1365  .long_name = NULL_IF_CONFIG_SMALL("Vidvox Hap"),
1367  },
1368  {
1369  .id = AV_CODEC_ID_DDS,
1370  .type = AVMEDIA_TYPE_VIDEO,
1371  .name = "dds",
1372  .long_name = NULL_IF_CONFIG_SMALL("DirectDraw Surface image decoder"),
1375  },
1376  {
1377  .id = AV_CODEC_ID_DXV,
1378  .type = AVMEDIA_TYPE_VIDEO,
1379  .name = "dxv",
1380  .long_name = NULL_IF_CONFIG_SMALL("Resolume DXV"),
1382  },
1383  {
1385  .type = AVMEDIA_TYPE_VIDEO,
1386  .name = "screenpresso",
1387  .long_name = NULL_IF_CONFIG_SMALL("Screenpresso"),
1388  .props = AV_CODEC_PROP_LOSSLESS,
1389  },
1390  {
1391  .id = AV_CODEC_ID_RSCC,
1392  .type = AVMEDIA_TYPE_VIDEO,
1393  .name = "rscc",
1394  .long_name = NULL_IF_CONFIG_SMALL("innoHeim/Rsupport Screen Capture Codec"),
1395  .props = AV_CODEC_PROP_LOSSLESS,
1396  },
1397  {
1398  .id = AV_CODEC_ID_Y41P,
1399  .type = AVMEDIA_TYPE_VIDEO,
1400  .name = "y41p",
1401  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed YUV 4:1:1 12-bit"),
1403  },
1404  {
1405  .id = AV_CODEC_ID_AVRP,
1406  .type = AVMEDIA_TYPE_VIDEO,
1407  .name = "avrp",
1408  .long_name = NULL_IF_CONFIG_SMALL("Avid 1:1 10-bit RGB Packer"),
1410  },
1411  {
1412  .id = AV_CODEC_ID_012V,
1413  .type = AVMEDIA_TYPE_VIDEO,
1414  .name = "012v",
1415  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
1417  },
1418  {
1419  .id = AV_CODEC_ID_AVUI,
1420  .type = AVMEDIA_TYPE_VIDEO,
1421  .name = "avui",
1422  .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
1424  },
1425  {
1426  .id = AV_CODEC_ID_AYUV,
1427  .type = AVMEDIA_TYPE_VIDEO,
1428  .name = "ayuv",
1429  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"),
1431  },
1432  {
1433  .id = AV_CODEC_ID_TARGA_Y216,
1434  .type = AVMEDIA_TYPE_VIDEO,
1435  .name = "targa_y216",
1436  .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"),
1438  },
1439  {
1440  .id = AV_CODEC_ID_V308,
1441  .type = AVMEDIA_TYPE_VIDEO,
1442  .name = "v308",
1443  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"),
1445  },
1446  {
1447  .id = AV_CODEC_ID_V408,
1448  .type = AVMEDIA_TYPE_VIDEO,
1449  .name = "v408",
1450  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed QT 4:4:4:4"),
1452  },
1453  {
1454  .id = AV_CODEC_ID_YUV4,
1455  .type = AVMEDIA_TYPE_VIDEO,
1456  .name = "yuv4",
1457  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:2:0"),
1459  },
1460  {
1461  .id = AV_CODEC_ID_AVRN,
1462  .type = AVMEDIA_TYPE_VIDEO,
1463  .name = "avrn",
1464  .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"),
1465  },
1466  {
1467  .id = AV_CODEC_ID_CPIA,
1468  .type = AVMEDIA_TYPE_VIDEO,
1469  .name = "cpia",
1470  .long_name = NULL_IF_CONFIG_SMALL("CPiA video format"),
1471  },
1472  {
1473  .id = AV_CODEC_ID_XFACE,
1474  .type = AVMEDIA_TYPE_VIDEO,
1475  .name = "xface",
1476  .long_name = NULL_IF_CONFIG_SMALL("X-face image"),
1478  },
1479  {
1480  .id = AV_CODEC_ID_SNOW,
1481  .type = AVMEDIA_TYPE_VIDEO,
1482  .name = "snow",
1483  .long_name = NULL_IF_CONFIG_SMALL("Snow"),
1485  },
1486  {
1487  .id = AV_CODEC_ID_SMVJPEG,
1488  .type = AVMEDIA_TYPE_VIDEO,
1489  .name = "smvjpeg",
1490  .long_name = NULL_IF_CONFIG_SMALL("Sigmatel Motion Video"),
1491  },
1492  {
1493  .id = AV_CODEC_ID_APNG,
1494  .type = AVMEDIA_TYPE_VIDEO,
1495  .name = "apng",
1496  .long_name = NULL_IF_CONFIG_SMALL("APNG (Animated Portable Network Graphics) image"),
1497  .props = AV_CODEC_PROP_LOSSLESS,
1498  .mime_types= MT("image/png"),
1499  },
1500  {
1501  .id = AV_CODEC_ID_DAALA,
1502  .type = AVMEDIA_TYPE_VIDEO,
1503  .name = "daala",
1504  .long_name = NULL_IF_CONFIG_SMALL("Daala"),
1506  },
1507  {
1508  .id = AV_CODEC_ID_CFHD,
1509  .type = AVMEDIA_TYPE_VIDEO,
1510  .name = "cfhd",
1511  .long_name = NULL_IF_CONFIG_SMALL("Cineform HD"),
1512  .props = AV_CODEC_PROP_LOSSY,
1513  },
1514  {
1516  .type = AVMEDIA_TYPE_VIDEO,
1517  .name = "truemotion2rt",
1518  .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0 Real Time"),
1519  .props = AV_CODEC_PROP_LOSSY,
1520  },
1521  {
1522  .id = AV_CODEC_ID_M101,
1523  .type = AVMEDIA_TYPE_VIDEO,
1524  .name = "m101",
1525  .long_name = NULL_IF_CONFIG_SMALL("Matrox Uncompressed SD"),
1527  },
1528  {
1529  .id = AV_CODEC_ID_MAGICYUV,
1530  .type = AVMEDIA_TYPE_VIDEO,
1531  .name = "magicyuv",
1532  .long_name = NULL_IF_CONFIG_SMALL("MagicYUV video"),
1534  },
1535  {
1536  .id = AV_CODEC_ID_SHEERVIDEO,
1537  .type = AVMEDIA_TYPE_VIDEO,
1538  .name = "sheervideo",
1539  .long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
1541  },
1542  {
1543  .id = AV_CODEC_ID_YLC,
1544  .type = AVMEDIA_TYPE_VIDEO,
1545  .name = "ylc",
1546  .long_name = NULL_IF_CONFIG_SMALL("YUY2 Lossless Codec"),
1548  },
1549  {
1550  .id = AV_CODEC_ID_PSD,
1551  .type = AVMEDIA_TYPE_VIDEO,
1552  .name = "psd",
1553  .long_name = NULL_IF_CONFIG_SMALL("Photoshop PSD file"),
1555  },
1556  {
1557  .id = AV_CODEC_ID_PIXLET,
1558  .type = AVMEDIA_TYPE_VIDEO,
1559  .name = "pixlet",
1560  .long_name = NULL_IF_CONFIG_SMALL("Apple Pixlet"),
1562  },
1563  {
1564  .id = AV_CODEC_ID_SPEEDHQ,
1565  .type = AVMEDIA_TYPE_VIDEO,
1566  .name = "speedhq",
1567  .long_name = NULL_IF_CONFIG_SMALL("NewTek SpeedHQ"),
1569  },
1570  {
1571  .id = AV_CODEC_ID_FMVC,
1572  .type = AVMEDIA_TYPE_VIDEO,
1573  .name = "fmvc",
1574  .long_name = NULL_IF_CONFIG_SMALL("FM Screen Capture Codec"),
1575  .props = AV_CODEC_PROP_LOSSLESS,
1576  },
1577  {
1578  .id = AV_CODEC_ID_SCPR,
1579  .type = AVMEDIA_TYPE_VIDEO,
1580  .name = "scpr",
1581  .long_name = NULL_IF_CONFIG_SMALL("ScreenPressor"),
1583  },
1584  {
1585  .id = AV_CODEC_ID_CLEARVIDEO,
1586  .type = AVMEDIA_TYPE_VIDEO,
1587  .name = "clearvideo",
1588  .long_name = NULL_IF_CONFIG_SMALL("Iterated Systems ClearVideo"),
1589  .props = AV_CODEC_PROP_LOSSY,
1590  },
1591  {
1592  .id = AV_CODEC_ID_XPM,
1593  .type = AVMEDIA_TYPE_VIDEO,
1594  .name = "xpm",
1595  .long_name = NULL_IF_CONFIG_SMALL("XPM (X PixMap) image"),
1597  .mime_types= MT("image/x-xpixmap"),
1598  },
1599  {
1600  .id = AV_CODEC_ID_AV1,
1601  .type = AVMEDIA_TYPE_VIDEO,
1602  .name = "av1",
1603  .long_name = NULL_IF_CONFIG_SMALL("Alliance for Open Media AV1"),
1604  .props = AV_CODEC_PROP_LOSSY,
1606  },
1607  {
1608  .id = AV_CODEC_ID_BITPACKED,
1609  .type = AVMEDIA_TYPE_VIDEO,
1610  .name = "bitpacked",
1611  .long_name = NULL_IF_CONFIG_SMALL("Bitpacked"),
1613  },
1614  {
1615  .id = AV_CODEC_ID_MSCC,
1616  .type = AVMEDIA_TYPE_VIDEO,
1617  .name = "mscc",
1618  .long_name = NULL_IF_CONFIG_SMALL("Mandsoft Screen Capture Codec"),
1620  },
1621  {
1622  .id = AV_CODEC_ID_SRGC,
1623  .type = AVMEDIA_TYPE_VIDEO,
1624  .name = "srgc",
1625  .long_name = NULL_IF_CONFIG_SMALL("Screen Recorder Gold Codec"),
1627  },
1628  {
1629  .id = AV_CODEC_ID_SVG,
1630  .type = AVMEDIA_TYPE_VIDEO,
1631  .name = "svg",
1632  .long_name = NULL_IF_CONFIG_SMALL("Scalable Vector Graphics"),
1633  .props = AV_CODEC_PROP_LOSSLESS,
1634  .mime_types= MT("image/svg+xml"),
1635  },
1636  {
1637  .id = AV_CODEC_ID_GDV,
1638  .type = AVMEDIA_TYPE_VIDEO,
1639  .name = "gdv",
1640  .long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"),
1641  .props = AV_CODEC_PROP_LOSSY,
1642  },
1643  {
1644  .id = AV_CODEC_ID_FITS,
1645  .type = AVMEDIA_TYPE_VIDEO,
1646  .name = "fits",
1647  .long_name = NULL_IF_CONFIG_SMALL("FITS (Flexible Image Transport System)"),
1649  },
1650 
1651  /* various PCM "codecs" */
1652  {
1653  .id = AV_CODEC_ID_PCM_S16LE,
1654  .type = AVMEDIA_TYPE_AUDIO,
1655  .name = "pcm_s16le",
1656  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
1657  .props = AV_CODEC_PROP_LOSSLESS,
1658  },
1659  {
1660  .id = AV_CODEC_ID_PCM_S16BE,
1661  .type = AVMEDIA_TYPE_AUDIO,
1662  .name = "pcm_s16be",
1663  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
1664  .props = AV_CODEC_PROP_LOSSLESS,
1665  },
1666  {
1667  .id = AV_CODEC_ID_PCM_U16LE,
1668  .type = AVMEDIA_TYPE_AUDIO,
1669  .name = "pcm_u16le",
1670  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
1671  .props = AV_CODEC_PROP_LOSSLESS,
1672  },
1673  {
1674  .id = AV_CODEC_ID_PCM_U16BE,
1675  .type = AVMEDIA_TYPE_AUDIO,
1676  .name = "pcm_u16be",
1677  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
1678  .props = AV_CODEC_PROP_LOSSLESS,
1679  },
1680  {
1681  .id = AV_CODEC_ID_PCM_S8,
1682  .type = AVMEDIA_TYPE_AUDIO,
1683  .name = "pcm_s8",
1684  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
1685  .props = AV_CODEC_PROP_LOSSLESS,
1686  },
1687  {
1688  .id = AV_CODEC_ID_PCM_U8,
1689  .type = AVMEDIA_TYPE_AUDIO,
1690  .name = "pcm_u8",
1691  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
1692  .props = AV_CODEC_PROP_LOSSLESS,
1693  },
1694  {
1695  .id = AV_CODEC_ID_PCM_MULAW,
1696  .type = AVMEDIA_TYPE_AUDIO,
1697  .name = "pcm_mulaw",
1698  .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law / G.711 mu-law"),
1699  .props = AV_CODEC_PROP_LOSSY,
1700  },
1701  {
1702  .id = AV_CODEC_ID_PCM_ALAW,
1703  .type = AVMEDIA_TYPE_AUDIO,
1704  .name = "pcm_alaw",
1705  .long_name = NULL_IF_CONFIG_SMALL("PCM A-law / G.711 A-law"),
1706  .props = AV_CODEC_PROP_LOSSY,
1707  },
1708  {
1709  .id = AV_CODEC_ID_PCM_S32LE,
1710  .type = AVMEDIA_TYPE_AUDIO,
1711  .name = "pcm_s32le",
1712  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
1713  .props = AV_CODEC_PROP_LOSSLESS,
1714  },
1715  {
1716  .id = AV_CODEC_ID_PCM_S32BE,
1717  .type = AVMEDIA_TYPE_AUDIO,
1718  .name = "pcm_s32be",
1719  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
1720  .props = AV_CODEC_PROP_LOSSLESS,
1721  },
1722  {
1723  .id = AV_CODEC_ID_PCM_U32LE,
1724  .type = AVMEDIA_TYPE_AUDIO,
1725  .name = "pcm_u32le",
1726  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
1727  .props = AV_CODEC_PROP_LOSSLESS,
1728  },
1729  {
1730  .id = AV_CODEC_ID_PCM_U32BE,
1731  .type = AVMEDIA_TYPE_AUDIO,
1732  .name = "pcm_u32be",
1733  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
1734  .props = AV_CODEC_PROP_LOSSLESS,
1735  },
1736  {
1737  .id = AV_CODEC_ID_PCM_S24LE,
1738  .type = AVMEDIA_TYPE_AUDIO,
1739  .name = "pcm_s24le",
1740  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
1741  .props = AV_CODEC_PROP_LOSSLESS,
1742  },
1743  {
1744  .id = AV_CODEC_ID_PCM_S24BE,
1745  .type = AVMEDIA_TYPE_AUDIO,
1746  .name = "pcm_s24be",
1747  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
1748  .props = AV_CODEC_PROP_LOSSLESS,
1749  },
1750  {
1751  .id = AV_CODEC_ID_PCM_U24LE,
1752  .type = AVMEDIA_TYPE_AUDIO,
1753  .name = "pcm_u24le",
1754  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
1755  .props = AV_CODEC_PROP_LOSSLESS,
1756  },
1757  {
1758  .id = AV_CODEC_ID_PCM_U24BE,
1759  .type = AVMEDIA_TYPE_AUDIO,
1760  .name = "pcm_u24be",
1761  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
1762  .props = AV_CODEC_PROP_LOSSLESS,
1763  },
1764  {
1766  .type = AVMEDIA_TYPE_AUDIO,
1767  .name = "pcm_s24daud",
1768  .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
1769  .props = AV_CODEC_PROP_LOSSLESS,
1770  },
1771  {
1772  .id = AV_CODEC_ID_PCM_ZORK,
1773  .type = AVMEDIA_TYPE_AUDIO,
1774  .name = "pcm_zork",
1775  .long_name = NULL_IF_CONFIG_SMALL("PCM Zork"),
1776  .props = AV_CODEC_PROP_LOSSY,
1777  },
1778  {
1780  .type = AVMEDIA_TYPE_AUDIO,
1781  .name = "pcm_s16le_planar",
1782  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian planar"),
1783  .props = AV_CODEC_PROP_LOSSLESS,
1784  },
1785  {
1786  .id = AV_CODEC_ID_PCM_DVD,
1787  .type = AVMEDIA_TYPE_AUDIO,
1788  .name = "pcm_dvd",
1789  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20|24-bit big-endian"),
1790  .props = AV_CODEC_PROP_LOSSLESS,
1791  },
1792  {
1793  .id = AV_CODEC_ID_PCM_F32BE,
1794  .type = AVMEDIA_TYPE_AUDIO,
1795  .name = "pcm_f32be",
1796  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
1797  .props = AV_CODEC_PROP_LOSSLESS,
1798  },
1799  {
1800  .id = AV_CODEC_ID_PCM_F32LE,
1801  .type = AVMEDIA_TYPE_AUDIO,
1802  .name = "pcm_f32le",
1803  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
1804  .props = AV_CODEC_PROP_LOSSLESS,
1805  },
1806  {
1807  .id = AV_CODEC_ID_PCM_F64BE,
1808  .type = AVMEDIA_TYPE_AUDIO,
1809  .name = "pcm_f64be",
1810  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
1811  .props = AV_CODEC_PROP_LOSSLESS,
1812  },
1813  {
1814  .id = AV_CODEC_ID_PCM_F64LE,
1815  .type = AVMEDIA_TYPE_AUDIO,
1816  .name = "pcm_f64le",
1817  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
1818  .props = AV_CODEC_PROP_LOSSLESS,
1819  },
1820  {
1821  .id = AV_CODEC_ID_PCM_BLURAY,
1822  .type = AVMEDIA_TYPE_AUDIO,
1823  .name = "pcm_bluray",
1824  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
1825  .props = AV_CODEC_PROP_LOSSLESS,
1826  },
1827  {
1828  .id = AV_CODEC_ID_PCM_LXF,
1829  .type = AVMEDIA_TYPE_AUDIO,
1830  .name = "pcm_lxf",
1831  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
1832  .props = AV_CODEC_PROP_LOSSLESS,
1833  },
1834  {
1835  .id = AV_CODEC_ID_S302M,
1836  .type = AVMEDIA_TYPE_AUDIO,
1837  .name = "s302m",
1838  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
1839  .props = AV_CODEC_PROP_LOSSLESS,
1840  },
1841  {
1843  .type = AVMEDIA_TYPE_AUDIO,
1844  .name = "pcm_s8_planar",
1845  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
1846  .props = AV_CODEC_PROP_LOSSLESS,
1847  },
1848  {
1850  .type = AVMEDIA_TYPE_AUDIO,
1851  .name = "pcm_s24le_planar",
1852  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
1853  .props = AV_CODEC_PROP_LOSSLESS,
1854  },
1855  {
1857  .type = AVMEDIA_TYPE_AUDIO,
1858  .name = "pcm_s32le_planar",
1859  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
1860  .props = AV_CODEC_PROP_LOSSLESS,
1861  },
1862  {
1864  .type = AVMEDIA_TYPE_AUDIO,
1865  .name = "pcm_s16be_planar",
1866  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
1867  .props = AV_CODEC_PROP_LOSSLESS,
1868  },
1869  {
1870  .id = AV_CODEC_ID_PCM_S64LE,
1871  .type = AVMEDIA_TYPE_AUDIO,
1872  .name = "pcm_s64le",
1873  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit little-endian"),
1874  .props = AV_CODEC_PROP_LOSSLESS,
1875  },
1876  {
1877  .id = AV_CODEC_ID_PCM_S64BE,
1878  .type = AVMEDIA_TYPE_AUDIO,
1879  .name = "pcm_s64be",
1880  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit big-endian"),
1881  .props = AV_CODEC_PROP_LOSSLESS,
1882  },
1883  {
1884  .id = AV_CODEC_ID_PCM_F16LE,
1885  .type = AVMEDIA_TYPE_AUDIO,
1886  .name = "pcm_f16le",
1887  .long_name = NULL_IF_CONFIG_SMALL("PCM 16.8 floating point little-endian"),
1888  .props = AV_CODEC_PROP_LOSSLESS,
1889  },
1890  {
1891  .id = AV_CODEC_ID_PCM_F24LE,
1892  .type = AVMEDIA_TYPE_AUDIO,
1893  .name = "pcm_f24le",
1894  .long_name = NULL_IF_CONFIG_SMALL("PCM 24.0 floating point little-endian"),
1895  .props = AV_CODEC_PROP_LOSSLESS,
1896  },
1897 
1898  /* various ADPCM codecs */
1899  {
1901  .type = AVMEDIA_TYPE_AUDIO,
1902  .name = "adpcm_ima_qt",
1903  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
1904  .props = AV_CODEC_PROP_LOSSY,
1905  },
1906  {
1908  .type = AVMEDIA_TYPE_AUDIO,
1909  .name = "adpcm_ima_wav",
1910  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
1911  .props = AV_CODEC_PROP_LOSSY,
1912  },
1913  {
1915  .type = AVMEDIA_TYPE_AUDIO,
1916  .name = "adpcm_ima_dk3",
1917  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
1918  .props = AV_CODEC_PROP_LOSSY,
1919  },
1920  {
1922  .type = AVMEDIA_TYPE_AUDIO,
1923  .name = "adpcm_ima_dk4",
1924  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
1925  .props = AV_CODEC_PROP_LOSSY,
1926  },
1927  {
1929  .type = AVMEDIA_TYPE_AUDIO,
1930  .name = "adpcm_ima_ws",
1931  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
1932  .props = AV_CODEC_PROP_LOSSY,
1933  },
1934  {
1936  .type = AVMEDIA_TYPE_AUDIO,
1937  .name = "adpcm_ima_smjpeg",
1938  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
1939  .props = AV_CODEC_PROP_LOSSY,
1940  },
1941  {
1942  .id = AV_CODEC_ID_ADPCM_MS,
1943  .type = AVMEDIA_TYPE_AUDIO,
1944  .name = "adpcm_ms",
1945  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
1946  .props = AV_CODEC_PROP_LOSSY,
1947  },
1948  {
1949  .id = AV_CODEC_ID_ADPCM_4XM,
1950  .type = AVMEDIA_TYPE_AUDIO,
1951  .name = "adpcm_4xm",
1952  .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
1953  .props = AV_CODEC_PROP_LOSSY,
1954  },
1955  {
1956  .id = AV_CODEC_ID_ADPCM_XA,
1957  .type = AVMEDIA_TYPE_AUDIO,
1958  .name = "adpcm_xa",
1959  .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
1960  .props = AV_CODEC_PROP_LOSSY,
1961  },
1962  {
1963  .id = AV_CODEC_ID_ADPCM_ADX,
1964  .type = AVMEDIA_TYPE_AUDIO,
1965  .name = "adpcm_adx",
1966  .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
1967  .props = AV_CODEC_PROP_LOSSY,
1968  },
1969  {
1970  .id = AV_CODEC_ID_ADPCM_EA,
1971  .type = AVMEDIA_TYPE_AUDIO,
1972  .name = "adpcm_ea",
1973  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
1974  .props = AV_CODEC_PROP_LOSSY,
1975  },
1976  {
1977  .id = AV_CODEC_ID_ADPCM_G726,
1978  .type = AVMEDIA_TYPE_AUDIO,
1979  .name = "adpcm_g726",
1980  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
1981  .props = AV_CODEC_PROP_LOSSY,
1982  },
1983  {
1984  .id = AV_CODEC_ID_ADPCM_CT,
1985  .type = AVMEDIA_TYPE_AUDIO,
1986  .name = "adpcm_ct",
1987  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
1988  .props = AV_CODEC_PROP_LOSSY,
1989  },
1990  {
1991  .id = AV_CODEC_ID_ADPCM_SWF,
1992  .type = AVMEDIA_TYPE_AUDIO,
1993  .name = "adpcm_swf",
1994  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
1995  .props = AV_CODEC_PROP_LOSSY,
1996  },
1997  {
1999  .type = AVMEDIA_TYPE_AUDIO,
2000  .name = "adpcm_yamaha",
2001  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
2002  .props = AV_CODEC_PROP_LOSSY,
2003  },
2004  {
2006  .type = AVMEDIA_TYPE_AUDIO,
2007  .name = "adpcm_sbpro_4",
2008  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
2009  .props = AV_CODEC_PROP_LOSSY,
2010  },
2011  {
2013  .type = AVMEDIA_TYPE_AUDIO,
2014  .name = "adpcm_sbpro_3",
2015  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
2016  .props = AV_CODEC_PROP_LOSSY,
2017  },
2018  {
2020  .type = AVMEDIA_TYPE_AUDIO,
2021  .name = "adpcm_sbpro_2",
2022  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
2023  .props = AV_CODEC_PROP_LOSSY,
2024  },
2025  {
2026  .id = AV_CODEC_ID_ADPCM_THP,
2027  .type = AVMEDIA_TYPE_AUDIO,
2028  .name = "adpcm_thp",
2029  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP"),
2030  .props = AV_CODEC_PROP_LOSSY,
2031  },
2032  {
2034  .type = AVMEDIA_TYPE_AUDIO,
2035  .name = "adpcm_ima_amv",
2036  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
2037  .props = AV_CODEC_PROP_LOSSY,
2038  },
2039  {
2041  .type = AVMEDIA_TYPE_AUDIO,
2042  .name = "adpcm_ea_r1",
2043  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
2044  .props = AV_CODEC_PROP_LOSSY,
2045  },
2046  {
2048  .type = AVMEDIA_TYPE_AUDIO,
2049  .name = "adpcm_ea_r3",
2050  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
2051  .props = AV_CODEC_PROP_LOSSY,
2052  },
2053  {
2055  .type = AVMEDIA_TYPE_AUDIO,
2056  .name = "adpcm_ea_r2",
2057  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
2058  .props = AV_CODEC_PROP_LOSSY,
2059  },
2060  {
2062  .type = AVMEDIA_TYPE_AUDIO,
2063  .name = "adpcm_ima_ea_sead",
2064  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
2065  .props = AV_CODEC_PROP_LOSSY,
2066  },
2067  {
2069  .type = AVMEDIA_TYPE_AUDIO,
2070  .name = "adpcm_ima_ea_eacs",
2071  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
2072  .props = AV_CODEC_PROP_LOSSY,
2073  },
2074  {
2076  .type = AVMEDIA_TYPE_AUDIO,
2077  .name = "adpcm_ea_xas",
2078  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
2079  .props = AV_CODEC_PROP_LOSSY,
2080  },
2081  {
2083  .type = AVMEDIA_TYPE_AUDIO,
2084  .name = "adpcm_ea_maxis_xa",
2085  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
2086  .props = AV_CODEC_PROP_LOSSY,
2087  },
2088  {
2090  .type = AVMEDIA_TYPE_AUDIO,
2091  .name = "adpcm_ima_iss",
2092  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
2093  .props = AV_CODEC_PROP_LOSSY,
2094  },
2095  {
2096  .id = AV_CODEC_ID_ADPCM_G722,
2097  .type = AVMEDIA_TYPE_AUDIO,
2098  .name = "adpcm_g722",
2099  .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
2100  .props = AV_CODEC_PROP_LOSSY,
2101  },
2102  {
2104  .type = AVMEDIA_TYPE_AUDIO,
2105  .name = "adpcm_ima_apc",
2106  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
2107  .props = AV_CODEC_PROP_LOSSY,
2108  },
2109  {
2110  .id = AV_CODEC_ID_ADPCM_VIMA,
2111  .type = AVMEDIA_TYPE_AUDIO,
2112  .name = "adpcm_vima",
2113  .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
2114  .props = AV_CODEC_PROP_LOSSY,
2115  },
2116  {
2117  .id = AV_CODEC_ID_ADPCM_AFC,
2118  .type = AVMEDIA_TYPE_AUDIO,
2119  .name = "adpcm_afc",
2120  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube AFC"),
2121  .props = AV_CODEC_PROP_LOSSY,
2122  },
2123  {
2125  .type = AVMEDIA_TYPE_AUDIO,
2126  .name = "adpcm_ima_oki",
2127  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Dialogic OKI"),
2128  .props = AV_CODEC_PROP_LOSSY,
2129  },
2130  {
2131  .id = AV_CODEC_ID_ADPCM_DTK,
2132  .type = AVMEDIA_TYPE_AUDIO,
2133  .name = "adpcm_dtk",
2134  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube DTK"),
2135  .props = AV_CODEC_PROP_LOSSY,
2136  },
2137  {
2139  .type = AVMEDIA_TYPE_AUDIO,
2140  .name = "adpcm_ima_rad",
2141  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Radical"),
2142  .props = AV_CODEC_PROP_LOSSY,
2143  },
2144  {
2146  .type = AVMEDIA_TYPE_AUDIO,
2147  .name = "adpcm_g726le",
2148  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM little-endian"),
2149  .props = AV_CODEC_PROP_LOSSY,
2150  },
2151  {
2153  .type = AVMEDIA_TYPE_AUDIO,
2154  .name = "adpcm_thp_le",
2155  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP (Little-Endian)"),
2156  .props = AV_CODEC_PROP_LOSSY,
2157  },
2158  {
2159  .id = AV_CODEC_ID_ADPCM_PSX,
2160  .type = AVMEDIA_TYPE_AUDIO,
2161  .name = "adpcm_psx",
2162  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation"),
2163  .props = AV_CODEC_PROP_LOSSY,
2164  },
2165  {
2166  .id = AV_CODEC_ID_ADPCM_AICA,
2167  .type = AVMEDIA_TYPE_AUDIO,
2168  .name = "adpcm_aica",
2169  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha AICA"),
2170  .props = AV_CODEC_PROP_LOSSY,
2171  },
2172  {
2174  .type = AVMEDIA_TYPE_AUDIO,
2175  .name = "adpcm_ima_dat4",
2176  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Eurocom DAT4"),
2177  .props = AV_CODEC_PROP_LOSSY,
2178  },
2179  {
2180  .id = AV_CODEC_ID_ADPCM_MTAF,
2181  .type = AVMEDIA_TYPE_AUDIO,
2182  .name = "adpcm_mtaf",
2183  .long_name = NULL_IF_CONFIG_SMALL("ADPCM MTAF"),
2184  .props = AV_CODEC_PROP_LOSSY,
2185  },
2186 
2187  /* AMR */
2188  {
2189  .id = AV_CODEC_ID_AMR_NB,
2190  .type = AVMEDIA_TYPE_AUDIO,
2191  .name = "amr_nb",
2192  .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
2193  .props = AV_CODEC_PROP_LOSSY,
2194  },
2195  {
2196  .id = AV_CODEC_ID_AMR_WB,
2197  .type = AVMEDIA_TYPE_AUDIO,
2198  .name = "amr_wb",
2199  .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
2200  .props = AV_CODEC_PROP_LOSSY,
2201  },
2202 
2203  /* RealAudio codecs*/
2204  {
2205  .id = AV_CODEC_ID_RA_144,
2206  .type = AVMEDIA_TYPE_AUDIO,
2207  .name = "ra_144",
2208  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
2209  .props = AV_CODEC_PROP_LOSSY,
2210  },
2211  {
2212  .id = AV_CODEC_ID_RA_288,
2213  .type = AVMEDIA_TYPE_AUDIO,
2214  .name = "ra_288",
2215  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
2216  .props = AV_CODEC_PROP_LOSSY,
2217  },
2218 
2219  /* various DPCM codecs */
2220  {
2221  .id = AV_CODEC_ID_ROQ_DPCM,
2222  .type = AVMEDIA_TYPE_AUDIO,
2223  .name = "roq_dpcm",
2224  .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
2225  .props = AV_CODEC_PROP_LOSSY,
2226  },
2227  {
2229  .type = AVMEDIA_TYPE_AUDIO,
2230  .name = "interplay_dpcm",
2231  .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
2232  .props = AV_CODEC_PROP_LOSSY,
2233  },
2234  {
2235  .id = AV_CODEC_ID_XAN_DPCM,
2236  .type = AVMEDIA_TYPE_AUDIO,
2237  .name = "xan_dpcm",
2238  .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
2239  .props = AV_CODEC_PROP_LOSSY,
2240  },
2241  {
2242  .id = AV_CODEC_ID_SOL_DPCM,
2243  .type = AVMEDIA_TYPE_AUDIO,
2244  .name = "sol_dpcm",
2245  .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
2246  .props = AV_CODEC_PROP_LOSSY,
2247  },
2248  {
2249  .id = AV_CODEC_ID_SDX2_DPCM,
2250  .type = AVMEDIA_TYPE_AUDIO,
2251  .name = "sdx2_dpcm",
2252  .long_name = NULL_IF_CONFIG_SMALL("DPCM Squareroot-Delta-Exact"),
2253  .props = AV_CODEC_PROP_LOSSY,
2254  },
2255  {
2257  .type = AVMEDIA_TYPE_AUDIO,
2258  .name = "gremlin_dpcm",
2259  .long_name = NULL_IF_CONFIG_SMALL("DPCM Gremlin"),
2260  .props = AV_CODEC_PROP_LOSSY,
2261  },
2262 
2263  /* audio codecs */
2264  {
2265  .id = AV_CODEC_ID_MP2,
2266  .type = AVMEDIA_TYPE_AUDIO,
2267  .name = "mp2",
2268  .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
2269  .props = AV_CODEC_PROP_LOSSY,
2270  },
2271  {
2272  .id = AV_CODEC_ID_MP3,
2273  .type = AVMEDIA_TYPE_AUDIO,
2274  .name = "mp3",
2275  .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
2276  .props = AV_CODEC_PROP_LOSSY,
2277  },
2278  {
2279  .id = AV_CODEC_ID_AAC,
2280  .type = AVMEDIA_TYPE_AUDIO,
2281  .name = "aac",
2282  .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
2283  .props = AV_CODEC_PROP_LOSSY,
2285  },
2286  {
2287  .id = AV_CODEC_ID_AC3,
2288  .type = AVMEDIA_TYPE_AUDIO,
2289  .name = "ac3",
2290  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
2291  .props = AV_CODEC_PROP_LOSSY,
2292  },
2293  {
2294  .id = AV_CODEC_ID_DTS,
2295  .type = AVMEDIA_TYPE_AUDIO,
2296  .name = "dts",
2297  .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
2300  },
2301  {
2302  .id = AV_CODEC_ID_VORBIS,
2303  .type = AVMEDIA_TYPE_AUDIO,
2304  .name = "vorbis",
2305  .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
2306  .props = AV_CODEC_PROP_LOSSY,
2307  },
2308  {
2309  .id = AV_CODEC_ID_DVAUDIO,
2310  .type = AVMEDIA_TYPE_AUDIO,
2311  .name = "dvaudio",
2312  .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
2313  .props = AV_CODEC_PROP_LOSSY,
2314  },
2315  {
2316  .id = AV_CODEC_ID_WMAV1,
2317  .type = AVMEDIA_TYPE_AUDIO,
2318  .name = "wmav1",
2319  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
2320  .props = AV_CODEC_PROP_LOSSY,
2321  },
2322  {
2323  .id = AV_CODEC_ID_WMAV2,
2324  .type = AVMEDIA_TYPE_AUDIO,
2325  .name = "wmav2",
2326  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
2327  .props = AV_CODEC_PROP_LOSSY,
2328  },
2329  {
2330  .id = AV_CODEC_ID_MACE3,
2331  .type = AVMEDIA_TYPE_AUDIO,
2332  .name = "mace3",
2333  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
2334  .props = AV_CODEC_PROP_LOSSY,
2335  },
2336  {
2337  .id = AV_CODEC_ID_MACE6,
2338  .type = AVMEDIA_TYPE_AUDIO,
2339  .name = "mace6",
2340  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
2341  .props = AV_CODEC_PROP_LOSSY,
2342  },
2343  {
2344  .id = AV_CODEC_ID_VMDAUDIO,
2345  .type = AVMEDIA_TYPE_AUDIO,
2346  .name = "vmdaudio",
2347  .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
2348  .props = AV_CODEC_PROP_LOSSY,
2349  },
2350  {
2351  .id = AV_CODEC_ID_FLAC,
2352  .type = AVMEDIA_TYPE_AUDIO,
2353  .name = "flac",
2354  .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
2356  },
2357  {
2358  .id = AV_CODEC_ID_MP3ADU,
2359  .type = AVMEDIA_TYPE_AUDIO,
2360  .name = "mp3adu",
2361  .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
2362  .props = AV_CODEC_PROP_LOSSY,
2363  },
2364  {
2365  .id = AV_CODEC_ID_MP3ON4,
2366  .type = AVMEDIA_TYPE_AUDIO,
2367  .name = "mp3on4",
2368  .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
2369  .props = AV_CODEC_PROP_LOSSY,
2370  },
2371  {
2372  .id = AV_CODEC_ID_SHORTEN,
2373  .type = AVMEDIA_TYPE_AUDIO,
2374  .name = "shorten",
2375  .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
2376  .props = AV_CODEC_PROP_LOSSLESS,
2377  },
2378  {
2379  .id = AV_CODEC_ID_ALAC,
2380  .type = AVMEDIA_TYPE_AUDIO,
2381  .name = "alac",
2382  .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
2384  },
2385  {
2387  .type = AVMEDIA_TYPE_AUDIO,
2388  .name = "westwood_snd1",
2389  .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
2390  .props = AV_CODEC_PROP_LOSSY,
2391  },
2392  {
2393  .id = AV_CODEC_ID_GSM,
2394  .type = AVMEDIA_TYPE_AUDIO,
2395  .name = "gsm",
2396  .long_name = NULL_IF_CONFIG_SMALL("GSM"),
2397  .props = AV_CODEC_PROP_LOSSY,
2398  },
2399  {
2400  .id = AV_CODEC_ID_QDM2,
2401  .type = AVMEDIA_TYPE_AUDIO,
2402  .name = "qdm2",
2403  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
2404  .props = AV_CODEC_PROP_LOSSY,
2405  },
2406  {
2407  .id = AV_CODEC_ID_COOK,
2408  .type = AVMEDIA_TYPE_AUDIO,
2409  .name = "cook",
2410  .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
2411  .props = AV_CODEC_PROP_LOSSY,
2412  },
2413  {
2414  .id = AV_CODEC_ID_TRUESPEECH,
2415  .type = AVMEDIA_TYPE_AUDIO,
2416  .name = "truespeech",
2417  .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
2418  .props = AV_CODEC_PROP_LOSSY,
2419  },
2420  {
2421  .id = AV_CODEC_ID_TTA,
2422  .type = AVMEDIA_TYPE_AUDIO,
2423  .name = "tta",
2424  .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
2426  },
2427  {
2428  .id = AV_CODEC_ID_SMACKAUDIO,
2429  .type = AVMEDIA_TYPE_AUDIO,
2430  .name = "smackaudio",
2431  .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
2432  .props = AV_CODEC_PROP_LOSSY,
2433  },
2434  {
2435  .id = AV_CODEC_ID_QCELP,
2436  .type = AVMEDIA_TYPE_AUDIO,
2437  .name = "qcelp",
2438  .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
2439  .props = AV_CODEC_PROP_LOSSY,
2440  },
2441  {
2442  .id = AV_CODEC_ID_WAVPACK,
2443  .type = AVMEDIA_TYPE_AUDIO,
2444  .name = "wavpack",
2445  .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
2446  .props = AV_CODEC_PROP_INTRA_ONLY |
2448  },
2449  {
2451  .type = AVMEDIA_TYPE_AUDIO,
2452  .name = "dsicinaudio",
2453  .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
2454  .props = AV_CODEC_PROP_LOSSY,
2455  },
2456  {
2457  .id = AV_CODEC_ID_IMC,
2458  .type = AVMEDIA_TYPE_AUDIO,
2459  .name = "imc",
2460  .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
2461  .props = AV_CODEC_PROP_LOSSY,
2462  },
2463  {
2464  .id = AV_CODEC_ID_MUSEPACK7,
2465  .type = AVMEDIA_TYPE_AUDIO,
2466  .name = "musepack7",
2467  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
2468  .props = AV_CODEC_PROP_LOSSY,
2469  },
2470  {
2471  .id = AV_CODEC_ID_MLP,
2472  .type = AVMEDIA_TYPE_AUDIO,
2473  .name = "mlp",
2474  .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
2475  .props = AV_CODEC_PROP_LOSSLESS,
2476  },
2477  {
2478  .id = AV_CODEC_ID_GSM_MS,
2479  .type = AVMEDIA_TYPE_AUDIO,
2480  .name = "gsm_ms",
2481  .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
2482  .props = AV_CODEC_PROP_LOSSY,
2483  },
2484  {
2485  .id = AV_CODEC_ID_ATRAC3,
2486  .type = AVMEDIA_TYPE_AUDIO,
2487  .name = "atrac3",
2488  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
2489  .props = AV_CODEC_PROP_LOSSY,
2490  },
2491  {
2492  .id = AV_CODEC_ID_APE,
2493  .type = AVMEDIA_TYPE_AUDIO,
2494  .name = "ape",
2495  .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
2496  .props = AV_CODEC_PROP_LOSSLESS,
2497  },
2498  {
2499  .id = AV_CODEC_ID_NELLYMOSER,
2500  .type = AVMEDIA_TYPE_AUDIO,
2501  .name = "nellymoser",
2502  .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
2503  .props = AV_CODEC_PROP_LOSSY,
2504  },
2505  {
2506  .id = AV_CODEC_ID_MUSEPACK8,
2507  .type = AVMEDIA_TYPE_AUDIO,
2508  .name = "musepack8",
2509  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
2510  .props = AV_CODEC_PROP_LOSSY,
2511  },
2512  {
2513  .id = AV_CODEC_ID_SPEEX,
2514  .type = AVMEDIA_TYPE_AUDIO,
2515  .name = "speex",
2516  .long_name = NULL_IF_CONFIG_SMALL("Speex"),
2517  .props = AV_CODEC_PROP_LOSSY,
2518  },
2519  {
2520  .id = AV_CODEC_ID_WMAVOICE,
2521  .type = AVMEDIA_TYPE_AUDIO,
2522  .name = "wmavoice",
2523  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
2524  .props = AV_CODEC_PROP_LOSSY,
2525  },
2526  {
2527  .id = AV_CODEC_ID_WMAPRO,
2528  .type = AVMEDIA_TYPE_AUDIO,
2529  .name = "wmapro",
2530  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
2531  .props = AV_CODEC_PROP_LOSSY,
2532  },
2533  {
2535  .type = AVMEDIA_TYPE_AUDIO,
2536  .name = "wmalossless",
2537  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
2538  .props = AV_CODEC_PROP_LOSSLESS,
2539  },
2540  {
2541  .id = AV_CODEC_ID_ATRAC3P,
2542  .type = AVMEDIA_TYPE_AUDIO,
2543  .name = "atrac3p",
2544  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
2545  .props = AV_CODEC_PROP_LOSSY,
2546  },
2547  {
2548  .id = AV_CODEC_ID_EAC3,
2549  .type = AVMEDIA_TYPE_AUDIO,
2550  .name = "eac3",
2551  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
2552  .props = AV_CODEC_PROP_LOSSY,
2553  },
2554  {
2555  .id = AV_CODEC_ID_SIPR,
2556  .type = AVMEDIA_TYPE_AUDIO,
2557  .name = "sipr",
2558  .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
2559  .props = AV_CODEC_PROP_LOSSY,
2560  },
2561  {
2562  .id = AV_CODEC_ID_MP1,
2563  .type = AVMEDIA_TYPE_AUDIO,
2564  .name = "mp1",
2565  .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
2566  .props = AV_CODEC_PROP_LOSSY,
2567  },
2568  {
2569  .id = AV_CODEC_ID_TWINVQ,
2570  .type = AVMEDIA_TYPE_AUDIO,
2571  .name = "twinvq",
2572  .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
2573  .props = AV_CODEC_PROP_LOSSY,
2574  },
2575  {
2576  .id = AV_CODEC_ID_TRUEHD,
2577  .type = AVMEDIA_TYPE_AUDIO,
2578  .name = "truehd",
2579  .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
2580  .props = AV_CODEC_PROP_LOSSLESS,
2581  },
2582  {
2583  .id = AV_CODEC_ID_MP4ALS,
2584  .type = AVMEDIA_TYPE_AUDIO,
2585  .name = "mp4als",
2586  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
2587  .props = AV_CODEC_PROP_LOSSLESS,
2588  },
2589  {
2590  .id = AV_CODEC_ID_ATRAC1,
2591  .type = AVMEDIA_TYPE_AUDIO,
2592  .name = "atrac1",
2593  .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
2594  .props = AV_CODEC_PROP_LOSSY,
2595  },
2596  {
2598  .type = AVMEDIA_TYPE_AUDIO,
2599  .name = "binkaudio_rdft",
2600  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
2601  .props = AV_CODEC_PROP_LOSSY,
2602  },
2603  {
2605  .type = AVMEDIA_TYPE_AUDIO,
2606  .name = "binkaudio_dct",
2607  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
2608  .props = AV_CODEC_PROP_LOSSY,
2609  },
2610  {
2611  .id = AV_CODEC_ID_AAC_LATM,
2612  .type = AVMEDIA_TYPE_AUDIO,
2613  .name = "aac_latm",
2614  .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
2615  .props = AV_CODEC_PROP_LOSSY,
2617  },
2618  {
2619  .id = AV_CODEC_ID_QDMC,
2620  .type = AVMEDIA_TYPE_AUDIO,
2621  .name = "qdmc",
2622  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
2623  .props = AV_CODEC_PROP_LOSSY,
2624  },
2625  {
2626  .id = AV_CODEC_ID_CELT,
2627  .type = AVMEDIA_TYPE_AUDIO,
2628  .name = "celt",
2629  .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
2630  .props = AV_CODEC_PROP_LOSSY,
2631  },
2632  {
2633  .id = AV_CODEC_ID_G723_1,
2634  .type = AVMEDIA_TYPE_AUDIO,
2635  .name = "g723_1",
2636  .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
2637  .props = AV_CODEC_PROP_LOSSY,
2638  },
2639  {
2640  .id = AV_CODEC_ID_G729,
2641  .type = AVMEDIA_TYPE_AUDIO,
2642  .name = "g729",
2643  .long_name = NULL_IF_CONFIG_SMALL("G.729"),
2644  .props = AV_CODEC_PROP_LOSSY,
2645  },
2646  {
2647  .id = AV_CODEC_ID_8SVX_EXP,
2648  .type = AVMEDIA_TYPE_AUDIO,
2649  .name = "8svx_exp",
2650  .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
2651  .props = AV_CODEC_PROP_LOSSY,
2652  },
2653  {
2654  .id = AV_CODEC_ID_8SVX_FIB,
2655  .type = AVMEDIA_TYPE_AUDIO,
2656  .name = "8svx_fib",
2657  .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
2658  .props = AV_CODEC_PROP_LOSSY,
2659  },
2660  {
2661  .id = AV_CODEC_ID_BMV_AUDIO,
2662  .type = AVMEDIA_TYPE_AUDIO,
2663  .name = "bmv_audio",
2664  .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
2665  .props = AV_CODEC_PROP_LOSSY,
2666  },
2667  {
2668  .id = AV_CODEC_ID_RALF,
2669  .type = AVMEDIA_TYPE_AUDIO,
2670  .name = "ralf",
2671  .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
2672  .props = AV_CODEC_PROP_LOSSLESS,
2673  },
2674  {
2675  .id = AV_CODEC_ID_IAC,
2676  .type = AVMEDIA_TYPE_AUDIO,
2677  .name = "iac",
2678  .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
2679  .props = AV_CODEC_PROP_LOSSY,
2680  },
2681  {
2682  .id = AV_CODEC_ID_ILBC,
2683  .type = AVMEDIA_TYPE_AUDIO,
2684  .name = "ilbc",
2685  .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
2686  .props = AV_CODEC_PROP_LOSSY,
2687  },
2688  {
2689  .id = AV_CODEC_ID_OPUS,
2690  .type = AVMEDIA_TYPE_AUDIO,
2691  .name = "opus",
2692  .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
2693  .props = AV_CODEC_PROP_LOSSY,
2694  },
2695  {
2697  .type = AVMEDIA_TYPE_AUDIO,
2698  .name = "comfortnoise",
2699  .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
2700  .props = AV_CODEC_PROP_LOSSY,
2701  },
2702  {
2703  .id = AV_CODEC_ID_TAK,
2704  .type = AVMEDIA_TYPE_AUDIO,
2705  .name = "tak",
2706  .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
2708  },
2709  {
2710  .id = AV_CODEC_ID_METASOUND,
2711  .type = AVMEDIA_TYPE_AUDIO,
2712  .name = "metasound",
2713  .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
2714  .props = AV_CODEC_PROP_LOSSY,
2715  },
2716  {
2717  .id = AV_CODEC_ID_PAF_AUDIO,
2718  .type = AVMEDIA_TYPE_AUDIO,
2719  .name = "paf_audio",
2720  .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
2721  .props = AV_CODEC_PROP_LOSSY,
2722  },
2723  {
2724  .id = AV_CODEC_ID_ON2AVC,
2725  .type = AVMEDIA_TYPE_AUDIO,
2726  .name = "avc",
2727  .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
2728  .props = AV_CODEC_PROP_LOSSY,
2729  },
2730  {
2731  .id = AV_CODEC_ID_DSS_SP,
2732  .type = AVMEDIA_TYPE_AUDIO,
2733  .name = "dss_sp",
2734  .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
2735  .props = AV_CODEC_PROP_LOSSY,
2736  },
2737  {
2738  .id = AV_CODEC_ID_CODEC2,
2739  .type = AVMEDIA_TYPE_AUDIO,
2740  .name = "codec2",
2741  .long_name = NULL_IF_CONFIG_SMALL("codec2 (very low bitrate speech codec)"),
2742  .props = AV_CODEC_PROP_LOSSY,
2743  },
2744  {
2746  .type = AVMEDIA_TYPE_AUDIO,
2747  .name = "wavesynth",
2748  .long_name = NULL_IF_CONFIG_SMALL("Wave synthesis pseudo-codec"),
2749  },
2750  {
2751  .id = AV_CODEC_ID_SONIC,
2752  .type = AVMEDIA_TYPE_AUDIO,
2753  .name = "sonic",
2754  .long_name = NULL_IF_CONFIG_SMALL("Sonic"),
2755  },
2756  {
2757  .id = AV_CODEC_ID_SONIC_LS,
2758  .type = AVMEDIA_TYPE_AUDIO,
2759  .name = "sonicls",
2760  .long_name = NULL_IF_CONFIG_SMALL("Sonic lossless"),
2761  },
2762  {
2763  .id = AV_CODEC_ID_EVRC,
2764  .type = AVMEDIA_TYPE_AUDIO,
2765  .name = "evrc",
2766  .long_name = NULL_IF_CONFIG_SMALL("EVRC (Enhanced Variable Rate Codec)"),
2767  .props = AV_CODEC_PROP_LOSSY,
2768  },
2769  {
2770  .id = AV_CODEC_ID_SMV,
2771  .type = AVMEDIA_TYPE_AUDIO,
2772  .name = "smv",
2773  .long_name = NULL_IF_CONFIG_SMALL("SMV (Selectable Mode Vocoder)"),
2774  .props = AV_CODEC_PROP_LOSSY,
2775  },
2776  {
2777  .id = AV_CODEC_ID_DSD_LSBF,
2778  .type = AVMEDIA_TYPE_AUDIO,
2779  .name = "dsd_lsbf",
2780  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first"),
2781  .props = AV_CODEC_PROP_LOSSY,
2782  },
2783  {
2784  .id = AV_CODEC_ID_DSD_MSBF,
2785  .type = AVMEDIA_TYPE_AUDIO,
2786  .name = "dsd_msbf",
2787  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first"),
2788  .props = AV_CODEC_PROP_LOSSY,
2789  },
2790  {
2792  .type = AVMEDIA_TYPE_AUDIO,
2793  .name = "dsd_lsbf_planar",
2794  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first, planar"),
2795  .props = AV_CODEC_PROP_LOSSY,
2796  },
2797  {
2799  .type = AVMEDIA_TYPE_AUDIO,
2800  .name = "dsd_msbf_planar",
2801  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first, planar"),
2802  .props = AV_CODEC_PROP_LOSSY,
2803  },
2804  {
2805  .id = AV_CODEC_ID_4GV,
2806  .type = AVMEDIA_TYPE_AUDIO,
2807  .name = "4gv",
2808  .long_name = NULL_IF_CONFIG_SMALL("4GV (Fourth Generation Vocoder)"),
2809  .props = AV_CODEC_PROP_LOSSY,
2810  },
2811  {
2813  .type = AVMEDIA_TYPE_AUDIO,
2814  .name = "interplayacm",
2815  .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"),
2816  .props = AV_CODEC_PROP_LOSSY,
2817  },
2818  {
2819  .id = AV_CODEC_ID_XMA1,
2820  .type = AVMEDIA_TYPE_AUDIO,
2821  .name = "xma1",
2822  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 1"),
2823  .props = AV_CODEC_PROP_LOSSY,
2824  },
2825  {
2826  .id = AV_CODEC_ID_XMA2,
2827  .type = AVMEDIA_TYPE_AUDIO,
2828  .name = "xma2",
2829  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 2"),
2830  .props = AV_CODEC_PROP_LOSSY,
2831  },
2832  {
2833  .id = AV_CODEC_ID_DST,
2834  .type = AVMEDIA_TYPE_AUDIO,
2835  .name = "dst",
2836  .long_name = NULL_IF_CONFIG_SMALL("DST (Direct Stream Transfer)"),
2837  .props = AV_CODEC_PROP_LOSSLESS,
2838  },
2839  {
2840  .id = AV_CODEC_ID_ATRAC3AL,
2841  .type = AVMEDIA_TYPE_AUDIO,
2842  .name = "atrac3al",
2843  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)"),
2844  .props = AV_CODEC_PROP_LOSSLESS,
2845  },
2846  {
2847  .id = AV_CODEC_ID_ATRAC3PAL,
2848  .type = AVMEDIA_TYPE_AUDIO,
2849  .name = "atrac3pal",
2850  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless)"),
2851  .props = AV_CODEC_PROP_LOSSLESS,
2852  },
2853  {
2854  .id = AV_CODEC_ID_DOLBY_E,
2855  .type = AVMEDIA_TYPE_AUDIO,
2856  .name = "dolby_e",
2857  .long_name = NULL_IF_CONFIG_SMALL("Dolby E"),
2858  .props = AV_CODEC_PROP_LOSSY,
2859  },
2860  {
2861  .id = AV_CODEC_ID_APTX,
2862  .type = AVMEDIA_TYPE_AUDIO,
2863  .name = "aptx",
2864  .long_name = NULL_IF_CONFIG_SMALL("aptX (Audio Processing Technology for Bluetooth)"),
2865  .props = AV_CODEC_PROP_LOSSY,
2866  },
2867  {
2868  .id = AV_CODEC_ID_APTX_HD,
2869  .type = AVMEDIA_TYPE_AUDIO,
2870  .name = "aptx_hd",
2871  .long_name = NULL_IF_CONFIG_SMALL("aptX HD (Audio Processing Technology for Bluetooth)"),
2872  .props = AV_CODEC_PROP_LOSSY,
2873  },
2874  {
2875  .id = AV_CODEC_ID_SBC,
2876  .type = AVMEDIA_TYPE_AUDIO,
2877  .name = "sbc",
2878  .long_name = NULL_IF_CONFIG_SMALL("SBC (low-complexity subband codec)"),
2879  .props = AV_CODEC_PROP_LOSSY,
2880  },
2881 
2882  /* subtitle codecs */
2883  {
2885  .type = AVMEDIA_TYPE_SUBTITLE,
2886  .name = "dvd_subtitle",
2887  .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
2888  .props = AV_CODEC_PROP_BITMAP_SUB,
2889  },
2890  {
2892  .type = AVMEDIA_TYPE_SUBTITLE,
2893  .name = "dvb_subtitle",
2894  .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
2895  .props = AV_CODEC_PROP_BITMAP_SUB,
2896  },
2897  {
2898  .id = AV_CODEC_ID_TEXT,
2899  .type = AVMEDIA_TYPE_SUBTITLE,
2900  .name = "text",
2901  .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
2902  .props = AV_CODEC_PROP_TEXT_SUB,
2903  },
2904  {
2905  .id = AV_CODEC_ID_XSUB,
2906  .type = AVMEDIA_TYPE_SUBTITLE,
2907  .name = "xsub",
2908  .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
2909  .props = AV_CODEC_PROP_BITMAP_SUB,
2910  },
2911  {
2912  .id = AV_CODEC_ID_SSA,
2913  .type = AVMEDIA_TYPE_SUBTITLE,
2914  .name = "ssa",
2915  .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"),
2916  .props = AV_CODEC_PROP_TEXT_SUB,
2917  },
2918  {
2919  .id = AV_CODEC_ID_MOV_TEXT,
2920  .type = AVMEDIA_TYPE_SUBTITLE,
2921  .name = "mov_text",
2922  .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
2923  .props = AV_CODEC_PROP_TEXT_SUB,
2924  },
2925  {
2927  .type = AVMEDIA_TYPE_SUBTITLE,
2928  .name = "hdmv_pgs_subtitle",
2929  .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
2930  .props = AV_CODEC_PROP_BITMAP_SUB,
2931  },
2932  {
2934  .type = AVMEDIA_TYPE_SUBTITLE,
2935  .name = "dvb_teletext",
2936  .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
2937  },
2938  {
2939  .id = AV_CODEC_ID_SRT,
2940  .type = AVMEDIA_TYPE_SUBTITLE,
2941  .name = "srt",
2942  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle with embedded timing"),
2943  .props = AV_CODEC_PROP_TEXT_SUB,
2944  },
2945  {
2946  .id = AV_CODEC_ID_MICRODVD,
2947  .type = AVMEDIA_TYPE_SUBTITLE,
2948  .name = "microdvd",
2949  .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle"),
2950  .props = AV_CODEC_PROP_TEXT_SUB,
2951  },
2952  {
2953  .id = AV_CODEC_ID_EIA_608,
2954  .type = AVMEDIA_TYPE_SUBTITLE,
2955  .name = "eia_608",
2956  .long_name = NULL_IF_CONFIG_SMALL("EIA-608 closed captions"),
2957  .props = AV_CODEC_PROP_TEXT_SUB,
2958  },
2959  {
2960  .id = AV_CODEC_ID_JACOSUB,
2961  .type = AVMEDIA_TYPE_SUBTITLE,
2962  .name = "jacosub",
2963  .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
2964  .props = AV_CODEC_PROP_TEXT_SUB,
2965  },
2966  {
2967  .id = AV_CODEC_ID_SAMI,
2968  .type = AVMEDIA_TYPE_SUBTITLE,
2969  .name = "sami",
2970  .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle"),
2971  .props = AV_CODEC_PROP_TEXT_SUB,
2972  },
2973  {
2974  .id = AV_CODEC_ID_REALTEXT,
2975  .type = AVMEDIA_TYPE_SUBTITLE,
2976  .name = "realtext",
2977  .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle"),
2978  .props = AV_CODEC_PROP_TEXT_SUB,
2979  },
2980  {
2981  .id = AV_CODEC_ID_STL,
2982  .type = AVMEDIA_TYPE_SUBTITLE,
2983  .name = "stl",
2984  .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"),
2985  .props = AV_CODEC_PROP_TEXT_SUB,
2986  },
2987  {
2988  .id = AV_CODEC_ID_SUBVIEWER1,
2989  .type = AVMEDIA_TYPE_SUBTITLE,
2990  .name = "subviewer1",
2991  .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle"),
2992  .props = AV_CODEC_PROP_TEXT_SUB,
2993  },
2994  {
2995  .id = AV_CODEC_ID_SUBVIEWER,
2996  .type = AVMEDIA_TYPE_SUBTITLE,
2997  .name = "subviewer",
2998  .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle"),
2999  .props = AV_CODEC_PROP_TEXT_SUB,
3000  },
3001  {
3002  .id = AV_CODEC_ID_SUBRIP,
3003  .type = AVMEDIA_TYPE_SUBTITLE,
3004  .name = "subrip",
3005  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"),
3006  .props = AV_CODEC_PROP_TEXT_SUB,
3007  },
3008  {
3009  .id = AV_CODEC_ID_WEBVTT,
3010  .type = AVMEDIA_TYPE_SUBTITLE,
3011  .name = "webvtt",
3012  .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
3013  .props = AV_CODEC_PROP_TEXT_SUB,
3014  },
3015  {
3016  .id = AV_CODEC_ID_MPL2,
3017  .type = AVMEDIA_TYPE_SUBTITLE,
3018  .name = "mpl2",
3019  .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitle"),
3020  .props = AV_CODEC_PROP_TEXT_SUB,
3021  },
3022  {
3023  .id = AV_CODEC_ID_VPLAYER,
3024  .type = AVMEDIA_TYPE_SUBTITLE,
3025  .name = "vplayer",
3026  .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"),
3027  .props = AV_CODEC_PROP_TEXT_SUB,
3028  },
3029  {
3030  .id = AV_CODEC_ID_PJS,
3031  .type = AVMEDIA_TYPE_SUBTITLE,
3032  .name = "pjs",
3033  .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitle"),
3034  .props = AV_CODEC_PROP_TEXT_SUB,
3035  },
3036  {
3037  .id = AV_CODEC_ID_ASS,
3038  .type = AVMEDIA_TYPE_SUBTITLE,
3039  .name = "ass",
3040  .long_name = NULL_IF_CONFIG_SMALL("ASS (Advanced SSA) subtitle"),
3041  .props = AV_CODEC_PROP_TEXT_SUB,
3042  },
3043  {
3045  .type = AVMEDIA_TYPE_SUBTITLE,
3046  .name = "hdmv_text_subtitle",
3047  .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
3048  .props = AV_CODEC_PROP_TEXT_SUB,
3049  },
3050  {
3051  .id = AV_CODEC_ID_TTML,
3052  .type = AVMEDIA_TYPE_SUBTITLE,
3053  .name = "ttml",
3054  .long_name = NULL_IF_CONFIG_SMALL("Timed Text Markup Language"),
3055  .props = AV_CODEC_PROP_TEXT_SUB,
3056  },
3057 
3058 
3059  /* other kind of codecs and pseudo-codecs */
3060  {
3061  .id = AV_CODEC_ID_TTF,
3062  .type = AVMEDIA_TYPE_DATA,
3063  .name = "ttf",
3064  .long_name = NULL_IF_CONFIG_SMALL("TrueType font"),
3065  .mime_types= MT("application/x-truetype-font", "application/x-font"),
3066  },
3067  {
3068  .id = AV_CODEC_ID_SCTE_35,
3069  .type = AVMEDIA_TYPE_DATA,
3070  .name = "scte_35",
3071  .long_name = NULL_IF_CONFIG_SMALL("SCTE 35 Message Queue"),
3072  },
3073  {
3074  .id = AV_CODEC_ID_BINTEXT,
3075  .type = AVMEDIA_TYPE_VIDEO,
3076  .name = "bintext",
3077  .long_name = NULL_IF_CONFIG_SMALL("Binary text"),
3078  .props = AV_CODEC_PROP_INTRA_ONLY,
3079  },
3080  {
3081  .id = AV_CODEC_ID_XBIN,
3082  .type = AVMEDIA_TYPE_VIDEO,
3083  .name = "xbin",
3084  .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text"),
3085  .props = AV_CODEC_PROP_INTRA_ONLY,
3086  },
3087  {
3088  .id = AV_CODEC_ID_IDF,
3089  .type = AVMEDIA_TYPE_VIDEO,
3090  .name = "idf",
3091  .long_name = NULL_IF_CONFIG_SMALL("iCEDraw text"),
3092  .props = AV_CODEC_PROP_INTRA_ONLY,
3093  },
3094  {
3095  .id = AV_CODEC_ID_OTF,
3096  .type = AVMEDIA_TYPE_DATA,
3097  .name = "otf",
3098  .long_name = NULL_IF_CONFIG_SMALL("OpenType font"),
3099  .mime_types= MT("application/vnd.ms-opentype"),
3100  },
3101  {
3102  .id = AV_CODEC_ID_SMPTE_KLV,
3103  .type = AVMEDIA_TYPE_DATA,
3104  .name = "klv",
3105  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 336M Key-Length-Value (KLV) metadata"),
3106  },
3107  {
3108  .id = AV_CODEC_ID_DVD_NAV,
3109  .type = AVMEDIA_TYPE_DATA,
3110  .name = "dvd_nav_packet",
3111  .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"),
3112  },
3113  {
3114  .id = AV_CODEC_ID_TIMED_ID3,
3115  .type = AVMEDIA_TYPE_DATA,
3116  .name = "timed_id3",
3117  .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"),
3118  },
3119  {
3120  .id = AV_CODEC_ID_BIN_DATA,
3121  .type = AVMEDIA_TYPE_DATA,
3122  .name = "bin_data",
3123  .long_name = NULL_IF_CONFIG_SMALL("binary data"),
3124  .mime_types= MT("application/octet-stream"),
3125  },
3126  {
3128  .type = AVMEDIA_TYPE_VIDEO,
3129  .name = "wrapped_avframe",
3130  .long_name = NULL_IF_CONFIG_SMALL("AVFrame to AVPacket passthrough"),
3131  .props = AV_CODEC_PROP_LOSSLESS,
3132  },
3133 };
3134 
3135 static int descriptor_compare(const void *key, const void *member)
3136 {
3137  enum AVCodecID id = *(const enum AVCodecID *) key;
3138  const AVCodecDescriptor *desc = member;
3139 
3140  return id - desc->id;
3141 }
3142 
3144 {
3145  return bsearch(&id, codec_descriptors, FF_ARRAY_ELEMS(codec_descriptors),
3146  sizeof(codec_descriptors[0]), descriptor_compare);
3147 }
3148 
3150 {
3151  if (!prev)
3152  return &codec_descriptors[0];
3153  if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
3154  return prev + 1;
3155  return NULL;
3156 }
3157 
3159 {
3160  const AVCodecDescriptor *desc = NULL;
3161 
3162  while ((desc = avcodec_descriptor_next(desc)))
3163  if (!strcmp(desc->name, name))
3164  return desc;
3165  return NULL;
3166 }
3167 
3169 {
3170  const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id);
3171  return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN;
3172 }
#define AV_CODEC_PROP_REORDER
Codec supports frame reordering.
Definition: avcodec.h:754
#define NULL
Definition: coverity.c:32
#define AV_CODEC_PROP_INTRA_ONLY
Codec uses only intra compression.
Definition: avcodec.h:734
#define AV_CODEC_PROP_LOSSY
Codec supports lossy compression.
Definition: avcodec.h:740
const char * desc
Definition: nvenc.c:65
const AVProfile ff_aac_profiles[]
Definition: profiles.c:26
#define AV_CODEC_PROP_TEXT_SUB
Subtitle codec is text based.
Definition: avcodec.h:764
Contain timestamp estimated through PCR of program stream.
Definition: avcodec.h:674
#define MT(...)
Definition: codec_desc.c:30
const char * key
const AVProfile ff_mpeg4_video_profiles[]
Definition: profiles.c:106
const AVCodecDescriptor * avcodec_descriptor_next(const AVCodecDescriptor *prev)
Iterate over all codec descriptors known to libavcodec.
Definition: codec_desc.c:3149
Opaque data information usually continuous.
Definition: avutil.h:203
const AVProfile ff_dnxhd_profiles[]
Definition: profiles.c:48
#define AV_CODEC_PROP_LOSSLESS
Codec supports lossless compression.
Definition: avcodec.h:744
const AVProfile ff_hevc_profiles[]
Definition: profiles.c:77
Libavcodec version macros.
AVCodecID
Identify the syntax and semantics of the bitstream.
Definition: avcodec.h:215
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
preferred ID for decoding MPEG audio layer 1, 2 or 3
Definition: avcodec.h:552
enum AVMediaType avcodec_get_type(enum AVCodecID codec_id)
Get the type of the given codec.
Definition: codec_desc.c:3168
const AVCodecDescriptor * avcodec_descriptor_get(enum AVCodecID id)
Definition: codec_desc.c:3143
common internal API header
const AVProfile ff_mpeg2_video_profiles[]
Definition: profiles.c:94
enum AVCodecID codec_id
Definition: vaapi_decode.c:362
Usually treated as AVMEDIA_TYPE_DATA.
Definition: avutil.h:200
Passthrough codec, AVFrames wrapped in AVPacket.
Definition: avcodec.h:692
preferred ID for MPEG-1/2 video decoding
Definition: avcodec.h:220
const AVCodecDescriptor * avcodec_descriptor_get_by_name(const char *name)
Definition: codec_desc.c:3158
#define FF_ARRAY_ELEMS(a)
Libavcodec external API header.
const AVProfile ff_av1_profiles[]
Definition: profiles.c:142
#define AV_CODEC_PROP_BITMAP_SUB
Subtitle codec is bitmap based Decoded AVSubtitle data can be read from the AVSubtitleRect->pict fiel...
Definition: avcodec.h:759
AVMediaType
Definition: avutil.h:199
const char * name
Name of the codec described by this descriptor.
Definition: avcodec.h:708
This struct describes the properties of a single codec described by an AVCodecID. ...
Definition: avcodec.h:700
static const AVCodecDescriptor codec_descriptors[]
Definition: codec_desc.c:32
const AVProfile ff_dca_profiles[]
Definition: profiles.c:38
enum AVMediaType type
Definition: avcodec.h:702
const AVProfile ff_vc1_profiles[]
Definition: profiles.c:126
common internal and external API header
raw UTF-8 text
Definition: avcodec.h:645
const AVProfile ff_h264_profiles[]
Definition: profiles.c:58
enum AVCodecID id
Definition: avcodec.h:701
static int descriptor_compare(const void *key, const void *member)
Definition: codec_desc.c:3135
as in Berlin toast format
Definition: avcodec.h:569
const AVProfile ff_vp9_profiles[]
Definition: profiles.c:134
const AVProfile ff_jpeg2000_profiles[]
Definition: profiles.c:85
const char * name
Definition: opengl_enc.c:103