3803 lines · 136.6 KB · C
RawDownload
/* * This file is part of FFmpeg. * * This table was generated from the long and short names of AVCodecs * please see the respective codec sources for authorship * * FFmpeg is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * FFmpeg is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with FFmpeg; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include <stdlib.h>#include <string.h> #include "libavutil/internal.h"#include "libavutil/macros.h" #include "codec_id.h"#include "codec_desc.h"#include "profiles.h" #define MT(...) (const char *const[]){ __VA_ARGS__, NULL } static const AVCodecDescriptor codec_descriptors[] = {    /* video codecs */    {        .id        = AV_CODEC_ID_MPEG1VIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mpeg1video",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER |                     // FIXME this is strigly speaking not true, as MPEG-1 does                     // not allow field coding, but our mpeg12 code (decoder and                     // parser) can sometimes change codec id at runtime, so                     // this is safer                     AV_CODEC_PROP_FIELDS,    },    {        .id        = AV_CODEC_ID_MPEG2VIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mpeg2video",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER |                     AV_CODEC_PROP_FIELDS,        .profiles  = NULL_IF_CONFIG_SMALL(ff_mpeg2_video_profiles),    },    {        .id        = AV_CODEC_ID_H261,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "h261",        .long_name = NULL_IF_CONFIG_SMALL("H.261"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_H263,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "h263",        .long_name = NULL_IF_CONFIG_SMALL("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,    },    {        .id        = AV_CODEC_ID_RV10,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "rv10",        .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_RV20,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "rv20",        .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,    },    {        .id        = AV_CODEC_ID_MJPEG,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mjpeg",        .long_name = NULL_IF_CONFIG_SMALL("Motion JPEG"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,        .mime_types= MT("image/jpeg"),        .profiles  = NULL_IF_CONFIG_SMALL(ff_mjpeg_profiles),    },    {        .id        = AV_CODEC_ID_MJPEGB,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mjpegb",        .long_name = NULL_IF_CONFIG_SMALL("Apple MJPEG-B"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_LJPEG,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "ljpeg",        .long_name = NULL_IF_CONFIG_SMALL("Lossless JPEG"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_SP5X,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "sp5x",        .long_name = NULL_IF_CONFIG_SMALL("Sunplus JPEG (SP5X)"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_JPEGLS,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "jpegls",        .long_name = NULL_IF_CONFIG_SMALL("JPEG-LS"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY |                     AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_MPEG4,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mpeg4",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,        .profiles  = NULL_IF_CONFIG_SMALL(ff_mpeg4_video_profiles),    },    {        .id        = AV_CODEC_ID_RAWVIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "rawvideo",        .long_name = NULL_IF_CONFIG_SMALL("raw video"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_MSMPEG4V1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "msmpeg4v1",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 1"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_MSMPEG4V2,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "msmpeg4v2",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_MSMPEG4V3,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "msmpeg4v3",        .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_WMV1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "wmv1",        .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_WMV2,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "wmv2",        .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_H263P,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "h263p",        .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 2"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,    },    {        .id        = AV_CODEC_ID_H263I,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "h263i",        .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,    },    {        .id        = AV_CODEC_ID_FLV1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "flv1",        .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_SVQ1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "svq1",        .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_SVQ3,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "svq3",        .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,    },    {        .id        = AV_CODEC_ID_DVVIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "dvvideo",        .long_name = NULL_IF_CONFIG_SMALL("DV (Digital Video)"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_HUFFYUV,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "huffyuv",        .long_name = NULL_IF_CONFIG_SMALL("HuffYUV"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_CYUV,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "cyuv",        .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_H264,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "h264",        .long_name = NULL_IF_CONFIG_SMALL("H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"),        .props     = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS |                     AV_CODEC_PROP_REORDER | AV_CODEC_PROP_FIELDS,        .profiles  = NULL_IF_CONFIG_SMALL(ff_h264_profiles),    },    {        .id        = AV_CODEC_ID_INDEO3,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "indeo3",        .long_name = NULL_IF_CONFIG_SMALL("Intel Indeo 3"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_VP3,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "vp3",        .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_THEORA,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "theora",        .long_name = NULL_IF_CONFIG_SMALL("Theora"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_ASV1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "asv1",        .long_name = NULL_IF_CONFIG_SMALL("ASUS V1"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_ASV2,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "asv2",        .long_name = NULL_IF_CONFIG_SMALL("ASUS V2"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_FFV1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "ffv1",        .long_name = NULL_IF_CONFIG_SMALL("FFmpeg video codec #1"),        .props     = AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_4XM,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "4xm",        .long_name = NULL_IF_CONFIG_SMALL("4X Movie"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_VCR1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "vcr1",        .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_CLJR,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "cljr",        .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_MDEC,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mdec",        .long_name = NULL_IF_CONFIG_SMALL("Sony PlayStation MDEC (Motion DECoder)"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_ROQ,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "roq",        .long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_INTERPLAY_VIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "interplayvideo",        .long_name = NULL_IF_CONFIG_SMALL("Interplay MVE video"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_XAN_WC3,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "xan_wc3",        .long_name = NULL_IF_CONFIG_SMALL("Wing Commander III / Xan"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_XAN_WC4,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "xan_wc4",        .long_name = NULL_IF_CONFIG_SMALL("Wing Commander IV / Xxan"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_RPZA,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "rpza",        .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_CINEPAK,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "cinepak",        .long_name = NULL_IF_CONFIG_SMALL("Cinepak"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_WS_VQA,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "ws_vqa",        .long_name = NULL_IF_CONFIG_SMALL("Westwood Studios VQA (Vector Quantized Animation) video"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_MSRLE,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "msrle",        .long_name = NULL_IF_CONFIG_SMALL("Microsoft RLE"),        .props     = AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_MSVIDEO1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "msvideo1",        .long_name = NULL_IF_CONFIG_SMALL("Microsoft Video 1"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_IDCIN,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "idcin",        .long_name = NULL_IF_CONFIG_SMALL("id Quake II CIN video"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_8BPS,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "8bps",        .long_name = NULL_IF_CONFIG_SMALL("QuickTime 8BPS video"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_SMC,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "smc",        .long_name = NULL_IF_CONFIG_SMALL("QuickTime Graphics (SMC)"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_FLIC,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "flic",        .long_name = NULL_IF_CONFIG_SMALL("Autodesk Animator Flic video"),        .props     = AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_TRUEMOTION1,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "truemotion1",        .long_name = NULL_IF_CONFIG_SMALL("Duck TrueMotion 1.0"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_VMDVIDEO,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "vmdvideo",        .long_name = NULL_IF_CONFIG_SMALL("Sierra VMD video"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_MSZH,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "mszh",        .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) MSZH"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_ZLIB,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "zlib",        .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_QTRLE,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "qtrle",        .long_name = NULL_IF_CONFIG_SMALL("QuickTime Animation (RLE) video"),        .props     = AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_TSCC,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "tscc",        .long_name = NULL_IF_CONFIG_SMALL("TechSmith Screen Capture Codec"),        .props     = AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_ULTI,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "ulti",        .long_name = NULL_IF_CONFIG_SMALL("IBM UltiMotion"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_QDRAW,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "qdraw",        .long_name = NULL_IF_CONFIG_SMALL("Apple QuickDraw"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_VIXL,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "vixl",        .long_name = NULL_IF_CONFIG_SMALL("Miro VideoXL"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_QPEG,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "qpeg",        .long_name = NULL_IF_CONFIG_SMALL("Q-team QPEG"),        .props     = AV_CODEC_PROP_LOSSY,    },    {        .id        = AV_CODEC_ID_PNG,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "png",        .long_name = NULL_IF_CONFIG_SMALL("PNG (Portable Network Graphics) image"),        .props     = AV_CODEC_PROP_LOSSLESS,        .mime_types= MT("image/png"),    },    {        .id        = AV_CODEC_ID_PPM,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "ppm",        .long_name = NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_PBM,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "pbm",        .long_name = NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_PGM,        .type      = AVMEDIA_TYPE_VIDEO,        .name      = "pgm",        .long_name = NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,    },    {        .id        = AV_CODEC_ID_PGMYUV,        .type      = AVMEDIA_TYPE_VIDEO,

Lines 1–500 of 3803.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t