annotate pixfmt.h @ 711:4a112abac1f8 libavutil

Use PIX_FMT_NE() for defining the PIX_FMT_RGB32 variants macros.
author stefano
date Mon, 23 Mar 2009 23:01:11 +0000
parents 336b1ad91362
children c9501830f9b2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
1 /*
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
2 * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
3 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
4 * This file is part of FFmpeg.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
5 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
6 * FFmpeg is free software; you can redistribute it and/or
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
8 * License as published by the Free Software Foundation; either
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
9 * version 2.1 of the License, or (at your option) any later version.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
10 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
11 * FFmpeg is distributed in the hope that it will be useful,
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
14 * Lesser General Public License for more details.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
15 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
17 * License along with FFmpeg; if not, write to the Free Software
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
19 */
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
20
671
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
21 #ifndef AVUTIL_PIXFMT_H
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
22 #define AVUTIL_PIXFMT_H
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
23
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
24 /**
671
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
25 * @file libavutil/pixfmt.h
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
26 * pixel format definitions
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
27 *
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
28 * @warning This file has to be considered an internal but installed
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
29 * header, so it should not be directly included in your projects.
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
30 */
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
31
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
32 /**
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
33 * Pixel format. Notes:
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
34 *
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
35 * PIX_FMT_RGB32 is handled in an endian-specific manner. An RGBA
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
36 * color is put together as:
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
37 * (A << 24) | (R << 16) | (G << 8) | B
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
38 * This is stored as BGRA on little-endian CPU architectures and ARGB on
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
39 * big-endian CPUs.
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
40 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
41 * When the pixel format is palettized RGB (PIX_FMT_PAL8), the palettized
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
42 * image data is stored in AVFrame.data[0]. The palette is transported in
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 633
diff changeset
43 * AVFrame.data[1], is 1024 bytes long (256 4-byte entries) and is
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
44 * formatted the same as in PIX_FMT_RGB32 described above (i.e., it is
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
45 * also endian-specific). Note also that the individual RGB palette
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
46 * components stored in AVFrame.data[1] should be in the range 0..255.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
47 * This is important as many custom PAL8 video codecs that were designed
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
48 * to run on the IBM VGA graphics adapter use 6-bit palette components.
652
065d4a472bab Ensure that the palette is set in data[1] for all 8bit formats.
michael
parents: 642
diff changeset
49 *
065d4a472bab Ensure that the palette is set in data[1] for all 8bit formats.
michael
parents: 642
diff changeset
50 * For all the 8bit per pixel formats, an RGB32 palette is in data[1] like
065d4a472bab Ensure that the palette is set in data[1] for all 8bit formats.
michael
parents: 642
diff changeset
51 * for pal8. This palette is filled in automatically by the function
065d4a472bab Ensure that the palette is set in data[1] for all 8bit formats.
michael
parents: 642
diff changeset
52 * allocating the picture.
670
69e93bca7fd3 Add note about big vs. little endian.
michael
parents: 669
diff changeset
53 *
69e93bca7fd3 Add note about big vs. little endian.
michael
parents: 669
diff changeset
54 * Note, make sure that all newly added big endian formats have pix_fmt&1==1
69e93bca7fd3 Add note about big vs. little endian.
michael
parents: 669
diff changeset
55 * and that all newly added little endian formats have pix_fmt&1==0
69e93bca7fd3 Add note about big vs. little endian.
michael
parents: 669
diff changeset
56 * this allows simpler detection of big vs little endian.
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
57 */
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
58 enum PixelFormat {
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
59 PIX_FMT_NONE= -1,
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
60 PIX_FMT_YUV420P, ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
61 PIX_FMT_YUYV422, ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
62 PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB...
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
63 PIX_FMT_BGR24, ///< packed RGB 8:8:8, 24bpp, BGRBGR...
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
64 PIX_FMT_YUV422P, ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
65 PIX_FMT_YUV444P, ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
66 PIX_FMT_YUV410P, ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
67 PIX_FMT_YUV411P, ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
68 PIX_FMT_GRAY8, ///< Y , 8bpp
346
e9937dcd0afd Clarify comments about PIX_FMT_MONOWHITE/MONOBLACK
mbardiaux
parents: 338
diff changeset
69 PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black
e9937dcd0afd Clarify comments about PIX_FMT_MONOWHITE/MONOBLACK
mbardiaux
parents: 338
diff changeset
70 PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
71 PIX_FMT_PAL8, ///< 8 bit with PIX_FMT_RGB32 palette
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
72 PIX_FMT_YUVJ420P, ///< planar YUV 4:2:0, 12bpp, full scale (JPEG)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
73 PIX_FMT_YUVJ422P, ///< planar YUV 4:2:2, 16bpp, full scale (JPEG)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
74 PIX_FMT_YUVJ444P, ///< planar YUV 4:4:4, 24bpp, full scale (JPEG)
665
6780cc679b76 Remove reference to renamed header file xvmc_render.h.
diego
parents: 652
diff changeset
75 PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
76 PIX_FMT_XVMC_MPEG2_IDCT,
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
77 PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
78 PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
79 PIX_FMT_BGR8, ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
80 PIX_FMT_BGR4, ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
81 PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
82 PIX_FMT_RGB8, ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
83 PIX_FMT_RGB4, ///< packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
84 PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
85 PIX_FMT_NV12, ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
86 PIX_FMT_NV21, ///< as above, but U and V bytes are swapped
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
87
708
2cd525e90b45 Make the pixel formats which were defined as macros:
stefano
parents: 707
diff changeset
88 PIX_FMT_ARGB, ///< packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
2cd525e90b45 Make the pixel formats which were defined as macros:
stefano
parents: 707
diff changeset
89 PIX_FMT_RGBA, ///< packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
2cd525e90b45 Make the pixel formats which were defined as macros:
stefano
parents: 707
diff changeset
90 PIX_FMT_ABGR, ///< packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
2cd525e90b45 Make the pixel formats which were defined as macros:
stefano
parents: 707
diff changeset
91 PIX_FMT_BGRA, ///< packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
92
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
93 PIX_FMT_GRAY16BE, ///< Y , 16bpp, big-endian
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
94 PIX_FMT_GRAY16LE, ///< Y , 16bpp, little-endian
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
95 PIX_FMT_YUV440P, ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
96 PIX_FMT_YUVJ440P, ///< planar YUV 4:4:0 full scale (JPEG)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
97 PIX_FMT_YUVA420P, ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
98 PIX_FMT_VDPAU_H264,///< H.264 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
99 PIX_FMT_VDPAU_MPEG1,///< MPEG-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
100 PIX_FMT_VDPAU_MPEG2,///< MPEG-2 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
614
f24ae37e1ebb Add VDPAU hardware accelerated decoding for WMV3 and VC1 which can
cehoyos
parents: 609
diff changeset
101 PIX_FMT_VDPAU_WMV3,///< WMV3 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
633
8c48a1b999a3 spelling/grammar/consistency review part I
diego
parents: 614
diff changeset
102 PIX_FMT_VDPAU_VC1, ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
669
d832fcef8bb8 Add PIX_FMT_RGB48BE and PIX_FMT_RGB48LE.
pross
parents: 665
diff changeset
103 PIX_FMT_RGB48BE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, big-endian
d832fcef8bb8 Add PIX_FMT_RGB48BE and PIX_FMT_RGB48LE.
pross
parents: 665
diff changeset
104 PIX_FMT_RGB48LE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, little-endian
707
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
105
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
106 PIX_FMT_RGB565BE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
107 PIX_FMT_RGB565LE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), little-endian
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
108 PIX_FMT_RGB555BE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
109 PIX_FMT_RGB555LE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), little-endian, most significant bit to 0
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
110
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
111 PIX_FMT_BGR565BE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), big-endian
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
112 PIX_FMT_BGR565LE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), little-endian
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
113 PIX_FMT_BGR555BE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), big-endian, most significant bit to 1
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
114 PIX_FMT_BGR555LE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), little-endian, most significant bit to 1
3138bb2c6780 Change the RGB5X5/BGR5X5 pixel format defines so that we have little
stefano
parents: 706
diff changeset
115
690
a2eb62aebb99 Update VA API pixfmts documentation: struct vaapi_render_state
gb
parents: 673
diff changeset
116 PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[3] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
a2eb62aebb99 Update VA API pixfmts documentation: struct vaapi_render_state
gb
parents: 673
diff changeset
117 PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
a2eb62aebb99 Update VA API pixfmts documentation: struct vaapi_render_state
gb
parents: 673
diff changeset
118 PIX_FMT_VAAPI_VLD, ///< HW decoding through VA API, Picture.data[3] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
119 PIX_FMT_NB, ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
120 };
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
121
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
122 #ifdef WORDS_BIGENDIAN
710
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
123 # define PIX_FMT_NE(be, le) PIX_FMT_##be
705
da8296e7a4d6 Implement PIX_FMT_NE() macro.
stefano
parents: 695
diff changeset
124 #else
710
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
125 # define PIX_FMT_NE(be, le) PIX_FMT_##le
705
da8296e7a4d6 Implement PIX_FMT_NE() macro.
stefano
parents: 695
diff changeset
126 #endif
da8296e7a4d6 Implement PIX_FMT_NE() macro.
stefano
parents: 695
diff changeset
127
711
4a112abac1f8 Use PIX_FMT_NE() for defining the PIX_FMT_RGB32 variants macros.
stefano
parents: 710
diff changeset
128 #define PIX_FMT_RGB32 PIX_FMT_NE(ARGB, BGRA)
4a112abac1f8 Use PIX_FMT_NE() for defining the PIX_FMT_RGB32 variants macros.
stefano
parents: 710
diff changeset
129 #define PIX_FMT_RGB32_1 PIX_FMT_NE(RGBA, ABGR)
4a112abac1f8 Use PIX_FMT_NE() for defining the PIX_FMT_RGB32 variants macros.
stefano
parents: 710
diff changeset
130 #define PIX_FMT_BGR32 PIX_FMT_NE(ABGR, RGBA)
4a112abac1f8 Use PIX_FMT_NE() for defining the PIX_FMT_RGB32 variants macros.
stefano
parents: 710
diff changeset
131 #define PIX_FMT_BGR32_1 PIX_FMT_NE(BGRA, ARGB)
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
132
710
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
133 #define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16BE, GRAY16LE)
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
134 #define PIX_FMT_RGB48 PIX_FMT_NE(RGB48BE, RGB48LE)
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
135 #define PIX_FMT_RGB565 PIX_FMT_NE(RGB565BE, RGB565LE)
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
136 #define PIX_FMT_RGB555 PIX_FMT_NE(RGB555BE, RGB555LE)
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
137 #define PIX_FMT_BGR565 PIX_FMT_NE(BGR565BE, BGR565LE)
336b1ad91362 Make the PIX_FMT_NE() macro more generic.
stefano
parents: 708
diff changeset
138 #define PIX_FMT_BGR555 PIX_FMT_NE(BGR555BE, BGR555LE)
706
40979c781a28 Use PIX_FMT_NE() macro.
stefano
parents: 705
diff changeset
139
671
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
140 #endif /* AVUTIL_PIXFMT_H */