Do this instead of exporting raw_pix_fmt_tags via avpriv_get_raw_pix_fmt_tags(). For shared builds this will lead to an increase in the combined size of the lavc and fourcc2pixfmt binaries (because the overhead of exporting avpriv_get_raw_pix_fmt_tags() is dwarfed by the size of the array), but given that fourcc2pixfmt is a test tool that is not widely distributed it does not really matter. For static builds the opposite is true (the rest of lavc/raw.o is no longer pulled into the test tool and the getter can be removed, too). This patch has the additional benefit of removing struct PixelFormatTag from the ABI.
Unified · Split
| @@ -24,302 +24,9 @@ · 23 unmodified lines | ||
| 24 | 24 | * Raw Video Codec |
| 25 | 25 | */ |
| 26 | 26 | |
| 27 | −#include "libavutil/macros.h" | |
| 28 | 27 | #include "avcodec.h" |
| 29 | 28 | #include "raw.h" |
| 30 | − | |
| 31 | −static const PixelFormatTag raw_pix_fmt_tags[] = { | |
| 32 | − { AV_PIX_FMT_YUV420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ | |
| 33 | − { AV_PIX_FMT_YUV420P, MKTAG('I', 'Y', 'U', 'V') }, | |
| 34 | − { AV_PIX_FMT_YUV420P, MKTAG('y', 'v', '1', '2') }, | |
| 35 | − { AV_PIX_FMT_YUV420P, MKTAG('Y', 'V', '1', '2') }, | |
| 36 | − { AV_PIX_FMT_YUV410P, MKTAG('Y', 'U', 'V', '9') }, | |
| 37 | − { AV_PIX_FMT_YUV410P, MKTAG('Y', 'V', 'U', '9') }, | |
| 38 | − { AV_PIX_FMT_YUV411P, MKTAG('Y', '4', '1', 'B') }, | |
| 39 | − { AV_PIX_FMT_YUV422P, MKTAG('Y', '4', '2', 'B') }, | |
| 40 | − { AV_PIX_FMT_YUV422P, MKTAG('P', '4', '2', '2') }, | |
| 41 | − { AV_PIX_FMT_YUV422P, MKTAG('Y', 'V', '1', '6') }, | |
| 42 | − /* yuvjXXX formats are deprecated hacks specific to libav*, | |
| 43 | − they are identical to yuvXXX */ | |
| 44 | − { AV_PIX_FMT_YUVJ420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ | |
| 45 | − { AV_PIX_FMT_YUVJ420P, MKTAG('I', 'Y', 'U', 'V') }, | |
| 46 | − { AV_PIX_FMT_YUVJ420P, MKTAG('Y', 'V', '1', '2') }, | |
| 47 | − { AV_PIX_FMT_YUVJ422P, MKTAG('Y', '4', '2', 'B') }, | |
| 48 | − { AV_PIX_FMT_YUVJ422P, MKTAG('P', '4', '2', '2') }, | |
| 49 | − { AV_PIX_FMT_GRAY8, MKTAG('Y', '8', '0', '0') }, | |
| 50 | − { AV_PIX_FMT_GRAY8, MKTAG('Y', '8', ' ', ' ') }, | |
| 51 | − | |
| 52 | − { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', '2') }, /* Packed formats */ | |
| 53 | − { AV_PIX_FMT_YUYV422, MKTAG('Y', '4', '2', '2') }, | |
| 54 | − { AV_PIX_FMT_YUYV422, MKTAG('V', '4', '2', '2') }, | |
| 55 | − { AV_PIX_FMT_YUYV422, MKTAG('V', 'Y', 'U', 'Y') }, | |
| 56 | − { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'N', 'V') }, | |
| 57 | − { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', 'V') }, | |
| 58 | − { AV_PIX_FMT_YVYU422, MKTAG('Y', 'V', 'Y', 'U') }, /* Philips */ | |
| 59 | − { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'V', 'Y') }, | |
| 60 | − { AV_PIX_FMT_UYVY422, MKTAG('H', 'D', 'Y', 'C') }, | |
| 61 | − { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'V') }, | |
| 62 | − { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'Y') }, | |
| 63 | − { AV_PIX_FMT_UYVY422, MKTAG('u', 'y', 'v', '1') }, | |
| 64 | − { AV_PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', '1') }, | |
| 65 | − { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'R', 'n') }, /* Avid AVI Codec 1:1 */ | |
| 66 | − { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', '1', 'x') }, /* Avid 1:1x */ | |
| 67 | − { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'u', 'p') }, | |
| 68 | − { AV_PIX_FMT_UYVY422, MKTAG('V', 'D', 'T', 'Z') }, /* SoftLab-NSK VideoTizer */ | |
| 69 | − { AV_PIX_FMT_UYVY422, MKTAG('a', 'u', 'v', '2') }, | |
| 70 | − { AV_PIX_FMT_UYVY422, MKTAG('c', 'y', 'u', 'v') }, /* CYUV is also Creative YUV */ | |
| 71 | − { AV_PIX_FMT_UYYVYY411, MKTAG('Y', '4', '1', '1') }, | |
| 72 | − { AV_PIX_FMT_GRAY8, MKTAG('G', 'R', 'E', 'Y') }, | |
| 73 | − { AV_PIX_FMT_NV12, MKTAG('N', 'V', '1', '2') }, | |
| 74 | − { AV_PIX_FMT_NV21, MKTAG('N', 'V', '2', '1') }, | |
| 75 | − { AV_PIX_FMT_VUYA, MKTAG('A', 'Y', 'U', 'V') }, /* MS 4:4:4:4 */ | |
| 76 | − { AV_PIX_FMT_XV30LE, MKTAG('Y', '4', '1', '0') }, | |
| 77 | − { AV_PIX_FMT_XV48LE, MKTAG('Y', '4', '1', '6') }, | |
| 78 | − { AV_PIX_FMT_Y210LE, MKTAG('Y', '2', '1', '0') }, | |
| 79 | − { AV_PIX_FMT_Y216LE, MKTAG('Y', '2', '1', '6') }, | |
| 80 | − | |
| 81 | − /* nut */ | |
| 82 | − { AV_PIX_FMT_RGB555LE, MKTAG('R', 'G', 'B', 15) }, | |
| 83 | − { AV_PIX_FMT_BGR555LE, MKTAG('B', 'G', 'R', 15) }, | |
| 84 | − { AV_PIX_FMT_RGB565LE, MKTAG('R', 'G', 'B', 16) }, | |
| 85 | − { AV_PIX_FMT_BGR565LE, MKTAG('B', 'G', 'R', 16) }, | |
| 86 | − { AV_PIX_FMT_RGB555BE, MKTAG(15 , 'B', 'G', 'R') }, | |
| 87 | − { AV_PIX_FMT_BGR555BE, MKTAG(15 , 'R', 'G', 'B') }, | |
| 88 | − { AV_PIX_FMT_RGB565BE, MKTAG(16 , 'B', 'G', 'R') }, | |
| 89 | − { AV_PIX_FMT_BGR565BE, MKTAG(16 , 'R', 'G', 'B') }, | |
| 90 | − { AV_PIX_FMT_RGB444LE, MKTAG('R', 'G', 'B', 12) }, | |
| 91 | − { AV_PIX_FMT_BGR444LE, MKTAG('B', 'G', 'R', 12) }, | |
| 92 | − { AV_PIX_FMT_RGB444BE, MKTAG(12 , 'B', 'G', 'R') }, | |
| 93 | − { AV_PIX_FMT_BGR444BE, MKTAG(12 , 'R', 'G', 'B') }, | |
| 94 | − { AV_PIX_FMT_RGBA64LE, MKTAG('R', 'B', 'A', 64 ) }, | |
| 95 | − { AV_PIX_FMT_BGRA64LE, MKTAG('B', 'R', 'A', 64 ) }, | |
| 96 | − { AV_PIX_FMT_RGBA64BE, MKTAG(64 , 'R', 'B', 'A') }, | |
| 97 | − { AV_PIX_FMT_BGRA64BE, MKTAG(64 , 'B', 'R', 'A') }, | |
| 98 | − { AV_PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, | |
| 99 | − { AV_PIX_FMT_RGB0, MKTAG('R', 'G', 'B', 0 ) }, | |
| 100 | − { AV_PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, | |
| 101 | − { AV_PIX_FMT_BGR0, MKTAG('B', 'G', 'R', 0 ) }, | |
| 102 | − { AV_PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, | |
| 103 | − { AV_PIX_FMT_0BGR, MKTAG( 0 , 'B', 'G', 'R') }, | |
| 104 | − { AV_PIX_FMT_ARGB, MKTAG('A', 'R', 'G', 'B') }, | |
| 105 | − { AV_PIX_FMT_0RGB, MKTAG( 0 , 'R', 'G', 'B') }, | |
| 106 | − { AV_PIX_FMT_RGB24, MKTAG('R', 'G', 'B', 24 ) }, | |
| 107 | − { AV_PIX_FMT_BGR24, MKTAG('B', 'G', 'R', 24 ) }, | |
| 108 | − { AV_PIX_FMT_YUV411P, MKTAG('4', '1', '1', 'P') }, | |
| 109 | − { AV_PIX_FMT_YUV422P, MKTAG('4', '2', '2', 'P') }, | |
| 110 | − { AV_PIX_FMT_YUVJ422P, MKTAG('4', '2', '2', 'P') }, | |
| 111 | − { AV_PIX_FMT_YUV440P, MKTAG('4', '4', '0', 'P') }, | |
| 112 | − { AV_PIX_FMT_YUVJ440P, MKTAG('4', '4', '0', 'P') }, | |
| 113 | − { AV_PIX_FMT_YUV444P, MKTAG('4', '4', '4', 'P') }, | |
| 114 | − { AV_PIX_FMT_YUVJ444P, MKTAG('4', '4', '4', 'P') }, | |
| 115 | − { AV_PIX_FMT_MONOWHITE,MKTAG('B', '1', 'W', '0') }, | |
| 116 | − { AV_PIX_FMT_MONOBLACK,MKTAG('B', '0', 'W', '1') }, | |
| 117 | − { AV_PIX_FMT_BGR8, MKTAG('B', 'G', 'R', 8 ) }, | |
| 118 | − { AV_PIX_FMT_RGB8, MKTAG('R', 'G', 'B', 8 ) }, | |
| 119 | − { AV_PIX_FMT_BGR4, MKTAG('B', 'G', 'R', 4 ) }, | |
| 120 | − { AV_PIX_FMT_RGB4, MKTAG('R', 'G', 'B', 4 ) }, | |
| 121 | − { AV_PIX_FMT_RGB4_BYTE,MKTAG('B', '4', 'B', 'Y') }, | |
| 122 | − { AV_PIX_FMT_BGR4_BYTE,MKTAG('R', '4', 'B', 'Y') }, | |
| 123 | − { AV_PIX_FMT_RGB48LE, MKTAG('R', 'G', 'B', 48 ) }, | |
| 124 | − { AV_PIX_FMT_RGB48BE, MKTAG( 48, 'R', 'G', 'B') }, | |
| 125 | − { AV_PIX_FMT_BGR48LE, MKTAG('B', 'G', 'R', 48 ) }, | |
| 126 | − { AV_PIX_FMT_BGR48BE, MKTAG( 48, 'B', 'G', 'R') }, | |
| 127 | − { AV_PIX_FMT_GRAY9LE, MKTAG('Y', '1', 0 , 9 ) }, | |
| 128 | − { AV_PIX_FMT_GRAY9BE, MKTAG( 9 , 0 , '1', 'Y') }, | |
| 129 | − { AV_PIX_FMT_GRAY10LE, MKTAG('Y', '1', 0 , 10 ) }, | |
| 130 | − { AV_PIX_FMT_GRAY10BE, MKTAG(10 , 0 , '1', 'Y') }, | |
| 131 | − { AV_PIX_FMT_GRAY12LE, MKTAG('Y', '1', 0 , 12 ) }, | |
| 132 | − { AV_PIX_FMT_GRAY12BE, MKTAG(12 , 0 , '1', 'Y') }, | |
| 133 | − { AV_PIX_FMT_GRAY14LE, MKTAG('Y', '1', 0 , 14 ) }, | |
| 134 | − { AV_PIX_FMT_GRAY14BE, MKTAG(14 , 0 , '1', 'Y') }, | |
| 135 | − { AV_PIX_FMT_GRAY16LE, MKTAG('Y', '1', 0 , 16 ) }, | |
| 136 | − { AV_PIX_FMT_GRAY16BE, MKTAG(16 , 0 , '1', 'Y') }, | |
| 137 | − { AV_PIX_FMT_YUV420P9LE, MKTAG('Y', '3', 11 , 9 ) }, | |
| 138 | − { AV_PIX_FMT_YUV420P9BE, MKTAG( 9 , 11 , '3', 'Y') }, | |
| 139 | − { AV_PIX_FMT_YUV422P9LE, MKTAG('Y', '3', 10 , 9 ) }, | |
| 140 | − { AV_PIX_FMT_YUV422P9BE, MKTAG( 9 , 10 , '3', 'Y') }, | |
| 141 | − { AV_PIX_FMT_YUV444P9LE, MKTAG('Y', '3', 0 , 9 ) }, | |
| 142 | − { AV_PIX_FMT_YUV444P9BE, MKTAG( 9 , 0 , '3', 'Y') }, | |
| 143 | − { AV_PIX_FMT_YUV420P10LE, MKTAG('Y', '3', 11 , 10 ) }, | |
| 144 | − { AV_PIX_FMT_YUV420P10BE, MKTAG(10 , 11 , '3', 'Y') }, | |
| 145 | − { AV_PIX_FMT_YUV422P10LE, MKTAG('Y', '3', 10 , 10 ) }, | |
| 146 | − { AV_PIX_FMT_YUV422P10BE, MKTAG(10 , 10 , '3', 'Y') }, | |
| 147 | − { AV_PIX_FMT_YUV444P10LE, MKTAG('Y', '3', 0 , 10 ) }, | |
| 148 | − { AV_PIX_FMT_YUV444P10BE, MKTAG(10 , 0 , '3', 'Y') }, | |
| 149 | − { AV_PIX_FMT_YUV420P12LE, MKTAG('Y', '3', 11 , 12 ) }, | |
| 150 | − { AV_PIX_FMT_YUV420P12BE, MKTAG(12 , 11 , '3', 'Y') }, | |
| 151 | − { AV_PIX_FMT_YUV422P12LE, MKTAG('Y', '3', 10 , 12 ) }, | |
| 152 | − { AV_PIX_FMT_YUV422P12BE, MKTAG(12 , 10 , '3', 'Y') }, | |
| 153 | − { AV_PIX_FMT_YUV444P12LE, MKTAG('Y', '3', 0 , 12 ) }, | |
| 154 | − { AV_PIX_FMT_YUV444P12BE, MKTAG(12 , 0 , '3', 'Y') }, | |
| 155 | − { AV_PIX_FMT_YUV420P14LE, MKTAG('Y', '3', 11 , 14 ) }, | |
| 156 | − { AV_PIX_FMT_YUV420P14BE, MKTAG(14 , 11 , '3', 'Y') }, | |
| 157 | − { AV_PIX_FMT_YUV422P14LE, MKTAG('Y', '3', 10 , 14 ) }, | |
| 158 | − { AV_PIX_FMT_YUV422P14BE, MKTAG(14 , 10 , '3', 'Y') }, | |
| 159 | − { AV_PIX_FMT_YUV444P14LE, MKTAG('Y', '3', 0 , 14 ) }, | |
| 160 | − { AV_PIX_FMT_YUV444P14BE, MKTAG(14 , 0 , '3', 'Y') }, | |
| 161 | − { AV_PIX_FMT_YUV420P16LE, MKTAG('Y', '3', 11 , 16 ) }, | |
| 162 | − { AV_PIX_FMT_YUV420P16BE, MKTAG(16 , 11 , '3', 'Y') }, | |
| 163 | − { AV_PIX_FMT_YUV422P16LE, MKTAG('Y', '3', 10 , 16 ) }, | |
| 164 | − { AV_PIX_FMT_YUV422P16BE, MKTAG(16 , 10 , '3', 'Y') }, | |
| 165 | − { AV_PIX_FMT_YUV444P16LE, MKTAG('Y', '3', 0 , 16 ) }, | |
| 166 | − { AV_PIX_FMT_YUV444P16BE, MKTAG(16 , 0 , '3', 'Y') }, | |
| 167 | − { AV_PIX_FMT_YUVA420P, MKTAG('Y', '4', 11 , 8 ) }, | |
| 168 | − { AV_PIX_FMT_YUVA422P, MKTAG('Y', '4', 10 , 8 ) }, | |
| 169 | − { AV_PIX_FMT_YUVA444P, MKTAG('Y', '4', 0 , 8 ) }, | |
| 170 | − { AV_PIX_FMT_YA8, MKTAG('Y', '2', 0 , 8 ) }, | |
| 171 | − { AV_PIX_FMT_PAL8, MKTAG('P', 'A', 'L', 8 ) }, | |
| 172 | − | |
| 173 | − { AV_PIX_FMT_YUVA420P9LE, MKTAG('Y', '4', 11 , 9 ) }, | |
| 174 | − { AV_PIX_FMT_YUVA420P9BE, MKTAG( 9 , 11 , '4', 'Y') }, | |
| 175 | − { AV_PIX_FMT_YUVA422P9LE, MKTAG('Y', '4', 10 , 9 ) }, | |
| 176 | − { AV_PIX_FMT_YUVA422P9BE, MKTAG( 9 , 10 , '4', 'Y') }, | |
| 177 | − { AV_PIX_FMT_YUVA444P9LE, MKTAG('Y', '4', 0 , 9 ) }, | |
| 178 | − { AV_PIX_FMT_YUVA444P9BE, MKTAG( 9 , 0 , '4', 'Y') }, | |
| 179 | − { AV_PIX_FMT_YUVA420P10LE, MKTAG('Y', '4', 11 , 10 ) }, | |
| 180 | − { AV_PIX_FMT_YUVA420P10BE, MKTAG(10 , 11 , '4', 'Y') }, | |
| 181 | − { AV_PIX_FMT_YUVA422P10LE, MKTAG('Y', '4', 10 , 10 ) }, | |
| 182 | − { AV_PIX_FMT_YUVA422P10BE, MKTAG(10 , 10 , '4', 'Y') }, | |
| 183 | − { AV_PIX_FMT_YUVA444P10LE, MKTAG('Y', '4', 0 , 10 ) }, | |
| 184 | − { AV_PIX_FMT_YUVA444P10BE, MKTAG(10 , 0 , '4', 'Y') }, | |
| 185 | − { AV_PIX_FMT_YUVA422P12LE, MKTAG('Y', '4', 10 , 12 ) }, | |
| 186 | − { AV_PIX_FMT_YUVA422P12BE, MKTAG(12 , 10 , '4', 'Y') }, | |
| 187 | − { AV_PIX_FMT_YUVA444P12LE, MKTAG('Y', '4', 0 , 12 ) }, | |
| 188 | − { AV_PIX_FMT_YUVA444P12BE, MKTAG(12 , 0 , '4', 'Y') }, | |
| 189 | − { AV_PIX_FMT_YUVA420P16LE, MKTAG('Y', '4', 11 , 16 ) }, | |
| 190 | − { AV_PIX_FMT_YUVA420P16BE, MKTAG(16 , 11 , '4', 'Y') }, | |
| 191 | − { AV_PIX_FMT_YUVA422P16LE, MKTAG('Y', '4', 10 , 16 ) }, | |
| 192 | − { AV_PIX_FMT_YUVA422P16BE, MKTAG(16 , 10 , '4', 'Y') }, | |
| 193 | − { AV_PIX_FMT_YUVA444P16LE, MKTAG('Y', '4', 0 , 16 ) }, | |
| 194 | − { AV_PIX_FMT_YUVA444P16BE, MKTAG(16 , 0 , '4', 'Y') }, | |
| 195 | − | |
| 196 | − { AV_PIX_FMT_GBRP, MKTAG('G', '3', 00 , 8 ) }, | |
| 197 | − { AV_PIX_FMT_GBRP9LE, MKTAG('G', '3', 00 , 9 ) }, | |
| 198 | − { AV_PIX_FMT_GBRP9BE, MKTAG( 9 , 00 , '3', 'G') }, | |
| 199 | − { AV_PIX_FMT_GBRP10LE, MKTAG('G', '3', 00 , 10 ) }, | |
| 200 | − { AV_PIX_FMT_GBRP10BE, MKTAG(10 , 00 , '3', 'G') }, | |
| 201 | − { AV_PIX_FMT_GBRP12LE, MKTAG('G', '3', 00 , 12 ) }, | |
| 202 | − { AV_PIX_FMT_GBRP12BE, MKTAG(12 , 00 , '3', 'G') }, | |
| 203 | − { AV_PIX_FMT_GBRP14LE, MKTAG('G', '3', 00 , 14 ) }, | |
| 204 | − { AV_PIX_FMT_GBRP14BE, MKTAG(14 , 00 , '3', 'G') }, | |
| 205 | − { AV_PIX_FMT_GBRP16LE, MKTAG('G', '3', 00 , 16 ) }, | |
| 206 | − { AV_PIX_FMT_GBRP16BE, MKTAG(16 , 00 , '3', 'G') }, | |
| 207 | − { AV_PIX_FMT_GBRPF16LE, MKTAG('G', '3', 00 , 17 ) }, | |
| 208 | − { AV_PIX_FMT_GBRPF16BE, MKTAG(17 , 00 , '3', 'G') }, | |
| 209 | − { AV_PIX_FMT_GBRPF32LE, MKTAG('G', '3', 00 , 33 ) }, | |
| 210 | − { AV_PIX_FMT_GBRPF32BE, MKTAG(33 , 00 , '3', 'G') }, | |
| 211 | − | |
| 212 | − { AV_PIX_FMT_GBRAP, MKTAG('G', '4', 00 , 8 ) }, | |
| 213 | − { AV_PIX_FMT_GBRAP10LE, MKTAG('G', '4', 00 , 10 ) }, | |
| 214 | − { AV_PIX_FMT_GBRAP10BE, MKTAG(10 , 00 , '4', 'G') }, | |
| 215 | − { AV_PIX_FMT_GBRAP12LE, MKTAG('G', '4', 00 , 12 ) }, | |
| 216 | − { AV_PIX_FMT_GBRAP12BE, MKTAG(12 , 00 , '4', 'G') }, | |
| 217 | − { AV_PIX_FMT_GBRAP14LE, MKTAG('G', '4', 00 , 14 ) }, | |
| 218 | − { AV_PIX_FMT_GBRAP14BE, MKTAG(14 , 00 , '4', 'G') }, | |
| 219 | − { AV_PIX_FMT_GBRAP16LE, MKTAG('G', '4', 00 , 16 ) }, | |
| 220 | − { AV_PIX_FMT_GBRAP16BE, MKTAG(16 , 00 , '4', 'G') }, | |
| 221 | − { AV_PIX_FMT_GBRAPF16LE, MKTAG('G', '4', 00 , 17 ) }, | |
| 222 | − { AV_PIX_FMT_GBRAPF16BE, MKTAG(17 , 00 , '4', 'G') }, | |
| 223 | − { AV_PIX_FMT_GBRAPF32LE, MKTAG('G', '4', 00 , 33 ) }, | |
| 224 | − { AV_PIX_FMT_GBRAPF32BE, MKTAG(33 , 00 , '4', 'G') }, | |
| 225 | − | |
| 226 | − { AV_PIX_FMT_XYZ12LE, MKTAG('X', 'Y', 'Z' , 36 ) }, | |
| 227 | − { AV_PIX_FMT_XYZ12BE, MKTAG(36 , 'Z' , 'Y', 'X') }, | |
| 228 | − | |
| 229 | − { AV_PIX_FMT_BAYER_BGGR8, MKTAG(0xBA, 'B', 'G', 8 ) }, | |
| 230 | − { AV_PIX_FMT_BAYER_BGGR16LE, MKTAG(0xBA, 'B', 'G', 16 ) }, | |
| 231 | − { AV_PIX_FMT_BAYER_BGGR16BE, MKTAG(16 , 'G', 'B', 0xBA) }, | |
| 232 | − { AV_PIX_FMT_BAYER_RGGB8, MKTAG(0xBA, 'R', 'G', 8 ) }, | |
| 233 | − { AV_PIX_FMT_BAYER_RGGB16LE, MKTAG(0xBA, 'R', 'G', 16 ) }, | |
| 234 | − { AV_PIX_FMT_BAYER_RGGB16BE, MKTAG(16 , 'G', 'R', 0xBA) }, | |
| 235 | − { AV_PIX_FMT_BAYER_GBRG8, MKTAG(0xBA, 'G', 'B', 8 ) }, | |
| 236 | − { AV_PIX_FMT_BAYER_GBRG16LE, MKTAG(0xBA, 'G', 'B', 16 ) }, | |
| 237 | − { AV_PIX_FMT_BAYER_GBRG16BE, MKTAG(16, 'B', 'G', 0xBA) }, | |
| 238 | − { AV_PIX_FMT_BAYER_GRBG8, MKTAG(0xBA, 'G', 'R', 8 ) }, | |
| 239 | − { AV_PIX_FMT_BAYER_GRBG16LE, MKTAG(0xBA, 'G', 'R', 16 ) }, | |
| 240 | − { AV_PIX_FMT_BAYER_GRBG16BE, MKTAG(16, 'R', 'G', 0xBA) }, | |
| 241 | − | |
| 242 | − /* quicktime */ | |
| 243 | − { AV_PIX_FMT_YUV420P, MKTAG('R', '4', '2', '0') }, /* Radius DV YUV PAL */ | |
| 244 | − { AV_PIX_FMT_YUV411P, MKTAG('R', '4', '1', '1') }, /* Radius DV YUV NTSC */ | |
| 245 | − { AV_PIX_FMT_UYVY422, MKTAG('2', 'v', 'u', 'y') }, | |
| 246 | − { AV_PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', 'y') }, | |
| 247 | − { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'U', 'I') }, /* FIXME merge both fields */ | |
| 248 | − { AV_PIX_FMT_UYVY422, MKTAG('b', 'x', 'y', 'v') }, | |
| 249 | − { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, | |
| 250 | − { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, | |
| 251 | − { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ | |
| 252 | − { AV_PIX_FMT_VYU444, MKTAG('v', '3', '0', '8') }, | |
| 253 | − { AV_PIX_FMT_UYVA, MKTAG('v', '4', '0', '8') }, | |
| 254 | − { AV_PIX_FMT_V30XLE, MKTAG('v', '4', '1', '0') }, | |
| 255 | − { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, | |
| 256 | − { AV_PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, | |
| 257 | − { AV_PIX_FMT_RGB565LE,MKTAG('L', '5', '6', '5') }, | |
| 258 | − { AV_PIX_FMT_RGB565BE,MKTAG('B', '5', '6', '5') }, | |
| 259 | − { AV_PIX_FMT_BGR24, MKTAG('2', '4', 'B', 'G') }, | |
| 260 | − { AV_PIX_FMT_BGR24, MKTAG('b', 'x', 'b', 'g') }, | |
| 261 | − { AV_PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, | |
| 262 | − { AV_PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, | |
| 263 | − { AV_PIX_FMT_RGB24, MKTAG('b', 'x', 'r', 'g') }, | |
| 264 | − { AV_PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, | |
| 265 | − { AV_PIX_FMT_GRAY16BE,MKTAG('b', '1', '6', 'g') }, | |
| 266 | − { AV_PIX_FMT_RGB48BE, MKTAG('b', '4', '8', 'r') }, | |
| 267 | − { AV_PIX_FMT_RGBA64BE,MKTAG('b', '6', '4', 'a') }, | |
| 268 | − { AV_PIX_FMT_BAYER_RGGB16BE, MKTAG('B', 'G', 'G', 'R') }, | |
| 269 | − | |
| 270 | − /* vlc */ | |
| 271 | − { AV_PIX_FMT_YUV410P, MKTAG('I', '4', '1', '0') }, | |
| 272 | − { AV_PIX_FMT_YUV411P, MKTAG('I', '4', '1', '1') }, | |
| 273 | − { AV_PIX_FMT_YUV422P, MKTAG('I', '4', '2', '2') }, | |
| 274 | − { AV_PIX_FMT_YUV440P, MKTAG('I', '4', '4', '0') }, | |
| 275 | − { AV_PIX_FMT_YUV444P, MKTAG('I', '4', '4', '4') }, | |
| 276 | − { AV_PIX_FMT_YUVJ420P, MKTAG('J', '4', '2', '0') }, | |
| 277 | − { AV_PIX_FMT_YUVJ422P, MKTAG('J', '4', '2', '2') }, | |
| 278 | − { AV_PIX_FMT_YUVJ440P, MKTAG('J', '4', '4', '0') }, | |
| 279 | − { AV_PIX_FMT_YUVJ444P, MKTAG('J', '4', '4', '4') }, | |
| 280 | − { AV_PIX_FMT_YUVA444P, MKTAG('Y', 'U', 'V', 'A') }, | |
| 281 | − { AV_PIX_FMT_YUVA420P, MKTAG('I', '4', '0', 'A') }, | |
| 282 | − { AV_PIX_FMT_YUVA422P, MKTAG('I', '4', '2', 'A') }, | |
| 283 | − { AV_PIX_FMT_RGB8, MKTAG('R', 'G', 'B', '2') }, | |
| 284 | − { AV_PIX_FMT_RGB555LE, MKTAG('R', 'V', '1', '5') }, | |
| 285 | − { AV_PIX_FMT_RGB565LE, MKTAG('R', 'V', '1', '6') }, | |
| 286 | − { AV_PIX_FMT_BGR24, MKTAG('R', 'V', '2', '4') }, | |
| 287 | − { AV_PIX_FMT_BGR0, MKTAG('R', 'V', '3', '2') }, | |
| 288 | − { AV_PIX_FMT_RGBA, MKTAG('A', 'V', '3', '2') }, | |
| 289 | − { AV_PIX_FMT_YUV420P9LE, MKTAG('I', '0', '9', 'L') }, | |
| 290 | − { AV_PIX_FMT_YUV420P9BE, MKTAG('I', '0', '9', 'B') }, | |
| 291 | − { AV_PIX_FMT_YUV422P9LE, MKTAG('I', '2', '9', 'L') }, | |
| 292 | − { AV_PIX_FMT_YUV422P9BE, MKTAG('I', '2', '9', 'B') }, | |
| 293 | − { AV_PIX_FMT_YUV444P9LE, MKTAG('I', '4', '9', 'L') }, | |
| 294 | − { AV_PIX_FMT_YUV444P9BE, MKTAG('I', '4', '9', 'B') }, | |
| 295 | − { AV_PIX_FMT_YUV420P10LE, MKTAG('I', '0', 'A', 'L') }, | |
| 296 | − { AV_PIX_FMT_YUV420P10BE, MKTAG('I', '0', 'A', 'B') }, | |
| 297 | − { AV_PIX_FMT_YUV422P10LE, MKTAG('I', '2', 'A', 'L') }, | |
| 298 | − { AV_PIX_FMT_YUV422P10BE, MKTAG('I', '2', 'A', 'B') }, | |
| 299 | − { AV_PIX_FMT_YUV444P10LE, MKTAG('I', '4', 'A', 'L') }, | |
| 300 | − { AV_PIX_FMT_YUV444P10BE, MKTAG('I', '4', 'A', 'B') }, | |
| 301 | − { AV_PIX_FMT_YUV420P12LE, MKTAG('I', '0', 'C', 'L') }, | |
| 302 | − { AV_PIX_FMT_YUV420P12BE, MKTAG('I', '0', 'C', 'B') }, | |
| 303 | − { AV_PIX_FMT_YUV422P12LE, MKTAG('I', '2', 'C', 'L') }, | |
| 304 | − { AV_PIX_FMT_YUV422P12BE, MKTAG('I', '2', 'C', 'B') }, | |
| 305 | − { AV_PIX_FMT_YUV444P12LE, MKTAG('I', '4', 'C', 'L') }, | |
| 306 | − { AV_PIX_FMT_YUV444P12BE, MKTAG('I', '4', 'C', 'B') }, | |
| 307 | − { AV_PIX_FMT_YUV420P16LE, MKTAG('I', '0', 'F', 'L') }, | |
| 308 | − { AV_PIX_FMT_YUV420P16BE, MKTAG('I', '0', 'F', 'B') }, | |
| 309 | − { AV_PIX_FMT_YUV444P16LE, MKTAG('I', '4', 'F', 'L') }, | |
| 310 | − { AV_PIX_FMT_YUV444P16BE, MKTAG('I', '4', 'F', 'B') }, | |
| 311 | − | |
| 312 | − /* special */ | |
| 313 | − { AV_PIX_FMT_RGB565LE,MKTAG( 3 , 0 , 0 , 0 ) }, /* flipped RGB565LE */ | |
| 314 | − { AV_PIX_FMT_YUV444P, MKTAG('Y', 'V', '2', '4') }, /* YUV444P, swapped UV */ | |
| 315 | − | |
| 316 | − { AV_PIX_FMT_NONE, 0 }, | |
| 317 | −}; | |
| 318 | − | |
| 319 | −const struct PixelFormatTag *avpriv_get_raw_pix_fmt_tags(void) | |
| 320 | −{ | |
| 321 | − return raw_pix_fmt_tags; | |
| 322 | −} | |
| 29 | +#include "raw_pix_fmt_tags.h" | |
| 323 | 30 | |
| 324 | 31 | unsigned int avcodec_pix_fmt_to_codec_tag(enum AVPixelFormat fmt) |
| 325 | 32 | { |
| @@ -34,8 +34,6 @@ typedef struct PixelFormatTag { · 33 unmodified lines | ||
| 34 | 34 | unsigned int fourcc; |
| 35 | 35 | } PixelFormatTag; |
| 36 | 36 | |
| 37 | −const struct PixelFormatTag *avpriv_get_raw_pix_fmt_tags(void); | |
| 38 | − | |
| 39 | 37 | enum PixelFormatTagLists { |
| 40 | 38 | PIX_FMT_LIST_RAW, |
| 41 | 39 | PIX_FMT_LIST_AVI, |
| @@ -0,0 +1,316 @@ | ||
| 1 | +/* | |
| 2 | + * Raw Video Codec | |
| 3 | + * Copyright (c) 2001 Fabrice Bellard | |
| 4 | + * | |
| 5 | + * This file is part of FFmpeg. | |
| 6 | + * | |
| 7 | + * FFmpeg is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public | |
| 9 | + * License as published by the Free Software Foundation; either | |
| 10 | + * version 2.1 of the License, or (at your option) any later version. | |
| 11 | + * | |
| 12 | + * FFmpeg is distributed in the hope that it will be useful, | |
| 13 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 14 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| 15 | + * Lesser General Public License for more details. | |
| 16 | + * | |
| 17 | + * You should have received a copy of the GNU Lesser General Public | |
| 18 | + * License along with FFmpeg; if not, write to the Free Software | |
| 19 | + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |
| 20 | + */ | |
| 21 | + | |
| 22 | +#ifndef AVCODEC_RAW_PIX_FMT_TAGS_H | |
| 23 | +#define AVCODEC_RAW_PIX_FMT_TAGS_H | |
| 24 | + | |
| 25 | +#include "raw.h" | |
| 26 | +#include "libavutil/macros.h" | |
| 27 | + | |
| 28 | +static const PixelFormatTag raw_pix_fmt_tags[] = { | |
| 29 | + { AV_PIX_FMT_YUV420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ | |
| 30 | + { AV_PIX_FMT_YUV420P, MKTAG('I', 'Y', 'U', 'V') }, | |
| 31 | + { AV_PIX_FMT_YUV420P, MKTAG('y', 'v', '1', '2') }, | |
| 32 | + { AV_PIX_FMT_YUV420P, MKTAG('Y', 'V', '1', '2') }, | |
| 33 | + { AV_PIX_FMT_YUV410P, MKTAG('Y', 'U', 'V', '9') }, | |
| 34 | + { AV_PIX_FMT_YUV410P, MKTAG('Y', 'V', 'U', '9') }, | |
| 35 | + { AV_PIX_FMT_YUV411P, MKTAG('Y', '4', '1', 'B') }, | |
| 36 | + { AV_PIX_FMT_YUV422P, MKTAG('Y', '4', '2', 'B') }, | |
| 37 | + { AV_PIX_FMT_YUV422P, MKTAG('P', '4', '2', '2') }, | |
| 38 | + { AV_PIX_FMT_YUV422P, MKTAG('Y', 'V', '1', '6') }, | |
| 39 | + /* yuvjXXX formats are deprecated hacks specific to libav*, | |
| 40 | + they are identical to yuvXXX */ | |
| 41 | + { AV_PIX_FMT_YUVJ420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ | |
| 42 | + { AV_PIX_FMT_YUVJ420P, MKTAG('I', 'Y', 'U', 'V') }, | |
| 43 | + { AV_PIX_FMT_YUVJ420P, MKTAG('Y', 'V', '1', '2') }, | |
| 44 | + { AV_PIX_FMT_YUVJ422P, MKTAG('Y', '4', '2', 'B') }, | |
| 45 | + { AV_PIX_FMT_YUVJ422P, MKTAG('P', '4', '2', '2') }, | |
| 46 | + { AV_PIX_FMT_GRAY8, MKTAG('Y', '8', '0', '0') }, | |
| 47 | + { AV_PIX_FMT_GRAY8, MKTAG('Y', '8', ' ', ' ') }, | |
| 48 | + | |
| 49 | + { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', '2') }, /* Packed formats */ | |
| 50 | + { AV_PIX_FMT_YUYV422, MKTAG('Y', '4', '2', '2') }, | |
| 51 | + { AV_PIX_FMT_YUYV422, MKTAG('V', '4', '2', '2') }, | |
| 52 | + { AV_PIX_FMT_YUYV422, MKTAG('V', 'Y', 'U', 'Y') }, | |
| 53 | + { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'N', 'V') }, | |
| 54 | + { AV_PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', 'V') }, | |
| 55 | + { AV_PIX_FMT_YVYU422, MKTAG('Y', 'V', 'Y', 'U') }, /* Philips */ | |
| 56 | + { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'V', 'Y') }, | |
| 57 | + { AV_PIX_FMT_UYVY422, MKTAG('H', 'D', 'Y', 'C') }, | |
| 58 | + { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'V') }, | |
| 59 | + { AV_PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'Y') }, | |
| 60 | + { AV_PIX_FMT_UYVY422, MKTAG('u', 'y', 'v', '1') }, | |
| 61 | + { AV_PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', '1') }, | |
| 62 | + { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'R', 'n') }, /* Avid AVI Codec 1:1 */ | |
| 63 | + { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', '1', 'x') }, /* Avid 1:1x */ | |
| 64 | + { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'u', 'p') }, | |
| 65 | + { AV_PIX_FMT_UYVY422, MKTAG('V', 'D', 'T', 'Z') }, /* SoftLab-NSK VideoTizer */ | |
| 66 | + { AV_PIX_FMT_UYVY422, MKTAG('a', 'u', 'v', '2') }, | |
| 67 | + { AV_PIX_FMT_UYVY422, MKTAG('c', 'y', 'u', 'v') }, /* CYUV is also Creative YUV */ | |
| 68 | + { AV_PIX_FMT_UYYVYY411, MKTAG('Y', '4', '1', '1') }, | |
| 69 | + { AV_PIX_FMT_GRAY8, MKTAG('G', 'R', 'E', 'Y') }, | |
| 70 | + { AV_PIX_FMT_NV12, MKTAG('N', 'V', '1', '2') }, | |
| 71 | + { AV_PIX_FMT_NV21, MKTAG('N', 'V', '2', '1') }, | |
| 72 | + { AV_PIX_FMT_VUYA, MKTAG('A', 'Y', 'U', 'V') }, /* MS 4:4:4:4 */ | |
| 73 | + { AV_PIX_FMT_XV30LE, MKTAG('Y', '4', '1', '0') }, | |
| 74 | + { AV_PIX_FMT_XV48LE, MKTAG('Y', '4', '1', '6') }, | |
| 75 | + { AV_PIX_FMT_Y210LE, MKTAG('Y', '2', '1', '0') }, | |
| 76 | + { AV_PIX_FMT_Y216LE, MKTAG('Y', '2', '1', '6') }, | |
| 77 | + | |
| 78 | + /* nut */ | |
| 79 | + { AV_PIX_FMT_RGB555LE, MKTAG('R', 'G', 'B', 15) }, | |
| 80 | + { AV_PIX_FMT_BGR555LE, MKTAG('B', 'G', 'R', 15) }, | |
| 81 | + { AV_PIX_FMT_RGB565LE, MKTAG('R', 'G', 'B', 16) }, | |
| 82 | + { AV_PIX_FMT_BGR565LE, MKTAG('B', 'G', 'R', 16) }, | |
| 83 | + { AV_PIX_FMT_RGB555BE, MKTAG(15 , 'B', 'G', 'R') }, | |
| 84 | + { AV_PIX_FMT_BGR555BE, MKTAG(15 , 'R', 'G', 'B') }, | |
| 85 | + { AV_PIX_FMT_RGB565BE, MKTAG(16 , 'B', 'G', 'R') }, | |
| 86 | + { AV_PIX_FMT_BGR565BE, MKTAG(16 , 'R', 'G', 'B') }, | |
| 87 | + { AV_PIX_FMT_RGB444LE, MKTAG('R', 'G', 'B', 12) }, | |
| 88 | + { AV_PIX_FMT_BGR444LE, MKTAG('B', 'G', 'R', 12) }, | |
| 89 | + { AV_PIX_FMT_RGB444BE, MKTAG(12 , 'B', 'G', 'R') }, | |
| 90 | + { AV_PIX_FMT_BGR444BE, MKTAG(12 , 'R', 'G', 'B') }, | |
| 91 | + { AV_PIX_FMT_RGBA64LE, MKTAG('R', 'B', 'A', 64 ) }, | |
| 92 | + { AV_PIX_FMT_BGRA64LE, MKTAG('B', 'R', 'A', 64 ) }, | |
| 93 | + { AV_PIX_FMT_RGBA64BE, MKTAG(64 , 'R', 'B', 'A') }, | |
| 94 | + { AV_PIX_FMT_BGRA64BE, MKTAG(64 , 'B', 'R', 'A') }, | |
| 95 | + { AV_PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, | |
| 96 | + { AV_PIX_FMT_RGB0, MKTAG('R', 'G', 'B', 0 ) }, | |
| 97 | + { AV_PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, | |
| 98 | + { AV_PIX_FMT_BGR0, MKTAG('B', 'G', 'R', 0 ) }, | |
| 99 | + { AV_PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, | |
| 100 | + { AV_PIX_FMT_0BGR, MKTAG( 0 , 'B', 'G', 'R') }, | |
| 101 | + { AV_PIX_FMT_ARGB, MKTAG('A', 'R', 'G', 'B') }, | |
| 102 | + { AV_PIX_FMT_0RGB, MKTAG( 0 , 'R', 'G', 'B') }, | |
| 103 | + { AV_PIX_FMT_RGB24, MKTAG('R', 'G', 'B', 24 ) }, | |
| 104 | + { AV_PIX_FMT_BGR24, MKTAG('B', 'G', 'R', 24 ) }, | |
| 105 | + { AV_PIX_FMT_YUV411P, MKTAG('4', '1', '1', 'P') }, | |
| 106 | + { AV_PIX_FMT_YUV422P, MKTAG('4', '2', '2', 'P') }, | |
| 107 | + { AV_PIX_FMT_YUVJ422P, MKTAG('4', '2', '2', 'P') }, | |
| 108 | + { AV_PIX_FMT_YUV440P, MKTAG('4', '4', '0', 'P') }, | |
| 109 | + { AV_PIX_FMT_YUVJ440P, MKTAG('4', '4', '0', 'P') }, | |
| 110 | + { AV_PIX_FMT_YUV444P, MKTAG('4', '4', '4', 'P') }, | |
| 111 | + { AV_PIX_FMT_YUVJ444P, MKTAG('4', '4', '4', 'P') }, | |
| 112 | + { AV_PIX_FMT_MONOWHITE, MKTAG('B', '1', 'W', '0') }, | |
| 113 | + { AV_PIX_FMT_MONOBLACK, MKTAG('B', '0', 'W', '1') }, | |
| 114 | + { AV_PIX_FMT_BGR8, MKTAG('B', 'G', 'R', 8 ) }, | |
| 115 | + { AV_PIX_FMT_RGB8, MKTAG('R', 'G', 'B', 8 ) }, | |
| 116 | + { AV_PIX_FMT_BGR4, MKTAG('B', 'G', 'R', 4 ) }, | |
| 117 | + { AV_PIX_FMT_RGB4, MKTAG('R', 'G', 'B', 4 ) }, | |
| 118 | + { AV_PIX_FMT_RGB4_BYTE, MKTAG('B', '4', 'B', 'Y') }, | |
| 119 | + { AV_PIX_FMT_BGR4_BYTE, MKTAG('R', '4', 'B', 'Y') }, | |
| 120 | + { AV_PIX_FMT_RGB48LE, MKTAG('R', 'G', 'B', 48 ) }, | |
| 121 | + { AV_PIX_FMT_RGB48BE, MKTAG( 48, 'R', 'G', 'B') }, | |
| 122 | + { AV_PIX_FMT_BGR48LE, MKTAG('B', 'G', 'R', 48 ) }, | |
| 123 | + { AV_PIX_FMT_BGR48BE, MKTAG( 48, 'B', 'G', 'R') }, | |
| 124 | + { AV_PIX_FMT_GRAY9LE, MKTAG('Y', '1', 0 , 9 ) }, | |
| 125 | + { AV_PIX_FMT_GRAY9BE, MKTAG( 9 , 0 , '1', 'Y') }, | |
| 126 | + { AV_PIX_FMT_GRAY10LE, MKTAG('Y', '1', 0 , 10 ) }, | |
| 127 | + { AV_PIX_FMT_GRAY10BE, MKTAG(10 , 0 , '1', 'Y') }, | |
| 128 | + { AV_PIX_FMT_GRAY12LE, MKTAG('Y', '1', 0 , 12 ) }, | |
| 129 | + { AV_PIX_FMT_GRAY12BE, MKTAG(12 , 0 , '1', 'Y') }, | |
| 130 | + { AV_PIX_FMT_GRAY14LE, MKTAG('Y', '1', 0 , 14 ) }, | |
| 131 | + { AV_PIX_FMT_GRAY14BE, MKTAG(14 , 0 , '1', 'Y') }, | |
| 132 | + { AV_PIX_FMT_GRAY16LE, MKTAG('Y', '1', 0 , 16 ) }, | |
| 133 | + { AV_PIX_FMT_GRAY16BE, MKTAG(16 , 0 , '1', 'Y') }, | |
| 134 | + { AV_PIX_FMT_YUV420P9LE, MKTAG('Y', '3', 11 , 9 ) }, | |
| 135 | + { AV_PIX_FMT_YUV420P9BE, MKTAG( 9 , 11 , '3', 'Y') }, | |
| 136 | + { AV_PIX_FMT_YUV422P9LE, MKTAG('Y', '3', 10 , 9 ) }, | |
| 137 | + { AV_PIX_FMT_YUV422P9BE, MKTAG( 9 , 10 , '3', 'Y') }, | |
| 138 | + { AV_PIX_FMT_YUV444P9LE, MKTAG('Y', '3', 0 , 9 ) }, | |
| 139 | + { AV_PIX_FMT_YUV444P9BE, MKTAG( 9 , 0 , '3', 'Y') }, | |
| 140 | + { AV_PIX_FMT_YUV420P10LE, MKTAG('Y', '3', 11 , 10 ) }, | |
| 141 | + { AV_PIX_FMT_YUV420P10BE, MKTAG(10 , 11 , '3', 'Y') }, | |
| 142 | + { AV_PIX_FMT_YUV422P10LE, MKTAG('Y', '3', 10 , 10 ) }, | |
| 143 | + { AV_PIX_FMT_YUV422P10BE, MKTAG(10 , 10 , '3', 'Y') }, | |
| 144 | + { AV_PIX_FMT_YUV444P10LE, MKTAG('Y', '3', 0 , 10 ) }, | |
| 145 | + { AV_PIX_FMT_YUV444P10BE, MKTAG(10 , 0 , '3', 'Y') }, | |
| 146 | + { AV_PIX_FMT_YUV420P12LE, MKTAG('Y', '3', 11 , 12 ) }, | |
| 147 | + { AV_PIX_FMT_YUV420P12BE, MKTAG(12 , 11 , '3', 'Y') }, | |
| 148 | + { AV_PIX_FMT_YUV422P12LE, MKTAG('Y', '3', 10 , 12 ) }, | |
| 149 | + { AV_PIX_FMT_YUV422P12BE, MKTAG(12 , 10 , '3', 'Y') }, | |
| 150 | + { AV_PIX_FMT_YUV444P12LE, MKTAG('Y', '3', 0 , 12 ) }, | |
| 151 | + { AV_PIX_FMT_YUV444P12BE, MKTAG(12 , 0 , '3', 'Y') }, | |
| 152 | + { AV_PIX_FMT_YUV420P14LE, MKTAG('Y', '3', 11 , 14 ) }, | |
| 153 | + { AV_PIX_FMT_YUV420P14BE, MKTAG(14 , 11 , '3', 'Y') }, | |
| 154 | + { AV_PIX_FMT_YUV422P14LE, MKTAG('Y', '3', 10 , 14 ) }, | |
| 155 | + { AV_PIX_FMT_YUV422P14BE, MKTAG(14 , 10 , '3', 'Y') }, | |
| 156 | + { AV_PIX_FMT_YUV444P14LE, MKTAG('Y', '3', 0 , 14 ) }, | |
| 157 | + { AV_PIX_FMT_YUV444P14BE, MKTAG(14 , 0 , '3', 'Y') }, | |
| 158 | + { AV_PIX_FMT_YUV420P16LE, MKTAG('Y', '3', 11 , 16 ) }, | |
| 159 | + { AV_PIX_FMT_YUV420P16BE, MKTAG(16 , 11 , '3', 'Y') }, | |
| 160 | + { AV_PIX_FMT_YUV422P16LE, MKTAG('Y', '3', 10 , 16 ) }, | |
| 161 | + { AV_PIX_FMT_YUV422P16BE, MKTAG(16 , 10 , '3', 'Y') }, | |
| 162 | + { AV_PIX_FMT_YUV444P16LE, MKTAG('Y', '3', 0 , 16 ) }, | |
| 163 | + { AV_PIX_FMT_YUV444P16BE, MKTAG(16 , 0 , '3', 'Y') }, | |
| 164 | + { AV_PIX_FMT_YUVA420P, MKTAG('Y', '4', 11 , 8 ) }, | |
| 165 | + { AV_PIX_FMT_YUVA422P, MKTAG('Y', '4', 10 , 8 ) }, | |
| 166 | + { AV_PIX_FMT_YUVA444P, MKTAG('Y', '4', 0 , 8 ) }, | |
| 167 | + { AV_PIX_FMT_YA8, MKTAG('Y', '2', 0 , 8 ) }, | |
| 168 | + { AV_PIX_FMT_PAL8, MKTAG('P', 'A', 'L', 8 ) }, | |
| 169 | + | |
| 170 | + { AV_PIX_FMT_YUVA420P9LE, MKTAG('Y', '4', 11 , 9 ) }, | |
| 171 | + { AV_PIX_FMT_YUVA420P9BE, MKTAG( 9 , 11 , '4', 'Y') }, | |
| 172 | + { AV_PIX_FMT_YUVA422P9LE, MKTAG('Y', '4', 10 , 9 ) }, | |
| 173 | + { AV_PIX_FMT_YUVA422P9BE, MKTAG( 9 , 10 , '4', 'Y') }, | |
| 174 | + { AV_PIX_FMT_YUVA444P9LE, MKTAG('Y', '4', 0 , 9 ) }, | |
| 175 | + { AV_PIX_FMT_YUVA444P9BE, MKTAG( 9 , 0 , '4', 'Y') }, | |
| 176 | + { AV_PIX_FMT_YUVA420P10LE, MKTAG('Y', '4', 11 , 10 ) }, | |
| 177 | + { AV_PIX_FMT_YUVA420P10BE, MKTAG(10 , 11 , '4', 'Y') }, | |
| 178 | + { AV_PIX_FMT_YUVA422P10LE, MKTAG('Y', '4', 10 , 10 ) }, | |
| 179 | + { AV_PIX_FMT_YUVA422P10BE, MKTAG(10 , 10 , '4', 'Y') }, | |
| 180 | + { AV_PIX_FMT_YUVA444P10LE, MKTAG('Y', '4', 0 , 10 ) }, | |
| 181 | + { AV_PIX_FMT_YUVA444P10BE, MKTAG(10 , 0 , '4', 'Y') }, | |
| 182 | + { AV_PIX_FMT_YUVA422P12LE, MKTAG('Y', '4', 10 , 12 ) }, | |
| 183 | + { AV_PIX_FMT_YUVA422P12BE, MKTAG(12 , 10 , '4', 'Y') }, | |
| 184 | + { AV_PIX_FMT_YUVA444P12LE, MKTAG('Y', '4', 0 , 12 ) }, | |
| 185 | + { AV_PIX_FMT_YUVA444P12BE, MKTAG(12 , 0 , '4', 'Y') }, | |
| 186 | + { AV_PIX_FMT_YUVA420P16LE, MKTAG('Y', '4', 11 , 16 ) }, | |
| 187 | + { AV_PIX_FMT_YUVA420P16BE, MKTAG(16 , 11 , '4', 'Y') }, | |
| 188 | + { AV_PIX_FMT_YUVA422P16LE, MKTAG('Y', '4', 10 , 16 ) }, | |
| 189 | + { AV_PIX_FMT_YUVA422P16BE, MKTAG(16 , 10 , '4', 'Y') }, | |
| 190 | + { AV_PIX_FMT_YUVA444P16LE, MKTAG('Y', '4', 0 , 16 ) }, | |
| 191 | + { AV_PIX_FMT_YUVA444P16BE, MKTAG(16 , 0 , '4', 'Y') }, | |
| 192 | + | |
| 193 | + { AV_PIX_FMT_GBRP, MKTAG('G', '3', 00 , 8 ) }, | |
| 194 | + { AV_PIX_FMT_GBRP9LE, MKTAG('G', '3', 00 , 9 ) }, | |
| 195 | + { AV_PIX_FMT_GBRP9BE, MKTAG( 9 , 00 , '3', 'G') }, | |
| 196 | + { AV_PIX_FMT_GBRP10LE, MKTAG('G', '3', 00 , 10 ) }, | |
| 197 | + { AV_PIX_FMT_GBRP10BE, MKTAG(10 , 00 , '3', 'G') }, | |
| 198 | + { AV_PIX_FMT_GBRP12LE, MKTAG('G', '3', 00 , 12 ) }, | |
| 199 | + { AV_PIX_FMT_GBRP12BE, MKTAG(12 , 00 , '3', 'G') }, | |
| 200 | + { AV_PIX_FMT_GBRP14LE, MKTAG('G', '3', 00 , 14 ) }, | |
| 201 | + { AV_PIX_FMT_GBRP14BE, MKTAG(14 , 00 , '3', 'G') }, | |
| 202 | + { AV_PIX_FMT_GBRP16LE, MKTAG('G', '3', 00 , 16 ) }, | |
| 203 | + { AV_PIX_FMT_GBRP16BE, MKTAG(16 , 00 , '3', 'G') }, | |
| 204 | + { AV_PIX_FMT_GBRPF16LE, MKTAG('G', '3', 00 , 17 ) }, | |
| 205 | + { AV_PIX_FMT_GBRPF16BE, MKTAG(17 , 00 , '3', 'G') }, | |
| 206 | + { AV_PIX_FMT_GBRPF32LE, MKTAG('G', '3', 00 , 33 ) }, | |
| 207 | + { AV_PIX_FMT_GBRPF32BE, MKTAG(33 , 00 , '3', 'G') }, | |
| 208 | + | |
| 209 | + { AV_PIX_FMT_GBRAP, MKTAG('G', '4', 00 , 8 ) }, | |
| 210 | + { AV_PIX_FMT_GBRAP10LE, MKTAG('G', '4', 00 , 10 ) }, | |
| 211 | + { AV_PIX_FMT_GBRAP10BE, MKTAG(10 , 00 , '4', 'G') }, | |
| 212 | + { AV_PIX_FMT_GBRAP12LE, MKTAG('G', '4', 00 , 12 ) }, | |
| 213 | + { AV_PIX_FMT_GBRAP12BE, MKTAG(12 , 00 , '4', 'G') }, | |
| 214 | + { AV_PIX_FMT_GBRAP14LE, MKTAG('G', '4', 00 , 14 ) }, | |
| 215 | + { AV_PIX_FMT_GBRAP14BE, MKTAG(14 , 00 , '4', 'G') }, | |
| 216 | + { AV_PIX_FMT_GBRAP16LE, MKTAG('G', '4', 00 , 16 ) }, | |
| 217 | + { AV_PIX_FMT_GBRAP16BE, MKTAG(16 , 00 , '4', 'G') }, | |
| 218 | + { AV_PIX_FMT_GBRAPF16LE, MKTAG('G', '4', 00 , 17 ) }, | |
| 219 | + { AV_PIX_FMT_GBRAPF16BE, MKTAG(17 , 00 , '4', 'G') }, | |
| 220 | + { AV_PIX_FMT_GBRAPF32LE, MKTAG('G', '4', 00 , 33 ) }, | |
| 221 | + { AV_PIX_FMT_GBRAPF32BE, MKTAG(33 , 00 , '4', 'G') }, | |
| 222 | + | |
| 223 | + { AV_PIX_FMT_XYZ12LE, MKTAG('X', 'Y', 'Z' , 36 ) }, | |
| 224 | + { AV_PIX_FMT_XYZ12BE, MKTAG(36 , 'Z' , 'Y', 'X') }, | |
| 225 | + | |
| 226 | + { AV_PIX_FMT_BAYER_BGGR8, MKTAG(0xBA, 'B', 'G', 8 ) }, | |
| 227 | + { AV_PIX_FMT_BAYER_BGGR16LE, MKTAG(0xBA, 'B', 'G', 16 ) }, | |
| 228 | + { AV_PIX_FMT_BAYER_BGGR16BE, MKTAG(16 , 'G', 'B', 0xBA) }, | |
| 229 | + { AV_PIX_FMT_BAYER_RGGB8, MKTAG(0xBA, 'R', 'G', 8 ) }, | |
| 230 | + { AV_PIX_FMT_BAYER_RGGB16LE, MKTAG(0xBA, 'R', 'G', 16 ) }, | |
| 231 | + { AV_PIX_FMT_BAYER_RGGB16BE, MKTAG(16 , 'G', 'R', 0xBA) }, | |
| 232 | + { AV_PIX_FMT_BAYER_GBRG8, MKTAG(0xBA, 'G', 'B', 8 ) }, | |
| 233 | + { AV_PIX_FMT_BAYER_GBRG16LE, MKTAG(0xBA, 'G', 'B', 16 ) }, | |
| 234 | + { AV_PIX_FMT_BAYER_GBRG16BE, MKTAG(16, 'B', 'G', 0xBA) }, | |
| 235 | + { AV_PIX_FMT_BAYER_GRBG8, MKTAG(0xBA, 'G', 'R', 8 ) }, | |
| 236 | + { AV_PIX_FMT_BAYER_GRBG16LE, MKTAG(0xBA, 'G', 'R', 16 ) }, | |
| 237 | + { AV_PIX_FMT_BAYER_GRBG16BE, MKTAG(16, 'R', 'G', 0xBA) }, | |
| 238 | + | |
| 239 | + /* quicktime */ | |
| 240 | + { AV_PIX_FMT_YUV420P, MKTAG('R', '4', '2', '0') }, /* Radius DV YUV PAL */ | |
| 241 | + { AV_PIX_FMT_YUV411P, MKTAG('R', '4', '1', '1') }, /* Radius DV YUV NTSC */ | |
| 242 | + { AV_PIX_FMT_UYVY422, MKTAG('2', 'v', 'u', 'y') }, | |
| 243 | + { AV_PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', 'y') }, | |
| 244 | + { AV_PIX_FMT_UYVY422, MKTAG('A', 'V', 'U', 'I') }, /* FIXME merge both fields */ | |
| 245 | + { AV_PIX_FMT_UYVY422, MKTAG('b', 'x', 'y', 'v') }, | |
| 246 | + { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, | |
| 247 | + { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, | |
| 248 | + { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ | |
| 249 | + { AV_PIX_FMT_VYU444, MKTAG('v', '3', '0', '8') }, | |
| 250 | + { AV_PIX_FMT_UYVA, MKTAG('v', '4', '0', '8') }, | |
| 251 | + { AV_PIX_FMT_V30XLE, MKTAG('v', '4', '1', '0') }, | |
| 252 | + { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, | |
| 253 | + { AV_PIX_FMT_RGB555LE, MKTAG('L', '5', '5', '5') }, | |
| 254 | + { AV_PIX_FMT_RGB565LE, MKTAG('L', '5', '6', '5') }, | |
| 255 | + { AV_PIX_FMT_RGB565BE, MKTAG('B', '5', '6', '5') }, | |
| 256 | + { AV_PIX_FMT_BGR24, MKTAG('2', '4', 'B', 'G') }, | |
| 257 | + { AV_PIX_FMT_BGR24, MKTAG('b', 'x', 'b', 'g') }, | |
| 258 | + { AV_PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, | |
| 259 | + { AV_PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, | |
| 260 | + { AV_PIX_FMT_RGB24, MKTAG('b', 'x', 'r', 'g') }, | |
| 261 | + { AV_PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, | |
| 262 | + { AV_PIX_FMT_GRAY16BE, MKTAG('b', '1', '6', 'g') }, | |
| 263 | + { AV_PIX_FMT_RGB48BE, MKTAG('b', '4', '8', 'r') }, | |
| 264 | + { AV_PIX_FMT_RGBA64BE, MKTAG('b', '6', '4', 'a') }, | |
| 265 | + { AV_PIX_FMT_BAYER_RGGB16BE, MKTAG('B', 'G', 'G', 'R') }, | |
| 266 | + | |
| 267 | + /* vlc */ | |
| 268 | + { AV_PIX_FMT_YUV410P, MKTAG('I', '4', '1', '0') }, | |
| 269 | + { AV_PIX_FMT_YUV411P, MKTAG('I', '4', '1', '1') }, | |
| 270 | + { AV_PIX_FMT_YUV422P, MKTAG('I', '4', '2', '2') }, | |
| 271 | + { AV_PIX_FMT_YUV440P, MKTAG('I', '4', '4', '0') }, | |
| 272 | + { AV_PIX_FMT_YUV444P, MKTAG('I', '4', '4', '4') }, | |
| 273 | + { AV_PIX_FMT_YUVJ420P, MKTAG('J', '4', '2', '0') }, | |
| 274 | + { AV_PIX_FMT_YUVJ422P, MKTAG('J', '4', '2', '2') }, | |
| 275 | + { AV_PIX_FMT_YUVJ440P, MKTAG('J', '4', '4', '0') }, | |
| 276 | + { AV_PIX_FMT_YUVJ444P, MKTAG('J', '4', '4', '4') }, | |
| 277 | + { AV_PIX_FMT_YUVA444P, MKTAG('Y', 'U', 'V', 'A') }, | |
| 278 | + { AV_PIX_FMT_YUVA420P, MKTAG('I', '4', '0', 'A') }, | |
| 279 | + { AV_PIX_FMT_YUVA422P, MKTAG('I', '4', '2', 'A') }, | |
| 280 | + { AV_PIX_FMT_RGB8, MKTAG('R', 'G', 'B', '2') }, | |
| 281 | + { AV_PIX_FMT_RGB555LE, MKTAG('R', 'V', '1', '5') }, | |
| 282 | + { AV_PIX_FMT_RGB565LE, MKTAG('R', 'V', '1', '6') }, | |
| 283 | + { AV_PIX_FMT_BGR24, MKTAG('R', 'V', '2', '4') }, | |
| 284 | + { AV_PIX_FMT_BGR0, MKTAG('R', 'V', '3', '2') }, | |
| 285 | + { AV_PIX_FMT_RGBA, MKTAG('A', 'V', '3', '2') }, | |
| 286 | + { AV_PIX_FMT_YUV420P9LE, MKTAG('I', '0', '9', 'L') }, | |
| 287 | + { AV_PIX_FMT_YUV420P9BE, MKTAG('I', '0', '9', 'B') }, | |
| 288 | + { AV_PIX_FMT_YUV422P9LE, MKTAG('I', '2', '9', 'L') }, | |
| 289 | + { AV_PIX_FMT_YUV422P9BE, MKTAG('I', '2', '9', 'B') }, | |
| 290 | + { AV_PIX_FMT_YUV444P9LE, MKTAG('I', '4', '9', 'L') }, | |
| 291 | + { AV_PIX_FMT_YUV444P9BE, MKTAG('I', '4', '9', 'B') }, | |
| 292 | + { AV_PIX_FMT_YUV420P10LE, MKTAG('I', '0', 'A', 'L') }, | |
| 293 | + { AV_PIX_FMT_YUV420P10BE, MKTAG('I', '0', 'A', 'B') }, | |
| 294 | + { AV_PIX_FMT_YUV422P10LE, MKTAG('I', '2', 'A', 'L') }, | |
| 295 | + { AV_PIX_FMT_YUV422P10BE, MKTAG('I', '2', 'A', 'B') }, | |
| 296 | + { AV_PIX_FMT_YUV444P10LE, MKTAG('I', '4', 'A', 'L') }, | |
| 297 | + { AV_PIX_FMT_YUV444P10BE, MKTAG('I', '4', 'A', 'B') }, | |
| 298 | + { AV_PIX_FMT_YUV420P12LE, MKTAG('I', '0', 'C', 'L') }, | |
| 299 | + { AV_PIX_FMT_YUV420P12BE, MKTAG('I', '0', 'C', 'B') }, | |
| 300 | + { AV_PIX_FMT_YUV422P12LE, MKTAG('I', '2', 'C', 'L') }, | |
| 301 | + { AV_PIX_FMT_YUV422P12BE, MKTAG('I', '2', 'C', 'B') }, | |
| 302 | + { AV_PIX_FMT_YUV444P12LE, MKTAG('I', '4', 'C', 'L') }, | |
| 303 | + { AV_PIX_FMT_YUV444P12BE, MKTAG('I', '4', 'C', 'B') }, | |
| 304 | + { AV_PIX_FMT_YUV420P16LE, MKTAG('I', '0', 'F', 'L') }, | |
| 305 | + { AV_PIX_FMT_YUV420P16BE, MKTAG('I', '0', 'F', 'B') }, | |
| 306 | + { AV_PIX_FMT_YUV444P16LE, MKTAG('I', '4', 'F', 'L') }, | |
| 307 | + { AV_PIX_FMT_YUV444P16BE, MKTAG('I', '4', 'F', 'B') }, | |
| 308 | + | |
| 309 | + /* special */ | |
| 310 | + { AV_PIX_FMT_RGB565LE, MKTAG( 3 , 0 , 0 , 0 ) }, /* flipped RGB565LE */ | |
| 311 | + { AV_PIX_FMT_YUV444P, MKTAG('Y', 'V', '2', '4') }, /* YUV444P, swapped UV */ | |
| 312 | + | |
| 313 | + { AV_PIX_FMT_NONE, 0 }, | |
| 314 | +}; | |
| 315 | + | |
| 316 | +#endif /* AVCODEC_RAW_PIX_FMT_TAGS_H */ | |
| @@ -19,14 +19,15 @@ · 18 unmodified lines | ||
| 19 | 19 | */ |
| 20 | 20 | |
| 21 | 21 | #include "config.h" |
| 22 | +#include <stdio.h> | |
| 22 | 23 | #if HAVE_UNISTD_H |
| 23 | 24 | #include <unistd.h> /* getopt */ |
| 24 | 25 | #endif |
| 25 | 26 | |
| 27 | +#include "libavutil/avutil.h" | |
| 26 | 28 | #include "libavutil/pixdesc.h" |
| 27 | −#include "libavcodec/avcodec.h" | |
| 28 | −#include "libavutil/common.h" | |
| 29 | 29 | #include "libavcodec/raw.h" |
| 30 | +#include "libavcodec/raw_pix_fmt_tags.h" | |
| 30 | 31 | |
| 31 | 32 | #undef printf |
| 32 | 33 | #undef fprintf |
| @@ -59,7 +60,7 @@ static void print_pix_fmt_fourccs(enum AVPixelFormat pix_fmt, const PixelFormatT · 26 unmodified lines | ||
| 59 | 60 | int main(int argc, char **argv) |
| 60 | 61 | { |
| 61 | 62 | int i, list_fourcc_pix_fmt = 0, list_pix_fmt_fourccs = 0; |
| 62 | − const PixelFormatTag *pix_fmt_tags = avpriv_get_raw_pix_fmt_tags(); | |
| 63 | + const PixelFormatTag *pix_fmt_tags = raw_pix_fmt_tags; | |
| 63 | 64 | const char *pix_fmt_name = NULL; |
| 64 | 65 | char c; |
| 65 | 66 | |