Fix duplicate enum variant issues for FFmpeg 3.4
This commit is contained in:
parent
3df1a1c209
commit
036c0e5b42
@ -298,8 +298,6 @@ pub enum Id {
|
|||||||
ADPCM_G722,
|
ADPCM_G722,
|
||||||
ADPCM_IMA_APC,
|
ADPCM_IMA_APC,
|
||||||
ADPCM_VIMA,
|
ADPCM_VIMA,
|
||||||
#[cfg(not(feature = "ffmpeg4"))]
|
|
||||||
VIMA,
|
|
||||||
|
|
||||||
ADPCM_AFC,
|
ADPCM_AFC,
|
||||||
ADPCM_IMA_OKI,
|
ADPCM_IMA_OKI,
|
||||||
@ -530,6 +528,9 @@ pub enum Id {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Id {
|
impl Id {
|
||||||
|
#[cfg(feature = "ff_api_vima_decoder")]
|
||||||
|
pub const VIMA: Id = Id::ADPCM_VIMA;
|
||||||
|
|
||||||
pub fn medium(&self) -> media::Type {
|
pub fn medium(&self) -> media::Type {
|
||||||
unsafe { media::Type::from(avcodec_get_type((*self).into())) }
|
unsafe { media::Type::from(avcodec_get_type((*self).into())) }
|
||||||
}
|
}
|
||||||
@ -1353,8 +1354,6 @@ impl Into<AVCodecID> for Id {
|
|||||||
Id::ADPCM_G722 => AV_CODEC_ID_ADPCM_G722,
|
Id::ADPCM_G722 => AV_CODEC_ID_ADPCM_G722,
|
||||||
Id::ADPCM_IMA_APC => AV_CODEC_ID_ADPCM_IMA_APC,
|
Id::ADPCM_IMA_APC => AV_CODEC_ID_ADPCM_IMA_APC,
|
||||||
Id::ADPCM_VIMA => AV_CODEC_ID_ADPCM_VIMA,
|
Id::ADPCM_VIMA => AV_CODEC_ID_ADPCM_VIMA,
|
||||||
#[cfg(not(feature = "ffmpeg4"))]
|
|
||||||
Id::VIMA => AV_CODEC_ID_VIMA,
|
|
||||||
|
|
||||||
Id::ADPCM_AFC => AV_CODEC_ID_ADPCM_AFC,
|
Id::ADPCM_AFC => AV_CODEC_ID_ADPCM_AFC,
|
||||||
Id::ADPCM_IMA_OKI => AV_CODEC_ID_ADPCM_IMA_OKI,
|
Id::ADPCM_IMA_OKI => AV_CODEC_ID_ADPCM_IMA_OKI,
|
||||||
|
@ -222,6 +222,7 @@ pub enum Pixel {
|
|||||||
VIDEOTOOLBOX,
|
VIDEOTOOLBOX,
|
||||||
|
|
||||||
// --- defaults
|
// --- defaults
|
||||||
|
#[cfg(not(feature = "ff_api_xvmc"))]
|
||||||
XVMC,
|
XVMC,
|
||||||
|
|
||||||
RGB32,
|
RGB32,
|
||||||
@ -347,6 +348,8 @@ impl Pixel {
|
|||||||
pub const Y400A: Pixel = Pixel::YA8;
|
pub const Y400A: Pixel = Pixel::YA8;
|
||||||
pub const GRAY8A: Pixel = Pixel::YA8;
|
pub const GRAY8A: Pixel = Pixel::YA8;
|
||||||
pub const GBR24P: Pixel = Pixel::GBRP;
|
pub const GBR24P: Pixel = Pixel::GBRP;
|
||||||
|
#[cfg(feature = "ff_api_xvmc")]
|
||||||
|
pub const XVMC: Pixel = Pixel::XVMC_MPEG2_IDCT;
|
||||||
|
|
||||||
pub fn descriptor(self) -> Option<Descriptor> {
|
pub fn descriptor(self) -> Option<Descriptor> {
|
||||||
unsafe {
|
unsafe {
|
||||||
@ -400,6 +403,7 @@ impl From<AVPixelFormat> for Pixel {
|
|||||||
AV_PIX_FMT_YUVJ420P => Pixel::YUVJ420P,
|
AV_PIX_FMT_YUVJ420P => Pixel::YUVJ420P,
|
||||||
AV_PIX_FMT_YUVJ422P => Pixel::YUVJ422P,
|
AV_PIX_FMT_YUVJ422P => Pixel::YUVJ422P,
|
||||||
AV_PIX_FMT_YUVJ444P => Pixel::YUVJ444P,
|
AV_PIX_FMT_YUVJ444P => Pixel::YUVJ444P,
|
||||||
|
#[cfg(not(feature = "ff_api_xvmc"))]
|
||||||
AV_PIX_FMT_XVMC => Pixel::XVMC,
|
AV_PIX_FMT_XVMC => Pixel::XVMC,
|
||||||
#[cfg(feature = "ff_api_xvmc")]
|
#[cfg(feature = "ff_api_xvmc")]
|
||||||
AV_PIX_FMT_XVMC_MPEG2_MC => Pixel::XVMC_MPEG2_MC,
|
AV_PIX_FMT_XVMC_MPEG2_MC => Pixel::XVMC_MPEG2_MC,
|
||||||
@ -866,6 +870,7 @@ impl Into<AVPixelFormat> for Pixel {
|
|||||||
Pixel::VIDEOTOOLBOX => AV_PIX_FMT_VIDEOTOOLBOX,
|
Pixel::VIDEOTOOLBOX => AV_PIX_FMT_VIDEOTOOLBOX,
|
||||||
|
|
||||||
// --- defaults
|
// --- defaults
|
||||||
|
#[cfg(not(feature = "ff_api_xvmc"))]
|
||||||
Pixel::XVMC => AV_PIX_FMT_XVMC,
|
Pixel::XVMC => AV_PIX_FMT_XVMC,
|
||||||
|
|
||||||
Pixel::RGB32 => AV_PIX_FMT_RGB32,
|
Pixel::RGB32 => AV_PIX_FMT_RGB32,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user