codec_id.h (18010B)
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 = 0x10000, ///< A dummy id pointing at the start of audio codecs 328 AV_CODEC_ID_PCM_S16LE = 0x10000, 329 AV_CODEC_ID_PCM_S16BE, 330 AV_CODEC_ID_PCM_U16LE, 331 AV_CODEC_ID_PCM_U16BE, 332 AV_CODEC_ID_PCM_S8, 333 AV_CODEC_ID_PCM_U8, 334 AV_CODEC_ID_PCM_MULAW, 335 AV_CODEC_ID_PCM_ALAW, 336 AV_CODEC_ID_PCM_S32LE, 337 AV_CODEC_ID_PCM_S32BE, 338 AV_CODEC_ID_PCM_U32LE, 339 AV_CODEC_ID_PCM_U32BE, 340 AV_CODEC_ID_PCM_S24LE, 341 AV_CODEC_ID_PCM_S24BE, 342 AV_CODEC_ID_PCM_U24LE, 343 AV_CODEC_ID_PCM_U24BE, 344 AV_CODEC_ID_PCM_S24DAUD, 345 AV_CODEC_ID_PCM_ZORK, 346 AV_CODEC_ID_PCM_S16LE_PLANAR, 347 AV_CODEC_ID_PCM_DVD, 348 AV_CODEC_ID_PCM_F32BE, 349 AV_CODEC_ID_PCM_F32LE, 350 AV_CODEC_ID_PCM_F64BE, 351 AV_CODEC_ID_PCM_F64LE, 352 AV_CODEC_ID_PCM_BLURAY, 353 AV_CODEC_ID_PCM_LXF, 354 AV_CODEC_ID_S302M, 355 AV_CODEC_ID_PCM_S8_PLANAR, 356 AV_CODEC_ID_PCM_S24LE_PLANAR, 357 AV_CODEC_ID_PCM_S32LE_PLANAR, 358 AV_CODEC_ID_PCM_S16BE_PLANAR, 359 AV_CODEC_ID_PCM_S64LE, 360 AV_CODEC_ID_PCM_S64BE, 361 AV_CODEC_ID_PCM_F16LE, 362 AV_CODEC_ID_PCM_F24LE, 363 AV_CODEC_ID_PCM_VIDC, 364 AV_CODEC_ID_PCM_SGA, 365 366 /* various ADPCM codecs */ 367 AV_CODEC_ID_ADPCM_IMA_QT = 0x11000, 368 AV_CODEC_ID_ADPCM_IMA_WAV, 369 AV_CODEC_ID_ADPCM_IMA_DK3, 370 AV_CODEC_ID_ADPCM_IMA_DK4, 371 AV_CODEC_ID_ADPCM_IMA_WS, 372 AV_CODEC_ID_ADPCM_IMA_SMJPEG, 373 AV_CODEC_ID_ADPCM_MS, 374 AV_CODEC_ID_ADPCM_4XM, 375 AV_CODEC_ID_ADPCM_XA, 376 AV_CODEC_ID_ADPCM_ADX, 377 AV_CODEC_ID_ADPCM_EA, 378 AV_CODEC_ID_ADPCM_G726, 379 AV_CODEC_ID_ADPCM_CT, 380 AV_CODEC_ID_ADPCM_SWF, 381 AV_CODEC_ID_ADPCM_YAMAHA, 382 AV_CODEC_ID_ADPCM_SBPRO_4, 383 AV_CODEC_ID_ADPCM_SBPRO_3, 384 AV_CODEC_ID_ADPCM_SBPRO_2, 385 AV_CODEC_ID_ADPCM_THP, 386 AV_CODEC_ID_ADPCM_IMA_AMV, 387 AV_CODEC_ID_ADPCM_EA_R1, 388 AV_CODEC_ID_ADPCM_EA_R3, 389 AV_CODEC_ID_ADPCM_EA_R2, 390 AV_CODEC_ID_ADPCM_IMA_EA_SEAD, 391 AV_CODEC_ID_ADPCM_IMA_EA_EACS, 392 AV_CODEC_ID_ADPCM_EA_XAS, 393 AV_CODEC_ID_ADPCM_EA_MAXIS_XA, 394 AV_CODEC_ID_ADPCM_IMA_ISS, 395 AV_CODEC_ID_ADPCM_G722, 396 AV_CODEC_ID_ADPCM_IMA_APC, 397 AV_CODEC_ID_ADPCM_VIMA, 398 AV_CODEC_ID_ADPCM_AFC, 399 AV_CODEC_ID_ADPCM_IMA_OKI, 400 AV_CODEC_ID_ADPCM_DTK, 401 AV_CODEC_ID_ADPCM_IMA_RAD, 402 AV_CODEC_ID_ADPCM_G726LE, 403 AV_CODEC_ID_ADPCM_THP_LE, 404 AV_CODEC_ID_ADPCM_PSX, 405 AV_CODEC_ID_ADPCM_AICA, 406 AV_CODEC_ID_ADPCM_IMA_DAT4, 407 AV_CODEC_ID_ADPCM_MTAF, 408 AV_CODEC_ID_ADPCM_AGM, 409 AV_CODEC_ID_ADPCM_ARGO, 410 AV_CODEC_ID_ADPCM_IMA_SSI, 411 AV_CODEC_ID_ADPCM_ZORK, 412 AV_CODEC_ID_ADPCM_IMA_APM, 413 AV_CODEC_ID_ADPCM_IMA_ALP, 414 AV_CODEC_ID_ADPCM_IMA_MTF, 415 AV_CODEC_ID_ADPCM_IMA_CUNNING, 416 AV_CODEC_ID_ADPCM_IMA_MOFLEX, 417 AV_CODEC_ID_ADPCM_IMA_ACORN, 418 AV_CODEC_ID_ADPCM_XMD, 419 420 /* AMR */ 421 AV_CODEC_ID_AMR_NB = 0x12000, 422 AV_CODEC_ID_AMR_WB, 423 424 /* RealAudio codecs*/ 425 AV_CODEC_ID_RA_144 = 0x13000, 426 AV_CODEC_ID_RA_288, 427 428 /* various DPCM codecs */ 429 AV_CODEC_ID_ROQ_DPCM = 0x14000, 430 AV_CODEC_ID_INTERPLAY_DPCM, 431 AV_CODEC_ID_XAN_DPCM, 432 AV_CODEC_ID_SOL_DPCM, 433 AV_CODEC_ID_SDX2_DPCM, 434 AV_CODEC_ID_GREMLIN_DPCM, 435 AV_CODEC_ID_DERF_DPCM, 436 AV_CODEC_ID_WADY_DPCM, 437 AV_CODEC_ID_CBD2_DPCM, 438 439 /* audio codecs */ 440 AV_CODEC_ID_MP2 = 0x15000, 441 AV_CODEC_ID_MP3, ///< preferred ID for decoding MPEG audio layer 1, 2 or 3 442 AV_CODEC_ID_AAC, 443 AV_CODEC_ID_AC3, 444 AV_CODEC_ID_DTS, 445 AV_CODEC_ID_VORBIS, 446 AV_CODEC_ID_DVAUDIO, 447 AV_CODEC_ID_WMAV1, 448 AV_CODEC_ID_WMAV2, 449 AV_CODEC_ID_MACE3, 450 AV_CODEC_ID_MACE6, 451 AV_CODEC_ID_VMDAUDIO, 452 AV_CODEC_ID_FLAC, 453 AV_CODEC_ID_MP3ADU, 454 AV_CODEC_ID_MP3ON4, 455 AV_CODEC_ID_SHORTEN, 456 AV_CODEC_ID_ALAC, 457 AV_CODEC_ID_WESTWOOD_SND1, 458 AV_CODEC_ID_GSM, ///< as in Berlin toast format 459 AV_CODEC_ID_QDM2, 460 AV_CODEC_ID_COOK, 461 AV_CODEC_ID_TRUESPEECH, 462 AV_CODEC_ID_TTA, 463 AV_CODEC_ID_SMACKAUDIO, 464 AV_CODEC_ID_QCELP, 465 AV_CODEC_ID_WAVPACK, 466 AV_CODEC_ID_DSICINAUDIO, 467 AV_CODEC_ID_IMC, 468 AV_CODEC_ID_MUSEPACK7, 469 AV_CODEC_ID_MLP, 470 AV_CODEC_ID_GSM_MS, /* as found in WAV */ 471 AV_CODEC_ID_ATRAC3, 472 AV_CODEC_ID_APE, 473 AV_CODEC_ID_NELLYMOSER, 474 AV_CODEC_ID_MUSEPACK8, 475 AV_CODEC_ID_SPEEX, 476 AV_CODEC_ID_WMAVOICE, 477 AV_CODEC_ID_WMAPRO, 478 AV_CODEC_ID_WMALOSSLESS, 479 AV_CODEC_ID_ATRAC3P, 480 AV_CODEC_ID_EAC3, 481 AV_CODEC_ID_SIPR, 482 AV_CODEC_ID_MP1, 483 AV_CODEC_ID_TWINVQ, 484 AV_CODEC_ID_TRUEHD, 485 AV_CODEC_ID_MP4ALS, 486 AV_CODEC_ID_ATRAC1, 487 AV_CODEC_ID_BINKAUDIO_RDFT, 488 AV_CODEC_ID_BINKAUDIO_DCT, 489 AV_CODEC_ID_AAC_LATM, 490 AV_CODEC_ID_QDMC, 491 AV_CODEC_ID_CELT, 492 AV_CODEC_ID_G723_1, 493 AV_CODEC_ID_G729, 494 AV_CODEC_ID_8SVX_EXP, 495 AV_CODEC_ID_8SVX_FIB, 496 AV_CODEC_ID_BMV_AUDIO, 497 AV_CODEC_ID_RALF, 498 AV_CODEC_ID_IAC, 499 AV_CODEC_ID_ILBC, 500 AV_CODEC_ID_OPUS, 501 AV_CODEC_ID_COMFORT_NOISE, 502 AV_CODEC_ID_TAK, 503 AV_CODEC_ID_METASOUND, 504 AV_CODEC_ID_PAF_AUDIO, 505 AV_CODEC_ID_ON2AVC, 506 AV_CODEC_ID_DSS_SP, 507 AV_CODEC_ID_CODEC2, 508 AV_CODEC_ID_FFWAVESYNTH, 509 AV_CODEC_ID_SONIC, 510 AV_CODEC_ID_SONIC_LS, 511 AV_CODEC_ID_EVRC, 512 AV_CODEC_ID_SMV, 513 AV_CODEC_ID_DSD_LSBF, 514 AV_CODEC_ID_DSD_MSBF, 515 AV_CODEC_ID_DSD_LSBF_PLANAR, 516 AV_CODEC_ID_DSD_MSBF_PLANAR, 517 AV_CODEC_ID_4GV, 518 AV_CODEC_ID_INTERPLAY_ACM, 519 AV_CODEC_ID_XMA1, 520 AV_CODEC_ID_XMA2, 521 AV_CODEC_ID_DST, 522 AV_CODEC_ID_ATRAC3AL, 523 AV_CODEC_ID_ATRAC3PAL, 524 AV_CODEC_ID_DOLBY_E, 525 AV_CODEC_ID_APTX, 526 AV_CODEC_ID_APTX_HD, 527 AV_CODEC_ID_SBC, 528 AV_CODEC_ID_ATRAC9, 529 AV_CODEC_ID_HCOM, 530 AV_CODEC_ID_ACELP_KELVIN, 531 AV_CODEC_ID_MPEGH_3D_AUDIO, 532 AV_CODEC_ID_SIREN, 533 AV_CODEC_ID_HCA, 534 AV_CODEC_ID_FASTAUDIO, 535 AV_CODEC_ID_MSNSIREN, 536 AV_CODEC_ID_DFPWM, 537 AV_CODEC_ID_BONK, 538 AV_CODEC_ID_MISC4, 539 AV_CODEC_ID_APAC, 540 AV_CODEC_ID_FTR, 541 AV_CODEC_ID_WAVARC, 542 AV_CODEC_ID_RKA, 543 AV_CODEC_ID_AC4, 544 AV_CODEC_ID_OSQ, 545 AV_CODEC_ID_QOA, 546 547 /* subtitle codecs */ 548 AV_CODEC_ID_FIRST_SUBTITLE = 0x17000, ///< A dummy ID pointing at the start of subtitle codecs. 549 AV_CODEC_ID_DVD_SUBTITLE = 0x17000, 550 AV_CODEC_ID_DVB_SUBTITLE, 551 AV_CODEC_ID_TEXT, ///< raw UTF-8 text 552 AV_CODEC_ID_XSUB, 553 AV_CODEC_ID_SSA, 554 AV_CODEC_ID_MOV_TEXT, 555 AV_CODEC_ID_HDMV_PGS_SUBTITLE, 556 AV_CODEC_ID_DVB_TELETEXT, 557 AV_CODEC_ID_SRT, 558 AV_CODEC_ID_MICRODVD, 559 AV_CODEC_ID_EIA_608, 560 AV_CODEC_ID_JACOSUB, 561 AV_CODEC_ID_SAMI, 562 AV_CODEC_ID_REALTEXT, 563 AV_CODEC_ID_STL, 564 AV_CODEC_ID_SUBVIEWER1, 565 AV_CODEC_ID_SUBVIEWER, 566 AV_CODEC_ID_SUBRIP, 567 AV_CODEC_ID_WEBVTT, 568 AV_CODEC_ID_MPL2, 569 AV_CODEC_ID_VPLAYER, 570 AV_CODEC_ID_PJS, 571 AV_CODEC_ID_ASS, 572 AV_CODEC_ID_HDMV_TEXT_SUBTITLE, 573 AV_CODEC_ID_TTML, 574 AV_CODEC_ID_ARIB_CAPTION, 575 576 /* other specific kind of codecs (generally used for attachments) */ 577 AV_CODEC_ID_FIRST_UNKNOWN = 0x18000, ///< A dummy ID pointing at the start of various fake codecs. 578 AV_CODEC_ID_TTF = 0x18000, 579 580 AV_CODEC_ID_SCTE_35, ///< Contain timestamp estimated through PCR of program stream. 581 AV_CODEC_ID_EPG, 582 AV_CODEC_ID_BINTEXT, 583 AV_CODEC_ID_XBIN, 584 AV_CODEC_ID_IDF, 585 AV_CODEC_ID_OTF, 586 AV_CODEC_ID_SMPTE_KLV, 587 AV_CODEC_ID_DVD_NAV, 588 AV_CODEC_ID_TIMED_ID3, 589 AV_CODEC_ID_BIN_DATA, 590 AV_CODEC_ID_SMPTE_2038, 591 592 593 AV_CODEC_ID_PROBE = 0x19000, ///< codec_id is not known (like AV_CODEC_ID_NONE) but lavf should attempt to identify it 594 595 AV_CODEC_ID_MPEG2TS = 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS 596 * stream (only used by libavformat) */ 597 AV_CODEC_ID_MPEG4SYSTEMS = 0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems 598 * stream (only used by libavformat) */ 599 AV_CODEC_ID_FFMETADATA = 0x21000, ///< Dummy codec for streams containing only metadata information. 600 AV_CODEC_ID_WRAPPED_AVFRAME = 0x21001, ///< Passthrough codec, AVFrames wrapped in AVPacket 601 /** 602 * Dummy null video codec, useful mainly for development and debugging. 603 * Null encoder/decoder discard all input and never return any output. 604 */ 605 AV_CODEC_ID_VNULL, 606 /** 607 * Dummy null audio codec, useful mainly for development and debugging. 608 * Null encoder/decoder discard all input and never return any output. 609 */ 610 AV_CODEC_ID_ANULL, 611 }; 612 613 /** 614 * Get the type of the given codec. 615 */ 616 enum AVMediaType avcodec_get_type(enum AVCodecID codec_id); 617 618 /** 619 * Get the name of a codec. 620 * @return a static string identifying the codec; never NULL 621 */ 622 const char *avcodec_get_name(enum AVCodecID id); 623 624 /** 625 * Return codec bits per sample. 626 * 627 * @param[in] codec_id the codec 628 * @return Number of bits per sample or zero if unknown for the given codec. 629 */ 630 int av_get_bits_per_sample(enum AVCodecID codec_id); 631 632 /** 633 * Return codec bits per sample. 634 * Only return non-zero if the bits per sample is exactly correct, not an 635 * approximation. 636 * 637 * @param[in] codec_id the codec 638 * @return Number of bits per sample or zero if unknown for the given codec. 639 */ 640 int av_get_exact_bits_per_sample(enum AVCodecID codec_id); 641 642 /** 643 * Return a name for the specified profile, if available. 644 * 645 * @param codec_id the ID of the codec to which the requested profile belongs 646 * @param profile the profile value for which a name is requested 647 * @return A name for the profile if found, NULL otherwise. 648 * 649 * @note unlike av_get_profile_name(), which searches a list of profiles 650 * supported by a specific decoder or encoder implementation, this 651 * function searches the list of profiles from the AVCodecDescriptor 652 */ 653 const char *avcodec_profile_name(enum AVCodecID codec_id, int profile); 654 655 /** 656 * Return the PCM codec associated with a sample format. 657 * @param be endianness, 0 for little, 1 for big, 658 * -1 (or anything else) for native 659 * @return AV_CODEC_ID_PCM_* or AV_CODEC_ID_NONE 660 */ 661 enum AVCodecID av_get_pcm_codec(enum AVSampleFormat fmt, int be); 662 663 /** 664 * @} 665 */ 666 667 #endif // AVCODEC_CODEC_ID_H