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