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"),
523  .props = AV_CODEC_PROP_LOSSLESS,
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"),
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 ILBM"),
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_MVC1,
952  .type = AVMEDIA_TYPE_VIDEO,
953  .name = "mvc1",
954  .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 1"),
956  },
957  {
958  .id = AV_CODEC_ID_MVC2,
959  .type = AVMEDIA_TYPE_VIDEO,
960  .name = "mvc2",
961  .long_name = NULL_IF_CONFIG_SMALL("Silicon Graphics Motion Video Compressor 2"),
963  },
964  {
965  .id = AV_CODEC_ID_MXPEG,
966  .type = AVMEDIA_TYPE_VIDEO,
967  .name = "mxpeg",
968  .long_name = NULL_IF_CONFIG_SMALL("Mobotix MxPEG video"),
969  .props = AV_CODEC_PROP_LOSSY,
970  },
971  {
972  .id = AV_CODEC_ID_LAGARITH,
973  .type = AVMEDIA_TYPE_VIDEO,
974  .name = "lagarith",
975  .long_name = NULL_IF_CONFIG_SMALL("Lagarith lossless"),
977  },
978  {
979  .id = AV_CODEC_ID_PRORES,
980  .type = AVMEDIA_TYPE_VIDEO,
981  .name = "prores",
982  .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes (iCodec Pro)"),
984  },
985  {
986  .id = AV_CODEC_ID_JV,
987  .type = AVMEDIA_TYPE_VIDEO,
988  .name = "jv",
989  .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"),
991  },
992  {
993  .id = AV_CODEC_ID_DFA,
994  .type = AVMEDIA_TYPE_VIDEO,
995  .name = "dfa",
996  .long_name = NULL_IF_CONFIG_SMALL("Chronomaster DFA"),
997  .props = AV_CODEC_PROP_LOSSY,
998  },
999  {
1000  .id = AV_CODEC_ID_UTVIDEO,
1001  .type = AVMEDIA_TYPE_VIDEO,
1002  .name = "utvideo",
1003  .long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
1005  },
1006  {
1007  .id = AV_CODEC_ID_BMV_VIDEO,
1008  .type = AVMEDIA_TYPE_VIDEO,
1009  .name = "bmv_video",
1010  .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV video"),
1011  .props = AV_CODEC_PROP_LOSSLESS,
1012  },
1013  {
1014  .id = AV_CODEC_ID_VBLE,
1015  .type = AVMEDIA_TYPE_VIDEO,
1016  .name = "vble",
1017  .long_name = NULL_IF_CONFIG_SMALL("VBLE Lossless Codec"),
1019  },
1020  {
1021  .id = AV_CODEC_ID_DXTORY,
1022  .type = AVMEDIA_TYPE_VIDEO,
1023  .name = "dxtory",
1024  .long_name = NULL_IF_CONFIG_SMALL("Dxtory"),
1026  },
1027  {
1028  .id = AV_CODEC_ID_V410,
1029  .type = AVMEDIA_TYPE_VIDEO,
1030  .name = "v410",
1031  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:4:4 10-bit"),
1033  },
1034  {
1035  .id = AV_CODEC_ID_CDXL,
1036  .type = AVMEDIA_TYPE_VIDEO,
1037  .name = "cdxl",
1038  .long_name = NULL_IF_CONFIG_SMALL("Commodore CDXL video"),
1040  },
1041  {
1042  .id = AV_CODEC_ID_ZEROCODEC,
1043  .type = AVMEDIA_TYPE_VIDEO,
1044  .name = "zerocodec",
1045  .long_name = NULL_IF_CONFIG_SMALL("ZeroCodec Lossless Video"),
1046  .props = AV_CODEC_PROP_LOSSLESS,
1047  },
1048  {
1049  .id = AV_CODEC_ID_MSS1,
1050  .type = AVMEDIA_TYPE_VIDEO,
1051  .name = "mss1",
1052  .long_name = NULL_IF_CONFIG_SMALL("MS Screen 1"),
1053  .props = AV_CODEC_PROP_LOSSY,
1054  },
1055  {
1056  .id = AV_CODEC_ID_MSA1,
1057  .type = AVMEDIA_TYPE_VIDEO,
1058  .name = "msa1",
1059  .long_name = NULL_IF_CONFIG_SMALL("MS ATC Screen"),
1060  .props = AV_CODEC_PROP_LOSSY,
1061  },
1062  {
1063  .id = AV_CODEC_ID_TSCC2,
1064  .type = AVMEDIA_TYPE_VIDEO,
1065  .name = "tscc2",
1066  .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Codec 2"),
1067  .props = AV_CODEC_PROP_LOSSY,
1068  },
1069  {
1070  .id = AV_CODEC_ID_MTS2,
1071  .type = AVMEDIA_TYPE_VIDEO,
1072  .name = "mts2",
1073  .long_name = NULL_IF_CONFIG_SMALL("MS Expression Encoder Screen"),
1074  .props = AV_CODEC_PROP_LOSSY,
1075  },
1076  {
1077  .id = AV_CODEC_ID_CLLC,
1078  .type = AVMEDIA_TYPE_VIDEO,
1079  .name = "cllc",
1080  .long_name = NULL_IF_CONFIG_SMALL("Canopus Lossless Codec"),
1082  },
1083  {
1084  .id = AV_CODEC_ID_MSS2,
1085  .type = AVMEDIA_TYPE_VIDEO,
1086  .name = "mss2",
1087  .long_name = NULL_IF_CONFIG_SMALL("MS Windows Media Video V9 Screen"),
1089  },
1090  {
1091  .id = AV_CODEC_ID_AIC,
1092  .type = AVMEDIA_TYPE_VIDEO,
1093  .name = "aic",
1094  .long_name = NULL_IF_CONFIG_SMALL("Apple Intermediate Codec"),
1096  },
1097  {
1098  .id = AV_CODEC_ID_Y41P,
1099  .type = AVMEDIA_TYPE_VIDEO,
1100  .name = "y41p",
1101  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed YUV 4:1:1 12-bit"),
1102  .props = AV_CODEC_PROP_INTRA_ONLY,
1103  },
1104  {
1105  .id = AV_CODEC_ID_ESCAPE130,
1106  .type = AVMEDIA_TYPE_VIDEO,
1107  .name = "escape130",
1108  .long_name = NULL_IF_CONFIG_SMALL("Escape 130"),
1109  .props = AV_CODEC_PROP_LOSSY,
1110  },
1111  {
1112  .id = AV_CODEC_ID_AVRP,
1113  .type = AVMEDIA_TYPE_VIDEO,
1114  .name = "avrp",
1115  .long_name = NULL_IF_CONFIG_SMALL("Avid 1:1 10-bit RGB Packer"),
1116  .props = AV_CODEC_PROP_INTRA_ONLY,
1117  },
1118  {
1119  .id = AV_CODEC_ID_012V,
1120  .type = AVMEDIA_TYPE_VIDEO,
1121  .name = "012v",
1122  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"),
1123  .props = AV_CODEC_PROP_INTRA_ONLY,
1124  },
1125  {
1126  .id = AV_CODEC_ID_AVUI,
1127  .type = AVMEDIA_TYPE_VIDEO,
1128  .name = "avui",
1129  .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
1130  .props = AV_CODEC_PROP_INTRA_ONLY,
1131  },
1132  {
1133  .id = AV_CODEC_ID_AYUV,
1134  .type = AVMEDIA_TYPE_VIDEO,
1135  .name = "ayuv",
1136  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"),
1137  .props = AV_CODEC_PROP_INTRA_ONLY,
1138  },
1139  {
1140  .id = AV_CODEC_ID_TARGA_Y216,
1141  .type = AVMEDIA_TYPE_VIDEO,
1142  .name = "targa_y216",
1143  .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"),
1144  .props = AV_CODEC_PROP_INTRA_ONLY,
1145  },
1146  {
1147  .id = AV_CODEC_ID_V308,
1148  .type = AVMEDIA_TYPE_VIDEO,
1149  .name = "v308",
1150  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"),
1151  .props = AV_CODEC_PROP_INTRA_ONLY,
1152  },
1153  {
1154  .id = AV_CODEC_ID_V408,
1155  .type = AVMEDIA_TYPE_VIDEO,
1156  .name = "v408",
1157  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed QT 4:4:4:4"),
1158  .props = AV_CODEC_PROP_INTRA_ONLY,
1159  },
1160  {
1161  .id = AV_CODEC_ID_YUV4,
1162  .type = AVMEDIA_TYPE_VIDEO,
1163  .name = "yuv4",
1164  .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:2:0"),
1165  .props = AV_CODEC_PROP_INTRA_ONLY,
1166  },
1167  {
1168  .id = AV_CODEC_ID_AVRN,
1169  .type = AVMEDIA_TYPE_VIDEO,
1170  .name = "avrn",
1171  .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"),
1172  },
1173  {
1174  .id = AV_CODEC_ID_CPIA,
1175  .type = AVMEDIA_TYPE_VIDEO,
1176  .name = "cpia",
1177  .long_name = NULL_IF_CONFIG_SMALL("CPiA video format"),
1178  },
1179  {
1180  .id = AV_CODEC_ID_XFACE,
1181  .type = AVMEDIA_TYPE_VIDEO,
1182  .name = "xface",
1183  .long_name = NULL_IF_CONFIG_SMALL("X-face image"),
1185  },
1186  {
1187  .id = AV_CODEC_ID_SMVJPEG,
1188  .type = AVMEDIA_TYPE_VIDEO,
1189  .name = "smvjpeg",
1190  .long_name = NULL_IF_CONFIG_SMALL("Sigmatel Motion Video"),
1191  },
1192 
1193  {
1194  .id = AV_CODEC_ID_G2M,
1195  .type = AVMEDIA_TYPE_VIDEO,
1196  .name = "g2m",
1197  .long_name = NULL_IF_CONFIG_SMALL("Go2Meeting"),
1198  .props = AV_CODEC_PROP_LOSSY,
1199  },
1200  {
1201  .id = AV_CODEC_ID_HNM4_VIDEO,
1202  .type = AVMEDIA_TYPE_VIDEO,
1203  .name = "hnm4video",
1204  .long_name = NULL_IF_CONFIG_SMALL("HNM 4 video"),
1205  .props = AV_CODEC_PROP_LOSSY,
1206  },
1207  {
1208  .id = AV_CODEC_ID_HEVC,
1209  .type = AVMEDIA_TYPE_VIDEO,
1210  .name = "hevc",
1211  .long_name = NULL_IF_CONFIG_SMALL("H.265 / HEVC (High Efficiency Video Coding)"),
1214  },
1215  {
1216  .id = AV_CODEC_ID_FIC,
1217  .type = AVMEDIA_TYPE_VIDEO,
1218  .name = "fic",
1219  .long_name = NULL_IF_CONFIG_SMALL("Mirillis FIC"),
1220  .props = AV_CODEC_PROP_LOSSY,
1221  },
1222  {
1223  .id = AV_CODEC_ID_PAF_VIDEO,
1224  .type = AVMEDIA_TYPE_VIDEO,
1225  .name = "paf_video",
1226  .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Video"),
1227  .props = AV_CODEC_PROP_LOSSY,
1228  },
1229  {
1230  .id = AV_CODEC_ID_VP7,
1231  .type = AVMEDIA_TYPE_VIDEO,
1232  .name = "vp7",
1233  .long_name = NULL_IF_CONFIG_SMALL("On2 VP7"),
1234  .props = AV_CODEC_PROP_LOSSY,
1235  },
1236  {
1237  .id = AV_CODEC_ID_SANM,
1238  .type = AVMEDIA_TYPE_VIDEO,
1239  .name = "sanm",
1240  .long_name = NULL_IF_CONFIG_SMALL("LucasArts SANM/SMUSH video"),
1241  .props = AV_CODEC_PROP_LOSSY,
1242  },
1243  {
1244  .id = AV_CODEC_ID_SGIRLE,
1245  .type = AVMEDIA_TYPE_VIDEO,
1246  .name = "sgirle",
1247  .long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
1249  },
1250  {
1251  .id = AV_CODEC_ID_HQX,
1252  .type = AVMEDIA_TYPE_VIDEO,
1253  .name = "hqx",
1254  .long_name = NULL_IF_CONFIG_SMALL("Canopus HQX"),
1256  },
1257  {
1258  .id = AV_CODEC_ID_HQ_HQA,
1259  .type = AVMEDIA_TYPE_VIDEO,
1260  .name = "hq_hqa",
1261  .long_name = NULL_IF_CONFIG_SMALL("Canopus HQ/HQA"),
1263  },
1264  {
1265  .id = AV_CODEC_ID_HAP,
1266  .type = AVMEDIA_TYPE_VIDEO,
1267  .name = "hap",
1268  .long_name = NULL_IF_CONFIG_SMALL("Vidvox Hap decoder"),
1270  },
1271  {
1272  .id = AV_CODEC_ID_DXV,
1273  .type = AVMEDIA_TYPE_VIDEO,
1274  .name = "dxv",
1275  .long_name = NULL_IF_CONFIG_SMALL("Resolume DXV"),
1277  },
1278  {
1280  .type = AVMEDIA_TYPE_VIDEO,
1281  .name = "screenpresso",
1282  .long_name = NULL_IF_CONFIG_SMALL("Screenpresso"),
1283  .props = AV_CODEC_PROP_LOSSLESS,
1284  },
1285  {
1287  .type = AVMEDIA_TYPE_VIDEO,
1288  .name = "wrapped_avframe",
1289  .long_name = NULL_IF_CONFIG_SMALL("AVFrame to AVPacket passthrough"),
1290  .props = AV_CODEC_PROP_LOSSLESS,
1291  },
1292  {
1293  .id = AV_CODEC_ID_RSCC,
1294  .type = AVMEDIA_TYPE_VIDEO,
1295  .name = "rscc",
1296  .long_name = NULL_IF_CONFIG_SMALL("innoHeim/Rsupport Screen Capture Codec"),
1297  .props = AV_CODEC_PROP_LOSSLESS,
1298  },
1299 
1300  /* image codecs */
1301  {
1302  .id = AV_CODEC_ID_ALIAS_PIX,
1303  .type = AVMEDIA_TYPE_VIDEO,
1304  .name = "alias_pix",
1305  .long_name = NULL_IF_CONFIG_SMALL("Alias/Wavefront PIX image"),
1307  },
1308  {
1309  .id = AV_CODEC_ID_ANSI,
1310  .type = AVMEDIA_TYPE_VIDEO,
1311  .name = "ansi",
1312  .long_name = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
1313  .props = AV_CODEC_PROP_LOSSY,
1314  },
1315  {
1317  .type = AVMEDIA_TYPE_VIDEO,
1318  .name = "brender_pix",
1319  .long_name = NULL_IF_CONFIG_SMALL("BRender PIX image"),
1321  },
1322  {
1323  .id = AV_CODEC_ID_DDS,
1324  .type = AVMEDIA_TYPE_VIDEO,
1325  .name = "dds",
1326  .long_name = NULL_IF_CONFIG_SMALL("DirectDraw Surface image decoder"),
1329  },
1330  {
1331  .id = AV_CODEC_ID_DPX,
1332  .type = AVMEDIA_TYPE_VIDEO,
1333  .name = "dpx",
1334  .long_name = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
1336  },
1337  {
1338  .id = AV_CODEC_ID_EXR,
1339  .type = AVMEDIA_TYPE_VIDEO,
1340  .name = "exr",
1341  .long_name = NULL_IF_CONFIG_SMALL("OpenEXR image"),
1344  },
1345  {
1346  .id = AV_CODEC_ID_GIF,
1347  .type = AVMEDIA_TYPE_VIDEO,
1348  .name = "gif",
1349  .long_name = NULL_IF_CONFIG_SMALL("GIF (Graphics Interchange Format)"),
1350  .props = AV_CODEC_PROP_LOSSLESS,
1351  .mime_types= MT("image/gif"),
1352  },
1353  {
1354  .id = AV_CODEC_ID_JPEGLS,
1355  .type = AVMEDIA_TYPE_VIDEO,
1356  .name = "jpegls",
1357  .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),
1360  },
1361  {
1362  .id = AV_CODEC_ID_LJPEG,
1363  .type = AVMEDIA_TYPE_VIDEO,
1364  .name = "ljpeg",
1365  .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),
1367  },
1368  {
1369  .id = AV_CODEC_ID_PAM,
1370  .type = AVMEDIA_TYPE_VIDEO,
1371  .name = "pam",
1372  .long_name = NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
1374  .mime_types= MT("image/x-portable-pixmap"),
1375  },
1376  {
1377  .id = AV_CODEC_ID_PBM,
1378  .type = AVMEDIA_TYPE_VIDEO,
1379  .name = "pbm",
1380  .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
1382  },
1383  {
1384  .id = AV_CODEC_ID_PCX,
1385  .type = AVMEDIA_TYPE_VIDEO,
1386  .name = "pcx",
1387  .long_name = NULL_IF_CONFIG_SMALL("PC Paintbrush PCX image"),
1389  .mime_types= MT("image/x-pcx"),
1390  },
1391  {
1392  .id = AV_CODEC_ID_PGM,
1393  .type = AVMEDIA_TYPE_VIDEO,
1394  .name = "pgm",
1395  .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
1397  },
1398  {
1399  .id = AV_CODEC_ID_PGMYUV,
1400  .type = AVMEDIA_TYPE_VIDEO,
1401  .name = "pgmyuv",
1402  .long_name = NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
1404  },
1405  {
1406  .id = AV_CODEC_ID_PNG,
1407  .type = AVMEDIA_TYPE_VIDEO,
1408  .name = "png",
1409  .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),
1410  .props = AV_CODEC_PROP_LOSSLESS,
1411  .mime_types= MT("image/png"),
1412  },
1413  {
1414  .id = AV_CODEC_ID_PPM,
1415  .type = AVMEDIA_TYPE_VIDEO,
1416  .name = "ppm",
1417  .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
1419  },
1420  {
1421  .id = AV_CODEC_ID_PTX,
1422  .type = AVMEDIA_TYPE_VIDEO,
1423  .name = "ptx",
1424  .long_name = NULL_IF_CONFIG_SMALL("V.Flash PTX image"),
1426  },
1427  {
1428  .id = AV_CODEC_ID_SGI,
1429  .type = AVMEDIA_TYPE_VIDEO,
1430  .name = "sgi",
1431  .long_name = NULL_IF_CONFIG_SMALL("SGI image"),
1433  },
1434  {
1435  .id = AV_CODEC_ID_SP5X,
1436  .type = AVMEDIA_TYPE_VIDEO,
1437  .name = "sp5x",
1438  .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),
1440  },
1441  {
1442  .id = AV_CODEC_ID_SUNRAST,
1443  .type = AVMEDIA_TYPE_VIDEO,
1444  .name = "sunrast",
1445  .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
1447  },
1448  {
1449  .id = AV_CODEC_ID_TARGA,
1450  .type = AVMEDIA_TYPE_VIDEO,
1451  .name = "targa",
1452  .long_name = NULL_IF_CONFIG_SMALL("Truevision Targa image"),
1454  .mime_types= MT("image/x-targa", "image/x-tga"),
1455  },
1456  {
1457  .id = AV_CODEC_ID_TDSC,
1458  .type = AVMEDIA_TYPE_VIDEO,
1459  .name = "tdsc",
1460  .long_name = NULL_IF_CONFIG_SMALL("TDSC"),
1461  .props = AV_CODEC_PROP_LOSSY,
1462  },
1463  {
1464  .id = AV_CODEC_ID_TIFF,
1465  .type = AVMEDIA_TYPE_VIDEO,
1466  .name = "tiff",
1467  .long_name = NULL_IF_CONFIG_SMALL("TIFF image"),
1469  .mime_types= MT("image/tiff"),
1470  },
1471  {
1472  .id = AV_CODEC_ID_TXD,
1473  .type = AVMEDIA_TYPE_VIDEO,
1474  .name = "txd",
1475  .long_name = NULL_IF_CONFIG_SMALL("Renderware TXD (TeXture Dictionary) image"),
1477  },
1478  {
1479  .id = AV_CODEC_ID_VC1IMAGE,
1480  .type = AVMEDIA_TYPE_VIDEO,
1481  .name = "vc1image",
1482  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image v2"),
1483  .props = AV_CODEC_PROP_LOSSY,
1484  },
1485  {
1486  .id = AV_CODEC_ID_WEBP,
1487  .type = AVMEDIA_TYPE_VIDEO,
1488  .name = "webp",
1489  .long_name = NULL_IF_CONFIG_SMALL("WebP"),
1492  .mime_types= MT("image/webp"),
1493  },
1494  {
1495  .id = AV_CODEC_ID_WMV3IMAGE,
1496  .type = AVMEDIA_TYPE_VIDEO,
1497  .name = "wmv3image",
1498  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 9 Image"),
1499  .props = AV_CODEC_PROP_LOSSY,
1500  },
1501  {
1502  .id = AV_CODEC_ID_XBM,
1503  .type = AVMEDIA_TYPE_VIDEO,
1504  .name = "xbm",
1505  .long_name = NULL_IF_CONFIG_SMALL("XBM (X BitMap) image"),
1507  },
1508  {
1509  .id = AV_CODEC_ID_XWD,
1510  .type = AVMEDIA_TYPE_VIDEO,
1511  .name = "xwd",
1512  .long_name = NULL_IF_CONFIG_SMALL("XWD (X Window Dump) image"),
1514  .mime_types= MT("image/x-xwindowdump"),
1515  },
1516  {
1517  .id = AV_CODEC_ID_APNG,
1518  .type = AVMEDIA_TYPE_VIDEO,
1519  .name = "apng",
1520  .long_name = NULL_IF_CONFIG_SMALL("APNG (Animated Portable Network Graphics) image"),
1521  .props = AV_CODEC_PROP_LOSSLESS,
1522  .mime_types= MT("image/png"),
1523  },
1524  {
1525  .id = AV_CODEC_ID_CFHD,
1526  .type = AVMEDIA_TYPE_VIDEO,
1527  .name = "cfhd",
1528  .long_name = NULL_IF_CONFIG_SMALL("Cineform HD"),
1529  .props = AV_CODEC_PROP_LOSSY,
1530  },
1531 
1532  /* various PCM "codecs" */
1533  {
1534  .id = AV_CODEC_ID_PCM_S16LE,
1535  .type = AVMEDIA_TYPE_AUDIO,
1536  .name = "pcm_s16le",
1537  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian"),
1538  .props = AV_CODEC_PROP_LOSSLESS,
1539  },
1540  {
1541  .id = AV_CODEC_ID_PCM_S16BE,
1542  .type = AVMEDIA_TYPE_AUDIO,
1543  .name = "pcm_s16be",
1544  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian"),
1545  .props = AV_CODEC_PROP_LOSSLESS,
1546  },
1547  {
1548  .id = AV_CODEC_ID_PCM_U16LE,
1549  .type = AVMEDIA_TYPE_AUDIO,
1550  .name = "pcm_u16le",
1551  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit little-endian"),
1552  .props = AV_CODEC_PROP_LOSSLESS,
1553  },
1554  {
1555  .id = AV_CODEC_ID_PCM_U16BE,
1556  .type = AVMEDIA_TYPE_AUDIO,
1557  .name = "pcm_u16be",
1558  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 16-bit big-endian"),
1559  .props = AV_CODEC_PROP_LOSSLESS,
1560  },
1561  {
1562  .id = AV_CODEC_ID_PCM_S8,
1563  .type = AVMEDIA_TYPE_AUDIO,
1564  .name = "pcm_s8",
1565  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit"),
1566  .props = AV_CODEC_PROP_LOSSLESS,
1567  },
1568  {
1569  .id = AV_CODEC_ID_PCM_U8,
1570  .type = AVMEDIA_TYPE_AUDIO,
1571  .name = "pcm_u8",
1572  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 8-bit"),
1573  .props = AV_CODEC_PROP_LOSSLESS,
1574  },
1575  {
1576  .id = AV_CODEC_ID_PCM_MULAW,
1577  .type = AVMEDIA_TYPE_AUDIO,
1578  .name = "pcm_mulaw",
1579  .long_name = NULL_IF_CONFIG_SMALL("PCM mu-law / G.711 mu-law"),
1580  .props = AV_CODEC_PROP_LOSSY,
1581  },
1582  {
1583  .id = AV_CODEC_ID_PCM_ALAW,
1584  .type = AVMEDIA_TYPE_AUDIO,
1585  .name = "pcm_alaw",
1586  .long_name = NULL_IF_CONFIG_SMALL("PCM A-law / G.711 A-law"),
1587  .props = AV_CODEC_PROP_LOSSY,
1588  },
1589  {
1590  .id = AV_CODEC_ID_PCM_S32LE,
1591  .type = AVMEDIA_TYPE_AUDIO,
1592  .name = "pcm_s32le",
1593  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian"),
1594  .props = AV_CODEC_PROP_LOSSLESS,
1595  },
1596  {
1597  .id = AV_CODEC_ID_PCM_S32BE,
1598  .type = AVMEDIA_TYPE_AUDIO,
1599  .name = "pcm_s32be",
1600  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit big-endian"),
1601  .props = AV_CODEC_PROP_LOSSLESS,
1602  },
1603  {
1604  .id = AV_CODEC_ID_PCM_U32LE,
1605  .type = AVMEDIA_TYPE_AUDIO,
1606  .name = "pcm_u32le",
1607  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit little-endian"),
1608  .props = AV_CODEC_PROP_LOSSLESS,
1609  },
1610  {
1611  .id = AV_CODEC_ID_PCM_U32BE,
1612  .type = AVMEDIA_TYPE_AUDIO,
1613  .name = "pcm_u32be",
1614  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 32-bit big-endian"),
1615  .props = AV_CODEC_PROP_LOSSLESS,
1616  },
1617  {
1618  .id = AV_CODEC_ID_PCM_S24LE,
1619  .type = AVMEDIA_TYPE_AUDIO,
1620  .name = "pcm_s24le",
1621  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian"),
1622  .props = AV_CODEC_PROP_LOSSLESS,
1623  },
1624  {
1625  .id = AV_CODEC_ID_PCM_S24BE,
1626  .type = AVMEDIA_TYPE_AUDIO,
1627  .name = "pcm_s24be",
1628  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit big-endian"),
1629  .props = AV_CODEC_PROP_LOSSLESS,
1630  },
1631  {
1632  .id = AV_CODEC_ID_PCM_U24LE,
1633  .type = AVMEDIA_TYPE_AUDIO,
1634  .name = "pcm_u24le",
1635  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit little-endian"),
1636  .props = AV_CODEC_PROP_LOSSLESS,
1637  },
1638  {
1639  .id = AV_CODEC_ID_PCM_U24BE,
1640  .type = AVMEDIA_TYPE_AUDIO,
1641  .name = "pcm_u24be",
1642  .long_name = NULL_IF_CONFIG_SMALL("PCM unsigned 24-bit big-endian"),
1643  .props = AV_CODEC_PROP_LOSSLESS,
1644  },
1645  {
1647  .type = AVMEDIA_TYPE_AUDIO,
1648  .name = "pcm_s24daud",
1649  .long_name = NULL_IF_CONFIG_SMALL("PCM D-Cinema audio signed 24-bit"),
1650  .props = AV_CODEC_PROP_LOSSLESS,
1651  },
1652  {
1653  .id = AV_CODEC_ID_PCM_ZORK,
1654  .type = AVMEDIA_TYPE_AUDIO,
1655  .name = "pcm_zork",
1656  .long_name = NULL_IF_CONFIG_SMALL("PCM Zork"),
1657  .props = AV_CODEC_PROP_LOSSY,
1658  },
1659  {
1661  .type = AVMEDIA_TYPE_AUDIO,
1662  .name = "pcm_s16be_planar",
1663  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit big-endian planar"),
1664  .props = AV_CODEC_PROP_LOSSLESS,
1665  },
1666  {
1668  .type = AVMEDIA_TYPE_AUDIO,
1669  .name = "pcm_s16le_planar",
1670  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16-bit little-endian planar"),
1671  .props = AV_CODEC_PROP_LOSSLESS,
1672  },
1673  {
1675  .type = AVMEDIA_TYPE_AUDIO,
1676  .name = "pcm_s24le_planar",
1677  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 24-bit little-endian planar"),
1678  .props = AV_CODEC_PROP_LOSSLESS,
1679  },
1680  {
1682  .type = AVMEDIA_TYPE_AUDIO,
1683  .name = "pcm_s32le_planar",
1684  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 32-bit little-endian planar"),
1685  .props = AV_CODEC_PROP_LOSSLESS,
1686  },
1687  {
1688  .id = AV_CODEC_ID_PCM_DVD,
1689  .type = AVMEDIA_TYPE_AUDIO,
1690  .name = "pcm_dvd",
1691  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20|24-bit big-endian"),
1692  .props = AV_CODEC_PROP_LOSSLESS,
1693  },
1694  {
1695  .id = AV_CODEC_ID_PCM_F32BE,
1696  .type = AVMEDIA_TYPE_AUDIO,
1697  .name = "pcm_f32be",
1698  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point big-endian"),
1699  .props = AV_CODEC_PROP_LOSSLESS,
1700  },
1701  {
1702  .id = AV_CODEC_ID_PCM_F32LE,
1703  .type = AVMEDIA_TYPE_AUDIO,
1704  .name = "pcm_f32le",
1705  .long_name = NULL_IF_CONFIG_SMALL("PCM 32-bit floating point little-endian"),
1706  .props = AV_CODEC_PROP_LOSSLESS,
1707  },
1708  {
1709  .id = AV_CODEC_ID_PCM_F64BE,
1710  .type = AVMEDIA_TYPE_AUDIO,
1711  .name = "pcm_f64be",
1712  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point big-endian"),
1713  .props = AV_CODEC_PROP_LOSSLESS,
1714  },
1715  {
1716  .id = AV_CODEC_ID_PCM_F64LE,
1717  .type = AVMEDIA_TYPE_AUDIO,
1718  .name = "pcm_f64le",
1719  .long_name = NULL_IF_CONFIG_SMALL("PCM 64-bit floating point little-endian"),
1720  .props = AV_CODEC_PROP_LOSSLESS,
1721  },
1722  {
1723  .id = AV_CODEC_ID_PCM_BLURAY,
1724  .type = AVMEDIA_TYPE_AUDIO,
1725  .name = "pcm_bluray",
1726  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 16|20|24-bit big-endian for Blu-ray media"),
1727  .props = AV_CODEC_PROP_LOSSLESS,
1728  },
1729  {
1730  .id = AV_CODEC_ID_PCM_LXF,
1731  .type = AVMEDIA_TYPE_AUDIO,
1732  .name = "pcm_lxf",
1733  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 20-bit little-endian planar"),
1734  .props = AV_CODEC_PROP_LOSSLESS,
1735  },
1736  {
1737  .id = AV_CODEC_ID_S302M,
1738  .type = AVMEDIA_TYPE_AUDIO,
1739  .name = "s302m",
1740  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 302M"),
1741  .props = AV_CODEC_PROP_LOSSLESS,
1742  },
1743  {
1745  .type = AVMEDIA_TYPE_AUDIO,
1746  .name = "pcm_s8_planar",
1747  .long_name = NULL_IF_CONFIG_SMALL("PCM signed 8-bit planar"),
1748  .props = AV_CODEC_PROP_LOSSLESS,
1749  },
1750 
1751  /* various ADPCM codecs */
1752  {
1754  .type = AVMEDIA_TYPE_AUDIO,
1755  .name = "adpcm_ima_qt",
1756  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA QuickTime"),
1757  .props = AV_CODEC_PROP_LOSSY,
1758  },
1759  {
1761  .type = AVMEDIA_TYPE_AUDIO,
1762  .name = "adpcm_ima_wav",
1763  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA WAV"),
1764  .props = AV_CODEC_PROP_LOSSY,
1765  },
1766  {
1768  .type = AVMEDIA_TYPE_AUDIO,
1769  .name = "adpcm_ima_dk3",
1770  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK3"),
1771  .props = AV_CODEC_PROP_LOSSY,
1772  },
1773  {
1775  .type = AVMEDIA_TYPE_AUDIO,
1776  .name = "adpcm_ima_dk4",
1777  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Duck DK4"),
1778  .props = AV_CODEC_PROP_LOSSY,
1779  },
1780  {
1782  .type = AVMEDIA_TYPE_AUDIO,
1783  .name = "adpcm_ima_ws",
1784  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Westwood"),
1785  .props = AV_CODEC_PROP_LOSSY,
1786  },
1787  {
1789  .type = AVMEDIA_TYPE_AUDIO,
1790  .name = "adpcm_ima_smjpeg",
1791  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Loki SDL MJPEG"),
1792  .props = AV_CODEC_PROP_LOSSY,
1793  },
1794  {
1795  .id = AV_CODEC_ID_ADPCM_MS,
1796  .type = AVMEDIA_TYPE_AUDIO,
1797  .name = "adpcm_ms",
1798  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Microsoft"),
1799  .props = AV_CODEC_PROP_LOSSY,
1800  },
1801  {
1802  .id = AV_CODEC_ID_ADPCM_4XM,
1803  .type = AVMEDIA_TYPE_AUDIO,
1804  .name = "adpcm_4xm",
1805  .long_name = NULL_IF_CONFIG_SMALL("ADPCM 4X Movie"),
1806  .props = AV_CODEC_PROP_LOSSY,
1807  },
1808  {
1809  .id = AV_CODEC_ID_ADPCM_XA,
1810  .type = AVMEDIA_TYPE_AUDIO,
1811  .name = "adpcm_xa",
1812  .long_name = NULL_IF_CONFIG_SMALL("ADPCM CDROM XA"),
1813  .props = AV_CODEC_PROP_LOSSY,
1814  },
1815  {
1816  .id = AV_CODEC_ID_ADPCM_ADX,
1817  .type = AVMEDIA_TYPE_AUDIO,
1818  .name = "adpcm_adx",
1819  .long_name = NULL_IF_CONFIG_SMALL("SEGA CRI ADX ADPCM"),
1820  .props = AV_CODEC_PROP_LOSSY,
1821  },
1822  {
1823  .id = AV_CODEC_ID_ADPCM_EA,
1824  .type = AVMEDIA_TYPE_AUDIO,
1825  .name = "adpcm_ea",
1826  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts"),
1827  .props = AV_CODEC_PROP_LOSSY,
1828  },
1829  {
1830  .id = AV_CODEC_ID_ADPCM_G726,
1831  .type = AVMEDIA_TYPE_AUDIO,
1832  .name = "adpcm_g726",
1833  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"),
1834  .props = AV_CODEC_PROP_LOSSY,
1835  },
1836  {
1837  .id = AV_CODEC_ID_ADPCM_CT,
1838  .type = AVMEDIA_TYPE_AUDIO,
1839  .name = "adpcm_ct",
1840  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Creative Technology"),
1841  .props = AV_CODEC_PROP_LOSSY,
1842  },
1843  {
1844  .id = AV_CODEC_ID_ADPCM_SWF,
1845  .type = AVMEDIA_TYPE_AUDIO,
1846  .name = "adpcm_swf",
1847  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Shockwave Flash"),
1848  .props = AV_CODEC_PROP_LOSSY,
1849  },
1850  {
1852  .type = AVMEDIA_TYPE_AUDIO,
1853  .name = "adpcm_yamaha",
1854  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha"),
1855  .props = AV_CODEC_PROP_LOSSY,
1856  },
1857  {
1859  .type = AVMEDIA_TYPE_AUDIO,
1860  .name = "adpcm_sbpro_4",
1861  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 4-bit"),
1862  .props = AV_CODEC_PROP_LOSSY,
1863  },
1864  {
1866  .type = AVMEDIA_TYPE_AUDIO,
1867  .name = "adpcm_sbpro_3",
1868  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2.6-bit"),
1869  .props = AV_CODEC_PROP_LOSSY,
1870  },
1871  {
1873  .type = AVMEDIA_TYPE_AUDIO,
1874  .name = "adpcm_sbpro_2",
1875  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Sound Blaster Pro 2-bit"),
1876  .props = AV_CODEC_PROP_LOSSY,
1877  },
1878  {
1879  .id = AV_CODEC_ID_ADPCM_THP,
1880  .type = AVMEDIA_TYPE_AUDIO,
1881  .name = "adpcm_thp",
1882  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP"),
1883  .props = AV_CODEC_PROP_LOSSY,
1884  },
1885  {
1887  .type = AVMEDIA_TYPE_AUDIO,
1888  .name = "adpcm_thp_le",
1889  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo THP (Little-Endian)"),
1890  .props = AV_CODEC_PROP_LOSSY,
1891  },
1892  {
1894  .type = AVMEDIA_TYPE_AUDIO,
1895  .name = "adpcm_ima_amv",
1896  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA AMV"),
1897  .props = AV_CODEC_PROP_LOSSY,
1898  },
1899  {
1901  .type = AVMEDIA_TYPE_AUDIO,
1902  .name = "adpcm_ea_r1",
1903  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R1"),
1904  .props = AV_CODEC_PROP_LOSSY,
1905  },
1906  {
1908  .type = AVMEDIA_TYPE_AUDIO,
1909  .name = "adpcm_ea_r3",
1910  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R3"),
1911  .props = AV_CODEC_PROP_LOSSY,
1912  },
1913  {
1915  .type = AVMEDIA_TYPE_AUDIO,
1916  .name = "adpcm_ea_r2",
1917  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts R2"),
1918  .props = AV_CODEC_PROP_LOSSY,
1919  },
1920  {
1922  .type = AVMEDIA_TYPE_AUDIO,
1923  .name = "adpcm_ima_ea_sead",
1924  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts SEAD"),
1925  .props = AV_CODEC_PROP_LOSSY,
1926  },
1927  {
1929  .type = AVMEDIA_TYPE_AUDIO,
1930  .name = "adpcm_ima_ea_eacs",
1931  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Electronic Arts EACS"),
1932  .props = AV_CODEC_PROP_LOSSY,
1933  },
1934  {
1936  .type = AVMEDIA_TYPE_AUDIO,
1937  .name = "adpcm_ea_xas",
1938  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts XAS"),
1939  .props = AV_CODEC_PROP_LOSSY,
1940  },
1941  {
1943  .type = AVMEDIA_TYPE_AUDIO,
1944  .name = "adpcm_ea_maxis_xa",
1945  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Electronic Arts Maxis CDROM XA"),
1946  .props = AV_CODEC_PROP_LOSSY,
1947  },
1948  {
1950  .type = AVMEDIA_TYPE_AUDIO,
1951  .name = "adpcm_ima_iss",
1952  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Funcom ISS"),
1953  .props = AV_CODEC_PROP_LOSSY,
1954  },
1955  {
1956  .id = AV_CODEC_ID_ADPCM_G722,
1957  .type = AVMEDIA_TYPE_AUDIO,
1958  .name = "adpcm_g722",
1959  .long_name = NULL_IF_CONFIG_SMALL("G.722 ADPCM"),
1960  .props = AV_CODEC_PROP_LOSSY,
1961  },
1962  {
1964  .type = AVMEDIA_TYPE_AUDIO,
1965  .name = "adpcm_ima_apc",
1966  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA CRYO APC"),
1967  .props = AV_CODEC_PROP_LOSSY,
1968  },
1969  {
1970  .id = AV_CODEC_ID_ADPCM_AFC,
1971  .type = AVMEDIA_TYPE_AUDIO,
1972  .name = "adpcm_afc",
1973  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube AFC"),
1974  .props = AV_CODEC_PROP_LOSSY,
1975  },
1976  {
1978  .type = AVMEDIA_TYPE_AUDIO,
1979  .name = "adpcm_ima_oki",
1980  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Dialogic OKI"),
1981  .props = AV_CODEC_PROP_LOSSY,
1982  },
1983  {
1984  .id = AV_CODEC_ID_ADPCM_DTK,
1985  .type = AVMEDIA_TYPE_AUDIO,
1986  .name = "adpcm_dtk",
1987  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Nintendo Gamecube DTK"),
1988  .props = AV_CODEC_PROP_LOSSY,
1989  },
1990  {
1992  .type = AVMEDIA_TYPE_AUDIO,
1993  .name = "adpcm_ima_rad",
1994  .long_name = NULL_IF_CONFIG_SMALL("ADPCM IMA Radical"),
1995  .props = AV_CODEC_PROP_LOSSY,
1996  },
1997  {
1999  .type = AVMEDIA_TYPE_AUDIO,
2000  .name = "adpcm_g726le",
2001  .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM little-endian"),
2002  .props = AV_CODEC_PROP_LOSSY,
2003  },
2004  {
2005  .id = AV_CODEC_ID_ADPCM_VIMA,
2006  .type = AVMEDIA_TYPE_AUDIO,
2007  .name = "adpcm_vima",
2008  .long_name = NULL_IF_CONFIG_SMALL("LucasArts VIMA audio"),
2009  .props = AV_CODEC_PROP_LOSSY,
2010  },
2011  {
2012  .id = AV_CODEC_ID_ADPCM_PSX,
2013  .type = AVMEDIA_TYPE_AUDIO,
2014  .name = "adpcm_psx",
2015  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Playstation"),
2016  .props = AV_CODEC_PROP_LOSSY,
2017  },
2018  {
2019  .id = AV_CODEC_ID_ADPCM_AICA,
2020  .type = AVMEDIA_TYPE_AUDIO,
2021  .name = "adpcm_aica",
2022  .long_name = NULL_IF_CONFIG_SMALL("ADPCM Yamaha AICA"),
2023  .props = AV_CODEC_PROP_LOSSY,
2024  },
2025 
2026  /* AMR */
2027  {
2028  .id = AV_CODEC_ID_AMR_NB,
2029  .type = AVMEDIA_TYPE_AUDIO,
2030  .name = "amr_nb",
2031  .long_name = NULL_IF_CONFIG_SMALL("AMR-NB (Adaptive Multi-Rate NarrowBand)"),
2032  .props = AV_CODEC_PROP_LOSSY,
2033  },
2034  {
2035  .id = AV_CODEC_ID_AMR_WB,
2036  .type = AVMEDIA_TYPE_AUDIO,
2037  .name = "amr_wb",
2038  .long_name = NULL_IF_CONFIG_SMALL("AMR-WB (Adaptive Multi-Rate WideBand)"),
2039  .props = AV_CODEC_PROP_LOSSY,
2040  },
2041 
2042  /* RealAudio codecs*/
2043  {
2044  .id = AV_CODEC_ID_RA_144,
2045  .type = AVMEDIA_TYPE_AUDIO,
2046  .name = "ra_144",
2047  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 1.0 (14.4K)"),
2048  .props = AV_CODEC_PROP_LOSSY,
2049  },
2050  {
2051  .id = AV_CODEC_ID_RA_288,
2052  .type = AVMEDIA_TYPE_AUDIO,
2053  .name = "ra_288",
2054  .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
2055  .props = AV_CODEC_PROP_LOSSY,
2056  },
2057 
2058  /* various DPCM codecs */
2059  {
2060  .id = AV_CODEC_ID_ROQ_DPCM,
2061  .type = AVMEDIA_TYPE_AUDIO,
2062  .name = "roq_dpcm",
2063  .long_name = NULL_IF_CONFIG_SMALL("DPCM id RoQ"),
2064  .props = AV_CODEC_PROP_LOSSY,
2065  },
2066  {
2068  .type = AVMEDIA_TYPE_AUDIO,
2069  .name = "interplay_dpcm",
2070  .long_name = NULL_IF_CONFIG_SMALL("DPCM Interplay"),
2071  .props = AV_CODEC_PROP_LOSSY,
2072  },
2073  {
2074  .id = AV_CODEC_ID_XAN_DPCM,
2075  .type = AVMEDIA_TYPE_AUDIO,
2076  .name = "xan_dpcm",
2077  .long_name = NULL_IF_CONFIG_SMALL("DPCM Xan"),
2078  .props = AV_CODEC_PROP_LOSSY,
2079  },
2080  {
2081  .id = AV_CODEC_ID_SOL_DPCM,
2082  .type = AVMEDIA_TYPE_AUDIO,
2083  .name = "sol_dpcm",
2084  .long_name = NULL_IF_CONFIG_SMALL("DPCM Sol"),
2085  .props = AV_CODEC_PROP_LOSSY,
2086  },
2087  {
2088  .id = AV_CODEC_ID_SDX2_DPCM,
2089  .type = AVMEDIA_TYPE_AUDIO,
2090  .name = "sdx2_dpcm",
2091  .long_name = NULL_IF_CONFIG_SMALL("DPCM Squareroot-Delta-Exact"),
2092  .props = AV_CODEC_PROP_LOSSY,
2093  },
2094 
2095  /* audio codecs */
2096  {
2097  .id = AV_CODEC_ID_MP2,
2098  .type = AVMEDIA_TYPE_AUDIO,
2099  .name = "mp2",
2100  .long_name = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"),
2101  .props = AV_CODEC_PROP_LOSSY,
2102  },
2103  {
2104  .id = AV_CODEC_ID_MP3,
2105  .type = AVMEDIA_TYPE_AUDIO,
2106  .name = "mp3",
2107  .long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),
2108  .props = AV_CODEC_PROP_LOSSY,
2109  },
2110  {
2111  .id = AV_CODEC_ID_AAC,
2112  .type = AVMEDIA_TYPE_AUDIO,
2113  .name = "aac",
2114  .long_name = NULL_IF_CONFIG_SMALL("AAC (Advanced Audio Coding)"),
2115  .props = AV_CODEC_PROP_LOSSY,
2117  },
2118  {
2119  .id = AV_CODEC_ID_AC3,
2120  .type = AVMEDIA_TYPE_AUDIO,
2121  .name = "ac3",
2122  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"),
2123  .props = AV_CODEC_PROP_LOSSY,
2124  },
2125  {
2126  .id = AV_CODEC_ID_DTS,
2127  .type = AVMEDIA_TYPE_AUDIO,
2128  .name = "dts",
2129  .long_name = NULL_IF_CONFIG_SMALL("DCA (DTS Coherent Acoustics)"),
2132  },
2133  {
2134  .id = AV_CODEC_ID_VORBIS,
2135  .type = AVMEDIA_TYPE_AUDIO,
2136  .name = "vorbis",
2137  .long_name = NULL_IF_CONFIG_SMALL("Vorbis"),
2138  .props = AV_CODEC_PROP_LOSSY,
2139  },
2140  {
2141  .id = AV_CODEC_ID_DVAUDIO,
2142  .type = AVMEDIA_TYPE_AUDIO,
2143  .name = "dvaudio",
2144  .long_name = NULL_IF_CONFIG_SMALL("DV audio"),
2145  .props = AV_CODEC_PROP_LOSSY,
2146  },
2147  {
2148  .id = AV_CODEC_ID_WMAV1,
2149  .type = AVMEDIA_TYPE_AUDIO,
2150  .name = "wmav1",
2151  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 1"),
2152  .props = AV_CODEC_PROP_LOSSY,
2153  },
2154  {
2155  .id = AV_CODEC_ID_WMAV2,
2156  .type = AVMEDIA_TYPE_AUDIO,
2157  .name = "wmav2",
2158  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 2"),
2159  .props = AV_CODEC_PROP_LOSSY,
2160  },
2161  {
2162  .id = AV_CODEC_ID_MACE3,
2163  .type = AVMEDIA_TYPE_AUDIO,
2164  .name = "mace3",
2165  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
2166  .props = AV_CODEC_PROP_LOSSY,
2167  },
2168  {
2169  .id = AV_CODEC_ID_MACE6,
2170  .type = AVMEDIA_TYPE_AUDIO,
2171  .name = "mace6",
2172  .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
2173  .props = AV_CODEC_PROP_LOSSY,
2174  },
2175  {
2176  .id = AV_CODEC_ID_VMDAUDIO,
2177  .type = AVMEDIA_TYPE_AUDIO,
2178  .name = "vmdaudio",
2179  .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD audio"),
2180  .props = AV_CODEC_PROP_LOSSY,
2181  },
2182  {
2183  .id = AV_CODEC_ID_FLAC,
2184  .type = AVMEDIA_TYPE_AUDIO,
2185  .name = "flac",
2186  .long_name = NULL_IF_CONFIG_SMALL("FLAC (Free Lossless Audio Codec)"),
2187  .props = AV_CODEC_PROP_LOSSLESS,
2188  },
2189  {
2190  .id = AV_CODEC_ID_MP3ADU,
2191  .type = AVMEDIA_TYPE_AUDIO,
2192  .name = "mp3adu",
2193  .long_name = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"),
2194  .props = AV_CODEC_PROP_LOSSY,
2195  },
2196  {
2197  .id = AV_CODEC_ID_MP3ON4,
2198  .type = AVMEDIA_TYPE_AUDIO,
2199  .name = "mp3on4",
2200  .long_name = NULL_IF_CONFIG_SMALL("MP3onMP4"),
2201  .props = AV_CODEC_PROP_LOSSY,
2202  },
2203  {
2204  .id = AV_CODEC_ID_SHORTEN,
2205  .type = AVMEDIA_TYPE_AUDIO,
2206  .name = "shorten",
2207  .long_name = NULL_IF_CONFIG_SMALL("Shorten"),
2208  .props = AV_CODEC_PROP_LOSSLESS,
2209  },
2210  {
2211  .id = AV_CODEC_ID_ALAC,
2212  .type = AVMEDIA_TYPE_AUDIO,
2213  .name = "alac",
2214  .long_name = NULL_IF_CONFIG_SMALL("ALAC (Apple Lossless Audio Codec)"),
2215  .props = AV_CODEC_PROP_LOSSLESS,
2216  },
2217  {
2219  .type = AVMEDIA_TYPE_AUDIO,
2220  .name = "westwood_snd1",
2221  .long_name = NULL_IF_CONFIG_SMALL("Westwood Audio (SND1)"),
2222  .props = AV_CODEC_PROP_LOSSY,
2223  },
2224  {
2225  .id = AV_CODEC_ID_GSM,
2226  .type = AVMEDIA_TYPE_AUDIO,
2227  .name = "gsm",
2228  .long_name = NULL_IF_CONFIG_SMALL("GSM"),
2229  .props = AV_CODEC_PROP_LOSSY,
2230  },
2231  {
2232  .id = AV_CODEC_ID_QDM2,
2233  .type = AVMEDIA_TYPE_AUDIO,
2234  .name = "qdm2",
2235  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music Codec 2"),
2236  .props = AV_CODEC_PROP_LOSSY,
2237  },
2238  {
2239  .id = AV_CODEC_ID_COOK,
2240  .type = AVMEDIA_TYPE_AUDIO,
2241  .name = "cook",
2242  .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"),
2243  .props = AV_CODEC_PROP_LOSSY,
2244  },
2245  {
2246  .id = AV_CODEC_ID_TRUESPEECH,
2247  .type = AVMEDIA_TYPE_AUDIO,
2248  .name = "truespeech",
2249  .long_name = NULL_IF_CONFIG_SMALL("DSP Group TrueSpeech"),
2250  .props = AV_CODEC_PROP_LOSSY,
2251  },
2252  {
2253  .id = AV_CODEC_ID_TTA,
2254  .type = AVMEDIA_TYPE_AUDIO,
2255  .name = "tta",
2256  .long_name = NULL_IF_CONFIG_SMALL("TTA (True Audio)"),
2257  .props = AV_CODEC_PROP_LOSSLESS,
2258  },
2259  {
2260  .id = AV_CODEC_ID_SMACKAUDIO,
2261  .type = AVMEDIA_TYPE_AUDIO,
2262  .name = "smackaudio",
2263  .long_name = NULL_IF_CONFIG_SMALL("Smacker audio"),
2264  .props = AV_CODEC_PROP_LOSSY,
2265  },
2266  {
2267  .id = AV_CODEC_ID_QCELP,
2268  .type = AVMEDIA_TYPE_AUDIO,
2269  .name = "qcelp",
2270  .long_name = NULL_IF_CONFIG_SMALL("QCELP / PureVoice"),
2271  .props = AV_CODEC_PROP_LOSSY,
2272  },
2273  {
2274  .id = AV_CODEC_ID_WAVPACK,
2275  .type = AVMEDIA_TYPE_AUDIO,
2276  .name = "wavpack",
2277  .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
2279  },
2280  {
2282  .type = AVMEDIA_TYPE_AUDIO,
2283  .name = "dsicinaudio",
2284  .long_name = NULL_IF_CONFIG_SMALL("Delphine Software International CIN audio"),
2285  .props = AV_CODEC_PROP_LOSSY,
2286  },
2287  {
2288  .id = AV_CODEC_ID_IMC,
2289  .type = AVMEDIA_TYPE_AUDIO,
2290  .name = "imc",
2291  .long_name = NULL_IF_CONFIG_SMALL("IMC (Intel Music Coder)"),
2292  .props = AV_CODEC_PROP_LOSSY,
2293  },
2294  {
2295  .id = AV_CODEC_ID_MUSEPACK7,
2296  .type = AVMEDIA_TYPE_AUDIO,
2297  .name = "musepack7",
2298  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV7"),
2299  .props = AV_CODEC_PROP_LOSSY,
2300  },
2301  {
2302  .id = AV_CODEC_ID_MLP,
2303  .type = AVMEDIA_TYPE_AUDIO,
2304  .name = "mlp",
2305  .long_name = NULL_IF_CONFIG_SMALL("MLP (Meridian Lossless Packing)"),
2306  .props = AV_CODEC_PROP_LOSSLESS,
2307  },
2308  {
2309  .id = AV_CODEC_ID_GSM_MS,
2310  .type = AVMEDIA_TYPE_AUDIO,
2311  .name = "gsm_ms",
2312  .long_name = NULL_IF_CONFIG_SMALL("GSM Microsoft variant"),
2313  .props = AV_CODEC_PROP_LOSSY,
2314  },
2315  {
2316  .id = AV_CODEC_ID_ATRAC3,
2317  .type = AVMEDIA_TYPE_AUDIO,
2318  .name = "atrac3",
2319  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3 (Adaptive TRansform Acoustic Coding 3)"),
2320  .props = AV_CODEC_PROP_LOSSY,
2321  },
2322 #if FF_API_VOXWARE
2323  {
2324  .id = AV_CODEC_ID_VOXWARE,
2325  .type = AVMEDIA_TYPE_AUDIO,
2326  .name = "voxware",
2327  .long_name = NULL_IF_CONFIG_SMALL("Voxware RT29 Metasound"),
2328  .props = AV_CODEC_PROP_LOSSY,
2329  },
2330 #endif
2331  {
2332  .id = AV_CODEC_ID_APE,
2333  .type = AVMEDIA_TYPE_AUDIO,
2334  .name = "ape",
2335  .long_name = NULL_IF_CONFIG_SMALL("Monkey's Audio"),
2336  .props = AV_CODEC_PROP_LOSSLESS,
2337  },
2338  {
2339  .id = AV_CODEC_ID_NELLYMOSER,
2340  .type = AVMEDIA_TYPE_AUDIO,
2341  .name = "nellymoser",
2342  .long_name = NULL_IF_CONFIG_SMALL("Nellymoser Asao"),
2343  .props = AV_CODEC_PROP_LOSSY,
2344  },
2345  {
2346  .id = AV_CODEC_ID_MUSEPACK8,
2347  .type = AVMEDIA_TYPE_AUDIO,
2348  .name = "musepack8",
2349  .long_name = NULL_IF_CONFIG_SMALL("Musepack SV8"),
2350  .props = AV_CODEC_PROP_LOSSY,
2351  },
2352  {
2353  .id = AV_CODEC_ID_SPEEX,
2354  .type = AVMEDIA_TYPE_AUDIO,
2355  .name = "speex",
2356  .long_name = NULL_IF_CONFIG_SMALL("Speex"),
2357  .props = AV_CODEC_PROP_LOSSY,
2358  },
2359  {
2360  .id = AV_CODEC_ID_WMAVOICE,
2361  .type = AVMEDIA_TYPE_AUDIO,
2362  .name = "wmavoice",
2363  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Voice"),
2364  .props = AV_CODEC_PROP_LOSSY,
2365  },
2366  {
2367  .id = AV_CODEC_ID_WMAPRO,
2368  .type = AVMEDIA_TYPE_AUDIO,
2369  .name = "wmapro",
2370  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio 9 Professional"),
2371  .props = AV_CODEC_PROP_LOSSY,
2372  },
2373  {
2375  .type = AVMEDIA_TYPE_AUDIO,
2376  .name = "wmalossless",
2377  .long_name = NULL_IF_CONFIG_SMALL("Windows Media Audio Lossless"),
2378  .props = AV_CODEC_PROP_LOSSLESS,
2379  },
2380  {
2381  .id = AV_CODEC_ID_ATRAC3P,
2382  .type = AVMEDIA_TYPE_AUDIO,
2383  .name = "atrac3p",
2384  .long_name = NULL_IF_CONFIG_SMALL("ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)"),
2385  .props = AV_CODEC_PROP_LOSSY,
2386  },
2387  {
2388  .id = AV_CODEC_ID_EAC3,
2389  .type = AVMEDIA_TYPE_AUDIO,
2390  .name = "eac3",
2391  .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"),
2392  .props = AV_CODEC_PROP_LOSSY,
2393  },
2394  {
2395  .id = AV_CODEC_ID_SIPR,
2396  .type = AVMEDIA_TYPE_AUDIO,
2397  .name = "sipr",
2398  .long_name = NULL_IF_CONFIG_SMALL("RealAudio SIPR / ACELP.NET"),
2399  .props = AV_CODEC_PROP_LOSSY,
2400  },
2401  {
2402  .id = AV_CODEC_ID_MP1,
2403  .type = AVMEDIA_TYPE_AUDIO,
2404  .name = "mp1",
2405  .long_name = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"),
2406  .props = AV_CODEC_PROP_LOSSY,
2407  },
2408  {
2409  .id = AV_CODEC_ID_TWINVQ,
2410  .type = AVMEDIA_TYPE_AUDIO,
2411  .name = "twinvq",
2412  .long_name = NULL_IF_CONFIG_SMALL("VQF TwinVQ"),
2413  .props = AV_CODEC_PROP_LOSSY,
2414  },
2415  {
2416  .id = AV_CODEC_ID_TRUEHD,
2417  .type = AVMEDIA_TYPE_AUDIO,
2418  .name = "truehd",
2419  .long_name = NULL_IF_CONFIG_SMALL("TrueHD"),
2420  .props = AV_CODEC_PROP_LOSSLESS,
2421  },
2422  {
2423  .id = AV_CODEC_ID_MP4ALS,
2424  .type = AVMEDIA_TYPE_AUDIO,
2425  .name = "mp4als",
2426  .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 Audio Lossless Coding (ALS)"),
2427  .props = AV_CODEC_PROP_LOSSLESS,
2428  },
2429  {
2430  .id = AV_CODEC_ID_ATRAC1,
2431  .type = AVMEDIA_TYPE_AUDIO,
2432  .name = "atrac1",
2433  .long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
2434  .props = AV_CODEC_PROP_LOSSY,
2435  },
2436  {
2438  .type = AVMEDIA_TYPE_AUDIO,
2439  .name = "binkaudio_rdft",
2440  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (RDFT)"),
2441  .props = AV_CODEC_PROP_LOSSY,
2442  },
2443  {
2445  .type = AVMEDIA_TYPE_AUDIO,
2446  .name = "binkaudio_dct",
2447  .long_name = NULL_IF_CONFIG_SMALL("Bink Audio (DCT)"),
2448  .props = AV_CODEC_PROP_LOSSY,
2449  },
2450  {
2451  .id = AV_CODEC_ID_AAC_LATM,
2452  .type = AVMEDIA_TYPE_AUDIO,
2453  .name = "aac_latm",
2454  .long_name = NULL_IF_CONFIG_SMALL("AAC LATM (Advanced Audio Coding LATM syntax)"),
2455  .props = AV_CODEC_PROP_LOSSY,
2457  },
2458  {
2459  .id = AV_CODEC_ID_QDMC,
2460  .type = AVMEDIA_TYPE_AUDIO,
2461  .name = "qdmc",
2462  .long_name = NULL_IF_CONFIG_SMALL("QDesign Music"),
2463  .props = AV_CODEC_PROP_LOSSY,
2464  },
2465  {
2466  .id = AV_CODEC_ID_CELT,
2467  .type = AVMEDIA_TYPE_AUDIO,
2468  .name = "celt",
2469  .long_name = NULL_IF_CONFIG_SMALL("Constrained Energy Lapped Transform (CELT)"),
2470  .props = AV_CODEC_PROP_LOSSY,
2471  },
2472  {
2473  .id = AV_CODEC_ID_G723_1,
2474  .type = AVMEDIA_TYPE_AUDIO,
2475  .name = "g723_1",
2476  .long_name = NULL_IF_CONFIG_SMALL("G.723.1"),
2477  .props = AV_CODEC_PROP_LOSSY,
2478  },
2479  {
2480  .id = AV_CODEC_ID_DSS_SP,
2481  .type = AVMEDIA_TYPE_AUDIO,
2482  .name = "dss_sp",
2483  .long_name = NULL_IF_CONFIG_SMALL("Digital Speech Standard - Standard Play mode (DSS SP)"),
2484  .props = AV_CODEC_PROP_LOSSY,
2485  },
2486  {
2487  .id = AV_CODEC_ID_G729,
2488  .type = AVMEDIA_TYPE_AUDIO,
2489  .name = "g729",
2490  .long_name = NULL_IF_CONFIG_SMALL("G.729"),
2491  .props = AV_CODEC_PROP_LOSSY,
2492  },
2493  {
2494  .id = AV_CODEC_ID_8SVX_EXP,
2495  .type = AVMEDIA_TYPE_AUDIO,
2496  .name = "8svx_exp",
2497  .long_name = NULL_IF_CONFIG_SMALL("8SVX exponential"),
2498  .props = AV_CODEC_PROP_LOSSY,
2499  },
2500  {
2501  .id = AV_CODEC_ID_8SVX_FIB,
2502  .type = AVMEDIA_TYPE_AUDIO,
2503  .name = "8svx_fib",
2504  .long_name = NULL_IF_CONFIG_SMALL("8SVX fibonacci"),
2505  .props = AV_CODEC_PROP_LOSSY,
2506  },
2507  {
2508  .id = AV_CODEC_ID_BMV_AUDIO,
2509  .type = AVMEDIA_TYPE_AUDIO,
2510  .name = "bmv_audio",
2511  .long_name = NULL_IF_CONFIG_SMALL("Discworld II BMV audio"),
2512  .props = AV_CODEC_PROP_LOSSY,
2513  },
2514  {
2515  .id = AV_CODEC_ID_RALF,
2516  .type = AVMEDIA_TYPE_AUDIO,
2517  .name = "ralf",
2518  .long_name = NULL_IF_CONFIG_SMALL("RealAudio Lossless"),
2519  .props = AV_CODEC_PROP_LOSSLESS,
2520  },
2521  {
2522  .id = AV_CODEC_ID_IAC,
2523  .type = AVMEDIA_TYPE_AUDIO,
2524  .name = "iac",
2525  .long_name = NULL_IF_CONFIG_SMALL("IAC (Indeo Audio Coder)"),
2526  .props = AV_CODEC_PROP_LOSSY,
2527  },
2528  {
2529  .id = AV_CODEC_ID_ILBC,
2530  .type = AVMEDIA_TYPE_AUDIO,
2531  .name = "ilbc",
2532  .long_name = NULL_IF_CONFIG_SMALL("iLBC (Internet Low Bitrate Codec)"),
2533  .props = AV_CODEC_PROP_LOSSY,
2534  },
2535  {
2537  .type = AVMEDIA_TYPE_AUDIO,
2538  .name = "wavesynth",
2539  .long_name = NULL_IF_CONFIG_SMALL("Wave synthesis pseudo-codec"),
2540  },
2541  {
2542  .id = AV_CODEC_ID_SONIC,
2543  .type = AVMEDIA_TYPE_AUDIO,
2544  .name = "sonic",
2545  .long_name = NULL_IF_CONFIG_SMALL("Sonic"),
2546  },
2547  {
2548  .id = AV_CODEC_ID_SONIC_LS,
2549  .type = AVMEDIA_TYPE_AUDIO,
2550  .name = "sonicls",
2551  .long_name = NULL_IF_CONFIG_SMALL("Sonic lossless"),
2552  },
2553  {
2554  .id = AV_CODEC_ID_OPUS,
2555  .type = AVMEDIA_TYPE_AUDIO,
2556  .name = "opus",
2557  .long_name = NULL_IF_CONFIG_SMALL("Opus (Opus Interactive Audio Codec)"),
2558  .props = AV_CODEC_PROP_LOSSY,
2559  },
2560  {
2562  .type = AVMEDIA_TYPE_AUDIO,
2563  .name = "comfortnoise",
2564  .long_name = NULL_IF_CONFIG_SMALL("RFC 3389 Comfort Noise"),
2565  .props = AV_CODEC_PROP_LOSSY,
2566  },
2567  {
2568  .id = AV_CODEC_ID_TAK,
2569  .type = AVMEDIA_TYPE_AUDIO,
2570  .name = "tak",
2571  .long_name = NULL_IF_CONFIG_SMALL("TAK (Tom's lossless Audio Kompressor)"),
2572  .props = AV_CODEC_PROP_LOSSLESS,
2573  },
2574  {
2575  .id = AV_CODEC_ID_METASOUND,
2576  .type = AVMEDIA_TYPE_AUDIO,
2577  .name = "metasound",
2578  .long_name = NULL_IF_CONFIG_SMALL("Voxware MetaSound"),
2579  .props = AV_CODEC_PROP_LOSSY,
2580  },
2581  {
2582  .id = AV_CODEC_ID_PAF_AUDIO,
2583  .type = AVMEDIA_TYPE_AUDIO,
2584  .name = "paf_audio",
2585  .long_name = NULL_IF_CONFIG_SMALL("Amazing Studio Packed Animation File Audio"),
2586  .props = AV_CODEC_PROP_LOSSY,
2587  },
2588  {
2589  .id = AV_CODEC_ID_ON2AVC,
2590  .type = AVMEDIA_TYPE_AUDIO,
2591  .name = "avc",
2592  .long_name = NULL_IF_CONFIG_SMALL("On2 Audio for Video Codec"),
2593  .props = AV_CODEC_PROP_LOSSY,
2594  },
2595  {
2596  .id = AV_CODEC_ID_EVRC,
2597  .type = AVMEDIA_TYPE_AUDIO,
2598  .name = "evrc",
2599  .long_name = NULL_IF_CONFIG_SMALL("EVRC (Enhanced Variable Rate Codec)"),
2600  .props = AV_CODEC_PROP_LOSSY,
2601  },
2602  {
2603  .id = AV_CODEC_ID_SMV,
2604  .type = AVMEDIA_TYPE_AUDIO,
2605  .name = "smv",
2606  .long_name = NULL_IF_CONFIG_SMALL("SMV (Selectable Mode Vocoder)"),
2607  .props = AV_CODEC_PROP_LOSSY,
2608  },
2609  {
2610  .id = AV_CODEC_ID_4GV,
2611  .type = AVMEDIA_TYPE_AUDIO,
2612  .name = "4gv",
2613  .long_name = NULL_IF_CONFIG_SMALL("4GV (Fourth Generation Vocoder)"),
2614  .props = AV_CODEC_PROP_LOSSY,
2615  },
2616  {
2617  .id = AV_CODEC_ID_DSD_LSBF,
2618  .type = AVMEDIA_TYPE_AUDIO,
2619  .name = "dsd_lsbf",
2620  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first"),
2621  .props = AV_CODEC_PROP_LOSSY,
2622  },
2623  {
2624  .id = AV_CODEC_ID_DSD_MSBF,
2625  .type = AVMEDIA_TYPE_AUDIO,
2626  .name = "dsd_msbf",
2627  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first"),
2628  .props = AV_CODEC_PROP_LOSSY,
2629  },
2630  {
2632  .type = AVMEDIA_TYPE_AUDIO,
2633  .name = "dsd_lsbf_planar",
2634  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), least significant bit first, planar"),
2635  .props = AV_CODEC_PROP_LOSSY,
2636  },
2637  {
2639  .type = AVMEDIA_TYPE_AUDIO,
2640  .name = "dsd_msbf_planar",
2641  .long_name = NULL_IF_CONFIG_SMALL("DSD (Direct Stream Digital), most significant bit first, planar"),
2642  .props = AV_CODEC_PROP_LOSSY,
2643  },
2644  {
2646  .type = AVMEDIA_TYPE_AUDIO,
2647  .name = "interplayacm",
2648  .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"),
2649  .props = AV_CODEC_PROP_LOSSY,
2650  },
2651  {
2652  .id = AV_CODEC_ID_XMA1,
2653  .type = AVMEDIA_TYPE_AUDIO,
2654  .name = "xma1",
2655  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 1"),
2656  .props = AV_CODEC_PROP_LOSSY,
2657  },
2658  {
2659  .id = AV_CODEC_ID_XMA2,
2660  .type = AVMEDIA_TYPE_AUDIO,
2661  .name = "xma2",
2662  .long_name = NULL_IF_CONFIG_SMALL("Xbox Media Audio 2"),
2663  .props = AV_CODEC_PROP_LOSSY,
2664  },
2665 
2666  /* subtitle codecs */
2667  {
2669  .type = AVMEDIA_TYPE_SUBTITLE,
2670  .name = "dvd_subtitle",
2671  .long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
2672  .props = AV_CODEC_PROP_BITMAP_SUB,
2673  },
2674  {
2676  .type = AVMEDIA_TYPE_SUBTITLE,
2677  .name = "dvb_subtitle",
2678  .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"),
2679  .props = AV_CODEC_PROP_BITMAP_SUB,
2680  },
2681  {
2682  .id = AV_CODEC_ID_TEXT,
2683  .type = AVMEDIA_TYPE_SUBTITLE,
2684  .name = "text",
2685  .long_name = NULL_IF_CONFIG_SMALL("raw UTF-8 text"),
2686  .props = AV_CODEC_PROP_TEXT_SUB,
2687  },
2688  {
2689  .id = AV_CODEC_ID_XSUB,
2690  .type = AVMEDIA_TYPE_SUBTITLE,
2691  .name = "xsub",
2692  .long_name = NULL_IF_CONFIG_SMALL("XSUB"),
2693  .props = AV_CODEC_PROP_BITMAP_SUB,
2694  },
2695  {
2696  .id = AV_CODEC_ID_ASS,
2697  .type = AVMEDIA_TYPE_SUBTITLE,
2698  .name = "ass",
2699  .long_name = NULL_IF_CONFIG_SMALL("ASS (Advanced SSA) subtitle"),
2700  .props = AV_CODEC_PROP_TEXT_SUB,
2701  },
2702  {
2703  .id = AV_CODEC_ID_SSA,
2704  .type = AVMEDIA_TYPE_SUBTITLE,
2705  .name = "ssa",
2706  .long_name = NULL_IF_CONFIG_SMALL("SSA (SubStation Alpha) subtitle"),
2707  .props = AV_CODEC_PROP_TEXT_SUB,
2708  },
2709  {
2710  .id = AV_CODEC_ID_MOV_TEXT,
2711  .type = AVMEDIA_TYPE_SUBTITLE,
2712  .name = "mov_text",
2713  .long_name = NULL_IF_CONFIG_SMALL("MOV text"),
2714  .props = AV_CODEC_PROP_TEXT_SUB,
2715  },
2716  {
2718  .type = AVMEDIA_TYPE_SUBTITLE,
2719  .name = "hdmv_pgs_subtitle",
2720  .long_name = NULL_IF_CONFIG_SMALL("HDMV Presentation Graphic Stream subtitles"),
2721  .props = AV_CODEC_PROP_BITMAP_SUB,
2722  },
2723  {
2725  .type = AVMEDIA_TYPE_SUBTITLE,
2726  .name = "dvb_teletext",
2727  .long_name = NULL_IF_CONFIG_SMALL("DVB teletext"),
2728  },
2729  {
2730  .id = AV_CODEC_ID_SRT,
2731  .type = AVMEDIA_TYPE_SUBTITLE,
2732  .name = "srt",
2733  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle with embedded timing"),
2734  .props = AV_CODEC_PROP_TEXT_SUB,
2735  },
2736  {
2737  .id = AV_CODEC_ID_SUBRIP,
2738  .type = AVMEDIA_TYPE_SUBTITLE,
2739  .name = "subrip",
2740  .long_name = NULL_IF_CONFIG_SMALL("SubRip subtitle"),
2741  .props = AV_CODEC_PROP_TEXT_SUB,
2742  },
2743  {
2744  .id = AV_CODEC_ID_MICRODVD,
2745  .type = AVMEDIA_TYPE_SUBTITLE,
2746  .name = "microdvd",
2747  .long_name = NULL_IF_CONFIG_SMALL("MicroDVD subtitle"),
2748  .props = AV_CODEC_PROP_TEXT_SUB,
2749  },
2750  {
2751  .id = AV_CODEC_ID_MPL2,
2752  .type = AVMEDIA_TYPE_SUBTITLE,
2753  .name = "mpl2",
2754  .long_name = NULL_IF_CONFIG_SMALL("MPL2 subtitle"),
2755  .props = AV_CODEC_PROP_TEXT_SUB,
2756  },
2757  {
2758  .id = AV_CODEC_ID_EIA_608,
2759  .type = AVMEDIA_TYPE_SUBTITLE,
2760  .name = "eia_608",
2761  .long_name = NULL_IF_CONFIG_SMALL("EIA-608 closed captions"),
2762  .props = AV_CODEC_PROP_TEXT_SUB,
2763  },
2764  {
2765  .id = AV_CODEC_ID_JACOSUB,
2766  .type = AVMEDIA_TYPE_SUBTITLE,
2767  .name = "jacosub",
2768  .long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
2769  .props = AV_CODEC_PROP_TEXT_SUB,
2770  },
2771  {
2772  .id = AV_CODEC_ID_PJS,
2773  .type = AVMEDIA_TYPE_SUBTITLE,
2774  .name = "pjs",
2775  .long_name = NULL_IF_CONFIG_SMALL("PJS (Phoenix Japanimation Society) subtitle"),
2776  .props = AV_CODEC_PROP_TEXT_SUB,
2777  },
2778  {
2779  .id = AV_CODEC_ID_SAMI,
2780  .type = AVMEDIA_TYPE_SUBTITLE,
2781  .name = "sami",
2782  .long_name = NULL_IF_CONFIG_SMALL("SAMI subtitle"),
2783  .props = AV_CODEC_PROP_TEXT_SUB,
2784  },
2785  {
2786  .id = AV_CODEC_ID_REALTEXT,
2787  .type = AVMEDIA_TYPE_SUBTITLE,
2788  .name = "realtext",
2789  .long_name = NULL_IF_CONFIG_SMALL("RealText subtitle"),
2790  .props = AV_CODEC_PROP_TEXT_SUB,
2791  },
2792  {
2793  .id = AV_CODEC_ID_STL,
2794  .type = AVMEDIA_TYPE_SUBTITLE,
2795  .name = "stl",
2796  .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"),
2797  .props = AV_CODEC_PROP_TEXT_SUB,
2798  },
2799  {
2800  .id = AV_CODEC_ID_SUBVIEWER1,
2801  .type = AVMEDIA_TYPE_SUBTITLE,
2802  .name = "subviewer1",
2803  .long_name = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle"),
2804  .props = AV_CODEC_PROP_TEXT_SUB,
2805  },
2806  {
2807  .id = AV_CODEC_ID_SUBVIEWER,
2808  .type = AVMEDIA_TYPE_SUBTITLE,
2809  .name = "subviewer",
2810  .long_name = NULL_IF_CONFIG_SMALL("SubViewer subtitle"),
2811  .props = AV_CODEC_PROP_TEXT_SUB,
2812  },
2813  {
2814  .id = AV_CODEC_ID_VPLAYER,
2815  .type = AVMEDIA_TYPE_SUBTITLE,
2816  .name = "vplayer",
2817  .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"),
2818  .props = AV_CODEC_PROP_TEXT_SUB,
2819  },
2820  {
2821  .id = AV_CODEC_ID_WEBVTT,
2822  .type = AVMEDIA_TYPE_SUBTITLE,
2823  .name = "webvtt",
2824  .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
2825  .props = AV_CODEC_PROP_TEXT_SUB,
2826  },
2827  {
2829  .type = AVMEDIA_TYPE_SUBTITLE,
2830  .name = "hdmv_text_subtitle",
2831  .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
2832  .props = AV_CODEC_PROP_TEXT_SUB,
2833  },
2834 
2835  /* other kind of codecs and pseudo-codecs */
2836  {
2837  .id = AV_CODEC_ID_TTF,
2838  .type = AVMEDIA_TYPE_DATA,
2839  .name = "ttf",
2840  .long_name = NULL_IF_CONFIG_SMALL("TrueType font"),
2841  .mime_types= MT("application/x-truetype-font", "application/x-font"),
2842  },
2843  {
2844  .id = AV_CODEC_ID_BINTEXT,
2845  .type = AVMEDIA_TYPE_VIDEO,
2846  .name = "bintext",
2847  .long_name = NULL_IF_CONFIG_SMALL("Binary text"),
2848  .props = AV_CODEC_PROP_INTRA_ONLY,
2849  },
2850  {
2851  .id = AV_CODEC_ID_XBIN,
2852  .type = AVMEDIA_TYPE_VIDEO,
2853  .name = "xbin",
2854  .long_name = NULL_IF_CONFIG_SMALL("eXtended BINary text"),
2855  .props = AV_CODEC_PROP_INTRA_ONLY,
2856  },
2857  {
2858  .id = AV_CODEC_ID_IDF,
2859  .type = AVMEDIA_TYPE_VIDEO,
2860  .name = "idf",
2861  .long_name = NULL_IF_CONFIG_SMALL("iCEDraw text"),
2862  .props = AV_CODEC_PROP_INTRA_ONLY,
2863  },
2864  {
2865  .id = AV_CODEC_ID_OTF,
2866  .type = AVMEDIA_TYPE_DATA,
2867  .name = "otf",
2868  .long_name = NULL_IF_CONFIG_SMALL("OpenType font"),
2869  .mime_types= MT("application/vnd.ms-opentype"),
2870  },
2871  {
2872  .id = AV_CODEC_ID_SMPTE_KLV,
2873  .type = AVMEDIA_TYPE_DATA,
2874  .name = "klv",
2875  .long_name = NULL_IF_CONFIG_SMALL("SMPTE 336M Key-Length-Value (KLV) metadata"),
2876  },
2877  {
2878  .id = AV_CODEC_ID_DVD_NAV,
2879  .type = AVMEDIA_TYPE_DATA,
2880  .name = "dvd_nav_packet",
2881  .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"),
2882  },
2883  {
2884  .id = AV_CODEC_ID_TIMED_ID3,
2885  .type = AVMEDIA_TYPE_DATA,
2886  .name = "timed_id3",
2887  .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"),
2888  },
2889  {
2890  .id = AV_CODEC_ID_BIN_DATA,
2891  .type = AVMEDIA_TYPE_DATA,
2892  .name = "bin_data",
2893  .long_name = NULL_IF_CONFIG_SMALL("binary data"),
2894  .mime_types= MT("application/octet-stream"),
2895  },
2896 
2897  /* deprecated codec ids */
2898 };
2899 
2901 {
2902  int i;
2903 
2904  for (i = 0; i < FF_ARRAY_ELEMS(codec_descriptors); i++)
2905  if (codec_descriptors[i].id == id)
2906  return &codec_descriptors[i];
2907  return NULL;
2908 }
2909 
2911 {
2912  if (!prev)
2913  return &codec_descriptors[0];
2914  if (prev - codec_descriptors < FF_ARRAY_ELEMS(codec_descriptors) - 1)
2915  return prev + 1;
2916  return NULL;
2917 }
2918 
2920 {
2921  const AVCodecDescriptor *desc = NULL;
2922 
2923  while ((desc = avcodec_descriptor_next(desc)))
2924  if (!strcmp(desc->name, name))
2925  return desc;
2926  return NULL;
2927 }
2928 
2930 {
2931  const AVCodecDescriptor *desc = avcodec_descriptor_get(codec_id);
2932  return desc ? desc->type : AVMEDIA_TYPE_UNKNOWN;
2933 }
#define AV_CODEC_PROP_REORDER
Codec supports frame reordering.
Definition: avcodec.h:615
#define NULL
Definition: coverity.c:32
#define AV_CODEC_PROP_INTRA_ONLY
Codec uses only intra compression.
Definition: avcodec.h:595
#define AV_CODEC_PROP_LOSSY
Codec supports lossy compression.
Definition: avcodec.h:601
const AVProfile ff_aac_profiles[]
Definition: profiles.c:27
#define AV_CODEC_PROP_TEXT_SUB
Subtitle codec is text based.
Definition: avcodec.h:625
#define MT(...)
Definition: codec_desc.c:30
const AVProfile ff_mpeg4_video_profiles[]
Definition: profiles.c:96
const AVCodecDescriptor * avcodec_descriptor_next(const AVCodecDescriptor *prev)
Iterate over all codec descriptors known to libavcodec.
Definition: codec_desc.c:2910
Opaque data information usually continuous.
Definition: avutil.h:195
#define AV_CODEC_PROP_LOSSLESS
Codec supports lossless compression.
Definition: avcodec.h:605
const AVProfile ff_hevc_profiles[]
Definition: profiles.c:67
Libavcodec version macros.
AVCodecID
Identify the syntax and semantics of the bitstream.
Definition: avcodec.h:101
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:176
preferred ID for decoding MPEG audio layer 1, 2 or 3
Definition: avcodec.h:420
enum AVMediaType avcodec_get_type(enum AVCodecID codec_id)
Get the type of the given codec.
Definition: codec_desc.c:2929
enum AVCodecID codec_id
Definition: mov_chan.c:433
const AVCodecDescriptor * avcodec_descriptor_get(enum AVCodecID id)
Definition: codec_desc.c:2900
common internal API header
const AVProfile ff_mpeg2_video_profiles[]
Definition: profiles.c:84
Usually treated as AVMEDIA_TYPE_DATA.
Definition: avutil.h:192
Passthrough codec, AVFrames wrapped in AVPacket.
Definition: avcodec.h:553
preferred ID for MPEG-1/2 video decoding
Definition: avcodec.h:106
const AVCodecDescriptor * avcodec_descriptor_get_by_name(const char *name)
Definition: codec_desc.c:2919
#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:620
AVMediaType
Definition: avutil.h:191
const char * name
Name of the codec described by this descriptor.
Definition: avcodec.h:569
This struct describes the properties of a single codec described by an AVCodecID. ...
Definition: avcodec.h:561
static const AVCodecDescriptor codec_descriptors[]
Definition: codec_desc.c:32
const AVProfile ff_dca_profiles[]
Definition: profiles.c:40
enum AVMediaType type
Definition: avcodec.h:563
const AVProfile ff_vc1_profiles[]
Definition: profiles.c:116
common internal and external API header
raw UTF-8 text
Definition: avcodec.h:508
const AVProfile ff_h264_profiles[]
Definition: profiles.c:50
enum AVCodecID id
Definition: avcodec.h:562
as in Berlin toast format
Definition: avcodec.h:437
const AVProfile ff_vp9_profiles[]
Definition: profiles.c:124
const AVProfile ff_jpeg2000_profiles[]
Definition: profiles.c:75
const char * name
Definition: opengl_enc.c:103