Mercurial > mplayer.hg
annotate libmpcodecs/img_format.h @ 32927:edb972e22021
Fix memory leak in appInitStruct().
The NumberOf{Main,Bar,Menu}Items members actually don't hold the
number of items but the last index used. Therefore, the last item
won't get freed so far.
To set the correct "number" for the global external variable prior
to using it, the function appResetStruct() has been added and is used
in appInitStruct() as well.
author | ib |
---|---|
date | Thu, 03 Mar 2011 13:45:30 +0000 |
parents | 49722126eba9 |
children | b1e64a3d6dd3 |
rev | line source |
---|---|
30421
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
1 /* |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
2 * This file is part of MPlayer. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
3 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
7 * (at your option) any later version. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
8 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
12 * GNU General Public License for more details. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
13 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
17 */ |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
30311
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_IMG_FORMAT_H |
20 #define MPLAYER_IMG_FORMAT_H | |
408 | 21 |
29741
c9c2befb2409
Add missing '#include "config.h"', the header uses HAVE_BIGENDIAN.
diego
parents:
29458
diff
changeset
|
22 #include "config.h" |
c9c2befb2409
Add missing '#include "config.h"', the header uses HAVE_BIGENDIAN.
diego
parents:
29458
diff
changeset
|
23 |
408 | 24 /* RGB/BGR Formats */ |
25 | |
26 #define IMGFMT_RGB_MASK 0xFFFFFF00 | |
27 #define IMGFMT_RGB (('R'<<24)|('G'<<16)|('B'<<8)) | |
6576 | 28 #define IMGFMT_RGB1 (IMGFMT_RGB|1) |
29 #define IMGFMT_RGB4 (IMGFMT_RGB|4) | |
12996 | 30 #define IMGFMT_RGB4_CHAR (IMGFMT_RGB|4|128) // RGB4 with 1 pixel per byte |
408 | 31 #define IMGFMT_RGB8 (IMGFMT_RGB|8) |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
32 #define IMGFMT_RGB12 (IMGFMT_RGB|12) |
408 | 33 #define IMGFMT_RGB15 (IMGFMT_RGB|15) |
34 #define IMGFMT_RGB16 (IMGFMT_RGB|16) | |
35 #define IMGFMT_RGB24 (IMGFMT_RGB|24) | |
36 #define IMGFMT_RGB32 (IMGFMT_RGB|32) | |
29444 | 37 #define IMGFMT_RGB48LE (IMGFMT_RGB|48) |
29458
c85a54f30ed9
100l, fix compilation again and make codec-cfg.c use the predefined constants
reimar
parents:
29457
diff
changeset
|
38 #define IMGFMT_RGB48BE (IMGFMT_RGB|48|128) |
408 | 39 |
40 #define IMGFMT_BGR_MASK 0xFFFFFF00 | |
41 #define IMGFMT_BGR (('B'<<24)|('G'<<16)|('R'<<8)) | |
6576 | 42 #define IMGFMT_BGR1 (IMGFMT_BGR|1) |
43 #define IMGFMT_BGR4 (IMGFMT_BGR|4) | |
12996 | 44 #define IMGFMT_BGR4_CHAR (IMGFMT_BGR|4|128) // BGR4 with 1 pixel per byte |
408 | 45 #define IMGFMT_BGR8 (IMGFMT_BGR|8) |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
46 #define IMGFMT_BGR12 (IMGFMT_BGR|12) |
408 | 47 #define IMGFMT_BGR15 (IMGFMT_BGR|15) |
48 #define IMGFMT_BGR16 (IMGFMT_BGR|16) | |
49 #define IMGFMT_BGR24 (IMGFMT_BGR|24) | |
50 #define IMGFMT_BGR32 (IMGFMT_BGR|32) | |
51 | |
29401
f01023c524c3
Replace WORDS_BIGENDIAN by HAVE_BIGENDIAN in all internal code.
diego
parents:
28516
diff
changeset
|
52 #if HAVE_BIGENDIAN |
12996 | 53 #define IMGFMT_ABGR IMGFMT_RGB32 |
54 #define IMGFMT_BGRA (IMGFMT_RGB32|64) | |
55 #define IMGFMT_ARGB IMGFMT_BGR32 | |
56 #define IMGFMT_RGBA (IMGFMT_BGR32|64) | |
29899
0447ba499275
Add a define for IMGFMT_RGB48NE that depends on machine endianness.
reimar
parents:
29843
diff
changeset
|
57 #define IMGFMT_RGB48NE IMGFMT_RGB48BE |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
58 #define IMGFMT_RGB12BE IMGFMT_RGB12 |
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
59 #define IMGFMT_RGB12LE (IMGFMT_RGB12|64) |
30311
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
60 #define IMGFMT_RGB15BE IMGFMT_RGB15 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
61 #define IMGFMT_RGB15LE (IMGFMT_RGB15|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
62 #define IMGFMT_RGB16BE IMGFMT_RGB16 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
63 #define IMGFMT_RGB16LE (IMGFMT_RGB16|64) |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
64 #define IMGFMT_BGR12BE IMGFMT_BGR12 |
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
65 #define IMGFMT_BGR12LE (IMGFMT_BGR12|64) |
30311
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
66 #define IMGFMT_BGR15BE IMGFMT_BGR15 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
67 #define IMGFMT_BGR15LE (IMGFMT_BGR15|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
68 #define IMGFMT_BGR16BE IMGFMT_BGR16 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
69 #define IMGFMT_BGR16LE (IMGFMT_BGR16|64) |
12996 | 70 #else |
71 #define IMGFMT_ABGR (IMGFMT_BGR32|64) | |
72 #define IMGFMT_BGRA IMGFMT_BGR32 | |
73 #define IMGFMT_ARGB (IMGFMT_RGB32|64) | |
74 #define IMGFMT_RGBA IMGFMT_RGB32 | |
29899
0447ba499275
Add a define for IMGFMT_RGB48NE that depends on machine endianness.
reimar
parents:
29843
diff
changeset
|
75 #define IMGFMT_RGB48NE IMGFMT_RGB48LE |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
76 #define IMGFMT_RGB12BE (IMGFMT_RGB12|64) |
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
77 #define IMGFMT_RGB12LE IMGFMT_RGB12 |
30311
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
78 #define IMGFMT_RGB15BE (IMGFMT_RGB15|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
79 #define IMGFMT_RGB15LE IMGFMT_RGB15 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
80 #define IMGFMT_RGB16BE (IMGFMT_RGB16|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
81 #define IMGFMT_RGB16LE IMGFMT_RGB16 |
31082
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
82 #define IMGFMT_BGR12BE (IMGFMT_BGR12|64) |
92f88bb315c5
Add support for 12-bit color mode on framebuffer devices.
cehoyos
parents:
30421
diff
changeset
|
83 #define IMGFMT_BGR12LE IMGFMT_BGR12 |
30311
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
84 #define IMGFMT_BGR15BE (IMGFMT_BGR15|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
85 #define IMGFMT_BGR15LE IMGFMT_BGR15 |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
86 #define IMGFMT_BGR16BE (IMGFMT_BGR16|64) |
8a67140f5fc1
Add big- and little-endian variants of the 15 and 16 bit RGB/BGR formats.
reimar
parents:
30115
diff
changeset
|
87 #define IMGFMT_BGR16LE IMGFMT_BGR16 |
12996 | 88 #endif |
89 | |
90 /* old names for compatibility */ | |
91 #define IMGFMT_RG4B IMGFMT_RGB4_CHAR | |
92 #define IMGFMT_BG4B IMGFMT_BGR4_CHAR | |
93 | |
8957
36a5cdca733b
bunkus: Encapsulated arguments to #define in ( ... ) so that the #defines can be safely used like functions: mydef(flag ? val1 : val2)
mosu
parents:
6863
diff
changeset
|
94 #define IMGFMT_IS_RGB(fmt) (((fmt)&IMGFMT_RGB_MASK)==IMGFMT_RGB) |
36a5cdca733b
bunkus: Encapsulated arguments to #define in ( ... ) so that the #defines can be safely used like functions: mydef(flag ? val1 : val2)
mosu
parents:
6863
diff
changeset
|
95 #define IMGFMT_IS_BGR(fmt) (((fmt)&IMGFMT_BGR_MASK)==IMGFMT_BGR) |
2791 | 96 |
9171 | 97 #define IMGFMT_RGB_DEPTH(fmt) ((fmt)&0x3F) |
98 #define IMGFMT_BGR_DEPTH(fmt) ((fmt)&0x3F) | |
2791 | 99 |
408 | 100 |
101 /* Planar YUV Formats */ | |
102 | |
103 #define IMGFMT_YVU9 0x39555659 | |
104 #define IMGFMT_IF09 0x39304649 | |
105 #define IMGFMT_YV12 0x32315659 | |
106 #define IMGFMT_I420 0x30323449 | |
107 #define IMGFMT_IYUV 0x56555949 | |
108 #define IMGFMT_CLPL 0x4C504C43 | |
3199 | 109 #define IMGFMT_Y800 0x30303859 |
110 #define IMGFMT_Y8 0x20203859 | |
6491 | 111 #define IMGFMT_NV12 0x3231564E |
10742
794b55a44528
basic nv12 and nv21 support by Angelo Cano <angelo_cano@fastmail.fm>
alex
parents:
10316
diff
changeset
|
112 #define IMGFMT_NV21 0x3132564E |
408 | 113 |
6863 | 114 /* unofficial Planar Formats, FIXME if official 4CC exists */ |
115 #define IMGFMT_444P 0x50343434 | |
116 #define IMGFMT_422P 0x50323234 | |
117 #define IMGFMT_411P 0x50313134 | |
30098 | 118 #define IMGFMT_440P 0x50303434 |
10305
3e40b8f879c8
HM12 & NV12 "decoder" (specially interleaved YUV formats, used by Hauppauge's PVR cards)
arpi
parents:
9171
diff
changeset
|
119 #define IMGFMT_HM12 0x32314D48 |
30115
ad61464d02a7
Add support for YUV format with alpha and fix the codecs.conf entry for vp6a
reimar
parents:
30110
diff
changeset
|
120 |
ad61464d02a7
Add support for YUV format with alpha and fix the codecs.conf entry for vp6a
reimar
parents:
30110
diff
changeset
|
121 // 4:2:0 planar with alpha |
ad61464d02a7
Add support for YUV format with alpha and fix the codecs.conf entry for vp6a
reimar
parents:
30110
diff
changeset
|
122 #define IMGFMT_420A 0x41303234 |
ad61464d02a7
Add support for YUV format with alpha and fix the codecs.conf entry for vp6a
reimar
parents:
30110
diff
changeset
|
123 |
30110 | 124 #define IMGFMT_444P16_LE 0x51343434 |
125 #define IMGFMT_444P16_BE 0x34343451 | |
126 #define IMGFMT_422P16_LE 0x51323234 | |
127 #define IMGFMT_422P16_BE 0x34323251 | |
128 #define IMGFMT_420P16_LE 0x51303234 | |
129 #define IMGFMT_420P16_BE 0x34323051 | |
130 #if HAVE_BIGENDIAN | |
131 #define IMGFMT_444P16 IMGFMT_444P16_BE | |
132 #define IMGFMT_422P16 IMGFMT_422P16_BE | |
133 #define IMGFMT_420P16 IMGFMT_420P16_BE | |
134 #else | |
135 #define IMGFMT_444P16 IMGFMT_444P16_LE | |
136 #define IMGFMT_422P16 IMGFMT_422P16_LE | |
137 #define IMGFMT_420P16 IMGFMT_420P16_LE | |
138 #endif | |
139 | |
140 #define IMGFMT_IS_YUVP16_LE(fmt) (((fmt ^ IMGFMT_420P16_LE) & 0xff0000ff) == 0) | |
141 #define IMGFMT_IS_YUVP16_BE(fmt) (((fmt ^ IMGFMT_420P16_BE) & 0xff0000ff) == 0) | |
142 #define IMGFMT_IS_YUVP16_NE(fmt) (((fmt ^ IMGFMT_420P16 ) & 0xff0000ff) == 0) | |
143 #define IMGFMT_IS_YUVP16(fmt) (IMGFMT_IS_YUVP16_LE(fmt) || IMGFMT_IS_YUVP16_BE(fmt)) | |
6863 | 144 |
408 | 145 /* Packed YUV Formats */ |
146 | |
3199 | 147 #define IMGFMT_IUYV 0x56595549 |
148 #define IMGFMT_IY41 0x31435949 | |
408 | 149 #define IMGFMT_IYU1 0x31555949 |
150 #define IMGFMT_IYU2 0x32555949 | |
151 #define IMGFMT_UYVY 0x59565955 | |
152 #define IMGFMT_UYNV 0x564E5955 | |
153 #define IMGFMT_cyuv 0x76757963 | |
3199 | 154 #define IMGFMT_Y422 0x32323459 |
408 | 155 #define IMGFMT_YUY2 0x32595559 |
156 #define IMGFMT_YUNV 0x564E5559 | |
157 #define IMGFMT_YVYU 0x55595659 | |
158 #define IMGFMT_Y41P 0x50313459 | |
159 #define IMGFMT_Y211 0x31313259 | |
160 #define IMGFMT_Y41T 0x54313459 | |
161 #define IMGFMT_Y42T 0x54323459 | |
162 #define IMGFMT_V422 0x32323456 | |
163 #define IMGFMT_V655 0x35353656 | |
164 #define IMGFMT_CLJR 0x524A4C43 | |
165 #define IMGFMT_YUVP 0x50565559 | |
166 #define IMGFMT_UYVP 0x50565955 | |
167 | |
1871 | 168 /* Compressed Formats */ |
169 #define IMGFMT_MPEGPES (('M'<<24)|('P'<<16)|('E'<<8)|('S')) | |
23423 | 170 #define IMGFMT_MJPEG (('M')|('J'<<8)|('P'<<16)|('G'<<24)) |
11386
229079491864
addition of special image formats for Zoran MJPEG, and vd_zrmjpeg.c
rik
parents:
10742
diff
changeset
|
171 /* Formats that are understood by zoran chips, we include |
229079491864
addition of special image formats for Zoran MJPEG, and vd_zrmjpeg.c
rik
parents:
10742
diff
changeset
|
172 * non-interlaced, interlaced top-first, interlaced bottom-first */ |
229079491864
addition of special image formats for Zoran MJPEG, and vd_zrmjpeg.c
rik
parents:
10742
diff
changeset
|
173 #define IMGFMT_ZRMJPEGNI (('Z'<<24)|('R'<<16)|('N'<<8)|('I')) |
229079491864
addition of special image formats for Zoran MJPEG, and vd_zrmjpeg.c
rik
parents:
10742
diff
changeset
|
174 #define IMGFMT_ZRMJPEGIT (('Z'<<24)|('R'<<16)|('I'<<8)|('T')) |
229079491864
addition of special image formats for Zoran MJPEG, and vd_zrmjpeg.c
rik
parents:
10742
diff
changeset
|
175 #define IMGFMT_ZRMJPEGIB (('Z'<<24)|('R'<<16)|('I'<<8)|('B')) |
1871 | 176 |
10316 | 177 // I think that this code could not be used by any other codec/format |
178 #define IMGFMT_XVMC 0x1DC70000 | |
179 #define IMGFMT_XVMC_MASK 0xFFFF0000 | |
180 #define IMGFMT_IS_XVMC(fmt) (((fmt)&IMGFMT_XVMC_MASK)==IMGFMT_XVMC) | |
181 //these are chroma420 | |
182 #define IMGFMT_XVMC_MOCO_MPEG2 (IMGFMT_XVMC|0x02) | |
183 #define IMGFMT_XVMC_IDCT_MPEG2 (IMGFMT_XVMC|0x82) | |
184 | |
28516
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
185 // VDPAU specific format. |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
186 #define IMGFMT_VDPAU 0x1DC80000 |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
187 #define IMGFMT_VDPAU_MASK 0xFFFF0000 |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
188 #define IMGFMT_IS_VDPAU(fmt) (((fmt)&IMGFMT_VDPAU_MASK)==IMGFMT_VDPAU) |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
189 #define IMGFMT_VDPAU_MPEG1 (IMGFMT_VDPAU|0x01) |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
190 #define IMGFMT_VDPAU_MPEG2 (IMGFMT_VDPAU|0x02) |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
191 #define IMGFMT_VDPAU_H264 (IMGFMT_VDPAU|0x03) |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
192 #define IMGFMT_VDPAU_WMV3 (IMGFMT_VDPAU|0x04) |
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
193 #define IMGFMT_VDPAU_VC1 (IMGFMT_VDPAU|0x05) |
29843
f6d56a15f1d8
Support VDPAU hardware accelerated decoding of MPEG-4 ASP on capable
cehoyos
parents:
29741
diff
changeset
|
194 #define IMGFMT_VDPAU_MPEG4 (IMGFMT_VDPAU|0x06) |
28516
79b0bd20433e
Add support for image formats and codecs used by VDPAU
reimar
parents:
26029
diff
changeset
|
195 |
32488 | 196 #define IMGFMT_IS_HWACCEL(fmt) (IMGFMT_IS_VDPAU(fmt) || IMGFMT_IS_XVMC(fmt)) |
197 | |
1871 | 198 typedef struct { |
199 void* data; | |
200 int size; | |
201 int id; // stream id. usually 0x1E0 | |
202 int timestamp; // pts, 90000 Hz counter based | |
203 } vo_mpegpes_t; | |
408 | 204 |
19108
5e767cabf4cd
marks several read-only string parameters and function return-values which can only be used read-only as const. Patch by Stefan Huehner, stefan _AT huener-org
reynaldo
parents:
12996
diff
changeset
|
205 const char *vo_format_name(int format); |
2654 | 206 |
30096
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
207 /** |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
208 * Calculates the scale shifts for the chroma planes for planar YUV |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
209 * |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
210 * \return bits-per-pixel for format if successful (i.e. format is 3 or 4-planes planar YUV), 0 otherwise |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
211 */ |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
212 int mp_get_chroma_shift(int format, int *x_shift, int *y_shift); |
76c25bfa181b
Add a helper function to get the chroma scale shift and use to simplify mpi setup.
reimar
parents:
29899
diff
changeset
|
213 |
26029 | 214 #endif /* MPLAYER_IMG_FORMAT_H */ |