tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

codec_id.h (17042B)


      1 /*
      2 * Codec IDs
      3 *
      4 * This file is part of FFmpeg.
      5 *
      6 * FFmpeg is free software; you can redistribute it and/or
      7 * modify it under the terms of the GNU Lesser General Public
      8 * License as published by the Free Software Foundation; either
      9 * version 2.1 of the License, or (at your option) any later version.
     10 *
     11 * FFmpeg is distributed in the hope that it will be useful,
     12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     14 * Lesser General Public License for more details.
     15 *
     16 * You should have received a copy of the GNU Lesser General Public
     17 * License along with FFmpeg; if not, write to the Free Software
     18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
     19 */
     20 
     21 #ifndef AVCODEC_CODEC_ID_H
     22 #define AVCODEC_CODEC_ID_H
     23 
     24 #include "libavutil/avutil.h"
     25 #include "libavutil/samplefmt.h"
     26 
     27 #include "version_major.h"
     28 
     29 /**
     30 * @addtogroup lavc_core
     31 * @{
     32 */
     33 
     34 /**
     35 * Identify the syntax and semantics of the bitstream.
     36 * The principle is roughly:
     37 * Two decoders with the same ID can decode the same streams.
     38 * Two encoders with the same ID can encode compatible streams.
     39 * There may be slight deviations from the principle due to implementation
     40 * details.
     41 *
     42 * If you add a codec ID to this list, add it so that
     43 * 1. no value of an existing codec ID changes (that would break ABI),
     44 * 2. it is as close as possible to similar codecs
     45 *
     46 * After adding new codec IDs, do not forget to add an entry to the codec
     47 * descriptor list and bump libavcodec minor version.
     48 */
     49 enum AVCodecID {
     50  AV_CODEC_ID_NONE,
     51 
     52  /* video codecs */
     53  AV_CODEC_ID_MPEG1VIDEO,
     54  AV_CODEC_ID_MPEG2VIDEO,  ///< preferred ID for MPEG-1/2 video decoding
     55  AV_CODEC_ID_H261,
     56  AV_CODEC_ID_H263,
     57  AV_CODEC_ID_RV10,
     58  AV_CODEC_ID_RV20,
     59  AV_CODEC_ID_MJPEG,
     60  AV_CODEC_ID_MJPEGB,
     61  AV_CODEC_ID_LJPEG,
     62  AV_CODEC_ID_SP5X,
     63  AV_CODEC_ID_JPEGLS,
     64  AV_CODEC_ID_MPEG4,
     65  AV_CODEC_ID_RAWVIDEO,
     66  AV_CODEC_ID_MSMPEG4V1,
     67  AV_CODEC_ID_MSMPEG4V2,
     68  AV_CODEC_ID_MSMPEG4V3,
     69  AV_CODEC_ID_WMV1,
     70  AV_CODEC_ID_WMV2,
     71  AV_CODEC_ID_H263P,
     72  AV_CODEC_ID_H263I,
     73  AV_CODEC_ID_FLV1,
     74  AV_CODEC_ID_SVQ1,
     75  AV_CODEC_ID_SVQ3,
     76  AV_CODEC_ID_DVVIDEO,
     77  AV_CODEC_ID_HUFFYUV,
     78  AV_CODEC_ID_CYUV,
     79  AV_CODEC_ID_H264,
     80  AV_CODEC_ID_INDEO3,
     81  AV_CODEC_ID_VP3,
     82  AV_CODEC_ID_THEORA,
     83  AV_CODEC_ID_ASV1,
     84  AV_CODEC_ID_ASV2,
     85  AV_CODEC_ID_FFV1,
     86  AV_CODEC_ID_4XM,
     87  AV_CODEC_ID_VCR1,
     88  AV_CODEC_ID_CLJR,
     89  AV_CODEC_ID_MDEC,
     90  AV_CODEC_ID_ROQ,
     91  AV_CODEC_ID_INTERPLAY_VIDEO,
     92  AV_CODEC_ID_XAN_WC3,
     93  AV_CODEC_ID_XAN_WC4,
     94  AV_CODEC_ID_RPZA,
     95  AV_CODEC_ID_CINEPAK,
     96  AV_CODEC_ID_WS_VQA,
     97  AV_CODEC_ID_MSRLE,
     98  AV_CODEC_ID_MSVIDEO1,
     99  AV_CODEC_ID_IDCIN,
    100  AV_CODEC_ID_8BPS,
    101  AV_CODEC_ID_SMC,
    102  AV_CODEC_ID_FLIC,
    103  AV_CODEC_ID_TRUEMOTION1,
    104  AV_CODEC_ID_VMDVIDEO,
    105  AV_CODEC_ID_MSZH,
    106  AV_CODEC_ID_ZLIB,
    107  AV_CODEC_ID_QTRLE,
    108  AV_CODEC_ID_TSCC,
    109  AV_CODEC_ID_ULTI,
    110  AV_CODEC_ID_QDRAW,
    111  AV_CODEC_ID_VIXL,
    112  AV_CODEC_ID_QPEG,
    113  AV_CODEC_ID_PNG,
    114  AV_CODEC_ID_PPM,
    115  AV_CODEC_ID_PBM,
    116  AV_CODEC_ID_PGM,
    117  AV_CODEC_ID_PGMYUV,
    118  AV_CODEC_ID_PAM,
    119  AV_CODEC_ID_FFVHUFF,
    120  AV_CODEC_ID_RV30,
    121  AV_CODEC_ID_RV40,
    122  AV_CODEC_ID_VC1,
    123  AV_CODEC_ID_WMV3,
    124  AV_CODEC_ID_LOCO,
    125  AV_CODEC_ID_WNV1,
    126  AV_CODEC_ID_AASC,
    127  AV_CODEC_ID_INDEO2,
    128  AV_CODEC_ID_FRAPS,
    129  AV_CODEC_ID_TRUEMOTION2,
    130  AV_CODEC_ID_BMP,
    131  AV_CODEC_ID_CSCD,
    132  AV_CODEC_ID_MMVIDEO,
    133  AV_CODEC_ID_ZMBV,
    134  AV_CODEC_ID_AVS,
    135  AV_CODEC_ID_SMACKVIDEO,
    136  AV_CODEC_ID_NUV,
    137  AV_CODEC_ID_KMVC,
    138  AV_CODEC_ID_FLASHSV,
    139  AV_CODEC_ID_CAVS,
    140  AV_CODEC_ID_JPEG2000,
    141  AV_CODEC_ID_VMNC,
    142  AV_CODEC_ID_VP5,
    143  AV_CODEC_ID_VP6,
    144  AV_CODEC_ID_VP6F,
    145  AV_CODEC_ID_TARGA,
    146  AV_CODEC_ID_DSICINVIDEO,
    147  AV_CODEC_ID_TIERTEXSEQVIDEO,
    148  AV_CODEC_ID_TIFF,
    149  AV_CODEC_ID_GIF,
    150  AV_CODEC_ID_DXA,
    151  AV_CODEC_ID_DNXHD,
    152  AV_CODEC_ID_THP,
    153  AV_CODEC_ID_SGI,
    154  AV_CODEC_ID_C93,
    155  AV_CODEC_ID_BETHSOFTVID,
    156  AV_CODEC_ID_PTX,
    157  AV_CODEC_ID_TXD,
    158  AV_CODEC_ID_VP6A,
    159  AV_CODEC_ID_AMV,
    160  AV_CODEC_ID_VB,
    161  AV_CODEC_ID_PCX,
    162  AV_CODEC_ID_SUNRAST,
    163  AV_CODEC_ID_INDEO4,
    164  AV_CODEC_ID_INDEO5,
    165  AV_CODEC_ID_MIMIC,
    166  AV_CODEC_ID_RL2,
    167  AV_CODEC_ID_ESCAPE124,
    168  AV_CODEC_ID_DIRAC,
    169  AV_CODEC_ID_BFI,
    170  AV_CODEC_ID_CMV,
    171  AV_CODEC_ID_MOTIONPIXELS,
    172  AV_CODEC_ID_TGV,
    173  AV_CODEC_ID_TGQ,
    174  AV_CODEC_ID_TQI,
    175  AV_CODEC_ID_AURA,
    176  AV_CODEC_ID_AURA2,
    177  AV_CODEC_ID_V210X,
    178  AV_CODEC_ID_TMV,
    179  AV_CODEC_ID_V210,
    180  AV_CODEC_ID_DPX,
    181  AV_CODEC_ID_MAD,
    182  AV_CODEC_ID_FRWU,
    183  AV_CODEC_ID_FLASHSV2,
    184  AV_CODEC_ID_CDGRAPHICS,
    185  AV_CODEC_ID_R210,
    186  AV_CODEC_ID_ANM,
    187  AV_CODEC_ID_BINKVIDEO,
    188  AV_CODEC_ID_IFF_ILBM,
    189 #define AV_CODEC_ID_IFF_BYTERUN1 AV_CODEC_ID_IFF_ILBM
    190  AV_CODEC_ID_KGV1,
    191  AV_CODEC_ID_YOP,
    192  AV_CODEC_ID_VP8,
    193  AV_CODEC_ID_PICTOR,
    194  AV_CODEC_ID_ANSI,
    195  AV_CODEC_ID_A64_MULTI,
    196  AV_CODEC_ID_A64_MULTI5,
    197  AV_CODEC_ID_R10K,
    198  AV_CODEC_ID_MXPEG,
    199  AV_CODEC_ID_LAGARITH,
    200  AV_CODEC_ID_PRORES,
    201  AV_CODEC_ID_JV,
    202  AV_CODEC_ID_DFA,
    203  AV_CODEC_ID_WMV3IMAGE,
    204  AV_CODEC_ID_VC1IMAGE,
    205  AV_CODEC_ID_UTVIDEO,
    206  AV_CODEC_ID_BMV_VIDEO,
    207  AV_CODEC_ID_VBLE,
    208  AV_CODEC_ID_DXTORY,
    209  AV_CODEC_ID_V410,
    210  AV_CODEC_ID_XWD,
    211  AV_CODEC_ID_CDXL,
    212  AV_CODEC_ID_XBM,
    213  AV_CODEC_ID_ZEROCODEC,
    214  AV_CODEC_ID_MSS1,
    215  AV_CODEC_ID_MSA1,
    216  AV_CODEC_ID_TSCC2,
    217  AV_CODEC_ID_MTS2,
    218  AV_CODEC_ID_CLLC,
    219  AV_CODEC_ID_MSS2,
    220  AV_CODEC_ID_VP9,
    221  AV_CODEC_ID_AIC,
    222  AV_CODEC_ID_ESCAPE130,
    223  AV_CODEC_ID_G2M,
    224  AV_CODEC_ID_WEBP,
    225  AV_CODEC_ID_HNM4_VIDEO,
    226  AV_CODEC_ID_HEVC,
    227 #define AV_CODEC_ID_H265 AV_CODEC_ID_HEVC
    228  AV_CODEC_ID_FIC,
    229  AV_CODEC_ID_ALIAS_PIX,
    230  AV_CODEC_ID_BRENDER_PIX,
    231  AV_CODEC_ID_PAF_VIDEO,
    232  AV_CODEC_ID_EXR,
    233  AV_CODEC_ID_VP7,
    234  AV_CODEC_ID_SANM,
    235  AV_CODEC_ID_SGIRLE,
    236  AV_CODEC_ID_MVC1,
    237  AV_CODEC_ID_MVC2,
    238  AV_CODEC_ID_HQX,
    239  AV_CODEC_ID_TDSC,
    240  AV_CODEC_ID_HQ_HQA,
    241  AV_CODEC_ID_HAP,
    242  AV_CODEC_ID_DDS,
    243  AV_CODEC_ID_DXV,
    244  AV_CODEC_ID_SCREENPRESSO,
    245  AV_CODEC_ID_RSCC,
    246  AV_CODEC_ID_AVS2,
    247  AV_CODEC_ID_PGX,
    248  AV_CODEC_ID_AVS3,
    249  AV_CODEC_ID_MSP2,
    250  AV_CODEC_ID_VVC,
    251 #define AV_CODEC_ID_H266 AV_CODEC_ID_VVC
    252  AV_CODEC_ID_Y41P,
    253  AV_CODEC_ID_AVRP,
    254  AV_CODEC_ID_012V,
    255  AV_CODEC_ID_AVUI,
    256  AV_CODEC_ID_TARGA_Y216,
    257  AV_CODEC_ID_V308,
    258  AV_CODEC_ID_V408,
    259  AV_CODEC_ID_YUV4,
    260  AV_CODEC_ID_AVRN,
    261  AV_CODEC_ID_CPIA,
    262  AV_CODEC_ID_XFACE,
    263  AV_CODEC_ID_SNOW,
    264  AV_CODEC_ID_SMVJPEG,
    265  AV_CODEC_ID_APNG,
    266  AV_CODEC_ID_DAALA,
    267  AV_CODEC_ID_CFHD,
    268  AV_CODEC_ID_TRUEMOTION2RT,
    269  AV_CODEC_ID_M101,
    270  AV_CODEC_ID_MAGICYUV,
    271  AV_CODEC_ID_SHEERVIDEO,
    272  AV_CODEC_ID_YLC,
    273  AV_CODEC_ID_PSD,
    274  AV_CODEC_ID_PIXLET,
    275  AV_CODEC_ID_SPEEDHQ,
    276  AV_CODEC_ID_FMVC,
    277  AV_CODEC_ID_SCPR,
    278  AV_CODEC_ID_CLEARVIDEO,
    279  AV_CODEC_ID_XPM,
    280  AV_CODEC_ID_AV1,
    281  AV_CODEC_ID_BITPACKED,
    282  AV_CODEC_ID_MSCC,
    283  AV_CODEC_ID_SRGC,
    284  AV_CODEC_ID_SVG,
    285  AV_CODEC_ID_GDV,
    286  AV_CODEC_ID_FITS,
    287  AV_CODEC_ID_IMM4,
    288  AV_CODEC_ID_PROSUMER,
    289  AV_CODEC_ID_MWSC,
    290  AV_CODEC_ID_WCMV,
    291  AV_CODEC_ID_RASC,
    292  AV_CODEC_ID_HYMT,
    293  AV_CODEC_ID_ARBC,
    294  AV_CODEC_ID_AGM,
    295  AV_CODEC_ID_LSCR,
    296  AV_CODEC_ID_VP4,
    297  AV_CODEC_ID_IMM5,
    298  AV_CODEC_ID_MVDV,
    299  AV_CODEC_ID_MVHA,
    300  AV_CODEC_ID_CDTOONS,
    301  AV_CODEC_ID_MV30,
    302  AV_CODEC_ID_NOTCHLC,
    303  AV_CODEC_ID_PFM,
    304  AV_CODEC_ID_MOBICLIP,
    305  AV_CODEC_ID_PHOTOCD,
    306  AV_CODEC_ID_IPU,
    307  AV_CODEC_ID_ARGO,
    308  AV_CODEC_ID_CRI,
    309  AV_CODEC_ID_SIMBIOSIS_IMX,
    310  AV_CODEC_ID_SGA_VIDEO,
    311  AV_CODEC_ID_GEM,
    312  AV_CODEC_ID_VBN,
    313  AV_CODEC_ID_JPEGXL,
    314  AV_CODEC_ID_QOI,
    315  AV_CODEC_ID_PHM,
    316  AV_CODEC_ID_RADIANCE_HDR,
    317  AV_CODEC_ID_WBMP,
    318  AV_CODEC_ID_MEDIA100,
    319  AV_CODEC_ID_VQC,
    320  AV_CODEC_ID_PDV,
    321  AV_CODEC_ID_EVC,
    322  AV_CODEC_ID_RTV1,
    323  AV_CODEC_ID_VMIX,
    324  AV_CODEC_ID_LEAD,
    325 
    326  /* various PCM "codecs" */
    327  AV_CODEC_ID_FIRST_AUDIO =
    328      0x10000,  ///< A dummy id pointing at the start of audio codecs
    329  AV_CODEC_ID_PCM_S16LE = 0x10000,
    330  AV_CODEC_ID_PCM_S16BE,
    331  AV_CODEC_ID_PCM_U16LE,
    332  AV_CODEC_ID_PCM_U16BE,
    333  AV_CODEC_ID_PCM_S8,
    334  AV_CODEC_ID_PCM_U8,
    335  AV_CODEC_ID_PCM_MULAW,
    336  AV_CODEC_ID_PCM_ALAW,
    337  AV_CODEC_ID_PCM_S32LE,
    338  AV_CODEC_ID_PCM_S32BE,
    339  AV_CODEC_ID_PCM_U32LE,
    340  AV_CODEC_ID_PCM_U32BE,
    341  AV_CODEC_ID_PCM_S24LE,
    342  AV_CODEC_ID_PCM_S24BE,
    343  AV_CODEC_ID_PCM_U24LE,
    344  AV_CODEC_ID_PCM_U24BE,
    345  AV_CODEC_ID_PCM_S24DAUD,
    346  AV_CODEC_ID_PCM_ZORK,
    347  AV_CODEC_ID_PCM_S16LE_PLANAR,
    348  AV_CODEC_ID_PCM_DVD,
    349  AV_CODEC_ID_PCM_F32BE,
    350  AV_CODEC_ID_PCM_F32LE,
    351  AV_CODEC_ID_PCM_F64BE,
    352  AV_CODEC_ID_PCM_F64LE,
    353  AV_CODEC_ID_PCM_BLURAY,
    354  AV_CODEC_ID_PCM_LXF,
    355  AV_CODEC_ID_S302M,
    356  AV_CODEC_ID_PCM_S8_PLANAR,
    357  AV_CODEC_ID_PCM_S24LE_PLANAR,
    358  AV_CODEC_ID_PCM_S32LE_PLANAR,
    359  AV_CODEC_ID_PCM_S16BE_PLANAR,
    360  AV_CODEC_ID_PCM_S64LE,
    361  AV_CODEC_ID_PCM_S64BE,
    362  AV_CODEC_ID_PCM_F16LE,
    363  AV_CODEC_ID_PCM_F24LE,
    364  AV_CODEC_ID_PCM_VIDC,
    365  AV_CODEC_ID_PCM_SGA,
    366 
    367  /* various ADPCM codecs */
    368  AV_CODEC_ID_ADPCM_IMA_QT = 0x11000,
    369  AV_CODEC_ID_ADPCM_IMA_WAV,
    370  AV_CODEC_ID_ADPCM_IMA_DK3,
    371  AV_CODEC_ID_ADPCM_IMA_DK4,
    372  AV_CODEC_ID_ADPCM_IMA_WS,
    373  AV_CODEC_ID_ADPCM_IMA_SMJPEG,
    374  AV_CODEC_ID_ADPCM_MS,
    375  AV_CODEC_ID_ADPCM_4XM,
    376  AV_CODEC_ID_ADPCM_XA,
    377  AV_CODEC_ID_ADPCM_ADX,
    378  AV_CODEC_ID_ADPCM_EA,
    379  AV_CODEC_ID_ADPCM_G726,
    380  AV_CODEC_ID_ADPCM_CT,
    381  AV_CODEC_ID_ADPCM_SWF,
    382  AV_CODEC_ID_ADPCM_YAMAHA,
    383  AV_CODEC_ID_ADPCM_SBPRO_4,
    384  AV_CODEC_ID_ADPCM_SBPRO_3,
    385  AV_CODEC_ID_ADPCM_SBPRO_2,
    386  AV_CODEC_ID_ADPCM_THP,
    387  AV_CODEC_ID_ADPCM_IMA_AMV,
    388  AV_CODEC_ID_ADPCM_EA_R1,
    389  AV_CODEC_ID_ADPCM_EA_R3,
    390  AV_CODEC_ID_ADPCM_EA_R2,
    391  AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
    392  AV_CODEC_ID_ADPCM_IMA_EA_EACS,
    393  AV_CODEC_ID_ADPCM_EA_XAS,
    394  AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
    395  AV_CODEC_ID_ADPCM_IMA_ISS,
    396  AV_CODEC_ID_ADPCM_G722,
    397  AV_CODEC_ID_ADPCM_IMA_APC,
    398  AV_CODEC_ID_ADPCM_VIMA,
    399  AV_CODEC_ID_ADPCM_AFC,
    400  AV_CODEC_ID_ADPCM_IMA_OKI,
    401  AV_CODEC_ID_ADPCM_DTK,
    402  AV_CODEC_ID_ADPCM_IMA_RAD,
    403  AV_CODEC_ID_ADPCM_G726LE,
    404  AV_CODEC_ID_ADPCM_THP_LE,
    405  AV_CODEC_ID_ADPCM_PSX,
    406  AV_CODEC_ID_ADPCM_AICA,
    407  AV_CODEC_ID_ADPCM_IMA_DAT4,
    408  AV_CODEC_ID_ADPCM_MTAF,
    409  AV_CODEC_ID_ADPCM_AGM,
    410  AV_CODEC_ID_ADPCM_ARGO,
    411  AV_CODEC_ID_ADPCM_IMA_SSI,
    412  AV_CODEC_ID_ADPCM_ZORK,
    413  AV_CODEC_ID_ADPCM_IMA_APM,
    414  AV_CODEC_ID_ADPCM_IMA_ALP,
    415  AV_CODEC_ID_ADPCM_IMA_MTF,
    416  AV_CODEC_ID_ADPCM_IMA_CUNNING,
    417  AV_CODEC_ID_ADPCM_IMA_MOFLEX,
    418  AV_CODEC_ID_ADPCM_IMA_ACORN,
    419  AV_CODEC_ID_ADPCM_XMD,
    420 
    421  /* AMR */
    422  AV_CODEC_ID_AMR_NB = 0x12000,
    423  AV_CODEC_ID_AMR_WB,
    424 
    425  /* RealAudio codecs*/
    426  AV_CODEC_ID_RA_144 = 0x13000,
    427  AV_CODEC_ID_RA_288,
    428 
    429  /* various DPCM codecs */
    430  AV_CODEC_ID_ROQ_DPCM = 0x14000,
    431  AV_CODEC_ID_INTERPLAY_DPCM,
    432  AV_CODEC_ID_XAN_DPCM,
    433  AV_CODEC_ID_SOL_DPCM,
    434  AV_CODEC_ID_SDX2_DPCM,
    435  AV_CODEC_ID_GREMLIN_DPCM,
    436  AV_CODEC_ID_DERF_DPCM,
    437  AV_CODEC_ID_WADY_DPCM,
    438  AV_CODEC_ID_CBD2_DPCM,
    439 
    440  /* audio codecs */
    441  AV_CODEC_ID_MP2 = 0x15000,
    442  AV_CODEC_ID_MP3,  ///< preferred ID for decoding MPEG audio layer 1, 2 or 3
    443  AV_CODEC_ID_AAC,
    444  AV_CODEC_ID_AC3,
    445  AV_CODEC_ID_DTS,
    446  AV_CODEC_ID_VORBIS,
    447  AV_CODEC_ID_DVAUDIO,
    448  AV_CODEC_ID_WMAV1,
    449  AV_CODEC_ID_WMAV2,
    450  AV_CODEC_ID_MACE3,
    451  AV_CODEC_ID_MACE6,
    452  AV_CODEC_ID_VMDAUDIO,
    453  AV_CODEC_ID_FLAC,
    454  AV_CODEC_ID_MP3ADU,
    455  AV_CODEC_ID_MP3ON4,
    456  AV_CODEC_ID_SHORTEN,
    457  AV_CODEC_ID_ALAC,
    458  AV_CODEC_ID_WESTWOOD_SND1,
    459  AV_CODEC_ID_GSM,  ///< as in Berlin toast format
    460  AV_CODEC_ID_QDM2,
    461  AV_CODEC_ID_COOK,
    462  AV_CODEC_ID_TRUESPEECH,
    463  AV_CODEC_ID_TTA,
    464  AV_CODEC_ID_SMACKAUDIO,
    465  AV_CODEC_ID_QCELP,
    466  AV_CODEC_ID_WAVPACK,
    467  AV_CODEC_ID_DSICINAUDIO,
    468  AV_CODEC_ID_IMC,
    469  AV_CODEC_ID_MUSEPACK7,
    470  AV_CODEC_ID_MLP,
    471  AV_CODEC_ID_GSM_MS, /* as found in WAV */
    472  AV_CODEC_ID_ATRAC3,
    473  AV_CODEC_ID_APE,
    474  AV_CODEC_ID_NELLYMOSER,
    475  AV_CODEC_ID_MUSEPACK8,
    476  AV_CODEC_ID_SPEEX,
    477  AV_CODEC_ID_WMAVOICE,
    478  AV_CODEC_ID_WMAPRO,
    479  AV_CODEC_ID_WMALOSSLESS,
    480  AV_CODEC_ID_ATRAC3P,
    481  AV_CODEC_ID_EAC3,
    482  AV_CODEC_ID_SIPR,
    483  AV_CODEC_ID_MP1,
    484  AV_CODEC_ID_TWINVQ,
    485  AV_CODEC_ID_TRUEHD,
    486  AV_CODEC_ID_MP4ALS,
    487  AV_CODEC_ID_ATRAC1,
    488  AV_CODEC_ID_BINKAUDIO_RDFT,
    489  AV_CODEC_ID_BINKAUDIO_DCT,
    490  AV_CODEC_ID_AAC_LATM,
    491  AV_CODEC_ID_QDMC,
    492  AV_CODEC_ID_CELT,
    493  AV_CODEC_ID_G723_1,
    494  AV_CODEC_ID_G729,
    495  AV_CODEC_ID_8SVX_EXP,
    496  AV_CODEC_ID_8SVX_FIB,
    497  AV_CODEC_ID_BMV_AUDIO,
    498  AV_CODEC_ID_RALF,
    499  AV_CODEC_ID_IAC,
    500  AV_CODEC_ID_ILBC,
    501  AV_CODEC_ID_OPUS,
    502  AV_CODEC_ID_COMFORT_NOISE,
    503  AV_CODEC_ID_TAK,
    504  AV_CODEC_ID_METASOUND,
    505  AV_CODEC_ID_PAF_AUDIO,
    506  AV_CODEC_ID_ON2AVC,
    507  AV_CODEC_ID_DSS_SP,
    508  AV_CODEC_ID_CODEC2,
    509  AV_CODEC_ID_FFWAVESYNTH,
    510  AV_CODEC_ID_SONIC,
    511  AV_CODEC_ID_SONIC_LS,
    512  AV_CODEC_ID_EVRC,
    513  AV_CODEC_ID_SMV,
    514  AV_CODEC_ID_DSD_LSBF,
    515  AV_CODEC_ID_DSD_MSBF,
    516  AV_CODEC_ID_DSD_LSBF_PLANAR,
    517  AV_CODEC_ID_DSD_MSBF_PLANAR,
    518  AV_CODEC_ID_4GV,
    519  AV_CODEC_ID_INTERPLAY_ACM,
    520  AV_CODEC_ID_XMA1,
    521  AV_CODEC_ID_XMA2,
    522  AV_CODEC_ID_DST,
    523  AV_CODEC_ID_ATRAC3AL,
    524  AV_CODEC_ID_ATRAC3PAL,
    525  AV_CODEC_ID_DOLBY_E,
    526  AV_CODEC_ID_APTX,
    527  AV_CODEC_ID_APTX_HD,
    528  AV_CODEC_ID_SBC,
    529  AV_CODEC_ID_ATRAC9,
    530  AV_CODEC_ID_HCOM,
    531  AV_CODEC_ID_ACELP_KELVIN,
    532  AV_CODEC_ID_MPEGH_3D_AUDIO,
    533  AV_CODEC_ID_SIREN,
    534  AV_CODEC_ID_HCA,
    535  AV_CODEC_ID_FASTAUDIO,
    536  AV_CODEC_ID_MSNSIREN,
    537  AV_CODEC_ID_DFPWM,
    538  AV_CODEC_ID_BONK,
    539  AV_CODEC_ID_MISC4,
    540  AV_CODEC_ID_APAC,
    541  AV_CODEC_ID_FTR,
    542  AV_CODEC_ID_WAVARC,
    543  AV_CODEC_ID_RKA,
    544  AV_CODEC_ID_AC4,
    545  AV_CODEC_ID_OSQ,
    546  AV_CODEC_ID_QOA,
    547  AV_CODEC_ID_LC3,
    548 
    549  /* subtitle codecs */
    550  AV_CODEC_ID_FIRST_SUBTITLE =
    551      0x17000,  ///< A dummy ID pointing at the start of subtitle codecs.
    552  AV_CODEC_ID_DVD_SUBTITLE = 0x17000,
    553  AV_CODEC_ID_DVB_SUBTITLE,
    554  AV_CODEC_ID_TEXT,  ///< raw UTF-8 text
    555  AV_CODEC_ID_XSUB,
    556  AV_CODEC_ID_SSA,
    557  AV_CODEC_ID_MOV_TEXT,
    558  AV_CODEC_ID_HDMV_PGS_SUBTITLE,
    559  AV_CODEC_ID_DVB_TELETEXT,
    560  AV_CODEC_ID_SRT,
    561  AV_CODEC_ID_MICRODVD,
    562  AV_CODEC_ID_EIA_608,
    563  AV_CODEC_ID_JACOSUB,
    564  AV_CODEC_ID_SAMI,
    565  AV_CODEC_ID_REALTEXT,
    566  AV_CODEC_ID_STL,
    567  AV_CODEC_ID_SUBVIEWER1,
    568  AV_CODEC_ID_SUBVIEWER,
    569  AV_CODEC_ID_SUBRIP,
    570  AV_CODEC_ID_WEBVTT,
    571  AV_CODEC_ID_MPL2,
    572  AV_CODEC_ID_VPLAYER,
    573  AV_CODEC_ID_PJS,
    574  AV_CODEC_ID_ASS,
    575  AV_CODEC_ID_HDMV_TEXT_SUBTITLE,
    576  AV_CODEC_ID_TTML,
    577  AV_CODEC_ID_ARIB_CAPTION,
    578 
    579  /* other specific kind of codecs (generally used for attachments) */
    580  AV_CODEC_ID_FIRST_UNKNOWN =
    581      0x18000,  ///< A dummy ID pointing at the start of various fake codecs.
    582  AV_CODEC_ID_TTF = 0x18000,
    583 
    584  AV_CODEC_ID_SCTE_35,  ///< Contain timestamp estimated through PCR of program
    585                        ///< stream.
    586  AV_CODEC_ID_EPG,
    587  AV_CODEC_ID_BINTEXT,
    588  AV_CODEC_ID_XBIN,
    589  AV_CODEC_ID_IDF,
    590  AV_CODEC_ID_OTF,
    591  AV_CODEC_ID_SMPTE_KLV,
    592  AV_CODEC_ID_DVD_NAV,
    593  AV_CODEC_ID_TIMED_ID3,
    594  AV_CODEC_ID_BIN_DATA,
    595  AV_CODEC_ID_SMPTE_2038,
    596 
    597  AV_CODEC_ID_PROBE =
    598      0x19000,  ///< codec_id is not known (like AV_CODEC_ID_NONE) but lavf
    599                ///< should attempt to identify it
    600 
    601  AV_CODEC_ID_MPEG2TS = 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS
    602                                  * stream (only used by libavformat) */
    603  AV_CODEC_ID_MPEG4SYSTEMS =
    604      0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems
    605                * stream (only used by libavformat) */
    606  AV_CODEC_ID_FFMETADATA = 0x21000,  ///< Dummy codec for streams containing
    607                                     ///< only metadata information.
    608  AV_CODEC_ID_WRAPPED_AVFRAME =
    609      0x21001,  ///< Passthrough codec, AVFrames wrapped in AVPacket
    610  /**
    611   * Dummy null video codec, useful mainly for development and debugging.
    612   * Null encoder/decoder discard all input and never return any output.
    613   */
    614  AV_CODEC_ID_VNULL,
    615  /**
    616   * Dummy null audio codec, useful mainly for development and debugging.
    617   * Null encoder/decoder discard all input and never return any output.
    618   */
    619  AV_CODEC_ID_ANULL,
    620 };
    621 
    622 /**
    623 * Get the type of the given codec.
    624 */
    625 enum AVMediaType avcodec_get_type(enum AVCodecID codec_id);
    626 
    627 /**
    628 * Get the name of a codec.
    629 * @return  a static string identifying the codec; never NULL
    630 */
    631 const char* avcodec_get_name(enum AVCodecID id);
    632 
    633 /**
    634 * Return codec bits per sample.
    635 *
    636 * @param[in] codec_id the codec
    637 * @return Number of bits per sample or zero if unknown for the given codec.
    638 */
    639 int av_get_bits_per_sample(enum AVCodecID codec_id);
    640 
    641 /**
    642 * Return codec bits per sample.
    643 * Only return non-zero if the bits per sample is exactly correct, not an
    644 * approximation.
    645 *
    646 * @param[in] codec_id the codec
    647 * @return Number of bits per sample or zero if unknown for the given codec.
    648 */
    649 int av_get_exact_bits_per_sample(enum AVCodecID codec_id);
    650 
    651 /**
    652 * Return a name for the specified profile, if available.
    653 *
    654 * @param codec_id the ID of the codec to which the requested profile belongs
    655 * @param profile the profile value for which a name is requested
    656 * @return A name for the profile if found, NULL otherwise.
    657 *
    658 * @note unlike av_get_profile_name(), which searches a list of profiles
    659 *       supported by a specific decoder or encoder implementation, this
    660 *       function searches the list of profiles from the AVCodecDescriptor
    661 */
    662 const char* avcodec_profile_name(enum AVCodecID codec_id, int profile);
    663 
    664 /**
    665 * Return the PCM codec associated with a sample format.
    666 * @param be  endianness, 0 for little, 1 for big,
    667 *            -1 (or anything else) for native
    668 * @return  AV_CODEC_ID_PCM_* or AV_CODEC_ID_NONE
    669 */
    670 enum AVCodecID av_get_pcm_codec(enum AVSampleFormat fmt, int be);
    671 
    672 /**
    673 * @}
    674 */
    675 
    676 #endif  // AVCODEC_CODEC_ID_H