00001 /* 00002 * utils for libavcodec 00003 * Copyright (c) 2001 Fabrice Bellard. 00004 * Copyright (c) 2003 Michel Bardiaux for the av_log API 00005 * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at> 00006 * 00007 * This library is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public 00009 * License as published by the Free Software Foundation; either 00010 * version 2 of the License, or (at your option) any later version. 00011 * 00012 * This library is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with this library; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00020 */ 00021 00027 #include "avcodec.h" 00028 00032 const char *codec_id_string(enum CodecID codec_id) 00033 { 00034 switch (codec_id) 00035 { 00036 case CODEC_ID_NONE: return "NONE"; 00037 case CODEC_ID_MPEG1VIDEO: return "MPEG1VIDEO"; 00038 case CODEC_ID_MPEG2VIDEO: return "MPEG2VIDEO"; 00039 case CODEC_ID_MPEG2VIDEO_DVDV: return "MPEG2VIDEO_DVDV"; 00040 case CODEC_ID_MPEG2VIDEO_XVMC: 00041 return "MPEG2VIDEO_XVMC"; 00042 case CODEC_ID_MPEG2VIDEO_XVMC_VLD: 00043 return "MPEG2VIDEO_XVMC_VLD"; 00044 case CODEC_ID_H261: return "H261"; 00045 case CODEC_ID_H263: return "H263"; 00046 case CODEC_ID_RV10: return "RV10"; 00047 case CODEC_ID_RV20: return "RV20"; 00048 case CODEC_ID_MJPEG: return "MJPEG"; 00049 case CODEC_ID_MJPEGB: return "MJPEGB"; 00050 case CODEC_ID_LJPEG: return "LJPEG"; 00051 case CODEC_ID_SP5X: return "SP5X"; 00052 case CODEC_ID_MPEG4: return "MPEG4"; 00053 case CODEC_ID_RAWVIDEO: return "RAWVIDEO"; 00054 case CODEC_ID_MSMPEG4V1: return "MSMPEG4V1"; 00055 case CODEC_ID_MSMPEG4V2: return "MSMPEG4V2"; 00056 case CODEC_ID_MSMPEG4V3: return "MSMPEG4V3"; 00057 case CODEC_ID_WMV1: return "WMV1"; 00058 case CODEC_ID_WMV2: return "WMV2"; 00059 case CODEC_ID_H263P: return "H263P"; 00060 case CODEC_ID_H263I: return "H263I"; 00061 case CODEC_ID_FLV1: return "FLV1"; 00062 case CODEC_ID_SVQ1: return "SVQ1"; 00063 case CODEC_ID_SVQ3: return "SVQ3"; 00064 case CODEC_ID_DVVIDEO: return "DVVIDEO"; 00065 case CODEC_ID_HUFFYUV: return "HUFFYUV"; 00066 case CODEC_ID_CYUV: return "CYUV"; 00067 case CODEC_ID_H264: return "H264"; 00068 case CODEC_ID_INDEO3: return "INDEO3"; 00069 case CODEC_ID_VP3: return "VP3"; 00070 case CODEC_ID_THEORA: return "THEORA"; 00071 case CODEC_ID_ASV1: return "ASV1"; 00072 case CODEC_ID_ASV2: return "ASV2"; 00073 case CODEC_ID_FFV1: return "FFV1"; 00074 case CODEC_ID_4XM: return "4XM"; 00075 case CODEC_ID_VCR1: return "VCR1"; 00076 case CODEC_ID_CLJR: return "CLJR"; 00077 case CODEC_ID_MDEC: return "MDEC"; 00078 case CODEC_ID_ROQ: return "ROQ"; 00079 case CODEC_ID_INTERPLAY_VIDEO: 00080 return "INTERPLAY_VIDEO"; 00081 case CODEC_ID_XAN_WC3: return "XAN_WC3"; 00082 case CODEC_ID_XAN_WC4: return "XAN_WC4"; 00083 case CODEC_ID_RPZA: return "RPZA"; 00084 case CODEC_ID_CINEPAK: return "CINEPAK"; 00085 case CODEC_ID_WS_VQA: return "WS_VQA"; 00086 case CODEC_ID_MSRLE: return "MSRLE"; 00087 case CODEC_ID_MSVIDEO1: return "MSVIDEO1"; 00088 case CODEC_ID_IDCIN: return "IDCIN"; 00089 case CODEC_ID_8BPS: return "8BPS"; 00090 case CODEC_ID_SMC: return "SMC"; 00091 case CODEC_ID_FLIC: return "FLIC"; 00092 case CODEC_ID_TRUEMOTION1: return "TRUEMOTION1"; 00093 case CODEC_ID_VMDVIDEO: return "VMDVIDEO"; 00094 case CODEC_ID_MSZH: return "MSZH"; 00095 case CODEC_ID_ZLIB: return "ZLIB"; 00096 case CODEC_ID_QTRLE: return "QTRLE"; 00097 case CODEC_ID_SNOW: return "SNOW"; 00098 case CODEC_ID_TSCC: return "TSCC"; 00099 case CODEC_ID_ULTI: return "ULTI"; 00100 case CODEC_ID_QDRAW: return "QDRAW"; 00101 case CODEC_ID_VIXL: return "VIXL"; 00102 case CODEC_ID_QPEG: return "QPEG"; 00103 case CODEC_ID_XVID: return "XVID"; 00104 case CODEC_ID_PNG: return "PNG"; 00105 case CODEC_ID_PPM: return "PPM"; 00106 case CODEC_ID_PBM: return "PBM"; 00107 case CODEC_ID_PGM: return "PGM"; 00108 case CODEC_ID_PGMYUV: return "PGMYUV"; 00109 case CODEC_ID_PAM: return "PAM"; 00110 case CODEC_ID_FFVHUFF: return "FFVHUFF"; 00111 case CODEC_ID_RV30: return "RV30"; 00112 case CODEC_ID_RV40: return "RV40"; 00113 case CODEC_ID_VC1: return "VC1"; 00114 case CODEC_ID_WMV3: return "WMV3"; 00115 case CODEC_ID_LOCO: return "LOCO"; 00116 case CODEC_ID_WNV1: return "WNV1"; 00117 case CODEC_ID_AASC: return "AASC"; 00118 case CODEC_ID_INDEO2: return "INDEO2"; 00119 case CODEC_ID_FRAPS: return "FRAPS"; 00120 case CODEC_ID_TRUEMOTION2: return "TRUEMOTION2"; 00121 case CODEC_ID_BMP: return "BMP"; 00122 00123 /* various pcm "codecs" */ 00124 case CODEC_ID_PCM_S16LE: return "PCM_S16LE"; 00125 case CODEC_ID_PCM_S16BE: return "PCM_S16BE"; 00126 case CODEC_ID_PCM_U16LE: return "PCM_U16LE"; 00127 case CODEC_ID_PCM_U16BE: return "PCM_U16BE"; 00128 case CODEC_ID_PCM_S8: return "PCM_S8"; 00129 case CODEC_ID_PCM_U8: return "PCM_U8"; 00130 case CODEC_ID_PCM_MULAW: return "PCM_MULAW"; 00131 case CODEC_ID_PCM_ALAW: return "PCM_ALAW"; 00132 case CODEC_ID_PCM_S32LE: return "PCM_S32LE"; 00133 case CODEC_ID_PCM_S32BE: return "PCM_S32BE"; 00134 case CODEC_ID_PCM_U32LE: return "PCM_U32LE"; 00135 case CODEC_ID_PCM_U32BE: return "PCM_U32BE"; 00136 case CODEC_ID_PCM_S24LE: return "PCM_S24LE"; 00137 case CODEC_ID_PCM_S24BE: return "PCM_S24BE"; 00138 case CODEC_ID_PCM_U24LE: return "PCM_U24LE"; 00139 case CODEC_ID_PCM_U24BE: return "PCM_U24BE"; 00140 case CODEC_ID_PCM_S24DAUD: return "PCM_S24DAUD"; 00141 00142 /* various adpcm codecs */ 00143 case CODEC_ID_ADPCM_IMA_QT: return "ADPCM_IMA_QT"; 00144 case CODEC_ID_ADPCM_IMA_WAV: return "ADPCM_IMA_WAV"; 00145 case CODEC_ID_ADPCM_IMA_DK3: return "ADPCM_IMA_DK3"; 00146 case CODEC_ID_ADPCM_IMA_DK4: return "ADPCM_IMA_DK4"; 00147 case CODEC_ID_ADPCM_IMA_WS: return "ADPCM_IMA_WS"; 00148 case CODEC_ID_ADPCM_IMA_SMJPEG: 00149 return "ADPCM_IMA_SMJPEG"; 00150 case CODEC_ID_ADPCM_MS: return "ADPCM_MS"; 00151 case CODEC_ID_ADPCM_4XM: return "ADPCM_4XM"; 00152 case CODEC_ID_ADPCM_XA: return "ADPCM_XA"; 00153 case CODEC_ID_ADPCM_ADX: return "ADPCM_ADX"; 00154 case CODEC_ID_ADPCM_EA: return "ADPCM_EA"; 00155 case CODEC_ID_ADPCM_G726: return "ADPCM_G726"; 00156 case CODEC_ID_ADPCM_CT: return "ADPCM_CT"; 00157 case CODEC_ID_ADPCM_SWF: return "ADPCM_SWF"; 00158 case CODEC_ID_ADPCM_YAMAHA: return "ADPCM_YAMAHA"; 00159 00160 /* AMR */ 00161 case CODEC_ID_AMR_NB: return "AMR_NB"; 00162 case CODEC_ID_AMR_WB: return "AMR_WB"; 00163 00164 /* RealAudio codecs*/ 00165 case CODEC_ID_RA_144: return "RA_144"; 00166 case CODEC_ID_RA_288: return "RA_288"; 00167 00168 /* various DPCM codecs */ 00169 case CODEC_ID_ROQ_DPCM: return "ROQ_DPCM"; 00170 case CODEC_ID_INTERPLAY_DPCM: return "INTERPLAY_DPCM"; 00171 case CODEC_ID_XAN_DPCM: return "XAN_DPCM"; 00172 case CODEC_ID_SOL_DPCM: return "SOL_DPCM"; 00173 00174 case CODEC_ID_MP2: return "MP2"; 00175 case CODEC_ID_MP3: return "MP3"; 00176 case CODEC_ID_AAC: return "AAC"; 00177 case CODEC_ID_AC3: return "AC3"; 00178 case CODEC_ID_DTS: return "DTS"; 00179 case CODEC_ID_VORBIS: return "VORBIS"; 00180 case CODEC_ID_DVAUDIO: return "DVAUDIO"; 00181 case CODEC_ID_WMAV1: return "WMAV1"; 00182 case CODEC_ID_WMAV2: return "WMAV2"; 00183 case CODEC_ID_MACE3: return "MACE3"; 00184 case CODEC_ID_MACE6: return "MACE6"; 00185 case CODEC_ID_VMDAUDIO: return "VMDAUDIO"; 00186 case CODEC_ID_SONIC: return "SONIC"; 00187 case CODEC_ID_SONIC_LS: return "SONIC_LS"; 00188 case CODEC_ID_FLAC: return "FLAC"; 00189 case CODEC_ID_MP3ADU: return "MP3ADU"; 00190 case CODEC_ID_MP3ON4: return "MP3ON4"; 00191 case CODEC_ID_SHORTEN: return "SHORTEN"; 00192 case CODEC_ID_ALAC: return "ALAC"; 00193 case CODEC_ID_WESTWOOD_SND1: return "WESTWOOD_SND1"; 00194 case CODEC_ID_GSM: return "GSM"; 00195 case CODEC_ID_QDM2: return "QDM2"; 00196 00197 /* subtitle codecs */ 00198 case CODEC_ID_DVD_SUBTITLE: return "DVD_SUBTITLE"; 00199 case CODEC_ID_DVB_SUBTITLE: return "DVB_SUBTITLE"; 00200 00201 case CODEC_ID_MPEG2VBI: return "MPEG2VBI"; 00202 case CODEC_ID_DVB_VBI: return "DVB_VBI"; 00203 00204 case CODEC_ID_DSMCC_B: return "DSMCC_B"; 00205 00206 case CODEC_ID_MPEG2TS: return "MPEG2TS"; 00207 } 00208 return "Unknown Codec ID"; 00209 } 00210 00214 const char *codec_type_string(enum CodecType codec_type) 00215 { 00216 switch (codec_type) 00217 { 00218 case CODEC_TYPE_UNKNOWN: return "Unknown"; 00219 case CODEC_TYPE_VIDEO: return "Video"; 00220 case CODEC_TYPE_AUDIO: return "Audio"; 00221 case CODEC_TYPE_DATA: return "Data"; 00222 case CODEC_TYPE_SUBTITLE: return "Subtitle"; 00223 } 00224 return "Invalid Codec Type"; 00225 }; 00226
1.5.5