util: move SampleFormat and PixelFormat to util::format
This commit is contained in:
parent
e48ee1e3eb
commit
5c402a1256
@ -1,5 +1,5 @@
|
||||
pub use ::util::sample_format::SampleFormat as Sample;
|
||||
pub use ::util::pixel_format::PixelFormat as Pixel;
|
||||
pub use ::util::format::Sample;
|
||||
pub use ::util::format::Pixel;
|
||||
|
||||
pub mod stream;
|
||||
|
||||
|
5
src/util/format/mod.rs
Normal file
5
src/util/format/mod.rs
Normal file
@ -0,0 +1,5 @@
|
||||
pub mod sample;
|
||||
pub use self::sample::Sample;
|
||||
|
||||
pub mod pixel;
|
||||
pub use self::pixel::Pixel;
|
718
src/util/format/pixel.rs
Normal file
718
src/util/format/pixel.rs
Normal file
@ -0,0 +1,718 @@
|
||||
use ffi::*;
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum Pixel {
|
||||
None,
|
||||
|
||||
YUV420P,
|
||||
YUYV422,
|
||||
RGB24,
|
||||
BGR24,
|
||||
YUV422P,
|
||||
YUV444P,
|
||||
YUV410P,
|
||||
YUV411P,
|
||||
GRAY8,
|
||||
MonoWhite,
|
||||
MonoBlack,
|
||||
PAL8,
|
||||
YUVJ420P,
|
||||
YUVJ422P,
|
||||
YUVJ444P,
|
||||
XVMC_MPEG2_MC,
|
||||
XVMC_MPEG2_IDCT,
|
||||
UYVY422,
|
||||
UYYVYY411,
|
||||
BGR8,
|
||||
BGR4,
|
||||
BGR4_BYTE,
|
||||
RGB8,
|
||||
RGB4,
|
||||
RGB4_BYTE,
|
||||
NV12,
|
||||
NV21,
|
||||
|
||||
ARGB,
|
||||
RGBA,
|
||||
ABGR,
|
||||
BGRA,
|
||||
|
||||
GRAY16BE,
|
||||
GRAY16LE,
|
||||
YUV440P,
|
||||
YUVJ440P,
|
||||
YUVA420P,
|
||||
VDPAU_H264,
|
||||
VDPAU_MPEG1,
|
||||
VDPAU_MPEG2,
|
||||
VDPAU_WMV3,
|
||||
VDPAU_VC1,
|
||||
RGB48BE,
|
||||
RGB48LE,
|
||||
|
||||
RGB565BE,
|
||||
RGB565LE,
|
||||
RGB555BE,
|
||||
RGB555LE,
|
||||
|
||||
BGR565BE,
|
||||
BGR565LE,
|
||||
BGR555BE,
|
||||
BGR555LE,
|
||||
|
||||
VAAPI_MOCO,
|
||||
VAAPI_IDCT,
|
||||
VAAPI_VLD,
|
||||
|
||||
YUV420P16LE,
|
||||
YUV420P16BE,
|
||||
YUV422P16LE,
|
||||
YUV422P16BE,
|
||||
YUV444P16LE,
|
||||
YUV444P16BE,
|
||||
VDPAU_MPEG4,
|
||||
DXVA2_VLD,
|
||||
|
||||
RGB444LE,
|
||||
RGB444BE,
|
||||
BGR444LE,
|
||||
BGR444BE,
|
||||
YA8,
|
||||
|
||||
BGR48BE,
|
||||
BGR48LE,
|
||||
|
||||
YUV420P9BE,
|
||||
YUV420P9LE,
|
||||
YUV420P10BE,
|
||||
YUV420P10LE,
|
||||
YUV422P10BE,
|
||||
YUV422P10LE,
|
||||
YUV444P9BE,
|
||||
YUV444P9LE,
|
||||
YUV444P10BE,
|
||||
YUV444P10LE,
|
||||
YUV422P9BE,
|
||||
YUV422P9LE,
|
||||
VDA_VLD,
|
||||
|
||||
GBRP,
|
||||
GBRP9BE,
|
||||
GBRP9LE,
|
||||
GBRP10BE,
|
||||
GBRP10LE,
|
||||
GBRP16BE,
|
||||
GBRP16LE,
|
||||
|
||||
YUVA422P_LIBAV,
|
||||
YUVA444P_LIBAV,
|
||||
|
||||
YUVA420P9BE,
|
||||
YUVA420P9LE,
|
||||
YUVA422P9BE,
|
||||
YUVA422P9LE,
|
||||
YUVA444P9BE,
|
||||
YUVA444P9LE,
|
||||
YUVA420P10BE,
|
||||
YUVA420P10LE,
|
||||
YUVA422P10BE,
|
||||
YUVA422P10LE,
|
||||
YUVA444P10BE,
|
||||
YUVA444P10LE,
|
||||
YUVA420P16BE,
|
||||
YUVA420P16LE,
|
||||
YUVA422P16BE,
|
||||
YUVA422P16LE,
|
||||
YUVA444P16BE,
|
||||
YUVA444P16LE,
|
||||
|
||||
VDPAU,
|
||||
|
||||
XYZ12LE,
|
||||
XYZ12BE,
|
||||
NV16,
|
||||
NV20LE,
|
||||
NV20BE,
|
||||
|
||||
RGBA64BE_LIBAV,
|
||||
RGBA64LE_LIBAV,
|
||||
BGRA64BE_LIBAV,
|
||||
BGRA64LE_LIBAV,
|
||||
|
||||
YVYU422,
|
||||
|
||||
VDA,
|
||||
|
||||
YA16BE,
|
||||
YA16LE,
|
||||
|
||||
GBRAP_LIBAV,
|
||||
GBRAP16BE_LIBAV,
|
||||
GBRAP16LE_LIBAV,
|
||||
QSV,
|
||||
|
||||
ZRGB,
|
||||
RGBZ,
|
||||
ZBGR,
|
||||
BGRZ,
|
||||
YUVA444P,
|
||||
YUVA422P,
|
||||
|
||||
YUV420P12BE,
|
||||
YUV420P12LE,
|
||||
YUV420P14BE,
|
||||
YUV420P14LE,
|
||||
YUV422P12BE,
|
||||
YUV422P12LE,
|
||||
YUV422P14BE,
|
||||
YUV422P14LE,
|
||||
YUV444P12BE,
|
||||
YUV444P12LE,
|
||||
YUV444P14BE,
|
||||
YUV444P14LE,
|
||||
GBRP12BE,
|
||||
GBRP12LE,
|
||||
GBRP14BE,
|
||||
GBRP14LE,
|
||||
GBRAP,
|
||||
GBRAP16BE,
|
||||
GBRAP16LE,
|
||||
YUVJ411P,
|
||||
|
||||
BAYER_BGGR8,
|
||||
BAYER_RGGB8,
|
||||
BAYER_GBRG8,
|
||||
BAYER_GRBG8,
|
||||
BAYER_BGGR16LE,
|
||||
BAYER_BGGR16BE,
|
||||
BAYER_RGGB16LE,
|
||||
BAYER_RGGB16BE,
|
||||
BAYER_GBRG16LE,
|
||||
BAYER_GBRG16BE,
|
||||
BAYER_GRBG16LE,
|
||||
BAYER_GRBG16BE,
|
||||
|
||||
// --- defaults
|
||||
XVMC,
|
||||
Y400A,
|
||||
GRAY8A,
|
||||
GBR24P,
|
||||
|
||||
RGB32,
|
||||
RGB32_1,
|
||||
BGR32,
|
||||
BGR32_1,
|
||||
ZRGB32,
|
||||
ZBGR32,
|
||||
|
||||
GRAY16,
|
||||
YA16,
|
||||
RGB48,
|
||||
RGB565,
|
||||
RGB555,
|
||||
RGB444,
|
||||
BGR48,
|
||||
BGR565,
|
||||
BGR555,
|
||||
BGR444,
|
||||
|
||||
YUV420P9,
|
||||
YUV422P9,
|
||||
YUV444P9,
|
||||
YUV420P10,
|
||||
YUV422P10,
|
||||
YUV444P10,
|
||||
YUV420P12,
|
||||
YUV422P12,
|
||||
YUV444P12,
|
||||
YUV420P14,
|
||||
YUV422P14,
|
||||
YUV444P14,
|
||||
YUV420P16,
|
||||
YUV422P16,
|
||||
YUV444P16,
|
||||
|
||||
GBRP9,
|
||||
GBRP10,
|
||||
GBRP12,
|
||||
GBRP14,
|
||||
GBRP16,
|
||||
GBRAP16,
|
||||
|
||||
BAYER_BGGR16,
|
||||
BAYER_RGGB16,
|
||||
BAYER_GBRG16,
|
||||
BAYER_GRBG16,
|
||||
|
||||
YUVA420P9,
|
||||
YUVA422P9,
|
||||
YUVA444P9,
|
||||
YUVA420P10,
|
||||
YUVA422P10,
|
||||
YUVA444P10,
|
||||
YUVA420P16,
|
||||
YUVA422P16,
|
||||
YUVA444P16,
|
||||
|
||||
XYZ12,
|
||||
NV20,
|
||||
}
|
||||
|
||||
impl From<AVPixelFormat> for Pixel {
|
||||
fn from(value: AVPixelFormat) -> Self {
|
||||
match value {
|
||||
AV_PIX_FMT_NONE => Pixel::None,
|
||||
|
||||
AV_PIX_FMT_YUV420P => Pixel::YUV420P,
|
||||
AV_PIX_FMT_YUYV422 => Pixel::YUYV422,
|
||||
AV_PIX_FMT_RGB24 => Pixel::RGB24,
|
||||
AV_PIX_FMT_BGR24 => Pixel::BGR24,
|
||||
AV_PIX_FMT_YUV422P => Pixel::YUV422P,
|
||||
AV_PIX_FMT_YUV444P => Pixel::YUV444P,
|
||||
AV_PIX_FMT_YUV410P => Pixel::YUV410P,
|
||||
AV_PIX_FMT_YUV411P => Pixel::YUV411P,
|
||||
AV_PIX_FMT_GRAY8 => Pixel::GRAY8,
|
||||
AV_PIX_FMT_MONOWHITE => Pixel::MonoWhite,
|
||||
AV_PIX_FMT_MONOBLACK => Pixel::MonoBlack,
|
||||
AV_PIX_FMT_PAL8 => Pixel::PAL8,
|
||||
AV_PIX_FMT_YUVJ420P => Pixel::YUVJ420P,
|
||||
AV_PIX_FMT_YUVJ422P => Pixel::YUVJ422P,
|
||||
AV_PIX_FMT_YUVJ444P => Pixel::YUVJ444P,
|
||||
AV_PIX_FMT_XVMC_MPEG2_MC => Pixel::XVMC_MPEG2_MC,
|
||||
AV_PIX_FMT_XVMC_MPEG2_IDCT => Pixel::XVMC_MPEG2_IDCT,
|
||||
AV_PIX_FMT_UYVY422 => Pixel::UYVY422,
|
||||
AV_PIX_FMT_UYYVYY411 => Pixel::UYYVYY411,
|
||||
AV_PIX_FMT_BGR8 => Pixel::BGR8,
|
||||
AV_PIX_FMT_BGR4 => Pixel::BGR4,
|
||||
AV_PIX_FMT_BGR4_BYTE => Pixel::BGR4_BYTE,
|
||||
AV_PIX_FMT_RGB8 => Pixel::RGB8,
|
||||
AV_PIX_FMT_RGB4 => Pixel::RGB4,
|
||||
AV_PIX_FMT_RGB4_BYTE => Pixel::RGB4_BYTE,
|
||||
AV_PIX_FMT_NV12 => Pixel::NV12,
|
||||
AV_PIX_FMT_NV21 => Pixel::NV21,
|
||||
|
||||
AV_PIX_FMT_ARGB => Pixel::ARGB,
|
||||
AV_PIX_FMT_RGBA => Pixel::RGBA,
|
||||
AV_PIX_FMT_ABGR => Pixel::ABGR,
|
||||
AV_PIX_FMT_BGRA => Pixel::BGRA,
|
||||
|
||||
AV_PIX_FMT_GRAY16BE => Pixel::GRAY16BE,
|
||||
AV_PIX_FMT_GRAY16LE => Pixel::GRAY16LE,
|
||||
AV_PIX_FMT_YUV440P => Pixel::YUV440P,
|
||||
AV_PIX_FMT_YUVJ440P => Pixel::YUVJ440P,
|
||||
AV_PIX_FMT_YUVA420P => Pixel::YUVA420P,
|
||||
AV_PIX_FMT_VDPAU_H264 => Pixel::VDPAU_H264,
|
||||
AV_PIX_FMT_VDPAU_MPEG1 => Pixel::VDPAU_MPEG1,
|
||||
AV_PIX_FMT_VDPAU_MPEG2 => Pixel::VDPAU_MPEG2,
|
||||
AV_PIX_FMT_VDPAU_WMV3 => Pixel::VDPAU_WMV3,
|
||||
AV_PIX_FMT_VDPAU_VC1 => Pixel::VDPAU_VC1,
|
||||
AV_PIX_FMT_RGB48BE => Pixel::RGB48BE,
|
||||
AV_PIX_FMT_RGB48LE => Pixel::RGB48LE,
|
||||
|
||||
AV_PIX_FMT_RGB565BE => Pixel::RGB565BE,
|
||||
AV_PIX_FMT_RGB565LE => Pixel::RGB565LE,
|
||||
AV_PIX_FMT_RGB555BE => Pixel::RGB555BE,
|
||||
AV_PIX_FMT_RGB555LE => Pixel::RGB555LE,
|
||||
|
||||
AV_PIX_FMT_BGR565BE => Pixel::BGR565BE,
|
||||
AV_PIX_FMT_BGR565LE => Pixel::BGR565LE,
|
||||
AV_PIX_FMT_BGR555BE => Pixel::BGR555BE,
|
||||
AV_PIX_FMT_BGR555LE => Pixel::BGR555LE,
|
||||
|
||||
AV_PIX_FMT_VAAPI_MOCO => Pixel::VAAPI_MOCO,
|
||||
AV_PIX_FMT_VAAPI_IDCT => Pixel::VAAPI_IDCT,
|
||||
AV_PIX_FMT_VAAPI_VLD => Pixel::VAAPI_VLD,
|
||||
|
||||
AV_PIX_FMT_YUV420P16LE => Pixel::YUV420P16LE,
|
||||
AV_PIX_FMT_YUV420P16BE => Pixel::YUV420P16BE,
|
||||
AV_PIX_FMT_YUV422P16LE => Pixel::YUV422P16LE,
|
||||
AV_PIX_FMT_YUV422P16BE => Pixel::YUV422P16BE,
|
||||
AV_PIX_FMT_YUV444P16LE => Pixel::YUV444P16LE,
|
||||
AV_PIX_FMT_YUV444P16BE => Pixel::YUV444P16BE,
|
||||
AV_PIX_FMT_VDPAU_MPEG4 => Pixel::VDPAU_MPEG4,
|
||||
AV_PIX_FMT_DXVA2_VLD => Pixel::DXVA2_VLD,
|
||||
|
||||
AV_PIX_FMT_RGB444LE => Pixel::RGB444LE,
|
||||
AV_PIX_FMT_RGB444BE => Pixel::RGB444BE,
|
||||
AV_PIX_FMT_BGR444LE => Pixel::BGR444LE,
|
||||
AV_PIX_FMT_BGR444BE => Pixel::BGR444BE,
|
||||
AV_PIX_FMT_YA8 => Pixel::YA8,
|
||||
|
||||
AV_PIX_FMT_BGR48BE => Pixel::BGR48BE,
|
||||
AV_PIX_FMT_BGR48LE => Pixel::BGR48LE,
|
||||
|
||||
AV_PIX_FMT_YUV420P9BE => Pixel::YUV420P9BE,
|
||||
AV_PIX_FMT_YUV420P9LE => Pixel::YUV420P9LE,
|
||||
AV_PIX_FMT_YUV420P10BE => Pixel::YUV420P10BE,
|
||||
AV_PIX_FMT_YUV420P10LE => Pixel::YUV420P10LE,
|
||||
AV_PIX_FMT_YUV422P10BE => Pixel::YUV422P10BE,
|
||||
AV_PIX_FMT_YUV422P10LE => Pixel::YUV422P10LE,
|
||||
AV_PIX_FMT_YUV444P9BE => Pixel::YUV444P9BE,
|
||||
AV_PIX_FMT_YUV444P9LE => Pixel::YUV444P9LE,
|
||||
AV_PIX_FMT_YUV444P10BE => Pixel::YUV444P10BE,
|
||||
AV_PIX_FMT_YUV444P10LE => Pixel::YUV444P10LE,
|
||||
AV_PIX_FMT_YUV422P9BE => Pixel::YUV422P9BE,
|
||||
AV_PIX_FMT_YUV422P9LE => Pixel::YUV422P9LE,
|
||||
AV_PIX_FMT_VDA_VLD => Pixel::VDA_VLD,
|
||||
|
||||
AV_PIX_FMT_GBRP => Pixel::GBRP,
|
||||
AV_PIX_FMT_GBRP9BE => Pixel::GBRP9BE,
|
||||
AV_PIX_FMT_GBRP9LE => Pixel::GBRP9LE,
|
||||
AV_PIX_FMT_GBRP10BE => Pixel::GBRP10BE,
|
||||
AV_PIX_FMT_GBRP10LE => Pixel::GBRP10LE,
|
||||
AV_PIX_FMT_GBRP16BE => Pixel::GBRP16BE,
|
||||
AV_PIX_FMT_GBRP16LE => Pixel::GBRP16LE,
|
||||
|
||||
AV_PIX_FMT_YUVA422P_LIBAV => Pixel::YUVA422P_LIBAV,
|
||||
AV_PIX_FMT_YUVA444P_LIBAV => Pixel::YUVA444P_LIBAV,
|
||||
|
||||
AV_PIX_FMT_YUVA420P9BE => Pixel::YUVA420P9BE,
|
||||
AV_PIX_FMT_YUVA420P9LE => Pixel::YUVA420P9LE,
|
||||
AV_PIX_FMT_YUVA422P9BE => Pixel::YUVA422P9BE,
|
||||
AV_PIX_FMT_YUVA422P9LE => Pixel::YUVA422P9LE,
|
||||
AV_PIX_FMT_YUVA444P9BE => Pixel::YUVA444P9BE,
|
||||
AV_PIX_FMT_YUVA444P9LE => Pixel::YUVA444P9LE,
|
||||
AV_PIX_FMT_YUVA420P10BE => Pixel::YUVA420P10BE,
|
||||
AV_PIX_FMT_YUVA420P10LE => Pixel::YUVA420P10LE,
|
||||
AV_PIX_FMT_YUVA422P10BE => Pixel::YUVA422P10BE,
|
||||
AV_PIX_FMT_YUVA422P10LE => Pixel::YUVA422P10LE,
|
||||
AV_PIX_FMT_YUVA444P10BE => Pixel::YUVA444P10BE,
|
||||
AV_PIX_FMT_YUVA444P10LE => Pixel::YUVA444P10LE,
|
||||
AV_PIX_FMT_YUVA420P16BE => Pixel::YUVA420P16BE,
|
||||
AV_PIX_FMT_YUVA420P16LE => Pixel::YUVA420P16LE,
|
||||
AV_PIX_FMT_YUVA422P16BE => Pixel::YUVA422P16BE,
|
||||
AV_PIX_FMT_YUVA422P16LE => Pixel::YUVA422P16LE,
|
||||
AV_PIX_FMT_YUVA444P16BE => Pixel::YUVA444P16BE,
|
||||
AV_PIX_FMT_YUVA444P16LE => Pixel::YUVA444P16LE,
|
||||
|
||||
AV_PIX_FMT_VDPAU => Pixel::VDPAU,
|
||||
|
||||
AV_PIX_FMT_XYZ12LE => Pixel::XYZ12LE,
|
||||
AV_PIX_FMT_XYZ12BE => Pixel::XYZ12BE,
|
||||
AV_PIX_FMT_NV16 => Pixel::NV16,
|
||||
AV_PIX_FMT_NV20LE => Pixel::NV20LE,
|
||||
AV_PIX_FMT_NV20BE => Pixel::NV20BE,
|
||||
|
||||
AV_PIX_FMT_RGBA64BE_LIBAV => Pixel::RGBA64BE_LIBAV,
|
||||
AV_PIX_FMT_RGBA64LE_LIBAV => Pixel::RGBA64LE_LIBAV,
|
||||
AV_PIX_FMT_BGRA64BE_LIBAV => Pixel::BGRA64BE_LIBAV,
|
||||
AV_PIX_FMT_BGRA64LE_LIBAV => Pixel::BGRA64LE_LIBAV,
|
||||
|
||||
AV_PIX_FMT_YVYU422 => Pixel::YVYU422,
|
||||
|
||||
AV_PIX_FMT_VDA => Pixel::VDA,
|
||||
|
||||
AV_PIX_FMT_YA16BE => Pixel::YA16BE,
|
||||
AV_PIX_FMT_YA16LE => Pixel::YA16LE,
|
||||
|
||||
AV_PIX_FMT_GBRAP_LIBAV => Pixel::GBRAP_LIBAV,
|
||||
AV_PIX_FMT_GBRAP16BE_LIBAV => Pixel::GBRAP16BE_LIBAV,
|
||||
AV_PIX_FMT_GBRAP16LE_LIBAV => Pixel::GBRAP16LE_LIBAV,
|
||||
AV_PIX_FMT_QSV => Pixel::QSV,
|
||||
|
||||
AV_PIX_FMT_0RGB => Pixel::ZRGB,
|
||||
AV_PIX_FMT_RGB0 => Pixel::RGBZ,
|
||||
AV_PIX_FMT_0BGR => Pixel::ZBGR,
|
||||
AV_PIX_FMT_BGR0 => Pixel::BGRZ,
|
||||
AV_PIX_FMT_YUVA444P => Pixel::YUVA444P,
|
||||
AV_PIX_FMT_YUVA422P => Pixel::YUVA422P,
|
||||
|
||||
AV_PIX_FMT_YUV420P12BE => Pixel::YUV420P12BE,
|
||||
AV_PIX_FMT_YUV420P12LE => Pixel::YUV420P12LE,
|
||||
AV_PIX_FMT_YUV420P14BE => Pixel::YUV420P14BE,
|
||||
AV_PIX_FMT_YUV420P14LE => Pixel::YUV420P14LE,
|
||||
AV_PIX_FMT_YUV422P12BE => Pixel::YUV422P12BE,
|
||||
AV_PIX_FMT_YUV422P12LE => Pixel::YUV422P12LE,
|
||||
AV_PIX_FMT_YUV422P14BE => Pixel::YUV422P14BE,
|
||||
AV_PIX_FMT_YUV422P14LE => Pixel::YUV422P14LE,
|
||||
AV_PIX_FMT_YUV444P12BE => Pixel::YUV444P12BE,
|
||||
AV_PIX_FMT_YUV444P12LE => Pixel::YUV444P12LE,
|
||||
AV_PIX_FMT_YUV444P14BE => Pixel::YUV444P14BE,
|
||||
AV_PIX_FMT_YUV444P14LE => Pixel::YUV444P14LE,
|
||||
AV_PIX_FMT_GBRP12BE => Pixel::GBRP12BE,
|
||||
AV_PIX_FMT_GBRP12LE => Pixel::GBRP12LE,
|
||||
AV_PIX_FMT_GBRP14BE => Pixel::GBRP14BE,
|
||||
AV_PIX_FMT_GBRP14LE => Pixel::GBRP14LE,
|
||||
AV_PIX_FMT_GBRAP => Pixel::GBRAP,
|
||||
AV_PIX_FMT_GBRAP16BE => Pixel::GBRAP16BE,
|
||||
AV_PIX_FMT_GBRAP16LE => Pixel::GBRAP16LE,
|
||||
AV_PIX_FMT_YUVJ411P => Pixel::YUVJ411P,
|
||||
|
||||
AV_PIX_FMT_BAYER_BGGR8 => Pixel::BAYER_BGGR8,
|
||||
AV_PIX_FMT_BAYER_RGGB8 => Pixel::BAYER_RGGB8,
|
||||
AV_PIX_FMT_BAYER_GBRG8 => Pixel::BAYER_GBRG8,
|
||||
AV_PIX_FMT_BAYER_GRBG8 => Pixel::BAYER_GRBG8,
|
||||
AV_PIX_FMT_BAYER_BGGR16LE => Pixel::BAYER_BGGR16LE,
|
||||
AV_PIX_FMT_BAYER_BGGR16BE => Pixel::BAYER_BGGR16BE,
|
||||
AV_PIX_FMT_BAYER_RGGB16LE => Pixel::BAYER_RGGB16LE,
|
||||
AV_PIX_FMT_BAYER_RGGB16BE => Pixel::BAYER_RGGB16BE,
|
||||
AV_PIX_FMT_BAYER_GBRG16LE => Pixel::BAYER_GBRG16LE,
|
||||
AV_PIX_FMT_BAYER_GBRG16BE => Pixel::BAYER_GBRG16BE,
|
||||
AV_PIX_FMT_BAYER_GRBG16LE => Pixel::BAYER_GRBG16LE,
|
||||
AV_PIX_FMT_BAYER_GRBG16BE => Pixel::BAYER_GRBG16BE,
|
||||
|
||||
AV_PIX_FMT_NB => Pixel::None
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Into<AVPixelFormat> for Pixel {
|
||||
fn into(self) -> AVPixelFormat {
|
||||
match self {
|
||||
Pixel::None => AV_PIX_FMT_NONE,
|
||||
|
||||
Pixel::YUV420P => AV_PIX_FMT_YUV420P,
|
||||
Pixel::YUYV422 => AV_PIX_FMT_YUYV422,
|
||||
Pixel::RGB24 => AV_PIX_FMT_RGB24,
|
||||
Pixel::BGR24 => AV_PIX_FMT_BGR24,
|
||||
Pixel::YUV422P => AV_PIX_FMT_YUV422P,
|
||||
Pixel::YUV444P => AV_PIX_FMT_YUV444P,
|
||||
Pixel::YUV410P => AV_PIX_FMT_YUV410P,
|
||||
Pixel::YUV411P => AV_PIX_FMT_YUV411P,
|
||||
Pixel::GRAY8 => AV_PIX_FMT_GRAY8,
|
||||
Pixel::MonoWhite => AV_PIX_FMT_MONOWHITE,
|
||||
Pixel::MonoBlack => AV_PIX_FMT_MONOBLACK,
|
||||
Pixel::PAL8 => AV_PIX_FMT_PAL8,
|
||||
Pixel::YUVJ420P => AV_PIX_FMT_YUVJ420P,
|
||||
Pixel::YUVJ422P => AV_PIX_FMT_YUVJ422P,
|
||||
Pixel::YUVJ444P => AV_PIX_FMT_YUVJ444P,
|
||||
Pixel::XVMC_MPEG2_MC => AV_PIX_FMT_XVMC_MPEG2_MC,
|
||||
Pixel::XVMC_MPEG2_IDCT => AV_PIX_FMT_XVMC_MPEG2_IDCT,
|
||||
Pixel::UYVY422 => AV_PIX_FMT_UYVY422,
|
||||
Pixel::UYYVYY411 => AV_PIX_FMT_UYYVYY411,
|
||||
Pixel::BGR8 => AV_PIX_FMT_BGR8,
|
||||
Pixel::BGR4 => AV_PIX_FMT_BGR4,
|
||||
Pixel::BGR4_BYTE => AV_PIX_FMT_BGR4_BYTE,
|
||||
Pixel::RGB8 => AV_PIX_FMT_RGB8,
|
||||
Pixel::RGB4 => AV_PIX_FMT_RGB4,
|
||||
Pixel::RGB4_BYTE => AV_PIX_FMT_RGB4_BYTE,
|
||||
Pixel::NV12 => AV_PIX_FMT_NV12,
|
||||
Pixel::NV21 => AV_PIX_FMT_NV21,
|
||||
|
||||
Pixel::ARGB => AV_PIX_FMT_ARGB,
|
||||
Pixel::RGBA => AV_PIX_FMT_RGBA,
|
||||
Pixel::ABGR => AV_PIX_FMT_ABGR,
|
||||
Pixel::BGRA => AV_PIX_FMT_BGRA,
|
||||
|
||||
Pixel::GRAY16BE => AV_PIX_FMT_GRAY16BE,
|
||||
Pixel::GRAY16LE => AV_PIX_FMT_GRAY16LE,
|
||||
Pixel::YUV440P => AV_PIX_FMT_YUV440P,
|
||||
Pixel::YUVJ440P => AV_PIX_FMT_YUVJ440P,
|
||||
Pixel::YUVA420P => AV_PIX_FMT_YUVA420P,
|
||||
Pixel::VDPAU_H264 => AV_PIX_FMT_VDPAU_H264,
|
||||
Pixel::VDPAU_MPEG1 => AV_PIX_FMT_VDPAU_MPEG1,
|
||||
Pixel::VDPAU_MPEG2 => AV_PIX_FMT_VDPAU_MPEG2,
|
||||
Pixel::VDPAU_WMV3 => AV_PIX_FMT_VDPAU_WMV3,
|
||||
Pixel::VDPAU_VC1 => AV_PIX_FMT_VDPAU_VC1,
|
||||
Pixel::RGB48BE => AV_PIX_FMT_RGB48BE,
|
||||
Pixel::RGB48LE => AV_PIX_FMT_RGB48LE,
|
||||
|
||||
Pixel::RGB565BE => AV_PIX_FMT_RGB565BE,
|
||||
Pixel::RGB565LE => AV_PIX_FMT_RGB565LE,
|
||||
Pixel::RGB555BE => AV_PIX_FMT_RGB555BE,
|
||||
Pixel::RGB555LE => AV_PIX_FMT_RGB555LE,
|
||||
|
||||
Pixel::BGR565BE => AV_PIX_FMT_BGR565BE,
|
||||
Pixel::BGR565LE => AV_PIX_FMT_BGR565LE,
|
||||
Pixel::BGR555BE => AV_PIX_FMT_BGR555BE,
|
||||
Pixel::BGR555LE => AV_PIX_FMT_BGR555LE,
|
||||
|
||||
Pixel::VAAPI_MOCO => AV_PIX_FMT_VAAPI_MOCO,
|
||||
Pixel::VAAPI_IDCT => AV_PIX_FMT_VAAPI_IDCT,
|
||||
Pixel::VAAPI_VLD => AV_PIX_FMT_VAAPI_VLD,
|
||||
|
||||
Pixel::YUV420P16LE => AV_PIX_FMT_YUV420P16LE,
|
||||
Pixel::YUV420P16BE => AV_PIX_FMT_YUV420P16BE,
|
||||
Pixel::YUV422P16LE => AV_PIX_FMT_YUV422P16LE,
|
||||
Pixel::YUV422P16BE => AV_PIX_FMT_YUV422P16BE,
|
||||
Pixel::YUV444P16LE => AV_PIX_FMT_YUV444P16LE,
|
||||
Pixel::YUV444P16BE => AV_PIX_FMT_YUV444P16BE,
|
||||
Pixel::VDPAU_MPEG4 => AV_PIX_FMT_VDPAU_MPEG4,
|
||||
Pixel::DXVA2_VLD => AV_PIX_FMT_DXVA2_VLD,
|
||||
|
||||
Pixel::RGB444LE => AV_PIX_FMT_RGB444LE,
|
||||
Pixel::RGB444BE => AV_PIX_FMT_RGB444BE,
|
||||
Pixel::BGR444LE => AV_PIX_FMT_BGR444LE,
|
||||
Pixel::BGR444BE => AV_PIX_FMT_BGR444BE,
|
||||
Pixel::YA8 => AV_PIX_FMT_YA8,
|
||||
|
||||
Pixel::BGR48BE => AV_PIX_FMT_BGR48BE,
|
||||
Pixel::BGR48LE => AV_PIX_FMT_BGR48LE,
|
||||
|
||||
Pixel::YUV420P9BE => AV_PIX_FMT_YUV420P9BE,
|
||||
Pixel::YUV420P9LE => AV_PIX_FMT_YUV420P9LE,
|
||||
Pixel::YUV420P10BE => AV_PIX_FMT_YUV420P10BE,
|
||||
Pixel::YUV420P10LE => AV_PIX_FMT_YUV420P10LE,
|
||||
Pixel::YUV422P10BE => AV_PIX_FMT_YUV422P10BE,
|
||||
Pixel::YUV422P10LE => AV_PIX_FMT_YUV422P10LE,
|
||||
Pixel::YUV444P9BE => AV_PIX_FMT_YUV444P9BE,
|
||||
Pixel::YUV444P9LE => AV_PIX_FMT_YUV444P9LE,
|
||||
Pixel::YUV444P10BE => AV_PIX_FMT_YUV444P10BE,
|
||||
Pixel::YUV444P10LE => AV_PIX_FMT_YUV444P10LE,
|
||||
Pixel::YUV422P9BE => AV_PIX_FMT_YUV422P9BE,
|
||||
Pixel::YUV422P9LE => AV_PIX_FMT_YUV422P9LE,
|
||||
Pixel::VDA_VLD => AV_PIX_FMT_VDA_VLD,
|
||||
|
||||
Pixel::GBRP => AV_PIX_FMT_GBRP,
|
||||
Pixel::GBRP9BE => AV_PIX_FMT_GBRP9BE,
|
||||
Pixel::GBRP9LE => AV_PIX_FMT_GBRP9LE,
|
||||
Pixel::GBRP10BE => AV_PIX_FMT_GBRP10BE,
|
||||
Pixel::GBRP10LE => AV_PIX_FMT_GBRP10LE,
|
||||
Pixel::GBRP16BE => AV_PIX_FMT_GBRP16BE,
|
||||
Pixel::GBRP16LE => AV_PIX_FMT_GBRP16LE,
|
||||
|
||||
Pixel::YUVA422P_LIBAV => AV_PIX_FMT_YUVA422P_LIBAV,
|
||||
Pixel::YUVA444P_LIBAV => AV_PIX_FMT_YUVA444P_LIBAV,
|
||||
|
||||
Pixel::YUVA420P9BE => AV_PIX_FMT_YUVA420P9BE,
|
||||
Pixel::YUVA420P9LE => AV_PIX_FMT_YUVA420P9LE,
|
||||
Pixel::YUVA422P9BE => AV_PIX_FMT_YUVA422P9BE,
|
||||
Pixel::YUVA422P9LE => AV_PIX_FMT_YUVA422P9LE,
|
||||
Pixel::YUVA444P9BE => AV_PIX_FMT_YUVA444P9BE,
|
||||
Pixel::YUVA444P9LE => AV_PIX_FMT_YUVA444P9LE,
|
||||
Pixel::YUVA420P10BE => AV_PIX_FMT_YUVA420P10BE,
|
||||
Pixel::YUVA420P10LE => AV_PIX_FMT_YUVA420P10LE,
|
||||
Pixel::YUVA422P10BE => AV_PIX_FMT_YUVA422P10BE,
|
||||
Pixel::YUVA422P10LE => AV_PIX_FMT_YUVA422P10LE,
|
||||
Pixel::YUVA444P10BE => AV_PIX_FMT_YUVA444P10BE,
|
||||
Pixel::YUVA444P10LE => AV_PIX_FMT_YUVA444P10LE,
|
||||
Pixel::YUVA420P16BE => AV_PIX_FMT_YUVA420P16BE,
|
||||
Pixel::YUVA420P16LE => AV_PIX_FMT_YUVA420P16LE,
|
||||
Pixel::YUVA422P16BE => AV_PIX_FMT_YUVA422P16BE,
|
||||
Pixel::YUVA422P16LE => AV_PIX_FMT_YUVA422P16LE,
|
||||
Pixel::YUVA444P16BE => AV_PIX_FMT_YUVA444P16BE,
|
||||
Pixel::YUVA444P16LE => AV_PIX_FMT_YUVA444P16LE,
|
||||
|
||||
Pixel::VDPAU => AV_PIX_FMT_VDPAU,
|
||||
|
||||
Pixel::XYZ12LE => AV_PIX_FMT_XYZ12LE,
|
||||
Pixel::XYZ12BE => AV_PIX_FMT_XYZ12BE,
|
||||
Pixel::NV16 => AV_PIX_FMT_NV16,
|
||||
Pixel::NV20LE => AV_PIX_FMT_NV20LE,
|
||||
Pixel::NV20BE => AV_PIX_FMT_NV20BE,
|
||||
|
||||
Pixel::RGBA64BE_LIBAV => AV_PIX_FMT_RGBA64BE_LIBAV,
|
||||
Pixel::RGBA64LE_LIBAV => AV_PIX_FMT_RGBA64LE_LIBAV,
|
||||
Pixel::BGRA64BE_LIBAV => AV_PIX_FMT_BGRA64BE_LIBAV,
|
||||
Pixel::BGRA64LE_LIBAV => AV_PIX_FMT_BGRA64LE_LIBAV,
|
||||
|
||||
Pixel::YVYU422 => AV_PIX_FMT_YVYU422,
|
||||
|
||||
Pixel::VDA => AV_PIX_FMT_VDA,
|
||||
|
||||
Pixel::YA16BE => AV_PIX_FMT_YA16BE,
|
||||
Pixel::YA16LE => AV_PIX_FMT_YA16LE,
|
||||
|
||||
Pixel::GBRAP_LIBAV => AV_PIX_FMT_GBRAP_LIBAV,
|
||||
Pixel::GBRAP16BE_LIBAV => AV_PIX_FMT_GBRAP16BE_LIBAV,
|
||||
Pixel::GBRAP16LE_LIBAV => AV_PIX_FMT_GBRAP16LE_LIBAV,
|
||||
Pixel::QSV => AV_PIX_FMT_QSV,
|
||||
|
||||
Pixel::ZRGB => AV_PIX_FMT_0RGB,
|
||||
Pixel::RGBZ => AV_PIX_FMT_RGB0,
|
||||
Pixel::ZBGR => AV_PIX_FMT_0BGR,
|
||||
Pixel::BGRZ => AV_PIX_FMT_BGR0,
|
||||
Pixel::YUVA444P => AV_PIX_FMT_YUVA444P,
|
||||
Pixel::YUVA422P => AV_PIX_FMT_YUVA422P,
|
||||
|
||||
Pixel::YUV420P12BE => AV_PIX_FMT_YUV420P12BE,
|
||||
Pixel::YUV420P12LE => AV_PIX_FMT_YUV420P12LE,
|
||||
Pixel::YUV420P14BE => AV_PIX_FMT_YUV420P14BE,
|
||||
Pixel::YUV420P14LE => AV_PIX_FMT_YUV420P14LE,
|
||||
Pixel::YUV422P12BE => AV_PIX_FMT_YUV422P12BE,
|
||||
Pixel::YUV422P12LE => AV_PIX_FMT_YUV422P12LE,
|
||||
Pixel::YUV422P14BE => AV_PIX_FMT_YUV422P14BE,
|
||||
Pixel::YUV422P14LE => AV_PIX_FMT_YUV422P14LE,
|
||||
Pixel::YUV444P12BE => AV_PIX_FMT_YUV444P12BE,
|
||||
Pixel::YUV444P12LE => AV_PIX_FMT_YUV444P12LE,
|
||||
Pixel::YUV444P14BE => AV_PIX_FMT_YUV444P14BE,
|
||||
Pixel::YUV444P14LE => AV_PIX_FMT_YUV444P14LE,
|
||||
Pixel::GBRP12BE => AV_PIX_FMT_GBRP12BE,
|
||||
Pixel::GBRP12LE => AV_PIX_FMT_GBRP12LE,
|
||||
Pixel::GBRP14BE => AV_PIX_FMT_GBRP14BE,
|
||||
Pixel::GBRP14LE => AV_PIX_FMT_GBRP14LE,
|
||||
Pixel::GBRAP => AV_PIX_FMT_GBRAP,
|
||||
Pixel::GBRAP16BE => AV_PIX_FMT_GBRAP16BE,
|
||||
Pixel::GBRAP16LE => AV_PIX_FMT_GBRAP16LE,
|
||||
Pixel::YUVJ411P => AV_PIX_FMT_YUVJ411P,
|
||||
|
||||
Pixel::BAYER_BGGR8 => AV_PIX_FMT_BAYER_BGGR8,
|
||||
Pixel::BAYER_RGGB8 => AV_PIX_FMT_BAYER_RGGB8,
|
||||
Pixel::BAYER_GBRG8 => AV_PIX_FMT_BAYER_GBRG8,
|
||||
Pixel::BAYER_GRBG8 => AV_PIX_FMT_BAYER_GRBG8,
|
||||
Pixel::BAYER_BGGR16LE => AV_PIX_FMT_BAYER_BGGR16LE,
|
||||
Pixel::BAYER_BGGR16BE => AV_PIX_FMT_BAYER_BGGR16BE,
|
||||
Pixel::BAYER_RGGB16LE => AV_PIX_FMT_BAYER_RGGB16LE,
|
||||
Pixel::BAYER_RGGB16BE => AV_PIX_FMT_BAYER_RGGB16BE,
|
||||
Pixel::BAYER_GBRG16LE => AV_PIX_FMT_BAYER_GBRG16LE,
|
||||
Pixel::BAYER_GBRG16BE => AV_PIX_FMT_BAYER_GBRG16BE,
|
||||
Pixel::BAYER_GRBG16LE => AV_PIX_FMT_BAYER_GRBG16LE,
|
||||
Pixel::BAYER_GRBG16BE => AV_PIX_FMT_BAYER_GRBG16BE,
|
||||
|
||||
// --- defaults
|
||||
Pixel::XVMC => AV_PIX_FMT_XVMC,
|
||||
Pixel::Y400A => AV_PIX_FMT_Y400A,
|
||||
Pixel::GRAY8A => AV_PIX_FMT_GRAY8A,
|
||||
Pixel::GBR24P => AV_PIX_FMT_GBR24P,
|
||||
|
||||
Pixel::RGB32 => AV_PIX_FMT_RGB32,
|
||||
Pixel::RGB32_1 => AV_PIX_FMT_RGB32_1,
|
||||
Pixel::BGR32 => AV_PIX_FMT_BGR32,
|
||||
Pixel::BGR32_1 => AV_PIX_FMT_BGR32_1,
|
||||
Pixel::ZRGB32 => AV_PIX_FMT_0RGB32,
|
||||
Pixel::ZBGR32 => AV_PIX_FMT_0BGR32,
|
||||
|
||||
Pixel::GRAY16 => AV_PIX_FMT_GRAY16,
|
||||
Pixel::YA16 => AV_PIX_FMT_YA16,
|
||||
Pixel::RGB48 => AV_PIX_FMT_RGB48,
|
||||
Pixel::RGB565 => AV_PIX_FMT_RGB565,
|
||||
Pixel::RGB555 => AV_PIX_FMT_RGB555,
|
||||
Pixel::RGB444 => AV_PIX_FMT_RGB444,
|
||||
Pixel::BGR48 => AV_PIX_FMT_BGR48,
|
||||
Pixel::BGR565 => AV_PIX_FMT_BGR565,
|
||||
Pixel::BGR555 => AV_PIX_FMT_BGR555,
|
||||
Pixel::BGR444 => AV_PIX_FMT_BGR444,
|
||||
|
||||
Pixel::YUV420P9 => AV_PIX_FMT_YUV420P9,
|
||||
Pixel::YUV422P9 => AV_PIX_FMT_YUV422P9,
|
||||
Pixel::YUV444P9 => AV_PIX_FMT_YUV444P9,
|
||||
Pixel::YUV420P10 => AV_PIX_FMT_YUV420P10,
|
||||
Pixel::YUV422P10 => AV_PIX_FMT_YUV422P10,
|
||||
Pixel::YUV444P10 => AV_PIX_FMT_YUV444P10,
|
||||
Pixel::YUV420P12 => AV_PIX_FMT_YUV420P12,
|
||||
Pixel::YUV422P12 => AV_PIX_FMT_YUV422P12,
|
||||
Pixel::YUV444P12 => AV_PIX_FMT_YUV444P12,
|
||||
Pixel::YUV420P14 => AV_PIX_FMT_YUV420P14,
|
||||
Pixel::YUV422P14 => AV_PIX_FMT_YUV422P14,
|
||||
Pixel::YUV444P14 => AV_PIX_FMT_YUV444P14,
|
||||
Pixel::YUV420P16 => AV_PIX_FMT_YUV420P16,
|
||||
Pixel::YUV422P16 => AV_PIX_FMT_YUV422P16,
|
||||
Pixel::YUV444P16 => AV_PIX_FMT_YUV444P16,
|
||||
|
||||
Pixel::GBRP9 => AV_PIX_FMT_GBRP9,
|
||||
Pixel::GBRP10 => AV_PIX_FMT_GBRP10,
|
||||
Pixel::GBRP12 => AV_PIX_FMT_GBRP12,
|
||||
Pixel::GBRP14 => AV_PIX_FMT_GBRP14,
|
||||
Pixel::GBRP16 => AV_PIX_FMT_GBRP16,
|
||||
Pixel::GBRAP16 => AV_PIX_FMT_GBRAP16,
|
||||
|
||||
Pixel::BAYER_BGGR16 => AV_PIX_FMT_BAYER_BGGR16,
|
||||
Pixel::BAYER_RGGB16 => AV_PIX_FMT_BAYER_RGGB16,
|
||||
Pixel::BAYER_GBRG16 => AV_PIX_FMT_BAYER_GBRG16,
|
||||
Pixel::BAYER_GRBG16 => AV_PIX_FMT_BAYER_GRBG16,
|
||||
|
||||
Pixel::YUVA420P9 => AV_PIX_FMT_YUVA420P9,
|
||||
Pixel::YUVA422P9 => AV_PIX_FMT_YUVA422P9,
|
||||
Pixel::YUVA444P9 => AV_PIX_FMT_YUVA444P9,
|
||||
Pixel::YUVA420P10 => AV_PIX_FMT_YUVA420P10,
|
||||
Pixel::YUVA422P10 => AV_PIX_FMT_YUVA422P10,
|
||||
Pixel::YUVA444P10 => AV_PIX_FMT_YUVA444P10,
|
||||
Pixel::YUVA420P16 => AV_PIX_FMT_YUVA420P16,
|
||||
Pixel::YUVA422P16 => AV_PIX_FMT_YUVA422P16,
|
||||
Pixel::YUVA444P16 => AV_PIX_FMT_YUVA444P16,
|
||||
|
||||
Pixel::XYZ12 => AV_PIX_FMT_XYZ12,
|
||||
Pixel::NV20 => AV_PIX_FMT_NV20,
|
||||
}
|
||||
}
|
||||
}
|
@ -9,7 +9,7 @@ use libc::{c_int, uint8_t};
|
||||
use ffi::*;
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum SampleFormat {
|
||||
pub enum Sample {
|
||||
None,
|
||||
U8,
|
||||
S16,
|
||||
@ -24,7 +24,7 @@ pub enum SampleFormat {
|
||||
DBLP,
|
||||
}
|
||||
|
||||
impl SampleFormat {
|
||||
impl Sample {
|
||||
pub fn name(&self) -> &'static str {
|
||||
unsafe {
|
||||
from_utf8_unchecked(CStr::from_ptr(av_get_sample_fmt_name((*self).into())).to_bytes())
|
||||
@ -33,13 +33,13 @@ impl SampleFormat {
|
||||
|
||||
pub fn packed(&self) -> Self {
|
||||
unsafe {
|
||||
SampleFormat::from(av_get_packed_sample_fmt((*self).into()))
|
||||
Sample::from(av_get_packed_sample_fmt((*self).into()))
|
||||
}
|
||||
}
|
||||
|
||||
pub fn planar(&self) -> Self {
|
||||
unsafe {
|
||||
SampleFormat::from(av_get_planar_sample_fmt((*self).into()))
|
||||
Sample::from(av_get_planar_sample_fmt((*self).into()))
|
||||
}
|
||||
}
|
||||
|
||||
@ -60,56 +60,56 @@ impl SampleFormat {
|
||||
}
|
||||
}
|
||||
|
||||
impl From<AVSampleFormat> for SampleFormat {
|
||||
impl From<AVSampleFormat> for Sample {
|
||||
fn from(value: AVSampleFormat) -> Self {
|
||||
match value {
|
||||
AV_SAMPLE_FMT_NONE => SampleFormat::None,
|
||||
AV_SAMPLE_FMT_U8 => SampleFormat::U8,
|
||||
AV_SAMPLE_FMT_S16 => SampleFormat::S16,
|
||||
AV_SAMPLE_FMT_S32 => SampleFormat::S32,
|
||||
AV_SAMPLE_FMT_FLT => SampleFormat::FLT,
|
||||
AV_SAMPLE_FMT_DBL => SampleFormat::DBL,
|
||||
AV_SAMPLE_FMT_NONE => Sample::None,
|
||||
AV_SAMPLE_FMT_U8 => Sample::U8,
|
||||
AV_SAMPLE_FMT_S16 => Sample::S16,
|
||||
AV_SAMPLE_FMT_S32 => Sample::S32,
|
||||
AV_SAMPLE_FMT_FLT => Sample::FLT,
|
||||
AV_SAMPLE_FMT_DBL => Sample::DBL,
|
||||
|
||||
AV_SAMPLE_FMT_U8P => SampleFormat::U8P,
|
||||
AV_SAMPLE_FMT_S16P => SampleFormat::S16P,
|
||||
AV_SAMPLE_FMT_S32P => SampleFormat::S32P,
|
||||
AV_SAMPLE_FMT_FLTP => SampleFormat::FLTP,
|
||||
AV_SAMPLE_FMT_DBLP => SampleFormat::DBLP,
|
||||
AV_SAMPLE_FMT_U8P => Sample::U8P,
|
||||
AV_SAMPLE_FMT_S16P => Sample::S16P,
|
||||
AV_SAMPLE_FMT_S32P => Sample::S32P,
|
||||
AV_SAMPLE_FMT_FLTP => Sample::FLTP,
|
||||
AV_SAMPLE_FMT_DBLP => Sample::DBLP,
|
||||
|
||||
AV_SAMPLE_FMT_NB => SampleFormat::None
|
||||
AV_SAMPLE_FMT_NB => Sample::None
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<&'static str> for SampleFormat {
|
||||
impl From<&'static str> for Sample {
|
||||
fn from(value: &'static str) -> Self {
|
||||
unsafe {
|
||||
SampleFormat::from(av_get_sample_fmt(CString::new(value).unwrap().as_ptr()))
|
||||
Sample::from(av_get_sample_fmt(CString::new(value).unwrap().as_ptr()))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Into<AVSampleFormat> for SampleFormat {
|
||||
impl Into<AVSampleFormat> for Sample {
|
||||
fn into(self) -> AVSampleFormat {
|
||||
match self {
|
||||
SampleFormat::None => AV_SAMPLE_FMT_NONE,
|
||||
SampleFormat::U8 => AV_SAMPLE_FMT_U8,
|
||||
SampleFormat::S16 => AV_SAMPLE_FMT_S16,
|
||||
SampleFormat::S32 => AV_SAMPLE_FMT_S32,
|
||||
SampleFormat::FLT => AV_SAMPLE_FMT_FLT,
|
||||
SampleFormat::DBL => AV_SAMPLE_FMT_DBL,
|
||||
Sample::None => AV_SAMPLE_FMT_NONE,
|
||||
Sample::U8 => AV_SAMPLE_FMT_U8,
|
||||
Sample::S16 => AV_SAMPLE_FMT_S16,
|
||||
Sample::S32 => AV_SAMPLE_FMT_S32,
|
||||
Sample::FLT => AV_SAMPLE_FMT_FLT,
|
||||
Sample::DBL => AV_SAMPLE_FMT_DBL,
|
||||
|
||||
SampleFormat::U8P => AV_SAMPLE_FMT_U8P,
|
||||
SampleFormat::S16P => AV_SAMPLE_FMT_S16P,
|
||||
SampleFormat::S32P => AV_SAMPLE_FMT_S32P,
|
||||
SampleFormat::FLTP => AV_SAMPLE_FMT_FLTP,
|
||||
SampleFormat::DBLP => AV_SAMPLE_FMT_DBLP,
|
||||
Sample::U8P => AV_SAMPLE_FMT_U8P,
|
||||
Sample::S16P => AV_SAMPLE_FMT_S16P,
|
||||
Sample::S32P => AV_SAMPLE_FMT_S32P,
|
||||
Sample::FLTP => AV_SAMPLE_FMT_FLTP,
|
||||
Sample::DBLP => AV_SAMPLE_FMT_DBLP,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub struct Buffer {
|
||||
pub format: SampleFormat,
|
||||
pub format: Sample,
|
||||
pub channels: usize,
|
||||
pub samples: usize,
|
||||
pub align: bool,
|
||||
@ -119,13 +119,13 @@ pub struct Buffer {
|
||||
}
|
||||
|
||||
impl Buffer {
|
||||
pub fn size(format: SampleFormat, channels: usize, samples: usize, align: bool) -> usize {
|
||||
pub fn size(format: Sample, channels: usize, samples: usize, align: bool) -> usize {
|
||||
unsafe {
|
||||
av_samples_get_buffer_size(ptr::null_mut(), channels as c_int, samples as c_int, format.into(), !align as c_int) as usize
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new(format: SampleFormat, channels: usize, samples: usize, align: bool) -> Self {
|
||||
pub fn new(format: Sample, channels: usize, samples: usize, align: bool) -> Self {
|
||||
unsafe {
|
||||
let mut buf = Buffer {
|
||||
format: format,
|
@ -8,8 +8,7 @@ use std::ops::Deref;
|
||||
|
||||
use ffi::*;
|
||||
use ::{Dictionary, Rational};
|
||||
use ::util::pixel_format::PixelFormat;
|
||||
use ::util::sample_format::SampleFormat;
|
||||
use ::util::format;
|
||||
use ::picture;
|
||||
use ::color;
|
||||
|
||||
@ -163,13 +162,13 @@ impl Audio {
|
||||
Audio(Frame::new())
|
||||
}
|
||||
|
||||
pub fn format(&self) -> SampleFormat {
|
||||
pub fn format(&self) -> format::Sample {
|
||||
unsafe {
|
||||
if (*self.ptr).format == -1 {
|
||||
SampleFormat::None
|
||||
format::Sample::None
|
||||
}
|
||||
else {
|
||||
SampleFormat::from(mem::transmute::<_, AVSampleFormat>(((*self.ptr).format)))
|
||||
format::Sample::from(mem::transmute::<_, AVSampleFormat>(((*self.ptr).format)))
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -258,13 +257,13 @@ impl Video {
|
||||
Video(Frame::new())
|
||||
}
|
||||
|
||||
pub fn format(&self) -> PixelFormat {
|
||||
pub fn format(&self) -> format::Pixel {
|
||||
unsafe {
|
||||
if (*self.ptr).format == -1 {
|
||||
PixelFormat::None
|
||||
format::Pixel::None
|
||||
}
|
||||
else {
|
||||
PixelFormat::from(mem::transmute::<_, AVPixelFormat>(((*self.ptr).format)))
|
||||
format::Pixel::from(mem::transmute::<_, AVPixelFormat>(((*self.ptr).format)))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -4,8 +4,7 @@ pub mod rational;
|
||||
pub mod media;
|
||||
pub mod picture;
|
||||
pub mod color;
|
||||
pub mod sample_format;
|
||||
pub mod pixel_format;
|
||||
pub mod format;
|
||||
pub mod frame;
|
||||
|
||||
use std::ffi::CStr;
|
||||
|
@ -1,718 +0,0 @@
|
||||
use ffi::*;
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum PixelFormat {
|
||||
None,
|
||||
|
||||
YUV420P,
|
||||
YUYV422,
|
||||
RGB24,
|
||||
BGR24,
|
||||
YUV422P,
|
||||
YUV444P,
|
||||
YUV410P,
|
||||
YUV411P,
|
||||
GRAY8,
|
||||
MonoWhite,
|
||||
MonoBlack,
|
||||
PAL8,
|
||||
YUVJ420P,
|
||||
YUVJ422P,
|
||||
YUVJ444P,
|
||||
XVMC_MPEG2_MC,
|
||||
XVMC_MPEG2_IDCT,
|
||||
UYVY422,
|
||||
UYYVYY411,
|
||||
BGR8,
|
||||
BGR4,
|
||||
BGR4_BYTE,
|
||||
RGB8,
|
||||
RGB4,
|
||||
RGB4_BYTE,
|
||||
NV12,
|
||||
NV21,
|
||||
|
||||
ARGB,
|
||||
RGBA,
|
||||
ABGR,
|
||||
BGRA,
|
||||
|
||||
GRAY16BE,
|
||||
GRAY16LE,
|
||||
YUV440P,
|
||||
YUVJ440P,
|
||||
YUVA420P,
|
||||
VDPAU_H264,
|
||||
VDPAU_MPEG1,
|
||||
VDPAU_MPEG2,
|
||||
VDPAU_WMV3,
|
||||
VDPAU_VC1,
|
||||
RGB48BE,
|
||||
RGB48LE,
|
||||
|
||||
RGB565BE,
|
||||
RGB565LE,
|
||||
RGB555BE,
|
||||
RGB555LE,
|
||||
|
||||
BGR565BE,
|
||||
BGR565LE,
|
||||
BGR555BE,
|
||||
BGR555LE,
|
||||
|
||||
VAAPI_MOCO,
|
||||
VAAPI_IDCT,
|
||||
VAAPI_VLD,
|
||||
|
||||
YUV420P16LE,
|
||||
YUV420P16BE,
|
||||
YUV422P16LE,
|
||||
YUV422P16BE,
|
||||
YUV444P16LE,
|
||||
YUV444P16BE,
|
||||
VDPAU_MPEG4,
|
||||
DXVA2_VLD,
|
||||
|
||||
RGB444LE,
|
||||
RGB444BE,
|
||||
BGR444LE,
|
||||
BGR444BE,
|
||||
YA8,
|
||||
|
||||
BGR48BE,
|
||||
BGR48LE,
|
||||
|
||||
YUV420P9BE,
|
||||
YUV420P9LE,
|
||||
YUV420P10BE,
|
||||
YUV420P10LE,
|
||||
YUV422P10BE,
|
||||
YUV422P10LE,
|
||||
YUV444P9BE,
|
||||
YUV444P9LE,
|
||||
YUV444P10BE,
|
||||
YUV444P10LE,
|
||||
YUV422P9BE,
|
||||
YUV422P9LE,
|
||||
VDA_VLD,
|
||||
|
||||
GBRP,
|
||||
GBRP9BE,
|
||||
GBRP9LE,
|
||||
GBRP10BE,
|
||||
GBRP10LE,
|
||||
GBRP16BE,
|
||||
GBRP16LE,
|
||||
|
||||
YUVA422P_LIBAV,
|
||||
YUVA444P_LIBAV,
|
||||
|
||||
YUVA420P9BE,
|
||||
YUVA420P9LE,
|
||||
YUVA422P9BE,
|
||||
YUVA422P9LE,
|
||||
YUVA444P9BE,
|
||||
YUVA444P9LE,
|
||||
YUVA420P10BE,
|
||||
YUVA420P10LE,
|
||||
YUVA422P10BE,
|
||||
YUVA422P10LE,
|
||||
YUVA444P10BE,
|
||||
YUVA444P10LE,
|
||||
YUVA420P16BE,
|
||||
YUVA420P16LE,
|
||||
YUVA422P16BE,
|
||||
YUVA422P16LE,
|
||||
YUVA444P16BE,
|
||||
YUVA444P16LE,
|
||||
|
||||
VDPAU,
|
||||
|
||||
XYZ12LE,
|
||||
XYZ12BE,
|
||||
NV16,
|
||||
NV20LE,
|
||||
NV20BE,
|
||||
|
||||
RGBA64BE_LIBAV,
|
||||
RGBA64LE_LIBAV,
|
||||
BGRA64BE_LIBAV,
|
||||
BGRA64LE_LIBAV,
|
||||
|
||||
YVYU422,
|
||||
|
||||
VDA,
|
||||
|
||||
YA16BE,
|
||||
YA16LE,
|
||||
|
||||
GBRAP_LIBAV,
|
||||
GBRAP16BE_LIBAV,
|
||||
GBRAP16LE_LIBAV,
|
||||
QSV,
|
||||
|
||||
ZRGB,
|
||||
RGBZ,
|
||||
ZBGR,
|
||||
BGRZ,
|
||||
YUVA444P,
|
||||
YUVA422P,
|
||||
|
||||
YUV420P12BE,
|
||||
YUV420P12LE,
|
||||
YUV420P14BE,
|
||||
YUV420P14LE,
|
||||
YUV422P12BE,
|
||||
YUV422P12LE,
|
||||
YUV422P14BE,
|
||||
YUV422P14LE,
|
||||
YUV444P12BE,
|
||||
YUV444P12LE,
|
||||
YUV444P14BE,
|
||||
YUV444P14LE,
|
||||
GBRP12BE,
|
||||
GBRP12LE,
|
||||
GBRP14BE,
|
||||
GBRP14LE,
|
||||
GBRAP,
|
||||
GBRAP16BE,
|
||||
GBRAP16LE,
|
||||
YUVJ411P,
|
||||
|
||||
BAYER_BGGR8,
|
||||
BAYER_RGGB8,
|
||||
BAYER_GBRG8,
|
||||
BAYER_GRBG8,
|
||||
BAYER_BGGR16LE,
|
||||
BAYER_BGGR16BE,
|
||||
BAYER_RGGB16LE,
|
||||
BAYER_RGGB16BE,
|
||||
BAYER_GBRG16LE,
|
||||
BAYER_GBRG16BE,
|
||||
BAYER_GRBG16LE,
|
||||
BAYER_GRBG16BE,
|
||||
|
||||
// --- defaults
|
||||
XVMC,
|
||||
Y400A,
|
||||
GRAY8A,
|
||||
GBR24P,
|
||||
|
||||
RGB32,
|
||||
RGB32_1,
|
||||
BGR32,
|
||||
BGR32_1,
|
||||
ZRGB32,
|
||||
ZBGR32,
|
||||
|
||||
GRAY16,
|
||||
YA16,
|
||||
RGB48,
|
||||
RGB565,
|
||||
RGB555,
|
||||
RGB444,
|
||||
BGR48,
|
||||
BGR565,
|
||||
BGR555,
|
||||
BGR444,
|
||||
|
||||
YUV420P9,
|
||||
YUV422P9,
|
||||
YUV444P9,
|
||||
YUV420P10,
|
||||
YUV422P10,
|
||||
YUV444P10,
|
||||
YUV420P12,
|
||||
YUV422P12,
|
||||
YUV444P12,
|
||||
YUV420P14,
|
||||
YUV422P14,
|
||||
YUV444P14,
|
||||
YUV420P16,
|
||||
YUV422P16,
|
||||
YUV444P16,
|
||||
|
||||
GBRP9,
|
||||
GBRP10,
|
||||
GBRP12,
|
||||
GBRP14,
|
||||
GBRP16,
|
||||
GBRAP16,
|
||||
|
||||
BAYER_BGGR16,
|
||||
BAYER_RGGB16,
|
||||
BAYER_GBRG16,
|
||||
BAYER_GRBG16,
|
||||
|
||||
YUVA420P9,
|
||||
YUVA422P9,
|
||||
YUVA444P9,
|
||||
YUVA420P10,
|
||||
YUVA422P10,
|
||||
YUVA444P10,
|
||||
YUVA420P16,
|
||||
YUVA422P16,
|
||||
YUVA444P16,
|
||||
|
||||
XYZ12,
|
||||
NV20,
|
||||
}
|
||||
|
||||
impl From<AVPixelFormat> for PixelFormat {
|
||||
fn from(value: AVPixelFormat) -> Self {
|
||||
match value {
|
||||
AV_PIX_FMT_NONE => PixelFormat::None,
|
||||
|
||||
AV_PIX_FMT_YUV420P => PixelFormat::YUV420P,
|
||||
AV_PIX_FMT_YUYV422 => PixelFormat::YUYV422,
|
||||
AV_PIX_FMT_RGB24 => PixelFormat::RGB24,
|
||||
AV_PIX_FMT_BGR24 => PixelFormat::BGR24,
|
||||
AV_PIX_FMT_YUV422P => PixelFormat::YUV422P,
|
||||
AV_PIX_FMT_YUV444P => PixelFormat::YUV444P,
|
||||
AV_PIX_FMT_YUV410P => PixelFormat::YUV410P,
|
||||
AV_PIX_FMT_YUV411P => PixelFormat::YUV411P,
|
||||
AV_PIX_FMT_GRAY8 => PixelFormat::GRAY8,
|
||||
AV_PIX_FMT_MONOWHITE => PixelFormat::MonoWhite,
|
||||
AV_PIX_FMT_MONOBLACK => PixelFormat::MonoBlack,
|
||||
AV_PIX_FMT_PAL8 => PixelFormat::PAL8,
|
||||
AV_PIX_FMT_YUVJ420P => PixelFormat::YUVJ420P,
|
||||
AV_PIX_FMT_YUVJ422P => PixelFormat::YUVJ422P,
|
||||
AV_PIX_FMT_YUVJ444P => PixelFormat::YUVJ444P,
|
||||
AV_PIX_FMT_XVMC_MPEG2_MC => PixelFormat::XVMC_MPEG2_MC,
|
||||
AV_PIX_FMT_XVMC_MPEG2_IDCT => PixelFormat::XVMC_MPEG2_IDCT,
|
||||
AV_PIX_FMT_UYVY422 => PixelFormat::UYVY422,
|
||||
AV_PIX_FMT_UYYVYY411 => PixelFormat::UYYVYY411,
|
||||
AV_PIX_FMT_BGR8 => PixelFormat::BGR8,
|
||||
AV_PIX_FMT_BGR4 => PixelFormat::BGR4,
|
||||
AV_PIX_FMT_BGR4_BYTE => PixelFormat::BGR4_BYTE,
|
||||
AV_PIX_FMT_RGB8 => PixelFormat::RGB8,
|
||||
AV_PIX_FMT_RGB4 => PixelFormat::RGB4,
|
||||
AV_PIX_FMT_RGB4_BYTE => PixelFormat::RGB4_BYTE,
|
||||
AV_PIX_FMT_NV12 => PixelFormat::NV12,
|
||||
AV_PIX_FMT_NV21 => PixelFormat::NV21,
|
||||
|
||||
AV_PIX_FMT_ARGB => PixelFormat::ARGB,
|
||||
AV_PIX_FMT_RGBA => PixelFormat::RGBA,
|
||||
AV_PIX_FMT_ABGR => PixelFormat::ABGR,
|
||||
AV_PIX_FMT_BGRA => PixelFormat::BGRA,
|
||||
|
||||
AV_PIX_FMT_GRAY16BE => PixelFormat::GRAY16BE,
|
||||
AV_PIX_FMT_GRAY16LE => PixelFormat::GRAY16LE,
|
||||
AV_PIX_FMT_YUV440P => PixelFormat::YUV440P,
|
||||
AV_PIX_FMT_YUVJ440P => PixelFormat::YUVJ440P,
|
||||
AV_PIX_FMT_YUVA420P => PixelFormat::YUVA420P,
|
||||
AV_PIX_FMT_VDPAU_H264 => PixelFormat::VDPAU_H264,
|
||||
AV_PIX_FMT_VDPAU_MPEG1 => PixelFormat::VDPAU_MPEG1,
|
||||
AV_PIX_FMT_VDPAU_MPEG2 => PixelFormat::VDPAU_MPEG2,
|
||||
AV_PIX_FMT_VDPAU_WMV3 => PixelFormat::VDPAU_WMV3,
|
||||
AV_PIX_FMT_VDPAU_VC1 => PixelFormat::VDPAU_VC1,
|
||||
AV_PIX_FMT_RGB48BE => PixelFormat::RGB48BE,
|
||||
AV_PIX_FMT_RGB48LE => PixelFormat::RGB48LE,
|
||||
|
||||
AV_PIX_FMT_RGB565BE => PixelFormat::RGB565BE,
|
||||
AV_PIX_FMT_RGB565LE => PixelFormat::RGB565LE,
|
||||
AV_PIX_FMT_RGB555BE => PixelFormat::RGB555BE,
|
||||
AV_PIX_FMT_RGB555LE => PixelFormat::RGB555LE,
|
||||
|
||||
AV_PIX_FMT_BGR565BE => PixelFormat::BGR565BE,
|
||||
AV_PIX_FMT_BGR565LE => PixelFormat::BGR565LE,
|
||||
AV_PIX_FMT_BGR555BE => PixelFormat::BGR555BE,
|
||||
AV_PIX_FMT_BGR555LE => PixelFormat::BGR555LE,
|
||||
|
||||
AV_PIX_FMT_VAAPI_MOCO => PixelFormat::VAAPI_MOCO,
|
||||
AV_PIX_FMT_VAAPI_IDCT => PixelFormat::VAAPI_IDCT,
|
||||
AV_PIX_FMT_VAAPI_VLD => PixelFormat::VAAPI_VLD,
|
||||
|
||||
AV_PIX_FMT_YUV420P16LE => PixelFormat::YUV420P16LE,
|
||||
AV_PIX_FMT_YUV420P16BE => PixelFormat::YUV420P16BE,
|
||||
AV_PIX_FMT_YUV422P16LE => PixelFormat::YUV422P16LE,
|
||||
AV_PIX_FMT_YUV422P16BE => PixelFormat::YUV422P16BE,
|
||||
AV_PIX_FMT_YUV444P16LE => PixelFormat::YUV444P16LE,
|
||||
AV_PIX_FMT_YUV444P16BE => PixelFormat::YUV444P16BE,
|
||||
AV_PIX_FMT_VDPAU_MPEG4 => PixelFormat::VDPAU_MPEG4,
|
||||
AV_PIX_FMT_DXVA2_VLD => PixelFormat::DXVA2_VLD,
|
||||
|
||||
AV_PIX_FMT_RGB444LE => PixelFormat::RGB444LE,
|
||||
AV_PIX_FMT_RGB444BE => PixelFormat::RGB444BE,
|
||||
AV_PIX_FMT_BGR444LE => PixelFormat::BGR444LE,
|
||||
AV_PIX_FMT_BGR444BE => PixelFormat::BGR444BE,
|
||||
AV_PIX_FMT_YA8 => PixelFormat::YA8,
|
||||
|
||||
AV_PIX_FMT_BGR48BE => PixelFormat::BGR48BE,
|
||||
AV_PIX_FMT_BGR48LE => PixelFormat::BGR48LE,
|
||||
|
||||
AV_PIX_FMT_YUV420P9BE => PixelFormat::YUV420P9BE,
|
||||
AV_PIX_FMT_YUV420P9LE => PixelFormat::YUV420P9LE,
|
||||
AV_PIX_FMT_YUV420P10BE => PixelFormat::YUV420P10BE,
|
||||
AV_PIX_FMT_YUV420P10LE => PixelFormat::YUV420P10LE,
|
||||
AV_PIX_FMT_YUV422P10BE => PixelFormat::YUV422P10BE,
|
||||
AV_PIX_FMT_YUV422P10LE => PixelFormat::YUV422P10LE,
|
||||
AV_PIX_FMT_YUV444P9BE => PixelFormat::YUV444P9BE,
|
||||
AV_PIX_FMT_YUV444P9LE => PixelFormat::YUV444P9LE,
|
||||
AV_PIX_FMT_YUV444P10BE => PixelFormat::YUV444P10BE,
|
||||
AV_PIX_FMT_YUV444P10LE => PixelFormat::YUV444P10LE,
|
||||
AV_PIX_FMT_YUV422P9BE => PixelFormat::YUV422P9BE,
|
||||
AV_PIX_FMT_YUV422P9LE => PixelFormat::YUV422P9LE,
|
||||
AV_PIX_FMT_VDA_VLD => PixelFormat::VDA_VLD,
|
||||
|
||||
AV_PIX_FMT_GBRP => PixelFormat::GBRP,
|
||||
AV_PIX_FMT_GBRP9BE => PixelFormat::GBRP9BE,
|
||||
AV_PIX_FMT_GBRP9LE => PixelFormat::GBRP9LE,
|
||||
AV_PIX_FMT_GBRP10BE => PixelFormat::GBRP10BE,
|
||||
AV_PIX_FMT_GBRP10LE => PixelFormat::GBRP10LE,
|
||||
AV_PIX_FMT_GBRP16BE => PixelFormat::GBRP16BE,
|
||||
AV_PIX_FMT_GBRP16LE => PixelFormat::GBRP16LE,
|
||||
|
||||
AV_PIX_FMT_YUVA422P_LIBAV => PixelFormat::YUVA422P_LIBAV,
|
||||
AV_PIX_FMT_YUVA444P_LIBAV => PixelFormat::YUVA444P_LIBAV,
|
||||
|
||||
AV_PIX_FMT_YUVA420P9BE => PixelFormat::YUVA420P9BE,
|
||||
AV_PIX_FMT_YUVA420P9LE => PixelFormat::YUVA420P9LE,
|
||||
AV_PIX_FMT_YUVA422P9BE => PixelFormat::YUVA422P9BE,
|
||||
AV_PIX_FMT_YUVA422P9LE => PixelFormat::YUVA422P9LE,
|
||||
AV_PIX_FMT_YUVA444P9BE => PixelFormat::YUVA444P9BE,
|
||||
AV_PIX_FMT_YUVA444P9LE => PixelFormat::YUVA444P9LE,
|
||||
AV_PIX_FMT_YUVA420P10BE => PixelFormat::YUVA420P10BE,
|
||||
AV_PIX_FMT_YUVA420P10LE => PixelFormat::YUVA420P10LE,
|
||||
AV_PIX_FMT_YUVA422P10BE => PixelFormat::YUVA422P10BE,
|
||||
AV_PIX_FMT_YUVA422P10LE => PixelFormat::YUVA422P10LE,
|
||||
AV_PIX_FMT_YUVA444P10BE => PixelFormat::YUVA444P10BE,
|
||||
AV_PIX_FMT_YUVA444P10LE => PixelFormat::YUVA444P10LE,
|
||||
AV_PIX_FMT_YUVA420P16BE => PixelFormat::YUVA420P16BE,
|
||||
AV_PIX_FMT_YUVA420P16LE => PixelFormat::YUVA420P16LE,
|
||||
AV_PIX_FMT_YUVA422P16BE => PixelFormat::YUVA422P16BE,
|
||||
AV_PIX_FMT_YUVA422P16LE => PixelFormat::YUVA422P16LE,
|
||||
AV_PIX_FMT_YUVA444P16BE => PixelFormat::YUVA444P16BE,
|
||||
AV_PIX_FMT_YUVA444P16LE => PixelFormat::YUVA444P16LE,
|
||||
|
||||
AV_PIX_FMT_VDPAU => PixelFormat::VDPAU,
|
||||
|
||||
AV_PIX_FMT_XYZ12LE => PixelFormat::XYZ12LE,
|
||||
AV_PIX_FMT_XYZ12BE => PixelFormat::XYZ12BE,
|
||||
AV_PIX_FMT_NV16 => PixelFormat::NV16,
|
||||
AV_PIX_FMT_NV20LE => PixelFormat::NV20LE,
|
||||
AV_PIX_FMT_NV20BE => PixelFormat::NV20BE,
|
||||
|
||||
AV_PIX_FMT_RGBA64BE_LIBAV => PixelFormat::RGBA64BE_LIBAV,
|
||||
AV_PIX_FMT_RGBA64LE_LIBAV => PixelFormat::RGBA64LE_LIBAV,
|
||||
AV_PIX_FMT_BGRA64BE_LIBAV => PixelFormat::BGRA64BE_LIBAV,
|
||||
AV_PIX_FMT_BGRA64LE_LIBAV => PixelFormat::BGRA64LE_LIBAV,
|
||||
|
||||
AV_PIX_FMT_YVYU422 => PixelFormat::YVYU422,
|
||||
|
||||
AV_PIX_FMT_VDA => PixelFormat::VDA,
|
||||
|
||||
AV_PIX_FMT_YA16BE => PixelFormat::YA16BE,
|
||||
AV_PIX_FMT_YA16LE => PixelFormat::YA16LE,
|
||||
|
||||
AV_PIX_FMT_GBRAP_LIBAV => PixelFormat::GBRAP_LIBAV,
|
||||
AV_PIX_FMT_GBRAP16BE_LIBAV => PixelFormat::GBRAP16BE_LIBAV,
|
||||
AV_PIX_FMT_GBRAP16LE_LIBAV => PixelFormat::GBRAP16LE_LIBAV,
|
||||
AV_PIX_FMT_QSV => PixelFormat::QSV,
|
||||
|
||||
AV_PIX_FMT_0RGB => PixelFormat::ZRGB,
|
||||
AV_PIX_FMT_RGB0 => PixelFormat::RGBZ,
|
||||
AV_PIX_FMT_0BGR => PixelFormat::ZBGR,
|
||||
AV_PIX_FMT_BGR0 => PixelFormat::BGRZ,
|
||||
AV_PIX_FMT_YUVA444P => PixelFormat::YUVA444P,
|
||||
AV_PIX_FMT_YUVA422P => PixelFormat::YUVA422P,
|
||||
|
||||
AV_PIX_FMT_YUV420P12BE => PixelFormat::YUV420P12BE,
|
||||
AV_PIX_FMT_YUV420P12LE => PixelFormat::YUV420P12LE,
|
||||
AV_PIX_FMT_YUV420P14BE => PixelFormat::YUV420P14BE,
|
||||
AV_PIX_FMT_YUV420P14LE => PixelFormat::YUV420P14LE,
|
||||
AV_PIX_FMT_YUV422P12BE => PixelFormat::YUV422P12BE,
|
||||
AV_PIX_FMT_YUV422P12LE => PixelFormat::YUV422P12LE,
|
||||
AV_PIX_FMT_YUV422P14BE => PixelFormat::YUV422P14BE,
|
||||
AV_PIX_FMT_YUV422P14LE => PixelFormat::YUV422P14LE,
|
||||
AV_PIX_FMT_YUV444P12BE => PixelFormat::YUV444P12BE,
|
||||
AV_PIX_FMT_YUV444P12LE => PixelFormat::YUV444P12LE,
|
||||
AV_PIX_FMT_YUV444P14BE => PixelFormat::YUV444P14BE,
|
||||
AV_PIX_FMT_YUV444P14LE => PixelFormat::YUV444P14LE,
|
||||
AV_PIX_FMT_GBRP12BE => PixelFormat::GBRP12BE,
|
||||
AV_PIX_FMT_GBRP12LE => PixelFormat::GBRP12LE,
|
||||
AV_PIX_FMT_GBRP14BE => PixelFormat::GBRP14BE,
|
||||
AV_PIX_FMT_GBRP14LE => PixelFormat::GBRP14LE,
|
||||
AV_PIX_FMT_GBRAP => PixelFormat::GBRAP,
|
||||
AV_PIX_FMT_GBRAP16BE => PixelFormat::GBRAP16BE,
|
||||
AV_PIX_FMT_GBRAP16LE => PixelFormat::GBRAP16LE,
|
||||
AV_PIX_FMT_YUVJ411P => PixelFormat::YUVJ411P,
|
||||
|
||||
AV_PIX_FMT_BAYER_BGGR8 => PixelFormat::BAYER_BGGR8,
|
||||
AV_PIX_FMT_BAYER_RGGB8 => PixelFormat::BAYER_RGGB8,
|
||||
AV_PIX_FMT_BAYER_GBRG8 => PixelFormat::BAYER_GBRG8,
|
||||
AV_PIX_FMT_BAYER_GRBG8 => PixelFormat::BAYER_GRBG8,
|
||||
AV_PIX_FMT_BAYER_BGGR16LE => PixelFormat::BAYER_BGGR16LE,
|
||||
AV_PIX_FMT_BAYER_BGGR16BE => PixelFormat::BAYER_BGGR16BE,
|
||||
AV_PIX_FMT_BAYER_RGGB16LE => PixelFormat::BAYER_RGGB16LE,
|
||||
AV_PIX_FMT_BAYER_RGGB16BE => PixelFormat::BAYER_RGGB16BE,
|
||||
AV_PIX_FMT_BAYER_GBRG16LE => PixelFormat::BAYER_GBRG16LE,
|
||||
AV_PIX_FMT_BAYER_GBRG16BE => PixelFormat::BAYER_GBRG16BE,
|
||||
AV_PIX_FMT_BAYER_GRBG16LE => PixelFormat::BAYER_GRBG16LE,
|
||||
AV_PIX_FMT_BAYER_GRBG16BE => PixelFormat::BAYER_GRBG16BE,
|
||||
|
||||
AV_PIX_FMT_NB => PixelFormat::None
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Into<AVPixelFormat> for PixelFormat {
|
||||
fn into(self) -> AVPixelFormat {
|
||||
match self {
|
||||
PixelFormat::None => AV_PIX_FMT_NONE,
|
||||
|
||||
PixelFormat::YUV420P => AV_PIX_FMT_YUV420P,
|
||||
PixelFormat::YUYV422 => AV_PIX_FMT_YUYV422,
|
||||
PixelFormat::RGB24 => AV_PIX_FMT_RGB24,
|
||||
PixelFormat::BGR24 => AV_PIX_FMT_BGR24,
|
||||
PixelFormat::YUV422P => AV_PIX_FMT_YUV422P,
|
||||
PixelFormat::YUV444P => AV_PIX_FMT_YUV444P,
|
||||
PixelFormat::YUV410P => AV_PIX_FMT_YUV410P,
|
||||
PixelFormat::YUV411P => AV_PIX_FMT_YUV411P,
|
||||
PixelFormat::GRAY8 => AV_PIX_FMT_GRAY8,
|
||||
PixelFormat::MonoWhite => AV_PIX_FMT_MONOWHITE,
|
||||
PixelFormat::MonoBlack => AV_PIX_FMT_MONOBLACK,
|
||||
PixelFormat::PAL8 => AV_PIX_FMT_PAL8,
|
||||
PixelFormat::YUVJ420P => AV_PIX_FMT_YUVJ420P,
|
||||
PixelFormat::YUVJ422P => AV_PIX_FMT_YUVJ422P,
|
||||
PixelFormat::YUVJ444P => AV_PIX_FMT_YUVJ444P,
|
||||
PixelFormat::XVMC_MPEG2_MC => AV_PIX_FMT_XVMC_MPEG2_MC,
|
||||
PixelFormat::XVMC_MPEG2_IDCT => AV_PIX_FMT_XVMC_MPEG2_IDCT,
|
||||
PixelFormat::UYVY422 => AV_PIX_FMT_UYVY422,
|
||||
PixelFormat::UYYVYY411 => AV_PIX_FMT_UYYVYY411,
|
||||
PixelFormat::BGR8 => AV_PIX_FMT_BGR8,
|
||||
PixelFormat::BGR4 => AV_PIX_FMT_BGR4,
|
||||
PixelFormat::BGR4_BYTE => AV_PIX_FMT_BGR4_BYTE,
|
||||
PixelFormat::RGB8 => AV_PIX_FMT_RGB8,
|
||||
PixelFormat::RGB4 => AV_PIX_FMT_RGB4,
|
||||
PixelFormat::RGB4_BYTE => AV_PIX_FMT_RGB4_BYTE,
|
||||
PixelFormat::NV12 => AV_PIX_FMT_NV12,
|
||||
PixelFormat::NV21 => AV_PIX_FMT_NV21,
|
||||
|
||||
PixelFormat::ARGB => AV_PIX_FMT_ARGB,
|
||||
PixelFormat::RGBA => AV_PIX_FMT_RGBA,
|
||||
PixelFormat::ABGR => AV_PIX_FMT_ABGR,
|
||||
PixelFormat::BGRA => AV_PIX_FMT_BGRA,
|
||||
|
||||
PixelFormat::GRAY16BE => AV_PIX_FMT_GRAY16BE,
|
||||
PixelFormat::GRAY16LE => AV_PIX_FMT_GRAY16LE,
|
||||
PixelFormat::YUV440P => AV_PIX_FMT_YUV440P,
|
||||
PixelFormat::YUVJ440P => AV_PIX_FMT_YUVJ440P,
|
||||
PixelFormat::YUVA420P => AV_PIX_FMT_YUVA420P,
|
||||
PixelFormat::VDPAU_H264 => AV_PIX_FMT_VDPAU_H264,
|
||||
PixelFormat::VDPAU_MPEG1 => AV_PIX_FMT_VDPAU_MPEG1,
|
||||
PixelFormat::VDPAU_MPEG2 => AV_PIX_FMT_VDPAU_MPEG2,
|
||||
PixelFormat::VDPAU_WMV3 => AV_PIX_FMT_VDPAU_WMV3,
|
||||
PixelFormat::VDPAU_VC1 => AV_PIX_FMT_VDPAU_VC1,
|
||||
PixelFormat::RGB48BE => AV_PIX_FMT_RGB48BE,
|
||||
PixelFormat::RGB48LE => AV_PIX_FMT_RGB48LE,
|
||||
|
||||
PixelFormat::RGB565BE => AV_PIX_FMT_RGB565BE,
|
||||
PixelFormat::RGB565LE => AV_PIX_FMT_RGB565LE,
|
||||
PixelFormat::RGB555BE => AV_PIX_FMT_RGB555BE,
|
||||
PixelFormat::RGB555LE => AV_PIX_FMT_RGB555LE,
|
||||
|
||||
PixelFormat::BGR565BE => AV_PIX_FMT_BGR565BE,
|
||||
PixelFormat::BGR565LE => AV_PIX_FMT_BGR565LE,
|
||||
PixelFormat::BGR555BE => AV_PIX_FMT_BGR555BE,
|
||||
PixelFormat::BGR555LE => AV_PIX_FMT_BGR555LE,
|
||||
|
||||
PixelFormat::VAAPI_MOCO => AV_PIX_FMT_VAAPI_MOCO,
|
||||
PixelFormat::VAAPI_IDCT => AV_PIX_FMT_VAAPI_IDCT,
|
||||
PixelFormat::VAAPI_VLD => AV_PIX_FMT_VAAPI_VLD,
|
||||
|
||||
PixelFormat::YUV420P16LE => AV_PIX_FMT_YUV420P16LE,
|
||||
PixelFormat::YUV420P16BE => AV_PIX_FMT_YUV420P16BE,
|
||||
PixelFormat::YUV422P16LE => AV_PIX_FMT_YUV422P16LE,
|
||||
PixelFormat::YUV422P16BE => AV_PIX_FMT_YUV422P16BE,
|
||||
PixelFormat::YUV444P16LE => AV_PIX_FMT_YUV444P16LE,
|
||||
PixelFormat::YUV444P16BE => AV_PIX_FMT_YUV444P16BE,
|
||||
PixelFormat::VDPAU_MPEG4 => AV_PIX_FMT_VDPAU_MPEG4,
|
||||
PixelFormat::DXVA2_VLD => AV_PIX_FMT_DXVA2_VLD,
|
||||
|
||||
PixelFormat::RGB444LE => AV_PIX_FMT_RGB444LE,
|
||||
PixelFormat::RGB444BE => AV_PIX_FMT_RGB444BE,
|
||||
PixelFormat::BGR444LE => AV_PIX_FMT_BGR444LE,
|
||||
PixelFormat::BGR444BE => AV_PIX_FMT_BGR444BE,
|
||||
PixelFormat::YA8 => AV_PIX_FMT_YA8,
|
||||
|
||||
PixelFormat::BGR48BE => AV_PIX_FMT_BGR48BE,
|
||||
PixelFormat::BGR48LE => AV_PIX_FMT_BGR48LE,
|
||||
|
||||
PixelFormat::YUV420P9BE => AV_PIX_FMT_YUV420P9BE,
|
||||
PixelFormat::YUV420P9LE => AV_PIX_FMT_YUV420P9LE,
|
||||
PixelFormat::YUV420P10BE => AV_PIX_FMT_YUV420P10BE,
|
||||
PixelFormat::YUV420P10LE => AV_PIX_FMT_YUV420P10LE,
|
||||
PixelFormat::YUV422P10BE => AV_PIX_FMT_YUV422P10BE,
|
||||
PixelFormat::YUV422P10LE => AV_PIX_FMT_YUV422P10LE,
|
||||
PixelFormat::YUV444P9BE => AV_PIX_FMT_YUV444P9BE,
|
||||
PixelFormat::YUV444P9LE => AV_PIX_FMT_YUV444P9LE,
|
||||
PixelFormat::YUV444P10BE => AV_PIX_FMT_YUV444P10BE,
|
||||
PixelFormat::YUV444P10LE => AV_PIX_FMT_YUV444P10LE,
|
||||
PixelFormat::YUV422P9BE => AV_PIX_FMT_YUV422P9BE,
|
||||
PixelFormat::YUV422P9LE => AV_PIX_FMT_YUV422P9LE,
|
||||
PixelFormat::VDA_VLD => AV_PIX_FMT_VDA_VLD,
|
||||
|
||||
PixelFormat::GBRP => AV_PIX_FMT_GBRP,
|
||||
PixelFormat::GBRP9BE => AV_PIX_FMT_GBRP9BE,
|
||||
PixelFormat::GBRP9LE => AV_PIX_FMT_GBRP9LE,
|
||||
PixelFormat::GBRP10BE => AV_PIX_FMT_GBRP10BE,
|
||||
PixelFormat::GBRP10LE => AV_PIX_FMT_GBRP10LE,
|
||||
PixelFormat::GBRP16BE => AV_PIX_FMT_GBRP16BE,
|
||||
PixelFormat::GBRP16LE => AV_PIX_FMT_GBRP16LE,
|
||||
|
||||
PixelFormat::YUVA422P_LIBAV => AV_PIX_FMT_YUVA422P_LIBAV,
|
||||
PixelFormat::YUVA444P_LIBAV => AV_PIX_FMT_YUVA444P_LIBAV,
|
||||
|
||||
PixelFormat::YUVA420P9BE => AV_PIX_FMT_YUVA420P9BE,
|
||||
PixelFormat::YUVA420P9LE => AV_PIX_FMT_YUVA420P9LE,
|
||||
PixelFormat::YUVA422P9BE => AV_PIX_FMT_YUVA422P9BE,
|
||||
PixelFormat::YUVA422P9LE => AV_PIX_FMT_YUVA422P9LE,
|
||||
PixelFormat::YUVA444P9BE => AV_PIX_FMT_YUVA444P9BE,
|
||||
PixelFormat::YUVA444P9LE => AV_PIX_FMT_YUVA444P9LE,
|
||||
PixelFormat::YUVA420P10BE => AV_PIX_FMT_YUVA420P10BE,
|
||||
PixelFormat::YUVA420P10LE => AV_PIX_FMT_YUVA420P10LE,
|
||||
PixelFormat::YUVA422P10BE => AV_PIX_FMT_YUVA422P10BE,
|
||||
PixelFormat::YUVA422P10LE => AV_PIX_FMT_YUVA422P10LE,
|
||||
PixelFormat::YUVA444P10BE => AV_PIX_FMT_YUVA444P10BE,
|
||||
PixelFormat::YUVA444P10LE => AV_PIX_FMT_YUVA444P10LE,
|
||||
PixelFormat::YUVA420P16BE => AV_PIX_FMT_YUVA420P16BE,
|
||||
PixelFormat::YUVA420P16LE => AV_PIX_FMT_YUVA420P16LE,
|
||||
PixelFormat::YUVA422P16BE => AV_PIX_FMT_YUVA422P16BE,
|
||||
PixelFormat::YUVA422P16LE => AV_PIX_FMT_YUVA422P16LE,
|
||||
PixelFormat::YUVA444P16BE => AV_PIX_FMT_YUVA444P16BE,
|
||||
PixelFormat::YUVA444P16LE => AV_PIX_FMT_YUVA444P16LE,
|
||||
|
||||
PixelFormat::VDPAU => AV_PIX_FMT_VDPAU,
|
||||
|
||||
PixelFormat::XYZ12LE => AV_PIX_FMT_XYZ12LE,
|
||||
PixelFormat::XYZ12BE => AV_PIX_FMT_XYZ12BE,
|
||||
PixelFormat::NV16 => AV_PIX_FMT_NV16,
|
||||
PixelFormat::NV20LE => AV_PIX_FMT_NV20LE,
|
||||
PixelFormat::NV20BE => AV_PIX_FMT_NV20BE,
|
||||
|
||||
PixelFormat::RGBA64BE_LIBAV => AV_PIX_FMT_RGBA64BE_LIBAV,
|
||||
PixelFormat::RGBA64LE_LIBAV => AV_PIX_FMT_RGBA64LE_LIBAV,
|
||||
PixelFormat::BGRA64BE_LIBAV => AV_PIX_FMT_BGRA64BE_LIBAV,
|
||||
PixelFormat::BGRA64LE_LIBAV => AV_PIX_FMT_BGRA64LE_LIBAV,
|
||||
|
||||
PixelFormat::YVYU422 => AV_PIX_FMT_YVYU422,
|
||||
|
||||
PixelFormat::VDA => AV_PIX_FMT_VDA,
|
||||
|
||||
PixelFormat::YA16BE => AV_PIX_FMT_YA16BE,
|
||||
PixelFormat::YA16LE => AV_PIX_FMT_YA16LE,
|
||||
|
||||
PixelFormat::GBRAP_LIBAV => AV_PIX_FMT_GBRAP_LIBAV,
|
||||
PixelFormat::GBRAP16BE_LIBAV => AV_PIX_FMT_GBRAP16BE_LIBAV,
|
||||
PixelFormat::GBRAP16LE_LIBAV => AV_PIX_FMT_GBRAP16LE_LIBAV,
|
||||
PixelFormat::QSV => AV_PIX_FMT_QSV,
|
||||
|
||||
PixelFormat::ZRGB => AV_PIX_FMT_0RGB,
|
||||
PixelFormat::RGBZ => AV_PIX_FMT_RGB0,
|
||||
PixelFormat::ZBGR => AV_PIX_FMT_0BGR,
|
||||
PixelFormat::BGRZ => AV_PIX_FMT_BGR0,
|
||||
PixelFormat::YUVA444P => AV_PIX_FMT_YUVA444P,
|
||||
PixelFormat::YUVA422P => AV_PIX_FMT_YUVA422P,
|
||||
|
||||
PixelFormat::YUV420P12BE => AV_PIX_FMT_YUV420P12BE,
|
||||
PixelFormat::YUV420P12LE => AV_PIX_FMT_YUV420P12LE,
|
||||
PixelFormat::YUV420P14BE => AV_PIX_FMT_YUV420P14BE,
|
||||
PixelFormat::YUV420P14LE => AV_PIX_FMT_YUV420P14LE,
|
||||
PixelFormat::YUV422P12BE => AV_PIX_FMT_YUV422P12BE,
|
||||
PixelFormat::YUV422P12LE => AV_PIX_FMT_YUV422P12LE,
|
||||
PixelFormat::YUV422P14BE => AV_PIX_FMT_YUV422P14BE,
|
||||
PixelFormat::YUV422P14LE => AV_PIX_FMT_YUV422P14LE,
|
||||
PixelFormat::YUV444P12BE => AV_PIX_FMT_YUV444P12BE,
|
||||
PixelFormat::YUV444P12LE => AV_PIX_FMT_YUV444P12LE,
|
||||
PixelFormat::YUV444P14BE => AV_PIX_FMT_YUV444P14BE,
|
||||
PixelFormat::YUV444P14LE => AV_PIX_FMT_YUV444P14LE,
|
||||
PixelFormat::GBRP12BE => AV_PIX_FMT_GBRP12BE,
|
||||
PixelFormat::GBRP12LE => AV_PIX_FMT_GBRP12LE,
|
||||
PixelFormat::GBRP14BE => AV_PIX_FMT_GBRP14BE,
|
||||
PixelFormat::GBRP14LE => AV_PIX_FMT_GBRP14LE,
|
||||
PixelFormat::GBRAP => AV_PIX_FMT_GBRAP,
|
||||
PixelFormat::GBRAP16BE => AV_PIX_FMT_GBRAP16BE,
|
||||
PixelFormat::GBRAP16LE => AV_PIX_FMT_GBRAP16LE,
|
||||
PixelFormat::YUVJ411P => AV_PIX_FMT_YUVJ411P,
|
||||
|
||||
PixelFormat::BAYER_BGGR8 => AV_PIX_FMT_BAYER_BGGR8,
|
||||
PixelFormat::BAYER_RGGB8 => AV_PIX_FMT_BAYER_RGGB8,
|
||||
PixelFormat::BAYER_GBRG8 => AV_PIX_FMT_BAYER_GBRG8,
|
||||
PixelFormat::BAYER_GRBG8 => AV_PIX_FMT_BAYER_GRBG8,
|
||||
PixelFormat::BAYER_BGGR16LE => AV_PIX_FMT_BAYER_BGGR16LE,
|
||||
PixelFormat::BAYER_BGGR16BE => AV_PIX_FMT_BAYER_BGGR16BE,
|
||||
PixelFormat::BAYER_RGGB16LE => AV_PIX_FMT_BAYER_RGGB16LE,
|
||||
PixelFormat::BAYER_RGGB16BE => AV_PIX_FMT_BAYER_RGGB16BE,
|
||||
PixelFormat::BAYER_GBRG16LE => AV_PIX_FMT_BAYER_GBRG16LE,
|
||||
PixelFormat::BAYER_GBRG16BE => AV_PIX_FMT_BAYER_GBRG16BE,
|
||||
PixelFormat::BAYER_GRBG16LE => AV_PIX_FMT_BAYER_GRBG16LE,
|
||||
PixelFormat::BAYER_GRBG16BE => AV_PIX_FMT_BAYER_GRBG16BE,
|
||||
|
||||
// --- defaults
|
||||
PixelFormat::XVMC => AV_PIX_FMT_XVMC,
|
||||
PixelFormat::Y400A => AV_PIX_FMT_Y400A,
|
||||
PixelFormat::GRAY8A => AV_PIX_FMT_GRAY8A,
|
||||
PixelFormat::GBR24P => AV_PIX_FMT_GBR24P,
|
||||
|
||||
PixelFormat::RGB32 => AV_PIX_FMT_RGB32,
|
||||
PixelFormat::RGB32_1 => AV_PIX_FMT_RGB32_1,
|
||||
PixelFormat::BGR32 => AV_PIX_FMT_BGR32,
|
||||
PixelFormat::BGR32_1 => AV_PIX_FMT_BGR32_1,
|
||||
PixelFormat::ZRGB32 => AV_PIX_FMT_0RGB32,
|
||||
PixelFormat::ZBGR32 => AV_PIX_FMT_0BGR32,
|
||||
|
||||
PixelFormat::GRAY16 => AV_PIX_FMT_GRAY16,
|
||||
PixelFormat::YA16 => AV_PIX_FMT_YA16,
|
||||
PixelFormat::RGB48 => AV_PIX_FMT_RGB48,
|
||||
PixelFormat::RGB565 => AV_PIX_FMT_RGB565,
|
||||
PixelFormat::RGB555 => AV_PIX_FMT_RGB555,
|
||||
PixelFormat::RGB444 => AV_PIX_FMT_RGB444,
|
||||
PixelFormat::BGR48 => AV_PIX_FMT_BGR48,
|
||||
PixelFormat::BGR565 => AV_PIX_FMT_BGR565,
|
||||
PixelFormat::BGR555 => AV_PIX_FMT_BGR555,
|
||||
PixelFormat::BGR444 => AV_PIX_FMT_BGR444,
|
||||
|
||||
PixelFormat::YUV420P9 => AV_PIX_FMT_YUV420P9,
|
||||
PixelFormat::YUV422P9 => AV_PIX_FMT_YUV422P9,
|
||||
PixelFormat::YUV444P9 => AV_PIX_FMT_YUV444P9,
|
||||
PixelFormat::YUV420P10 => AV_PIX_FMT_YUV420P10,
|
||||
PixelFormat::YUV422P10 => AV_PIX_FMT_YUV422P10,
|
||||
PixelFormat::YUV444P10 => AV_PIX_FMT_YUV444P10,
|
||||
PixelFormat::YUV420P12 => AV_PIX_FMT_YUV420P12,
|
||||
PixelFormat::YUV422P12 => AV_PIX_FMT_YUV422P12,
|
||||
PixelFormat::YUV444P12 => AV_PIX_FMT_YUV444P12,
|
||||
PixelFormat::YUV420P14 => AV_PIX_FMT_YUV420P14,
|
||||
PixelFormat::YUV422P14 => AV_PIX_FMT_YUV422P14,
|
||||
PixelFormat::YUV444P14 => AV_PIX_FMT_YUV444P14,
|
||||
PixelFormat::YUV420P16 => AV_PIX_FMT_YUV420P16,
|
||||
PixelFormat::YUV422P16 => AV_PIX_FMT_YUV422P16,
|
||||
PixelFormat::YUV444P16 => AV_PIX_FMT_YUV444P16,
|
||||
|
||||
PixelFormat::GBRP9 => AV_PIX_FMT_GBRP9,
|
||||
PixelFormat::GBRP10 => AV_PIX_FMT_GBRP10,
|
||||
PixelFormat::GBRP12 => AV_PIX_FMT_GBRP12,
|
||||
PixelFormat::GBRP14 => AV_PIX_FMT_GBRP14,
|
||||
PixelFormat::GBRP16 => AV_PIX_FMT_GBRP16,
|
||||
PixelFormat::GBRAP16 => AV_PIX_FMT_GBRAP16,
|
||||
|
||||
PixelFormat::BAYER_BGGR16 => AV_PIX_FMT_BAYER_BGGR16,
|
||||
PixelFormat::BAYER_RGGB16 => AV_PIX_FMT_BAYER_RGGB16,
|
||||
PixelFormat::BAYER_GBRG16 => AV_PIX_FMT_BAYER_GBRG16,
|
||||
PixelFormat::BAYER_GRBG16 => AV_PIX_FMT_BAYER_GRBG16,
|
||||
|
||||
PixelFormat::YUVA420P9 => AV_PIX_FMT_YUVA420P9,
|
||||
PixelFormat::YUVA422P9 => AV_PIX_FMT_YUVA422P9,
|
||||
PixelFormat::YUVA444P9 => AV_PIX_FMT_YUVA444P9,
|
||||
PixelFormat::YUVA420P10 => AV_PIX_FMT_YUVA420P10,
|
||||
PixelFormat::YUVA422P10 => AV_PIX_FMT_YUVA422P10,
|
||||
PixelFormat::YUVA444P10 => AV_PIX_FMT_YUVA444P10,
|
||||
PixelFormat::YUVA420P16 => AV_PIX_FMT_YUVA420P16,
|
||||
PixelFormat::YUVA422P16 => AV_PIX_FMT_YUVA422P16,
|
||||
PixelFormat::YUVA444P16 => AV_PIX_FMT_YUVA444P16,
|
||||
|
||||
PixelFormat::XYZ12 => AV_PIX_FMT_XYZ12,
|
||||
PixelFormat::NV20 => AV_PIX_FMT_NV20,
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user