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_AVS2,
1399  .type = AVMEDIA_TYPE_VIDEO,
1400  .name = "avs2",
1401  .long_name = NULL_IF_CONFIG_SMALL("AVS2-P2/IEEE1857.4"),
1402  .props = AV_CODEC_PROP_LOSSY,
1403  },
1404  {
1405  .id = AV_CODEC_ID_Y41P,
1406  .type = AVMEDIA_TYPE_VIDEO,
1407  .name = "y41p",
1408  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed YUV 4:1:1 12-bit"),
1410  },
1411  {
1412  .id = AV_CODEC_ID_AVRP,
1413  .type = AVMEDIA_TYPE_VIDEO,
1414  .name = "avrp",
1415  .long_name = NULL_IF_CONFIG_SMALL("Avid 1:1 10-bit RGB Packer"),
1417  },
1418  {
1419  .id = AV_CODEC_ID_012V,
1420  .type = AVMEDIA_TYPE_VIDEO,
1421  .name = "012v",
1422  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
1424  },
1425  {
1426  .id = AV_CODEC_ID_AVUI,
1427  .type = AVMEDIA_TYPE_VIDEO,
1428  .name = "avui",
1429  .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
1431  },
1432  {
1433  .id = AV_CODEC_ID_AYUV,
1434  .type = AVMEDIA_TYPE_VIDEO,
1435  .name = "ayuv",
1436  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"),
1438  },
1439  {
1440  .id = AV_CODEC_ID_TARGA_Y216,
1441  .type = AVMEDIA_TYPE_VIDEO,
1442  .name = "targa_y216",
1443  .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"),
1445  },
1446  {
1447  .id = AV_CODEC_ID_V308,
1448  .type = AVMEDIA_TYPE_VIDEO,
1449  .name = "v308",
1450  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"),
1452  },
1453  {
1454  .id = AV_CODEC_ID_V408,
1455  .type = AVMEDIA_TYPE_VIDEO,
1456  .name = "v408",
1457  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed QT 4:4:4:4"),
1459  },
1460  {
1461  .id = AV_CODEC_ID_YUV4,
1462  .type = AVMEDIA_TYPE_VIDEO,
1463  .name = "yuv4",
1464  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:2:0"),
1466  },
1467  {
1468  .id = AV_CODEC_ID_AVRN,
1469  .type = AVMEDIA_TYPE_VIDEO,
1470  .name = "avrn",
1471  .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"),
1472  },
1473  {
1474  .id = AV_CODEC_ID_CPIA,
1475  .type = AVMEDIA_TYPE_VIDEO,
1476  .name = "cpia",
1477  .long_name = NULL_IF_CONFIG_SMALL("CPiA video format"),
1478  },
1479  {
1480  .id = AV_CODEC_ID_XFACE,
1481  .type = AVMEDIA_TYPE_VIDEO,
1482  .name = "xface",
1483  .long_name = NULL_IF_CONFIG_SMALL("X-face image"),
1485  },
1486  {
1487  .id = AV_CODEC_ID_SNOW,
1488  .type = AVMEDIA_TYPE_VIDEO,
1489  .name = "snow",
1490  .long_name = NULL_IF_CONFIG_SMALL("Snow"),
1492  },
1493  {
1494  .id = AV_CODEC_ID_SMVJPEG,
1495  .type = AVMEDIA_TYPE_VIDEO,
1496  .name = "smvjpeg",
1497  .long_name = NULL_IF_CONFIG_SMALL("Sigmatel Motion Video"),
1498  },
1499  {
1500  .id = AV_CODEC_ID_APNG,
1501  .type = AVMEDIA_TYPE_VIDEO,
1502  .name = "apng",
1503  .long_name = NULL_IF_CONFIG_SMALL("APNG (Animated Portable Network Graphics) image"),
1504  .props = AV_CODEC_PROP_LOSSLESS,
1505  .mime_types= MT("image/png"),
1506  },
1507  {
1508  .id = AV_CODEC_ID_DAALA,
1509  .type = AVMEDIA_TYPE_VIDEO,
1510  .name = "daala",
1511  .long_name = NULL_IF_CONFIG_SMALL("Daala"),
1513  },
1514  {
1515  .id = AV_CODEC_ID_CFHD,
1516  .type = AVMEDIA_TYPE_VIDEO,
1517  .name = "cfhd",
1518  .long_name = NULL_IF_CONFIG_SMALL("Cineform HD"),
1519  .props = AV_CODEC_PROP_LOSSY,
1520  },
1521  {
1523  .type = AVMEDIA_TYPE_VIDEO,
1524  .name = "truemotion2rt",
1525  .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 2.0 Real Time"),
1527  },
1528  {
1529  .id = AV_CODEC_ID_M101,
1530  .type = AVMEDIA_TYPE_VIDEO,
1531  .name = "m101",
1532  .long_name = NULL_IF_CONFIG_SMALL("Matrox Uncompressed SD"),
1534  },
1535  {
1536  .id = AV_CODEC_ID_MAGICYUV,
1537  .type = AVMEDIA_TYPE_VIDEO,
1538  .name = "magicyuv",
1539  .long_name = NULL_IF_CONFIG_SMALL("MagicYUV video"),
1541  },
1542  {
1543  .id = AV_CODEC_ID_SHEERVIDEO,
1544  .type = AVMEDIA_TYPE_VIDEO,
1545  .name = "sheervideo",
1546  .long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
1548  },
1549  {
1550  .id = AV_CODEC_ID_YLC,
1551  .type = AVMEDIA_TYPE_VIDEO,
1552  .name = "ylc",
1553  .long_name = NULL_IF_CONFIG_SMALL("YUY2 Lossless Codec"),
1555  },
1556  {
1557  .id = AV_CODEC_ID_PSD,
1558  .type = AVMEDIA_TYPE_VIDEO,
1559  .name = "psd",
1560  .long_name = NULL_IF_CONFIG_SMALL("Photoshop PSD file"),
1562  },
1563  {
1564  .id = AV_CODEC_ID_PIXLET,
1565  .type = AVMEDIA_TYPE_VIDEO,
1566  .name = "pixlet",
1567  .long_name = NULL_IF_CONFIG_SMALL("Apple Pixlet"),
1569  },
1570  {
1571  .id = AV_CODEC_ID_SPEEDHQ,
1572  .type = AVMEDIA_TYPE_VIDEO,
1573  .name = "speedhq",
1574  .long_name = NULL_IF_CONFIG_SMALL("NewTek SpeedHQ"),
1576  },
1577  {
1578  .id = AV_CODEC_ID_FMVC,
1579  .type = AVMEDIA_TYPE_VIDEO,
1580  .name = "fmvc",
1581  .long_name = NULL_IF_CONFIG_SMALL("FM Screen Capture Codec"),
1582  .props = AV_CODEC_PROP_LOSSLESS,
1583  },
1584  {
1585  .id = AV_CODEC_ID_SCPR,
1586  .type = AVMEDIA_TYPE_VIDEO,
1587  .name = "scpr",
1588  .long_name = NULL_IF_CONFIG_SMALL("ScreenPressor"),
1590  },
1591  {
1592  .id = AV_CODEC_ID_CLEARVIDEO,
1593  .type = AVMEDIA_TYPE_VIDEO,
1594  .name = "clearvideo",
1595  .long_name = NULL_IF_CONFIG_SMALL("Iterated Systems ClearVideo"),
1596  .props = AV_CODEC_PROP_LOSSY,
1597  },
1598  {
1599  .id = AV_CODEC_ID_XPM,
1600  .type = AVMEDIA_TYPE_VIDEO,
1601  .name = "xpm",
1602  .long_name = NULL_IF_CONFIG_SMALL("XPM (X PixMap) image"),
1604  .mime_types= MT("image/x-xpixmap"),
1605  },
1606  {
1607  .id = AV_CODEC_ID_AV1,
1608  .type = AVMEDIA_TYPE_VIDEO,
1609  .name = "av1",
1610  .long_name = NULL_IF_CONFIG_SMALL("Alliance for Open Media AV1"),
1611  .props = AV_CODEC_PROP_LOSSY,
1613  },
1614  {
1615  .id = AV_CODEC_ID_BITPACKED,
1616  .type = AVMEDIA_TYPE_VIDEO,
1617  .name = "bitpacked",
1618  .long_name = NULL_IF_CONFIG_SMALL("Bitpacked"),
1620  },
1621  {
1622  .id = AV_CODEC_ID_MSCC,
1623  .type = AVMEDIA_TYPE_VIDEO,
1624  .name = "mscc",
1625  .long_name = NULL_IF_CONFIG_SMALL("Mandsoft Screen Capture Codec"),
1627  },
1628  {
1629  .id = AV_CODEC_ID_SRGC,
1630  .type = AVMEDIA_TYPE_VIDEO,
1631  .name = "srgc",
1632  .long_name = NULL_IF_CONFIG_SMALL("Screen Recorder Gold Codec"),
1634  },
1635  {
1636  .id = AV_CODEC_ID_SVG,
1637  .type = AVMEDIA_TYPE_VIDEO,
1638  .name = "svg",
1639  .long_name = NULL_IF_CONFIG_SMALL("Scalable Vector Graphics"),
1640  .props = AV_CODEC_PROP_LOSSLESS,
1641  .mime_types= MT("image/svg+xml"),
1642  },
1643  {
1644  .id = AV_CODEC_ID_GDV,
1645  .type = AVMEDIA_TYPE_VIDEO,
1646  .name = "gdv",
1647  .long_name = NULL_IF_CONFIG_SMALL("Gremlin Digital Video"),
1648  .props = AV_CODEC_PROP_LOSSY,
1649  },
1650  {
1651  .id = AV_CODEC_ID_FITS,
1652  .type = AVMEDIA_TYPE_VIDEO,
1653  .name = "fits",
1654  .long_name = NULL_IF_CONFIG_SMALL("FITS (Flexible Image Transport System)"),
1656  },
1657  {
1658  .id = AV_CODEC_ID_IMM4,
1659  .type = AVMEDIA_TYPE_VIDEO,
1660  .name = "imm4",
1661  .long_name = NULL_IF_CONFIG_SMALL("Infinity IMM4"),
1662  .props = AV_CODEC_PROP_LOSSY,
1663  },
1664  {
1665  .id = AV_CODEC_ID_PROSUMER,
1666  .type = AVMEDIA_TYPE_VIDEO,
1667  .name = "prosumer",
1668  .long_name = NULL_IF_CONFIG_SMALL("Brooktree ProSumer Video"),
1670  },
1671  {
1672  .id = AV_CODEC_ID_MWSC,
1673  .type = AVMEDIA_TYPE_VIDEO,
1674  .name = "mwsc",
1675  .long_name = NULL_IF_CONFIG_SMALL("MatchWare Screen Capture Codec"),
1676  .props = AV_CODEC_PROP_LOSSLESS,
1677  },
1678  {
1679  .id = AV_CODEC_ID_WCMV,
1680  .type = AVMEDIA_TYPE_VIDEO,
1681  .name = "wcmv",
1682  .long_name = NULL_IF_CONFIG_SMALL("WinCAM Motion Video"),
1683  .props = AV_CODEC_PROP_LOSSLESS,
1684  },
1685  {
1686  .id = AV_CODEC_ID_RASC,
1687  .type = AVMEDIA_TYPE_VIDEO,
1688  .name = "rasc",
1689  .long_name = NULL_IF_CONFIG_SMALL("RemotelyAnywhere Screen Capture"),
1690  .props = AV_CODEC_PROP_LOSSY,
1691  },
1692 
1693  /* various PCM "codecs" */
1694  {
1695  .id = AV_CODEC_ID_PCM_S16LE,
1696  .type = AVMEDIA_TYPE_AUDIO,
1697  .name = "pcm_s16le",
1698  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
1699  .props = AV_CODEC_PROP_LOSSLESS,
1700  },
1701  {
1702  .id = AV_CODEC_ID_PCM_S16BE,
1703  .type = AVMEDIA_TYPE_AUDIO,
1704  .name = "pcm_s16be",
1705  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
1706  .props = AV_CODEC_PROP_LOSSLESS,
1707  },
1708  {
1709  .id = AV_CODEC_ID_PCM_U16LE,
1710  .type = AVMEDIA_TYPE_AUDIO,
1711  .name = "pcm_u16le",
1712  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
1713  .props = AV_CODEC_PROP_LOSSLESS,
1714  },
1715  {
1716  .id = AV_CODEC_ID_PCM_U16BE,
1717  .type = AVMEDIA_TYPE_AUDIO,
1718  .name = "pcm_u16be",
1719  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
1720  .props = AV_CODEC_PROP_LOSSLESS,
1721  },
1722  {
1723  .id = AV_CODEC_ID_PCM_S8,
1724  .type = AVMEDIA_TYPE_AUDIO,
1725  .name = "pcm_s8",
1726  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
1727  .props = AV_CODEC_PROP_LOSSLESS,
1728  },
1729  {
1730  .id = AV_CODEC_ID_PCM_U8,
1731  .type = AVMEDIA_TYPE_AUDIO,
1732  .name = "pcm_u8",
1733  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
1734  .props = AV_CODEC_PROP_LOSSLESS,
1735  },
1736  {
1737  .id = AV_CODEC_ID_PCM_MULAW,
1738  .type = AVMEDIA_TYPE_AUDIO,
1739  .name = "pcm_mulaw",
1740  .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law / G.711 mu-law"),
1741  .props = AV_CODEC_PROP_LOSSY,
1742  },
1743  {
1744  .id = AV_CODEC_ID_PCM_ALAW,
1745  .type = AVMEDIA_TYPE_AUDIO,
1746  .name = "pcm_alaw",
1747  .long_name = NULL_IF_CONFIG_SMALL("PCM A-law / G.711 A-law"),
1748  .props = AV_CODEC_PROP_LOSSY,
1749  },
1750  {
1751  .id = AV_CODEC_ID_PCM_S32LE,
1752  .type = AVMEDIA_TYPE_AUDIO,
1753  .name = "pcm_s32le",
1754  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
1755  .props = AV_CODEC_PROP_LOSSLESS,
1756  },
1757  {
1758  .id = AV_CODEC_ID_PCM_S32BE,
1759  .type = AVMEDIA_TYPE_AUDIO,
1760  .name = "pcm_s32be",
1761  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
1762  .props = AV_CODEC_PROP_LOSSLESS,
1763  },
1764  {
1765  .id = AV_CODEC_ID_PCM_U32LE,
1766  .type = AVMEDIA_TYPE_AUDIO,
1767  .name = "pcm_u32le",
1768  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
1769  .props = AV_CODEC_PROP_LOSSLESS,
1770  },
1771  {
1772  .id = AV_CODEC_ID_PCM_U32BE,
1773  .type = AVMEDIA_TYPE_AUDIO,
1774  .name = "pcm_u32be",
1775  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
1776  .props = AV_CODEC_PROP_LOSSLESS,
1777  },
1778  {
1779  .id = AV_CODEC_ID_PCM_S24LE,
1780  .type = AVMEDIA_TYPE_AUDIO,
1781  .name = "pcm_s24le",
1782  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
1783  .props = AV_CODEC_PROP_LOSSLESS,
1784  },
1785  {
1786  .id = AV_CODEC_ID_PCM_S24BE,
1787  .type = AVMEDIA_TYPE_AUDIO,
1788  .name = "pcm_s24be",
1789  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
1790  .props = AV_CODEC_PROP_LOSSLESS,
1791  },
1792  {
1793  .id = AV_CODEC_ID_PCM_U24LE,
1794  .type = AVMEDIA_TYPE_AUDIO,
1795  .name = "pcm_u24le",
1796  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
1797  .props = AV_CODEC_PROP_LOSSLESS,
1798  },
1799  {
1800  .id = AV_CODEC_ID_PCM_U24BE,
1801  .type = AVMEDIA_TYPE_AUDIO,
1802  .name = "pcm_u24be",
1803  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
1804  .props = AV_CODEC_PROP_LOSSLESS,
1805  },
1806  {
1808  .type = AVMEDIA_TYPE_AUDIO,
1809  .name = "pcm_s24daud",
1810  .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
1811  .props = AV_CODEC_PROP_LOSSLESS,
1812  },
1813  {
1814  .id = AV_CODEC_ID_PCM_ZORK,
1815  .type = AVMEDIA_TYPE_AUDIO,
1816  .name = "pcm_zork",
1817  .long_name = NULL_IF_CONFIG_SMALL("PCM Zork"),
1818  .props = AV_CODEC_PROP_LOSSY,
1819  },
1820  {
1822  .type = AVMEDIA_TYPE_AUDIO,
1823  .name = "pcm_s16le_planar",
1824  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian planar"),
1825  .props = AV_CODEC_PROP_LOSSLESS,
1826  },
1827  {
1828  .id = AV_CODEC_ID_PCM_DVD,
1829  .type = AVMEDIA_TYPE_AUDIO,
1830  .name = "pcm_dvd",
1831  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20|24-bit big-endian"),
1832  .props = AV_CODEC_PROP_LOSSLESS,
1833  },
1834  {
1835  .id = AV_CODEC_ID_PCM_F32BE,
1836  .type = AVMEDIA_TYPE_AUDIO,
1837  .name = "pcm_f32be",
1838  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
1839  .props = AV_CODEC_PROP_LOSSLESS,
1840  },
1841  {
1842  .id = AV_CODEC_ID_PCM_F32LE,
1843  .type = AVMEDIA_TYPE_AUDIO,
1844  .name = "pcm_f32le",
1845  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
1846  .props = AV_CODEC_PROP_LOSSLESS,
1847  },
1848  {
1849  .id = AV_CODEC_ID_PCM_F64BE,
1850  .type = AVMEDIA_TYPE_AUDIO,
1851  .name = "pcm_f64be",
1852  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
1853  .props = AV_CODEC_PROP_LOSSLESS,
1854  },
1855  {
1856  .id = AV_CODEC_ID_PCM_F64LE,
1857  .type = AVMEDIA_TYPE_AUDIO,
1858  .name = "pcm_f64le",
1859  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
1860  .props = AV_CODEC_PROP_LOSSLESS,
1861  },
1862  {
1863  .id = AV_CODEC_ID_PCM_BLURAY,
1864  .type = AVMEDIA_TYPE_AUDIO,
1865  .name = "pcm_bluray",
1866  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
1867  .props = AV_CODEC_PROP_LOSSLESS,
1868  },
1869  {
1870  .id = AV_CODEC_ID_PCM_LXF,
1871  .type = AVMEDIA_TYPE_AUDIO,
1872  .name = "pcm_lxf",
1873  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
1874  .props = AV_CODEC_PROP_LOSSLESS,
1875  },
1876  {
1877  .id = AV_CODEC_ID_S302M,
1878  .type = AVMEDIA_TYPE_AUDIO,
1879  .name = "s302m",
1880  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
1881  .props = AV_CODEC_PROP_LOSSLESS,
1882  },
1883  {
1885  .type = AVMEDIA_TYPE_AUDIO,
1886  .name = "pcm_s8_planar",
1887  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
1888  .props = AV_CODEC_PROP_LOSSLESS,
1889  },
1890  {
1892  .type = AVMEDIA_TYPE_AUDIO,
1893  .name = "pcm_s24le_planar",
1894  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
1895  .props = AV_CODEC_PROP_LOSSLESS,
1896  },
1897  {
1899  .type = AVMEDIA_TYPE_AUDIO,
1900  .name = "pcm_s32le_planar",
1901  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
1902  .props = AV_CODEC_PROP_LOSSLESS,
1903  },
1904  {
1906  .type = AVMEDIA_TYPE_AUDIO,
1907  .name = "pcm_s16be_planar",
1908  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
1909  .props = AV_CODEC_PROP_LOSSLESS,
1910  },
1911  {
1912  .id = AV_CODEC_ID_PCM_S64LE,
1913  .type = AVMEDIA_TYPE_AUDIO,
1914  .name = "pcm_s64le",
1915  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit little-endian"),
1916  .props = AV_CODEC_PROP_LOSSLESS,
1917  },
1918  {
1919  .id = AV_CODEC_ID_PCM_S64BE,
1920  .type = AVMEDIA_TYPE_AUDIO,
1921  .name = "pcm_s64be",
1922  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 64-bit big-endian"),
1923  .props = AV_CODEC_PROP_LOSSLESS,
1924  },
1925  {
1926  .id = AV_CODEC_ID_PCM_F16LE,
1927  .type = AVMEDIA_TYPE_AUDIO,
1928  .name = "pcm_f16le",
1929  .long_name = NULL_IF_CONFIG_SMALL("PCM 16.8 floating point little-endian"),
1930  .props = AV_CODEC_PROP_LOSSLESS,
1931  },
1932  {
1933  .id = AV_CODEC_ID_PCM_F24LE,
1934  .type = AVMEDIA_TYPE_AUDIO,
1935  .name = "pcm_f24le",
1936  .long_name = NULL_IF_CONFIG_SMALL("PCM 24.0 floating point little-endian"),
1937  .props = AV_CODEC_PROP_LOSSLESS,
1938  },
1939 
1940  /* various ADPCM codecs */
1941  {
1943  .type = AVMEDIA_TYPE_AUDIO,
1944  .name = "adpcm_ima_qt",
1945  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
1946  .props = AV_CODEC_PROP_LOSSY,
1947  },
1948  {
1950  .type = AVMEDIA_TYPE_AUDIO,
1951  .name = "adpcm_ima_wav",
1952  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
1953  .props = AV_CODEC_PROP_LOSSY,
1954  },
1955  {
1957  .type = AVMEDIA_TYPE_AUDIO,
1958  .name = "adpcm_ima_dk3",
1959  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
1960  .props = AV_CODEC_PROP_LOSSY,
1961  },
1962  {
1964  .type = AVMEDIA_TYPE_AUDIO,
1965  .name = "adpcm_ima_dk4",
1966  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
1967  .props = AV_CODEC_PROP_LOSSY,
1968  },
1969  {
1971  .type = AVMEDIA_TYPE_AUDIO,
1972  .name = "adpcm_ima_ws",
1973  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
1974  .props = AV_CODEC_PROP_LOSSY,
1975  },
1976  {
1978  .type = AVMEDIA_TYPE_AUDIO,
1979  .name = "adpcm_ima_smjpeg",
1980  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
1981  .props = AV_CODEC_PROP_LOSSY,
1982  },
1983  {
1984  .id = AV_CODEC_ID_ADPCM_MS,
1985  .type = AVMEDIA_TYPE_AUDIO,
1986  .name = "adpcm_ms",
1987  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
1988  .props = AV_CODEC_PROP_LOSSY,
1989  },
1990  {
1991  .id = AV_CODEC_ID_ADPCM_4XM,
1992  .type = AVMEDIA_TYPE_AUDIO,
1993  .name = "adpcm_4xm",
1994  .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
1995  .props = AV_CODEC_PROP_LOSSY,
1996  },
1997  {
1998  .id = AV_CODEC_ID_ADPCM_XA,
1999  .type = AVMEDIA_TYPE_AUDIO,
2000  .name = "adpcm_xa",
2001  .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
2002  .props = AV_CODEC_PROP_LOSSY,
2003  },
2004  {
2005  .id = AV_CODEC_ID_ADPCM_ADX,
2006  .type = AVMEDIA_TYPE_AUDIO,
2007  .name = "adpcm_adx",
2008  .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
2009  .props = AV_CODEC_PROP_LOSSY,
2010  },
2011  {
2012  .id = AV_CODEC_ID_ADPCM_EA,
2013  .type = AVMEDIA_TYPE_AUDIO,
2014  .name = "adpcm_ea",
2015  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
2016  .props = AV_CODEC_PROP_LOSSY,
2017  },
2018  {
2019  .id = AV_CODEC_ID_ADPCM_G726,
2020  .type = AVMEDIA_TYPE_AUDIO,
2021  .name = "adpcm_g726",
2022  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
2023  .props = AV_CODEC_PROP_LOSSY,
2024  },
2025  {
2026  .id = AV_CODEC_ID_ADPCM_CT,
2027  .type = AVMEDIA_TYPE_AUDIO,
2028  .name = "adpcm_ct",
2029  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
2030  .props = AV_CODEC_PROP_LOSSY,
2031  },
2032  {
2033  .id = AV_CODEC_ID_ADPCM_SWF,
2034  .type = AVMEDIA_TYPE_AUDIO,
2035  .name = "adpcm_swf",
2036  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
2037  .props = AV_CODEC_PROP_LOSSY,
2038  },
2039  {
2041  .type = AVMEDIA_TYPE_AUDIO,
2042  .name = "adpcm_yamaha",
2043  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
2044  .props = AV_CODEC_PROP_LOSSY,
2045  },
2046  {
2048  .type = AVMEDIA_TYPE_AUDIO,
2049  .name = "adpcm_sbpro_4",
2050  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
2051  .props = AV_CODEC_PROP_LOSSY,
2052  },
2053  {
2055  .type = AVMEDIA_TYPE_AUDIO,
2056  .name = "adpcm_sbpro_3",
2057  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
2058  .props = AV_CODEC_PROP_LOSSY,
2059  },
2060  {
2062  .type = AVMEDIA_TYPE_AUDIO,
2063  .name = "adpcm_sbpro_2",
2064  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
2065  .props = AV_CODEC_PROP_LOSSY,
2066  },
2067  {
2068  .id = AV_CODEC_ID_ADPCM_THP,
2069  .type = AVMEDIA_TYPE_AUDIO,
2070  .name = "adpcm_thp",
2071  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP"),
2072  .props = AV_CODEC_PROP_LOSSY,
2073  },
2074  {
2076  .type = AVMEDIA_TYPE_AUDIO,
2077  .name = "adpcm_ima_amv",
2078  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
2079  .props = AV_CODEC_PROP_LOSSY,
2080  },
2081  {
2083  .type = AVMEDIA_TYPE_AUDIO,
2084  .name = "adpcm_ea_r1",
2085  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
2086  .props = AV_CODEC_PROP_LOSSY,
2087  },
2088  {
2090  .type = AVMEDIA_TYPE_AUDIO,
2091  .name = "adpcm_ea_r3",
2092  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
2093  .props = AV_CODEC_PROP_LOSSY,
2094  },
2095  {
2097  .type = AVMEDIA_TYPE_AUDIO,
2098  .name = "adpcm_ea_r2",
2099  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
2100  .props = AV_CODEC_PROP_LOSSY,
2101  },
2102  {
2104  .type = AVMEDIA_TYPE_AUDIO,
2105  .name = "adpcm_ima_ea_sead",
2106  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
2107  .props = AV_CODEC_PROP_LOSSY,
2108  },
2109  {
2111  .type = AVMEDIA_TYPE_AUDIO,
2112  .name = "adpcm_ima_ea_eacs",
2113  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
2114  .props = AV_CODEC_PROP_LOSSY,
2115  },
2116  {
2118  .type = AVMEDIA_TYPE_AUDIO,
2119  .name = "adpcm_ea_xas",
2120  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
2121  .props = AV_CODEC_PROP_LOSSY,
2122  },
2123  {
2125  .type = AVMEDIA_TYPE_AUDIO,
2126  .name = "adpcm_ea_maxis_xa",
2127  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
2128  .props = AV_CODEC_PROP_LOSSY,
2129  },
2130  {
2132  .type = AVMEDIA_TYPE_AUDIO,
2133  .name = "adpcm_ima_iss",
2134  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
2135  .props = AV_CODEC_PROP_LOSSY,
2136  },
2137  {
2138  .id = AV_CODEC_ID_ADPCM_G722,
2139  .type = AVMEDIA_TYPE_AUDIO,
2140  .name = "adpcm_g722",
2141  .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
2142  .props = AV_CODEC_PROP_LOSSY,
2143  },
2144  {
2146  .type = AVMEDIA_TYPE_AUDIO,
2147  .name = "adpcm_ima_apc",
2148  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
2149  .props = AV_CODEC_PROP_LOSSY,
2150  },
2151  {
2152  .id = AV_CODEC_ID_ADPCM_VIMA,
2153  .type = AVMEDIA_TYPE_AUDIO,
2154  .name = "adpcm_vima",
2155  .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
2156  .props = AV_CODEC_PROP_LOSSY,
2157  },
2158  {
2159  .id = AV_CODEC_ID_ADPCM_AFC,
2160  .type = AVMEDIA_TYPE_AUDIO,
2161  .name = "adpcm_afc",
2162  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube AFC"),
2163  .props = AV_CODEC_PROP_LOSSY,
2164  },
2165  {
2167  .type = AVMEDIA_TYPE_AUDIO,
2168  .name = "adpcm_ima_oki",
2169  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Dialogic OKI"),
2170  .props = AV_CODEC_PROP_LOSSY,
2171  },
2172  {
2173  .id = AV_CODEC_ID_ADPCM_DTK,
2174  .type = AVMEDIA_TYPE_AUDIO,
2175  .name = "adpcm_dtk",
2176  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube DTK"),
2177  .props = AV_CODEC_PROP_LOSSY,
2178  },
2179  {
2181  .type = AVMEDIA_TYPE_AUDIO,
2182  .name = "adpcm_ima_rad",
2183  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Radical"),
2184  .props = AV_CODEC_PROP_LOSSY,
2185  },
2186  {
2188  .type = AVMEDIA_TYPE_AUDIO,
2189  .name = "adpcm_g726le",
2190  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM little-endian"),
2191  .props = AV_CODEC_PROP_LOSSY,
2192  },
2193  {
2195  .type = AVMEDIA_TYPE_AUDIO,
2196  .name = "adpcm_thp_le",
2197  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP (Little-Endian)"),
2198  .props = AV_CODEC_PROP_LOSSY,
2199  },
2200  {
2201  .id = AV_CODEC_ID_ADPCM_PSX,
2202  .type = AVMEDIA_TYPE_AUDIO,
2203  .name = "adpcm_psx",
2204  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation"),
2205  .props = AV_CODEC_PROP_LOSSY,
2206  },
2207  {
2208  .id = AV_CODEC_ID_ADPCM_AICA,
2209  .type = AVMEDIA_TYPE_AUDIO,
2210  .name = "adpcm_aica",
2211  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha AICA"),
2212  .props = AV_CODEC_PROP_LOSSY,
2213  },
2214  {
2216  .type = AVMEDIA_TYPE_AUDIO,
2217  .name = "adpcm_ima_dat4",
2218  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Eurocom DAT4"),
2219  .props = AV_CODEC_PROP_LOSSY,
2220  },
2221  {
2222  .id = AV_CODEC_ID_ADPCM_MTAF,
2223  .type = AVMEDIA_TYPE_AUDIO,
2224  .name = "adpcm_mtaf",
2225  .long_name = NULL_IF_CONFIG_SMALL("ADPCM MTAF"),
2226  .props = AV_CODEC_PROP_LOSSY,
2227  },
2228 
2229  /* AMR */
2230  {
2231  .id = AV_CODEC_ID_AMR_NB,
2232  .type = AVMEDIA_TYPE_AUDIO,
2233  .name = "amr_nb",
2234  .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
2235  .props = AV_CODEC_PROP_LOSSY,
2236  },
2237  {
2238  .id = AV_CODEC_ID_AMR_WB,
2239  .type = AVMEDIA_TYPE_AUDIO,
2240  .name = "amr_wb",
2241  .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
2242  .props = AV_CODEC_PROP_LOSSY,
2243  },
2244 
2245  /* RealAudio codecs*/
2246  {
2247  .id = AV_CODEC_ID_RA_144,
2248  .type = AVMEDIA_TYPE_AUDIO,
2249  .name = "ra_144",
2250  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
2251  .props = AV_CODEC_PROP_LOSSY,
2252  },
2253  {
2254  .id = AV_CODEC_ID_RA_288,
2255  .type = AVMEDIA_TYPE_AUDIO,
2256  .name = "ra_288",
2257  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
2258  .props = AV_CODEC_PROP_LOSSY,
2259  },
2260 
2261  /* various DPCM codecs */
2262  {
2263  .id = AV_CODEC_ID_ROQ_DPCM,
2264  .type = AVMEDIA_TYPE_AUDIO,
2265  .name = "roq_dpcm",
2266  .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
2267  .props = AV_CODEC_PROP_LOSSY,
2268  },
2269  {
2271  .type = AVMEDIA_TYPE_AUDIO,
2272  .name = "interplay_dpcm",
2273  .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
2274  .props = AV_CODEC_PROP_LOSSY,
2275  },
2276  {
2277  .id = AV_CODEC_ID_XAN_DPCM,
2278  .type = AVMEDIA_TYPE_AUDIO,
2279  .name = "xan_dpcm",
2280  .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
2281  .props = AV_CODEC_PROP_LOSSY,
2282  },
2283  {
2284  .id = AV_CODEC_ID_SOL_DPCM,
2285  .type = AVMEDIA_TYPE_AUDIO,
2286  .name = "sol_dpcm",
2287  .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
2288  .props = AV_CODEC_PROP_LOSSY,
2289  },
2290  {
2291  .id = AV_CODEC_ID_SDX2_DPCM,
2292  .type = AVMEDIA_TYPE_AUDIO,
2293  .name = "sdx2_dpcm",
2294  .long_name = NULL_IF_CONFIG_SMALL("DPCM Squareroot-Delta-Exact"),
2295  .props = AV_CODEC_PROP_LOSSY,
2296  },
2297  {
2299  .type = AVMEDIA_TYPE_AUDIO,
2300  .name = "gremlin_dpcm",
2301  .long_name = NULL_IF_CONFIG_SMALL("DPCM Gremlin"),
2302  .props = AV_CODEC_PROP_LOSSY,
2303  },
2304 
2305  /* audio codecs */
2306  {
2307  .id = AV_CODEC_ID_MP2,
2308  .type = AVMEDIA_TYPE_AUDIO,
2309  .name = "mp2",
2310  .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
2311  .props = AV_CODEC_PROP_LOSSY,
2312  },
2313  {
2314  .id = AV_CODEC_ID_MP3,
2315  .type = AVMEDIA_TYPE_AUDIO,
2316  .name = "mp3",
2317  .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
2318  .props = AV_CODEC_PROP_LOSSY,
2319  },
2320  {
2321  .id = AV_CODEC_ID_AAC,
2322  .type = AVMEDIA_TYPE_AUDIO,
2323  .name = "aac",
2324  .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
2325  .props = AV_CODEC_PROP_LOSSY,
2327  },
2328  {
2329  .id = AV_CODEC_ID_AC3,
2330  .type = AVMEDIA_TYPE_AUDIO,
2331  .name = "ac3",
2332  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
2333  .props = AV_CODEC_PROP_LOSSY,
2334  },
2335  {
2336  .id = AV_CODEC_ID_DTS,
2337  .type = AVMEDIA_TYPE_AUDIO,
2338  .name = "dts",
2339  .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
2342  },
2343  {
2344  .id = AV_CODEC_ID_VORBIS,
2345  .type = AVMEDIA_TYPE_AUDIO,
2346  .name = "vorbis",
2347  .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
2348  .props = AV_CODEC_PROP_LOSSY,
2349  },
2350  {
2351  .id = AV_CODEC_ID_DVAUDIO,
2352  .type = AVMEDIA_TYPE_AUDIO,
2353  .name = "dvaudio",
2354  .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
2355  .props = AV_CODEC_PROP_LOSSY,
2356  },
2357  {
2358  .id = AV_CODEC_ID_WMAV1,
2359  .type = AVMEDIA_TYPE_AUDIO,
2360  .name = "wmav1",
2361  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
2362  .props = AV_CODEC_PROP_LOSSY,
2363  },
2364  {
2365  .id = AV_CODEC_ID_WMAV2,
2366  .type = AVMEDIA_TYPE_AUDIO,
2367  .name = "wmav2",
2368  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
2369  .props = AV_CODEC_PROP_LOSSY,
2370  },
2371  {
2372  .id = AV_CODEC_ID_MACE3,
2373  .type = AVMEDIA_TYPE_AUDIO,
2374  .name = "mace3",
2375  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
2376  .props = AV_CODEC_PROP_LOSSY,
2377  },
2378  {
2379  .id = AV_CODEC_ID_MACE6,
2380  .type = AVMEDIA_TYPE_AUDIO,
2381  .name = "mace6",
2382  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
2383  .props = AV_CODEC_PROP_LOSSY,
2384  },
2385  {
2386  .id = AV_CODEC_ID_VMDAUDIO,
2387  .type = AVMEDIA_TYPE_AUDIO,
2388  .name = "vmdaudio",
2389  .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
2390  .props = AV_CODEC_PROP_LOSSY,
2391  },
2392  {
2393  .id = AV_CODEC_ID_FLAC,
2394  .type = AVMEDIA_TYPE_AUDIO,
2395  .name = "flac",
2396  .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
2398  },
2399  {
2400  .id = AV_CODEC_ID_MP3ADU,
2401  .type = AVMEDIA_TYPE_AUDIO,
2402  .name = "mp3adu",
2403  .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
2404  .props = AV_CODEC_PROP_LOSSY,
2405  },
2406  {
2407  .id = AV_CODEC_ID_MP3ON4,
2408  .type = AVMEDIA_TYPE_AUDIO,
2409  .name = "mp3on4",
2410  .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
2411  .props = AV_CODEC_PROP_LOSSY,
2412  },
2413  {
2414  .id = AV_CODEC_ID_SHORTEN,
2415  .type = AVMEDIA_TYPE_AUDIO,
2416  .name = "shorten",
2417  .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
2418  .props = AV_CODEC_PROP_LOSSLESS,
2419  },
2420  {
2421  .id = AV_CODEC_ID_ALAC,
2422  .type = AVMEDIA_TYPE_AUDIO,
2423  .name = "alac",
2424  .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
2426  },
2427  {
2429  .type = AVMEDIA_TYPE_AUDIO,
2430  .name = "westwood_snd1",
2431  .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
2432  .props = AV_CODEC_PROP_LOSSY,
2433  },
2434  {
2435  .id = AV_CODEC_ID_GSM,
2436  .type = AVMEDIA_TYPE_AUDIO,
2437  .name = "gsm",
2438  .long_name = NULL_IF_CONFIG_SMALL("GSM"),
2439  .props = AV_CODEC_PROP_LOSSY,
2440  },
2441  {
2442  .id = AV_CODEC_ID_QDM2,
2443  .type = AVMEDIA_TYPE_AUDIO,
2444  .name = "qdm2",
2445  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
2446  .props = AV_CODEC_PROP_LOSSY,
2447  },
2448  {
2449  .id = AV_CODEC_ID_COOK,
2450  .type = AVMEDIA_TYPE_AUDIO,
2451  .name = "cook",
2452  .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
2453  .props = AV_CODEC_PROP_LOSSY,
2454  },
2455  {
2456  .id = AV_CODEC_ID_TRUESPEECH,
2457  .type = AVMEDIA_TYPE_AUDIO,
2458  .name = "truespeech",
2459  .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
2460  .props = AV_CODEC_PROP_LOSSY,
2461  },
2462  {
2463  .id = AV_CODEC_ID_TTA,
2464  .type = AVMEDIA_TYPE_AUDIO,
2465  .name = "tta",
2466  .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
2468  },
2469  {
2470  .id = AV_CODEC_ID_SMACKAUDIO,
2471  .type = AVMEDIA_TYPE_AUDIO,
2472  .name = "smackaudio",
2473  .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
2474  .props = AV_CODEC_PROP_LOSSY,
2475  },
2476  {
2477  .id = AV_CODEC_ID_QCELP,
2478  .type = AVMEDIA_TYPE_AUDIO,
2479  .name = "qcelp",
2480  .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
2481  .props = AV_CODEC_PROP_LOSSY,
2482  },
2483  {
2484  .id = AV_CODEC_ID_WAVPACK,
2485  .type = AVMEDIA_TYPE_AUDIO,
2486  .name = "wavpack",
2487  .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
2488  .props = AV_CODEC_PROP_INTRA_ONLY |
2490  },
2491  {
2493  .type = AVMEDIA_TYPE_AUDIO,
2494  .name = "dsicinaudio",
2495  .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
2496  .props = AV_CODEC_PROP_LOSSY,
2497  },
2498  {
2499  .id = AV_CODEC_ID_IMC,
2500  .type = AVMEDIA_TYPE_AUDIO,
2501  .name = "imc",
2502  .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
2503  .props = AV_CODEC_PROP_LOSSY,
2504  },
2505  {
2506  .id = AV_CODEC_ID_MUSEPACK7,
2507  .type = AVMEDIA_TYPE_AUDIO,
2508  .name = "musepack7",
2509  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
2510  .props = AV_CODEC_PROP_LOSSY,
2511  },
2512  {
2513  .id = AV_CODEC_ID_MLP,
2514  .type = AVMEDIA_TYPE_AUDIO,
2515  .name = "mlp",
2516  .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
2517  .props = AV_CODEC_PROP_LOSSLESS,
2518  },
2519  {
2520  .id = AV_CODEC_ID_GSM_MS,
2521  .type = AVMEDIA_TYPE_AUDIO,
2522  .name = "gsm_ms",
2523  .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
2524  .props = AV_CODEC_PROP_LOSSY,
2525  },
2526  {
2527  .id = AV_CODEC_ID_ATRAC3,
2528  .type = AVMEDIA_TYPE_AUDIO,
2529  .name = "atrac3",
2530  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
2531  .props = AV_CODEC_PROP_LOSSY,
2532  },
2533  {
2534  .id = AV_CODEC_ID_APE,
2535  .type = AVMEDIA_TYPE_AUDIO,
2536  .name = "ape",
2537  .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
2538  .props = AV_CODEC_PROP_LOSSLESS,
2539  },
2540  {
2541  .id = AV_CODEC_ID_NELLYMOSER,
2542  .type = AVMEDIA_TYPE_AUDIO,
2543  .name = "nellymoser",
2544  .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
2545  .props = AV_CODEC_PROP_LOSSY,
2546  },
2547  {
2548  .id = AV_CODEC_ID_MUSEPACK8,
2549  .type = AVMEDIA_TYPE_AUDIO,
2550  .name = "musepack8",
2551  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
2552  .props = AV_CODEC_PROP_LOSSY,
2553  },
2554  {
2555  .id = AV_CODEC_ID_SPEEX,
2556  .type = AVMEDIA_TYPE_AUDIO,
2557  .name = "speex",
2558  .long_name = NULL_IF_CONFIG_SMALL("Speex"),
2559  .props = AV_CODEC_PROP_LOSSY,
2560  },
2561  {
2562  .id = AV_CODEC_ID_WMAVOICE,
2563  .type = AVMEDIA_TYPE_AUDIO,
2564  .name = "wmavoice",
2565  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
2566  .props = AV_CODEC_PROP_LOSSY,
2567  },
2568  {
2569  .id = AV_CODEC_ID_WMAPRO,
2570  .type = AVMEDIA_TYPE_AUDIO,
2571  .name = "wmapro",
2572  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
2573  .props = AV_CODEC_PROP_LOSSY,
2574  },
2575  {
2577  .type = AVMEDIA_TYPE_AUDIO,
2578  .name = "wmalossless",
2579  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
2580  .props = AV_CODEC_PROP_LOSSLESS,
2581  },
2582  {
2583  .id = AV_CODEC_ID_ATRAC3P,
2584  .type = AVMEDIA_TYPE_AUDIO,
2585  .name = "atrac3p",
2586  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
2587  .props = AV_CODEC_PROP_LOSSY,
2588  },
2589  {
2590  .id = AV_CODEC_ID_EAC3,
2591  .type = AVMEDIA_TYPE_AUDIO,
2592  .name = "eac3",
2593  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
2594  .props = AV_CODEC_PROP_LOSSY,
2595  },
2596  {
2597  .id = AV_CODEC_ID_SIPR,
2598  .type = AVMEDIA_TYPE_AUDIO,
2599  .name = "sipr",
2600  .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
2601  .props = AV_CODEC_PROP_LOSSY,
2602  },
2603  {
2604  .id = AV_CODEC_ID_MP1,
2605  .type = AVMEDIA_TYPE_AUDIO,
2606  .name = "mp1",
2607  .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
2608  .props = AV_CODEC_PROP_LOSSY,
2609  },
2610  {
2611  .id = AV_CODEC_ID_TWINVQ,
2612  .type = AVMEDIA_TYPE_AUDIO,
2613  .name = "twinvq",
2614  .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
2615  .props = AV_CODEC_PROP_LOSSY,
2616  },
2617  {
2618  .id = AV_CODEC_ID_TRUEHD,
2619  .type = AVMEDIA_TYPE_AUDIO,
2620  .name = "truehd",
2621  .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
2622  .props = AV_CODEC_PROP_LOSSLESS,
2623  },
2624  {
2625  .id = AV_CODEC_ID_MP4ALS,
2626  .type = AVMEDIA_TYPE_AUDIO,
2627  .name = "mp4als",
2628  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
2629  .props = AV_CODEC_PROP_LOSSLESS,
2630  },
2631  {
2632  .id = AV_CODEC_ID_ATRAC1,
2633  .type = AVMEDIA_TYPE_AUDIO,
2634  .name = "atrac1",
2635  .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
2636  .props = AV_CODEC_PROP_LOSSY,
2637  },
2638  {
2640  .type = AVMEDIA_TYPE_AUDIO,
2641  .name = "binkaudio_rdft",
2642  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
2643  .props = AV_CODEC_PROP_LOSSY,
2644  },
2645  {
2647  .type = AVMEDIA_TYPE_AUDIO,
2648  .name = "binkaudio_dct",
2649  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
2650  .props = AV_CODEC_PROP_LOSSY,
2651  },
2652  {
2653  .id = AV_CODEC_ID_AAC_LATM,
2654  .type = AVMEDIA_TYPE_AUDIO,
2655  .name = "aac_latm",
2656  .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
2657  .props = AV_CODEC_PROP_LOSSY,
2659  },
2660  {
2661  .id = AV_CODEC_ID_QDMC,
2662  .type = AVMEDIA_TYPE_AUDIO,
2663  .name = "qdmc",
2664  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
2665  .props = AV_CODEC_PROP_LOSSY,
2666  },
2667  {
2668  .id = AV_CODEC_ID_CELT,
2669  .type = AVMEDIA_TYPE_AUDIO,
2670  .name = "celt",
2671  .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
2672  .props = AV_CODEC_PROP_LOSSY,
2673  },
2674  {
2675  .id = AV_CODEC_ID_G723_1,
2676  .type = AVMEDIA_TYPE_AUDIO,
2677  .name = "g723_1",
2678  .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
2679  .props = AV_CODEC_PROP_LOSSY,
2680  },
2681  {
2682  .id = AV_CODEC_ID_G729,
2683  .type = AVMEDIA_TYPE_AUDIO,
2684  .name = "g729",
2685  .long_name = NULL_IF_CONFIG_SMALL("G.729"),
2686  .props = AV_CODEC_PROP_LOSSY,
2687  },
2688  {
2689  .id = AV_CODEC_ID_8SVX_EXP,
2690  .type = AVMEDIA_TYPE_AUDIO,
2691  .name = "8svx_exp",
2692  .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
2693  .props = AV_CODEC_PROP_LOSSY,
2694  },
2695  {
2696  .id = AV_CODEC_ID_8SVX_FIB,
2697  .type = AVMEDIA_TYPE_AUDIO,
2698  .name = "8svx_fib",
2699  .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
2700  .props = AV_CODEC_PROP_LOSSY,
2701  },
2702  {
2703  .id = AV_CODEC_ID_BMV_AUDIO,
2704  .type = AVMEDIA_TYPE_AUDIO,
2705  .name = "bmv_audio",
2706  .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
2707  .props = AV_CODEC_PROP_LOSSY,
2708  },
2709  {
2710  .id = AV_CODEC_ID_RALF,
2711  .type = AVMEDIA_TYPE_AUDIO,
2712  .name = "ralf",
2713  .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
2714  .props = AV_CODEC_PROP_LOSSLESS,
2715  },
2716  {
2717  .id = AV_CODEC_ID_IAC,
2718  .type = AVMEDIA_TYPE_AUDIO,
2719  .name = "iac",
2720  .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
2721  .props = AV_CODEC_PROP_LOSSY,
2722  },
2723  {
2724  .id = AV_CODEC_ID_ILBC,
2725  .type = AVMEDIA_TYPE_AUDIO,
2726  .name = "ilbc",
2727  .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
2728  .props = AV_CODEC_PROP_LOSSY,
2729  },
2730  {
2731  .id = AV_CODEC_ID_OPUS,
2732  .type = AVMEDIA_TYPE_AUDIO,
2733  .name = "opus",
2734  .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
2735  .props = AV_CODEC_PROP_LOSSY,
2736  },
2737  {
2739  .type = AVMEDIA_TYPE_AUDIO,
2740  .name = "comfortnoise",
2741  .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
2742  .props = AV_CODEC_PROP_LOSSY,
2743  },
2744  {
2745  .id = AV_CODEC_ID_TAK,
2746  .type = AVMEDIA_TYPE_AUDIO,
2747  .name = "tak",
2748  .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
2750  },
2751  {
2752  .id = AV_CODEC_ID_METASOUND,
2753  .type = AVMEDIA_TYPE_AUDIO,
2754  .name = "metasound",
2755  .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
2756  .props = AV_CODEC_PROP_LOSSY,
2757  },
2758  {
2759  .id = AV_CODEC_ID_PAF_AUDIO,
2760  .type = AVMEDIA_TYPE_AUDIO,
2761  .name = "paf_audio",
2762  .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
2763  .props = AV_CODEC_PROP_LOSSY,
2764  },
2765  {
2766  .id = AV_CODEC_ID_ON2AVC,
2767  .type = AVMEDIA_TYPE_AUDIO,
2768  .name = "avc",
2769  .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
2770  .props = AV_CODEC_PROP_LOSSY,
2771  },
2772  {
2773  .id = AV_CODEC_ID_DSS_SP,
2774  .type = AVMEDIA_TYPE_AUDIO,
2775  .name = "dss_sp",
2776  .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
2777  .props = AV_CODEC_PROP_LOSSY,
2778  },
2779  {
2780  .id = AV_CODEC_ID_CODEC2,
2781  .type = AVMEDIA_TYPE_AUDIO,
2782  .name = "codec2",
2783  .long_name = NULL_IF_CONFIG_SMALL("codec2 (very low bitrate speech codec)"),
2784  .props = AV_CODEC_PROP_LOSSY,
2785  },
2786  {
2788  .type = AVMEDIA_TYPE_AUDIO,
2789  .name = "wavesynth",
2790  .long_name = NULL_IF_CONFIG_SMALL("Wave synthesis pseudo-codec"),
2791  },
2792  {
2793  .id = AV_CODEC_ID_SONIC,
2794  .type = AVMEDIA_TYPE_AUDIO,
2795  .name = "sonic",
2796  .long_name = NULL_IF_CONFIG_SMALL("Sonic"),
2797  },
2798  {
2799  .id = AV_CODEC_ID_SONIC_LS,
2800  .type = AVMEDIA_TYPE_AUDIO,
2801  .name = "sonicls",
2802  .long_name = NULL_IF_CONFIG_SMALL("Sonic lossless"),
2803  },
2804  {
2805  .id = AV_CODEC_ID_EVRC,
2806  .type = AVMEDIA_TYPE_AUDIO,
2807  .name = "evrc",
2808  .long_name = NULL_IF_CONFIG_SMALL("EVRC (Enhanced Variable Rate Codec)"),
2809  .props = AV_CODEC_PROP_LOSSY,
2810  },
2811  {
2812  .id = AV_CODEC_ID_SMV,
2813  .type = AVMEDIA_TYPE_AUDIO,
2814  .name = "smv",
2815  .long_name = NULL_IF_CONFIG_SMALL("SMV (Selectable Mode Vocoder)"),
2816  .props = AV_CODEC_PROP_LOSSY,
2817  },
2818  {
2819  .id = AV_CODEC_ID_DSD_LSBF,
2820  .type = AVMEDIA_TYPE_AUDIO,
2821  .name = "dsd_lsbf",
2822  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first"),
2823  .props = AV_CODEC_PROP_LOSSY,
2824  },
2825  {
2826  .id = AV_CODEC_ID_DSD_MSBF,
2827  .type = AVMEDIA_TYPE_AUDIO,
2828  .name = "dsd_msbf",
2829  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first"),
2830  .props = AV_CODEC_PROP_LOSSY,
2831  },
2832  {
2834  .type = AVMEDIA_TYPE_AUDIO,
2835  .name = "dsd_lsbf_planar",
2836  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first, planar"),
2837  .props = AV_CODEC_PROP_LOSSY,
2838  },
2839  {
2841  .type = AVMEDIA_TYPE_AUDIO,
2842  .name = "dsd_msbf_planar",
2843  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first, planar"),
2844  .props = AV_CODEC_PROP_LOSSY,
2845  },
2846  {
2847  .id = AV_CODEC_ID_4GV,
2848  .type = AVMEDIA_TYPE_AUDIO,
2849  .name = "4gv",
2850  .long_name = NULL_IF_CONFIG_SMALL("4GV (Fourth Generation Vocoder)"),
2851  .props = AV_CODEC_PROP_LOSSY,
2852  },
2853  {
2855  .type = AVMEDIA_TYPE_AUDIO,
2856  .name = "interplayacm",
2857  .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"),
2858  .props = AV_CODEC_PROP_LOSSY,
2859  },
2860  {
2861  .id = AV_CODEC_ID_XMA1,
2862  .type = AVMEDIA_TYPE_AUDIO,
2863  .name = "xma1",
2864  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 1"),
2865  .props = AV_CODEC_PROP_LOSSY,
2866  },
2867  {
2868  .id = AV_CODEC_ID_XMA2,
2869  .type = AVMEDIA_TYPE_AUDIO,
2870  .name = "xma2",
2871  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 2"),
2872  .props = AV_CODEC_PROP_LOSSY,
2873  },
2874  {
2875  .id = AV_CODEC_ID_DST,
2876  .type = AVMEDIA_TYPE_AUDIO,
2877  .name = "dst",
2878  .long_name = NULL_IF_CONFIG_SMALL("DST (Direct Stream Transfer)"),
2879  .props = AV_CODEC_PROP_LOSSLESS,
2880  },
2881  {
2882  .id = AV_CODEC_ID_ATRAC3AL,
2883  .type = AVMEDIA_TYPE_AUDIO,
2884  .name = "atrac3al",
2885  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)"),
2886  .props = AV_CODEC_PROP_LOSSLESS,
2887  },
2888  {
2889  .id = AV_CODEC_ID_ATRAC3PAL,
2890  .type = AVMEDIA_TYPE_AUDIO,
2891  .name = "atrac3pal",
2892  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless)"),
2893  .props = AV_CODEC_PROP_LOSSLESS,
2894  },
2895  {
2896  .id = AV_CODEC_ID_DOLBY_E,
2897  .type = AVMEDIA_TYPE_AUDIO,
2898  .name = "dolby_e",
2899  .long_name = NULL_IF_CONFIG_SMALL("Dolby E"),
2900  .props = AV_CODEC_PROP_LOSSY,
2901  },
2902  {
2903  .id = AV_CODEC_ID_APTX,
2904  .type = AVMEDIA_TYPE_AUDIO,
2905  .name = "aptx",
2906  .long_name = NULL_IF_CONFIG_SMALL("aptX (Audio Processing Technology for Bluetooth)"),
2907  .props = AV_CODEC_PROP_LOSSY,
2908  },
2909  {
2910  .id = AV_CODEC_ID_APTX_HD,
2911  .type = AVMEDIA_TYPE_AUDIO,
2912  .name = "aptx_hd",
2913  .long_name = NULL_IF_CONFIG_SMALL("aptX HD (Audio Processing Technology for Bluetooth)"),
2914  .props = AV_CODEC_PROP_LOSSY,
2915  },
2916  {
2917  .id = AV_CODEC_ID_SBC,
2918  .type = AVMEDIA_TYPE_AUDIO,
2919  .name = "sbc",
2920  .long_name = NULL_IF_CONFIG_SMALL("SBC (low-complexity subband codec)"),
2921  .props = AV_CODEC_PROP_LOSSY,
2922  },
2923  {
2924  .id = AV_CODEC_ID_ATRAC9,
2925  .type = AVMEDIA_TYPE_AUDIO,
2926  .name = "atrac9",
2927  .long_name = NULL_IF_CONFIG_SMALL("ATRAC9 (Adaptive TRansform Acoustic Coding 9)"),
2928  .props = AV_CODEC_PROP_LOSSY,
2929  },
2930 
2931  /* subtitle codecs */
2932  {
2934  .type = AVMEDIA_TYPE_SUBTITLE,
2935  .name = "dvd_subtitle",
2936  .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
2937  .props = AV_CODEC_PROP_BITMAP_SUB,
2938  },
2939  {
2941  .type = AVMEDIA_TYPE_SUBTITLE,
2942  .name = "dvb_subtitle",
2943  .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
2944  .props = AV_CODEC_PROP_BITMAP_SUB,
2945  },
2946  {
2947  .id = AV_CODEC_ID_TEXT,
2948  .type = AVMEDIA_TYPE_SUBTITLE,
2949  .name = "text",
2950  .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
2951  .props = AV_CODEC_PROP_TEXT_SUB,
2952  },
2953  {
2954  .id = AV_CODEC_ID_XSUB,
2955  .type = AVMEDIA_TYPE_SUBTITLE,
2956  .name = "xsub",
2957  .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
2958  .props = AV_CODEC_PROP_BITMAP_SUB,
2959  },
2960  {
2961  .id = AV_CODEC_ID_SSA,
2962  .type = AVMEDIA_TYPE_SUBTITLE,
2963  .name = "ssa",
2964  .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"),
2965  .props = AV_CODEC_PROP_TEXT_SUB,
2966  },
2967  {
2968  .id = AV_CODEC_ID_MOV_TEXT,
2969  .type = AVMEDIA_TYPE_SUBTITLE,
2970  .name = "mov_text",
2971  .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
2972  .props = AV_CODEC_PROP_TEXT_SUB,
2973  },
2974  {
2976  .type = AVMEDIA_TYPE_SUBTITLE,
2977  .name = "hdmv_pgs_subtitle",
2978  .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
2979  .props = AV_CODEC_PROP_BITMAP_SUB,
2980  },
2981  {
2983  .type = AVMEDIA_TYPE_SUBTITLE,
2984  .name = "dvb_teletext",
2985  .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
2986  },
2987  {
2988  .id = AV_CODEC_ID_SRT,
2989  .type = AVMEDIA_TYPE_SUBTITLE,
2990  .name = "srt",
2991  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle with embedded timing"),
2992  .props = AV_CODEC_PROP_TEXT_SUB,
2993  },
2994  {
2995  .id = AV_CODEC_ID_MICRODVD,
2996  .type = AVMEDIA_TYPE_SUBTITLE,
2997  .name = "microdvd",
2998  .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle"),
2999  .props = AV_CODEC_PROP_TEXT_SUB,
3000  },
3001  {
3002  .id = AV_CODEC_ID_EIA_608,
3003  .type = AVMEDIA_TYPE_SUBTITLE,
3004  .name = "eia_608",
3005  .long_name = NULL_IF_CONFIG_SMALL("EIA-608 closed captions"),
3006  .props = AV_CODEC_PROP_TEXT_SUB,
3007  },
3008  {
3009  .id = AV_CODEC_ID_JACOSUB,
3010  .type = AVMEDIA_TYPE_SUBTITLE,
3011  .name = "jacosub",
3012  .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
3013  .props = AV_CODEC_PROP_TEXT_SUB,
3014  },
3015  {
3016  .id = AV_CODEC_ID_SAMI,
3017  .type = AVMEDIA_TYPE_SUBTITLE,
3018  .name = "sami",
3019  .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle"),
3020  .props = AV_CODEC_PROP_TEXT_SUB,
3021  },
3022  {
3023  .id = AV_CODEC_ID_REALTEXT,
3024  .type = AVMEDIA_TYPE_SUBTITLE,
3025  .name = "realtext",
3026  .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle"),
3027  .props = AV_CODEC_PROP_TEXT_SUB,
3028  },
3029  {
3030  .id = AV_CODEC_ID_STL,
3031  .type = AVMEDIA_TYPE_SUBTITLE,
3032  .name = "stl",
3033  .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"),
3034  .props = AV_CODEC_PROP_TEXT_SUB,
3035  },
3036  {
3037  .id = AV_CODEC_ID_SUBVIEWER1,
3038  .type = AVMEDIA_TYPE_SUBTITLE,
3039  .name = "subviewer1",
3040  .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle"),
3041  .props = AV_CODEC_PROP_TEXT_SUB,
3042  },
3043  {
3044  .id = AV_CODEC_ID_SUBVIEWER,
3045  .type = AVMEDIA_TYPE_SUBTITLE,
3046  .name = "subviewer",
3047  .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle"),
3048  .props = AV_CODEC_PROP_TEXT_SUB,
3049  },
3050  {
3051  .id = AV_CODEC_ID_SUBRIP,
3052  .type = AVMEDIA_TYPE_SUBTITLE,
3053  .name = "subrip",
3054  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"),
3055  .props = AV_CODEC_PROP_TEXT_SUB,
3056  },
3057  {
3058  .id = AV_CODEC_ID_WEBVTT,
3059  .type = AVMEDIA_TYPE_SUBTITLE,
3060  .name = "webvtt",
3061  .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
3062  .props = AV_CODEC_PROP_TEXT_SUB,
3063  },
3064  {
3065  .id = AV_CODEC_ID_MPL2,
3066  .type = AVMEDIA_TYPE_SUBTITLE,
3067  .name = "mpl2",
3068  .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitle"),
3069  .props = AV_CODEC_PROP_TEXT_SUB,
3070  },
3071  {
3072  .id = AV_CODEC_ID_VPLAYER,
3073  .type = AVMEDIA_TYPE_SUBTITLE,
3074  .name = "vplayer",
3075  .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"),
3076  .props = AV_CODEC_PROP_TEXT_SUB,
3077  },
3078  {
3079  .id = AV_CODEC_ID_PJS,
3080  .type = AVMEDIA_TYPE_SUBTITLE,
3081  .name = "pjs",
3082  .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitle"),
3083  .props = AV_CODEC_PROP_TEXT_SUB,
3084  },
3085  {
3086  .id = AV_CODEC_ID_ASS,
3087  .type = AVMEDIA_TYPE_SUBTITLE,
3088  .name = "ass",
3089  .long_name = NULL_IF_CONFIG_SMALL("ASS (Advanced SSA) subtitle"),
3090  .props = AV_CODEC_PROP_TEXT_SUB,
3091  },
3092  {
3094  .type = AVMEDIA_TYPE_SUBTITLE,
3095  .name = "hdmv_text_subtitle",
3096  .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
3097  .props = AV_CODEC_PROP_TEXT_SUB,
3098  },
3099  {
3100  .id = AV_CODEC_ID_TTML,
3101  .type = AVMEDIA_TYPE_SUBTITLE,
3102  .name = "ttml",
3103  .long_name = NULL_IF_CONFIG_SMALL("Timed Text Markup Language"),
3104  .props = AV_CODEC_PROP_TEXT_SUB,
3105  },
3106 
3107 
3108  /* other kind of codecs and pseudo-codecs */
3109  {
3110  .id = AV_CODEC_ID_TTF,
3111  .type = AVMEDIA_TYPE_DATA,
3112  .name = "ttf",
3113  .long_name = NULL_IF_CONFIG_SMALL("TrueType font"),
3114  .mime_types= MT("application/x-truetype-font", "application/x-font"),
3115  },
3116  {
3117  .id = AV_CODEC_ID_SCTE_35,
3118  .type = AVMEDIA_TYPE_DATA,
3119  .name = "scte_35",
3120  .long_name = NULL_IF_CONFIG_SMALL("SCTE 35 Message Queue"),
3121  },
3122  {
3123  .id = AV_CODEC_ID_BINTEXT,
3124  .type = AVMEDIA_TYPE_VIDEO,
3125  .name = "bintext",
3126  .long_name = NULL_IF_CONFIG_SMALL("Binary text"),
3127  .props = AV_CODEC_PROP_INTRA_ONLY,
3128  },
3129  {
3130  .id = AV_CODEC_ID_XBIN,
3131  .type = AVMEDIA_TYPE_VIDEO,
3132  .name = "xbin",
3133  .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text"),
3134  .props = AV_CODEC_PROP_INTRA_ONLY,
3135  },
3136  {
3137  .id = AV_CODEC_ID_IDF,
3138  .type = AVMEDIA_TYPE_VIDEO,
3139  .name = "idf",
3140  .long_name = NULL_IF_CONFIG_SMALL("iCEDraw text"),
3141  .props = AV_CODEC_PROP_INTRA_ONLY,
3142  },
3143  {
3144  .id = AV_CODEC_ID_OTF,
3145  .type = AVMEDIA_TYPE_DATA,
3146  .name = "otf",
3147  .long_name = NULL_IF_CONFIG_SMALL("OpenType font"),
3148  .mime_types= MT("application/vnd.ms-opentype"),
3149  },
3150  {
3151  .id = AV_CODEC_ID_SMPTE_KLV,
3152  .type = AVMEDIA_TYPE_DATA,
3153  .name = "klv",
3154  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 336M Key-Length-Value (KLV) metadata"),
3155  },
3156  {
3157  .id = AV_CODEC_ID_DVD_NAV,
3158  .type = AVMEDIA_TYPE_DATA,
3159  .name = "dvd_nav_packet",
3160  .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"),
3161  },
3162  {
3163  .id = AV_CODEC_ID_TIMED_ID3,
3164  .type = AVMEDIA_TYPE_DATA,
3165  .name = "timed_id3",
3166  .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"),
3167  },
3168  {
3169  .id = AV_CODEC_ID_BIN_DATA,
3170  .type = AVMEDIA_TYPE_DATA,
3171  .name = "bin_data",
3172  .long_name = NULL_IF_CONFIG_SMALL("binary data"),
3173  .mime_types= MT("application/octet-stream"),
3174  },
3175  {
3177  .type = AVMEDIA_TYPE_VIDEO,
3178  .name = "wrapped_avframe",
3179  .long_name = NULL_IF_CONFIG_SMALL("AVFrame to AVPacket passthrough"),
3180  .props = AV_CODEC_PROP_LOSSLESS,
3181  },
3182 };
3183 
3184 static int descriptor_compare(const void *key, const void *member)
3185 {
3186  enum AVCodecID id = *(const enum AVCodecID *) key;
3187  const AVCodecDescriptor *desc = member;
3188 
3189  return id - desc->id;
3190 }
3191 
3193 {
3194  return bsearch(&id, codec_descriptors, FF_ARRAY_ELEMS(codec_descriptors),
3195  sizeof(codec_descriptors[0]), descriptor_compare);
3196 }
3197 
3199 {
3200  if (!prev)
3201  return &codec_descriptors[0];
3202  if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
3203  return prev + 1;
3204  return NULL;
3205 }
3206 
3208 {
3209  const AVCodecDescriptor *desc = NULL;
3210 
3211  while ((desc = avcodec_descriptor_next(desc)))
3212  if (!strcmp(desc->name, name))
3213  return desc;
3214  return NULL;
3215 }
3216 
3218 {
3219  const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id);
3220  return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN;
3221 }
#define AV_CODEC_PROP_REORDER
Codec supports frame reordering.
Definition: avcodec.h:761
#define NULL
Definition: coverity.c:32
#define AV_CODEC_PROP_INTRA_ONLY
Codec uses only intra compression.
Definition: avcodec.h:741
#define AV_CODEC_PROP_LOSSY
Codec supports lossy compression.
Definition: avcodec.h:747
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:771
Contain timestamp estimated through PCR of program stream.
Definition: avcodec.h:681
#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:3198
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:751
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:558
enum AVMediaType avcodec_get_type(enum AVCodecID codec_id)
Get the type of the given codec.
Definition: codec_desc.c:3217
const AVCodecDescriptor * avcodec_descriptor_get(enum AVCodecID id)
Definition: codec_desc.c:3192
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:699
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:3207
#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:766
AVMediaType
Definition: avutil.h:199
const char * name
Name of the codec described by this descriptor.
Definition: avcodec.h:715
This struct describes the properties of a single codec described by an AVCodecID. ...
Definition: avcodec.h:707
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:709
const AVProfile ff_vc1_profiles[]
Definition: profiles.c:126
common internal and external API header
raw UTF-8 text
Definition: avcodec.h:652
const AVProfile ff_h264_profiles[]
Definition: profiles.c:58
enum AVCodecID id
Definition: avcodec.h:708
static int descriptor_compare(const void *key, const void *member)
Definition: codec_desc.c:3184
as in Berlin toast format
Definition: avcodec.h:575
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