1 /* 2 * tccodecs.h 3 * 4 * Copyright (C) Thomas Oestreich - June 2001 5 * ripped from 'magic.h' by Francesco Romani - November 2005 6 * 7 * This file is part of transcode, a video stream processing tool 8 * 9 * transcode is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation; either version 2, or (at your option) 12 * any later version. 13 * 14 * transcode is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with GNU Make; see the file COPYING. If not, write to 21 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 22 * 23 */ 24 25 #ifndef TC_CODECS_H 26 #define TC_CODECS_H 27 28 /* 29 * codecs identifiers. 30 * (WARNING: avilib relies on these _values_, at least for audio) 31 */ 32 33 typedef enum { 34 /* ok, now the real codecs */ 35 TC_CODEC_PCM = 0x00000001, 36 TC_CODEC_LPCM = 0x00010001, 37 38 TC_CODEC_AC3 = 0x00002000, 39 TC_CODEC_DTS = 0x0001000f, 40 TC_CODEC_MP3 = 0x00000055, 41 TC_CODEC_MP2 = 0x00000050, 42 TC_CODEC_AAC = 0x000000FF, 43 TC_CODEC_VORBIS = 0x0000FFFE, 44 45 /* we need special values here? */ 46 TC_CODEC_RGB = 0x00000024, 47 TC_CODEC_YV12 = 0x32315659, 48 TC_CODEC_YUV420P = 0x30323449, 49 TC_CODEC_YUV422P = 0x42323459, 50 TC_CODEC_UYVY = 0x59565955, 51 TC_CODEC_YUV2 = 0x32565559, 52 TC_CODEC_YUY2 = 0x32595559, 53 54 /* this group should be probably removed or changed */ 55 TC_CODEC_M2V = 0x000001b3, 56 TC_CODEC_MPEG = 0x01000000, 57 TC_CODEC_MPEG1 = 0x00100000, 58 TC_CODEC_MPEG2 = 0x00010000, 59 TC_CODEC_PS1 = 0x00007001, 60 TC_CODEC_PS2 = 0x00007002, 61 TC_CODEC_SUB = 0xA0000011, 62 63 /* we really need a specific value for those? */ 64 TC_CODEC_DV = 0x00001000, 65 TC_CODEC_VAG = 0x0000FEED, 66 TC_CODEC_PV3 = 0x50563301, 67 /* no special meaning, just enumeration from here */ 68 TC_CODEC_DIVX3 = 0xFFFE0001, 69 TC_CODEC_MP42, 70 TC_CODEC_MP43, 71 TC_CODEC_DIVX4, 72 TC_CODEC_DIVX5, 73 TC_CODEC_XVID, 74 TC_CODEC_H264, 75 TC_CODEC_MJPEG, 76 TC_CODEC_MPG1, 77 TC_CODEC_NUV, 78 TC_CODEC_LZO1, 79 TC_CODEC_RV10, 80 TC_CODEC_SVQ1, 81 TC_CODEC_SVQ3, 82 TC_CODEC_VP3, 83 TC_CODEC_4XM, 84 TC_CODEC_WMV1, 85 TC_CODEC_WMV2, 86 TC_CODEC_HUFFYUV, 87 TC_CODEC_INDEO3, 88 TC_CODEC_H263P, 89 TC_CODEC_H263I, 90 TC_CODEC_LZO2, 91 TC_CODEC_FRAPS, 92 TC_CODEC_FFV1, 93 TC_CODEC_ASV1, 94 TC_CODEC_ASV2, 95 TC_CODEC_THEORA, 96 TC_CODEC_MPEG1VIDEO, 97 TC_CODEC_MPEG2VIDEO, 98 TC_CODEC_MPEG4VIDEO, 99 TC_CODEC_LJPEG, /* lossless (motion) JPEG */ 100 101 /* special (pseudo)codecs */ 102 TC_CODEC_UNKNOWN = 0x00000000, 103 TC_CODEC_RAW = 0xFEFEFEFE, 104 TC_CODEC_ANY = 0xFFFFFFFE, 105 /* this one MUST be the last */ 106 TC_CODEC_ERROR = 0xFFFFFFFF 107 } TCCodecID; 108 109 #endif // TC_CODECS_H 110