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