1use crate::ffi::*;
2
3macro_rules! AV_PIX_FMT_NE {
4 ($def: ident, $be: ident, $le: ident) => {
5 #[cfg(target_endian = "big")]
6 pub const $def: AVPixelFormat = $be;
7
8 #[cfg(target_endian = "little")]
9 pub const $def: AVPixelFormat = $le;
10 };
11}
12
13AV_PIX_FMT_NE!(AV_PIX_FMT_RGB32, AV_PIX_FMT_ARGB, AV_PIX_FMT_BGRA);
14AV_PIX_FMT_NE!(AV_PIX_FMT_RGB32_1, AV_PIX_FMT_RGBA, AV_PIX_FMT_ABGR);
15AV_PIX_FMT_NE!(AV_PIX_FMT_BGR32, AV_PIX_FMT_ABGR, AV_PIX_FMT_RGBA);
16AV_PIX_FMT_NE!(AV_PIX_FMT_BGR32_1, AV_PIX_FMT_BGRA, AV_PIX_FMT_ARGB);
17AV_PIX_FMT_NE!(AV_PIX_FMT_0RGB32, AV_PIX_FMT_0RGB, AV_PIX_FMT_BGR0);
18AV_PIX_FMT_NE!(AV_PIX_FMT_0BGR32, AV_PIX_FMT_0BGR, AV_PIX_FMT_RGB0);
19
20AV_PIX_FMT_NE!(AV_PIX_FMT_GRAY9, AV_PIX_FMT_GRAY9BE, AV_PIX_FMT_GRAY9LE);
21AV_PIX_FMT_NE!(AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY10BE, AV_PIX_FMT_GRAY10LE);
22AV_PIX_FMT_NE!(AV_PIX_FMT_GRAY12, AV_PIX_FMT_GRAY12BE, AV_PIX_FMT_GRAY12LE);
23AV_PIX_FMT_NE!(AV_PIX_FMT_GRAY16, AV_PIX_FMT_GRAY16BE, AV_PIX_FMT_GRAY16LE);
24AV_PIX_FMT_NE!(AV_PIX_FMT_YA16, AV_PIX_FMT_YA16BE, AV_PIX_FMT_YA16LE);
25AV_PIX_FMT_NE!(AV_PIX_FMT_RGB48, AV_PIX_FMT_RGB48BE, AV_PIX_FMT_RGB48LE);
26AV_PIX_FMT_NE!(AV_PIX_FMT_RGB565, AV_PIX_FMT_RGB565BE, AV_PIX_FMT_RGB565LE);
27AV_PIX_FMT_NE!(AV_PIX_FMT_RGB555, AV_PIX_FMT_RGB555BE, AV_PIX_FMT_RGB555LE);
28AV_PIX_FMT_NE!(AV_PIX_FMT_RGB444, AV_PIX_FMT_RGB444BE, AV_PIX_FMT_RGB444LE);
29AV_PIX_FMT_NE!(AV_PIX_FMT_RGBA64, AV_PIX_FMT_RGBA64BE, AV_PIX_FMT_RGBA64LE);
30AV_PIX_FMT_NE!(AV_PIX_FMT_BGR48, AV_PIX_FMT_BGR48BE, AV_PIX_FMT_BGR48LE);
31AV_PIX_FMT_NE!(AV_PIX_FMT_BGR565, AV_PIX_FMT_BGR565BE, AV_PIX_FMT_BGR565LE);
32AV_PIX_FMT_NE!(AV_PIX_FMT_BGR555, AV_PIX_FMT_BGR555BE, AV_PIX_FMT_BGR555LE);
33AV_PIX_FMT_NE!(AV_PIX_FMT_BGR444, AV_PIX_FMT_BGR444BE, AV_PIX_FMT_BGR444LE);
34AV_PIX_FMT_NE!(AV_PIX_FMT_BGRA64, AV_PIX_FMT_BGRA64BE, AV_PIX_FMT_BGRA64LE);
35
36AV_PIX_FMT_NE!(AV_PIX_FMT_YUV420P9, AV_PIX_FMT_YUV420P9BE , AV_PIX_FMT_YUV420P9LE);
37AV_PIX_FMT_NE!(AV_PIX_FMT_YUV422P9, AV_PIX_FMT_YUV422P9BE , AV_PIX_FMT_YUV422P9LE);
38AV_PIX_FMT_NE!(AV_PIX_FMT_YUV444P9, AV_PIX_FMT_YUV444P9BE , AV_PIX_FMT_YUV444P9LE);
39AV_PIX_FMT_NE!(AV_PIX_FMT_YUV420P10, AV_PIX_FMT_YUV420P10BE, AV_PIX_FMT_YUV420P10LE);
40AV_PIX_FMT_NE!(AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV422P10BE, AV_PIX_FMT_YUV422P10LE);
41AV_PIX_FMT_NE!(AV_PIX_FMT_YUV440P10, AV_PIX_FMT_YUV440P10BE, AV_PIX_FMT_YUV440P10LE);
42AV_PIX_FMT_NE!(AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUV444P10BE, AV_PIX_FMT_YUV444P10LE);
43AV_PIX_FMT_NE!(AV_PIX_FMT_YUV420P12, AV_PIX_FMT_YUV420P12BE, AV_PIX_FMT_YUV420P12LE);
44AV_PIX_FMT_NE!(AV_PIX_FMT_YUV422P12, AV_PIX_FMT_YUV422P12BE, AV_PIX_FMT_YUV422P12LE);
45AV_PIX_FMT_NE!(AV_PIX_FMT_YUV440P12, AV_PIX_FMT_YUV440P12BE, AV_PIX_FMT_YUV440P12LE);
46AV_PIX_FMT_NE!(AV_PIX_FMT_YUV444P12, AV_PIX_FMT_YUV444P12BE, AV_PIX_FMT_YUV444P12LE);
47AV_PIX_FMT_NE!(AV_PIX_FMT_YUV420P14, AV_PIX_FMT_YUV420P14BE, AV_PIX_FMT_YUV420P14LE);
48AV_PIX_FMT_NE!(AV_PIX_FMT_YUV422P14, AV_PIX_FMT_YUV422P14BE, AV_PIX_FMT_YUV422P14LE);
49AV_PIX_FMT_NE!(AV_PIX_FMT_YUV444P14, AV_PIX_FMT_YUV444P14BE, AV_PIX_FMT_YUV444P14LE);
50AV_PIX_FMT_NE!(AV_PIX_FMT_YUV420P16, AV_PIX_FMT_YUV420P16BE, AV_PIX_FMT_YUV420P16LE);
51AV_PIX_FMT_NE!(AV_PIX_FMT_YUV422P16, AV_PIX_FMT_YUV422P16BE, AV_PIX_FMT_YUV422P16LE);
52AV_PIX_FMT_NE!(AV_PIX_FMT_YUV444P16, AV_PIX_FMT_YUV444P16BE, AV_PIX_FMT_YUV444P16LE);
53
54AV_PIX_FMT_NE!(AV_PIX_FMT_GBRP9, AV_PIX_FMT_GBRP9BE , AV_PIX_FMT_GBRP9LE);
55AV_PIX_FMT_NE!(AV_PIX_FMT_GBRP10, AV_PIX_FMT_GBRP10BE, AV_PIX_FMT_GBRP10LE);
56AV_PIX_FMT_NE!(AV_PIX_FMT_GBRP12, AV_PIX_FMT_GBRP12BE, AV_PIX_FMT_GBRP12LE);
57AV_PIX_FMT_NE!(AV_PIX_FMT_GBRP14, AV_PIX_FMT_GBRP14BE, AV_PIX_FMT_GBRP14LE);
58AV_PIX_FMT_NE!(AV_PIX_FMT_GBRP16, AV_PIX_FMT_GBRP16BE, AV_PIX_FMT_GBRP16LE);
59AV_PIX_FMT_NE!(AV_PIX_FMT_GBRAP10, AV_PIX_FMT_GBRAP10BE, AV_PIX_FMT_GBRAP10LE);
60AV_PIX_FMT_NE!(AV_PIX_FMT_GBRAP12, AV_PIX_FMT_GBRAP12BE, AV_PIX_FMT_GBRAP12LE);
61#[cfg(feature = "ffmpeg7")]
62AV_PIX_FMT_NE!(AV_PIX_FMT_GBRAP14, AV_PIX_FMT_GBRAP14BE, AV_PIX_FMT_GBRAP14LE);
63AV_PIX_FMT_NE!(AV_PIX_FMT_GBRAP16, AV_PIX_FMT_GBRAP16BE, AV_PIX_FMT_GBRAP16LE);
64
65AV_PIX_FMT_NE!(AV_PIX_FMT_BAYER_BGGR16, AV_PIX_FMT_BAYER_BGGR16BE, AV_PIX_FMT_BAYER_BGGR16LE);
66AV_PIX_FMT_NE!(AV_PIX_FMT_BAYER_RGGB16, AV_PIX_FMT_BAYER_RGGB16BE, AV_PIX_FMT_BAYER_RGGB16LE);
67AV_PIX_FMT_NE!(AV_PIX_FMT_BAYER_GBRG16, AV_PIX_FMT_BAYER_GBRG16BE, AV_PIX_FMT_BAYER_GBRG16LE);
68AV_PIX_FMT_NE!(AV_PIX_FMT_BAYER_GRBG16, AV_PIX_FMT_BAYER_GRBG16BE, AV_PIX_FMT_BAYER_GRBG16LE);
69
70AV_PIX_FMT_NE!(AV_PIX_FMT_GBRPF32, AV_PIX_FMT_GBRPF32BE, AV_PIX_FMT_GBRPF32LE);
71AV_PIX_FMT_NE!(AV_PIX_FMT_GBRAPF32, AV_PIX_FMT_GBRAPF32BE, AV_PIX_FMT_GBRAPF32LE);
72
73AV_PIX_FMT_NE!(AV_PIX_FMT_GRAYF32, AV_PIX_FMT_GRAYF32BE, AV_PIX_FMT_GRAYF32LE);
74
75AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA420P9, AV_PIX_FMT_YUVA420P9BE , AV_PIX_FMT_YUVA420P9LE);
76AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA422P9, AV_PIX_FMT_YUVA422P9BE , AV_PIX_FMT_YUVA422P9LE);
77AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA444P9, AV_PIX_FMT_YUVA444P9BE , AV_PIX_FMT_YUVA444P9LE);
78AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA420P10, AV_PIX_FMT_YUVA420P10BE, AV_PIX_FMT_YUVA420P10LE);
79AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA422P10, AV_PIX_FMT_YUVA422P10BE, AV_PIX_FMT_YUVA422P10LE);
80AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_YUVA444P10BE, AV_PIX_FMT_YUVA444P10LE);
81AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA420P16, AV_PIX_FMT_YUVA420P16BE, AV_PIX_FMT_YUVA420P16LE);
82AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA422P16, AV_PIX_FMT_YUVA422P16BE, AV_PIX_FMT_YUVA422P16LE);
83AV_PIX_FMT_NE!(AV_PIX_FMT_YUVA444P16, AV_PIX_FMT_YUVA444P16BE, AV_PIX_FMT_YUVA444P16LE);
84
85AV_PIX_FMT_NE!(AV_PIX_FMT_XYZ12, AV_PIX_FMT_XYZ12BE, AV_PIX_FMT_XYZ12LE);
86AV_PIX_FMT_NE!(AV_PIX_FMT_NV20, AV_PIX_FMT_NV20BE, AV_PIX_FMT_NV20LE);
87AV_PIX_FMT_NE!(AV_PIX_FMT_AYUV64, AV_PIX_FMT_AYUV64BE, AV_PIX_FMT_AYUV64LE);
88AV_PIX_FMT_NE!(AV_PIX_FMT_P010, AV_PIX_FMT_P010BE, AV_PIX_FMT_P010LE);
89#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
90AV_PIX_FMT_NE!(AV_PIX_FMT_P012, AV_PIX_FMT_P012BE, AV_PIX_FMT_P012LE);
91AV_PIX_FMT_NE!(AV_PIX_FMT_P016, AV_PIX_FMT_P016BE, AV_PIX_FMT_P016LE);
92
93#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
94AV_PIX_FMT_NE!(AV_PIX_FMT_Y210, AV_PIX_FMT_Y210BE, AV_PIX_FMT_Y210LE);
95#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
96AV_PIX_FMT_NE!(AV_PIX_FMT_Y212, AV_PIX_FMT_Y212BE, AV_PIX_FMT_Y212LE);
97#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
98AV_PIX_FMT_NE!(AV_PIX_FMT_XV30, AV_PIX_FMT_XV30BE, AV_PIX_FMT_XV30LE);
99#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
100AV_PIX_FMT_NE!(AV_PIX_FMT_XV36, AV_PIX_FMT_XV36BE, AV_PIX_FMT_XV36LE);
101#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
102AV_PIX_FMT_NE!(AV_PIX_FMT_X2RGB10, AV_PIX_FMT_X2RGB10BE, AV_PIX_FMT_X2RGB10LE);
103#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
104AV_PIX_FMT_NE!(AV_PIX_FMT_X2BGR10, AV_PIX_FMT_X2BGR10BE, AV_PIX_FMT_X2BGR10LE);
105
106#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
107AV_PIX_FMT_NE!(AV_PIX_FMT_P210, AV_PIX_FMT_P210BE, AV_PIX_FMT_P210LE);
108#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
109AV_PIX_FMT_NE!(AV_PIX_FMT_P410, AV_PIX_FMT_P410BE, AV_PIX_FMT_P410LE);
110#[cfg(feature = "ffmpeg7")]
111AV_PIX_FMT_NE!(AV_PIX_FMT_P212, AV_PIX_FMT_P212BE, AV_PIX_FMT_P212LE);
112#[cfg(feature = "ffmpeg7")]
113AV_PIX_FMT_NE!(AV_PIX_FMT_P412, AV_PIX_FMT_P412BE, AV_PIX_FMT_P412LE);
114#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
115AV_PIX_FMT_NE!(AV_PIX_FMT_P216, AV_PIX_FMT_P216BE, AV_PIX_FMT_P216LE);
116#[cfg(any(feature = "ffmpeg5", feature = "ffmpeg6", feature = "ffmpeg7"))]
117AV_PIX_FMT_NE!(AV_PIX_FMT_P416, AV_PIX_FMT_P416BE, AV_PIX_FMT_P416LE);
118
119#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
120AV_PIX_FMT_NE!(AV_PIX_FMT_RGBAF16, AV_PIX_FMT_RGBAF16BE, AV_PIX_FMT_RGBAF16LE);
121
122#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
123AV_PIX_FMT_NE!(AV_PIX_FMT_RGBF32, AV_PIX_FMT_RGBF32BE, AV_PIX_FMT_RGBF32LE);
124#[cfg(any(feature = "ffmpeg6", feature = "ffmpeg7"))]
125AV_PIX_FMT_NE!(AV_PIX_FMT_RGBAF32, AV_PIX_FMT_RGBAF32BE, AV_PIX_FMT_RGBAF32LE);