*: use latest ffmpeg-sys using bindgen
* Update bindings to newest ffmpeg version for new ffmpeg-sys, which is mostly generated by bindgen * Bring back removed feature flags * Fix whitespace formating * Remove prepended enum names to enum variants * Remove unneeded allows
This commit is contained in:
@ -4,6 +4,7 @@ use std::fmt;
|
||||
use std::str::{FromStr, from_utf8_unchecked};
|
||||
|
||||
use ffi::*;
|
||||
use ffi::AVPixelFormat::*;
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum Pixel {
|
||||
@ -122,9 +123,6 @@ pub enum Pixel {
|
||||
GBRP16BE,
|
||||
GBRP16LE,
|
||||
|
||||
YUVA422P_LIBAV,
|
||||
YUVA444P_LIBAV,
|
||||
|
||||
YUVA420P9BE,
|
||||
YUVA420P9LE,
|
||||
YUVA422P9BE,
|
||||
@ -152,10 +150,10 @@ pub enum Pixel {
|
||||
NV20LE,
|
||||
NV20BE,
|
||||
|
||||
RGBA64BE_LIBAV,
|
||||
RGBA64LE_LIBAV,
|
||||
BGRA64BE_LIBAV,
|
||||
BGRA64LE_LIBAV,
|
||||
RGBA64BE,
|
||||
RGBA64LE,
|
||||
BGRA64BE,
|
||||
BGRA64LE,
|
||||
|
||||
YVYU422,
|
||||
|
||||
@ -164,9 +162,6 @@ pub enum Pixel {
|
||||
YA16BE,
|
||||
YA16LE,
|
||||
|
||||
GBRAP_LIBAV,
|
||||
GBRAP16BE_LIBAV,
|
||||
GBRAP16LE_LIBAV,
|
||||
QSV,
|
||||
MMAL,
|
||||
|
||||
@ -292,6 +287,20 @@ pub enum Pixel {
|
||||
XYZ12,
|
||||
NV20,
|
||||
AYUV64,
|
||||
|
||||
P010LE,
|
||||
P010BE,
|
||||
GBRAP12BE,
|
||||
GBRAP12LE,
|
||||
GBRAP10LE,
|
||||
GBRAP10BE,
|
||||
MEDIACODEC,
|
||||
GRAY12BE,
|
||||
GRAY12LE,
|
||||
GRAY10BE,
|
||||
GRAY10LE,
|
||||
P016LE,
|
||||
P016BE,
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, PartialEq, Eq)]
|
||||
@ -418,9 +427,6 @@ impl From<AVPixelFormat> for Pixel {
|
||||
#[cfg(feature = "ff_api_vaapi")]
|
||||
AV_PIX_FMT_VAAPI_VLD => Pixel::VAAPI_VLD,
|
||||
|
||||
#[cfg(not(feature = "ff_api_vaapi"))]
|
||||
AV_PIX_FMT_VAAPI => Pixel::VAAPI,
|
||||
|
||||
AV_PIX_FMT_YUV420P16LE => Pixel::YUV420P16LE,
|
||||
AV_PIX_FMT_YUV420P16BE => Pixel::YUV420P16BE,
|
||||
AV_PIX_FMT_YUV422P16LE => Pixel::YUV422P16LE,
|
||||
@ -462,9 +468,6 @@ impl From<AVPixelFormat> for Pixel {
|
||||
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,
|
||||
@ -492,10 +495,10 @@ impl From<AVPixelFormat> for Pixel {
|
||||
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_RGBA64BE => Pixel::RGBA64BE,
|
||||
AV_PIX_FMT_RGBA64LE => Pixel::RGBA64LE,
|
||||
AV_PIX_FMT_BGRA64BE => Pixel::BGRA64BE,
|
||||
AV_PIX_FMT_BGRA64LE => Pixel::BGRA64LE,
|
||||
|
||||
AV_PIX_FMT_YVYU422 => Pixel::YVYU422,
|
||||
|
||||
@ -504,9 +507,6 @@ impl From<AVPixelFormat> for Pixel {
|
||||
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_MMAL => Pixel::MMAL,
|
||||
|
||||
@ -564,7 +564,21 @@ impl From<AVPixelFormat> for Pixel {
|
||||
|
||||
AV_PIX_FMT_VIDEOTOOLBOX => Pixel::VIDEOTOOLBOX,
|
||||
|
||||
AV_PIX_FMT_NB => Pixel::None
|
||||
AV_PIX_FMT_P010LE => Pixel::P010LE,
|
||||
AV_PIX_FMT_P010BE => Pixel::P010BE,
|
||||
AV_PIX_FMT_GBRAP12BE => Pixel::GBRAP12BE,
|
||||
AV_PIX_FMT_GBRAP12LE => Pixel::GBRAP12LE,
|
||||
AV_PIX_FMT_GBRAP10LE => Pixel::GBRAP10LE,
|
||||
AV_PIX_FMT_GBRAP10BE => Pixel::GBRAP10BE,
|
||||
AV_PIX_FMT_MEDIACODEC => Pixel::MEDIACODEC,
|
||||
AV_PIX_FMT_GRAY12BE => Pixel::GRAY12BE,
|
||||
AV_PIX_FMT_GRAY12LE => Pixel::GRAY12LE,
|
||||
AV_PIX_FMT_GRAY10BE => Pixel::GRAY10BE,
|
||||
AV_PIX_FMT_GRAY10LE => Pixel::GRAY10LE,
|
||||
AV_PIX_FMT_P016LE => Pixel::P016LE,
|
||||
AV_PIX_FMT_P016BE => Pixel::P016BE,
|
||||
|
||||
AV_PIX_FMT_NB => Pixel::None,
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -688,9 +702,6 @@ impl Into<AVPixelFormat> for Pixel {
|
||||
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,
|
||||
@ -718,10 +729,10 @@ impl Into<AVPixelFormat> for Pixel {
|
||||
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::RGBA64BE => AV_PIX_FMT_RGBA64BE,
|
||||
Pixel::RGBA64LE => AV_PIX_FMT_RGBA64LE,
|
||||
Pixel::BGRA64BE => AV_PIX_FMT_BGRA64BE,
|
||||
Pixel::BGRA64LE => AV_PIX_FMT_BGRA64LE,
|
||||
|
||||
Pixel::YVYU422 => AV_PIX_FMT_YVYU422,
|
||||
|
||||
@ -730,9 +741,6 @@ impl Into<AVPixelFormat> for Pixel {
|
||||
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::MMAL => AV_PIX_FMT_MMAL,
|
||||
|
||||
@ -791,7 +799,6 @@ impl Into<AVPixelFormat> for Pixel {
|
||||
Pixel::VIDEOTOOLBOX => AV_PIX_FMT_VIDEOTOOLBOX,
|
||||
|
||||
// --- defaults
|
||||
#[cfg(feature = "ff_api_xvmc")]
|
||||
Pixel::XVMC => AV_PIX_FMT_XVMC,
|
||||
Pixel::Y400A => AV_PIX_FMT_Y400A,
|
||||
Pixel::GRAY8A => AV_PIX_FMT_GRAY8A,
|
||||
@ -858,6 +865,20 @@ impl Into<AVPixelFormat> for Pixel {
|
||||
Pixel::XYZ12 => AV_PIX_FMT_XYZ12,
|
||||
Pixel::NV20 => AV_PIX_FMT_NV20,
|
||||
Pixel::AYUV64 => AV_PIX_FMT_AYUV64,
|
||||
|
||||
Pixel::P010LE => AV_PIX_FMT_P010LE,
|
||||
Pixel::P010BE => AV_PIX_FMT_P010BE,
|
||||
Pixel::GBRAP12BE => AV_PIX_FMT_GBRAP12BE,
|
||||
Pixel::GBRAP12LE => AV_PIX_FMT_GBRAP12LE,
|
||||
Pixel::GBRAP10LE => AV_PIX_FMT_GBRAP10LE,
|
||||
Pixel::GBRAP10BE => AV_PIX_FMT_GBRAP10BE,
|
||||
Pixel::MEDIACODEC => AV_PIX_FMT_MEDIACODEC,
|
||||
Pixel::GRAY12BE => AV_PIX_FMT_GRAY12BE,
|
||||
Pixel::GRAY12LE => AV_PIX_FMT_GRAY12LE,
|
||||
Pixel::GRAY10BE => AV_PIX_FMT_GRAY10BE,
|
||||
Pixel::GRAY10LE => AV_PIX_FMT_GRAY10LE,
|
||||
Pixel::P016LE => AV_PIX_FMT_P016LE,
|
||||
Pixel::P016BE => AV_PIX_FMT_P016BE,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ use std::mem;
|
||||
|
||||
use libc::{c_int, uint8_t};
|
||||
use ffi::*;
|
||||
use ffi::AVSampleFormat::*;
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum Sample {
|
||||
@ -15,6 +16,7 @@ pub enum Sample {
|
||||
U8(Type),
|
||||
I16(Type),
|
||||
I32(Type),
|
||||
I64(Type),
|
||||
F32(Type),
|
||||
F64(Type),
|
||||
}
|
||||
@ -81,12 +83,14 @@ impl From<AVSampleFormat> for Sample {
|
||||
AV_SAMPLE_FMT_U8 => Sample::U8(Type::Packed),
|
||||
AV_SAMPLE_FMT_S16 => Sample::I16(Type::Packed),
|
||||
AV_SAMPLE_FMT_S32 => Sample::I32(Type::Packed),
|
||||
AV_SAMPLE_FMT_S64 => Sample::I64(Type::Packed),
|
||||
AV_SAMPLE_FMT_FLT => Sample::F32(Type::Packed),
|
||||
AV_SAMPLE_FMT_DBL => Sample::F64(Type::Packed),
|
||||
|
||||
AV_SAMPLE_FMT_U8P => Sample::U8(Type::Planar),
|
||||
AV_SAMPLE_FMT_S16P => Sample::I16(Type::Planar),
|
||||
AV_SAMPLE_FMT_S32P => Sample::I32(Type::Planar),
|
||||
AV_SAMPLE_FMT_S64P => Sample::I64(Type::Planar),
|
||||
AV_SAMPLE_FMT_FLTP => Sample::F32(Type::Planar),
|
||||
AV_SAMPLE_FMT_DBLP => Sample::F64(Type::Planar),
|
||||
|
||||
@ -115,12 +119,14 @@ impl Into<AVSampleFormat> for Sample {
|
||||
Sample::U8(Type::Packed) => AV_SAMPLE_FMT_U8,
|
||||
Sample::I16(Type::Packed) => AV_SAMPLE_FMT_S16,
|
||||
Sample::I32(Type::Packed) => AV_SAMPLE_FMT_S32,
|
||||
Sample::I64(Type::Packed) => AV_SAMPLE_FMT_S64,
|
||||
Sample::F32(Type::Packed) => AV_SAMPLE_FMT_FLT,
|
||||
Sample::F64(Type::Packed) => AV_SAMPLE_FMT_DBL,
|
||||
|
||||
Sample::U8(Type::Planar) => AV_SAMPLE_FMT_U8P,
|
||||
Sample::I16(Type::Planar) => AV_SAMPLE_FMT_S16P,
|
||||
Sample::I32(Type::Planar) => AV_SAMPLE_FMT_S32P,
|
||||
Sample::I64(Type::Planar) => AV_SAMPLE_FMT_S64P,
|
||||
Sample::F32(Type::Planar) => AV_SAMPLE_FMT_FLTP,
|
||||
Sample::F64(Type::Planar) => AV_SAMPLE_FMT_DBLP,
|
||||
}
|
||||
|
Reference in New Issue
Block a user