LCOV - code coverage report
Current view: top level - libavcodec - codec_desc.c (source / functions) Hit Total Coverage
Test: coverage.info Lines: 17 21 81.0 %
Date: 2018-05-20 11:54:08 Functions: 4 5 80.0 %

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

Generated by: LCOV version 1.13