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