Merge pull request #60 from animeavi/master

Initial ffmpeg 4.4 support
This commit is contained in:
Polochon-street 2021-07-06 18:12:39 +02:00 committed by GitHub
commit 67fded37d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 127 additions and 0 deletions

View File

@ -566,6 +566,35 @@ pub enum Id {
HCA,
#[cfg(feature = "ffmpeg_4_3")]
EPG,
#[cfg(feature = "ffmpeg_4_4")]
AVS3,
#[cfg(feature = "ffmpeg_4_4")]
PGX,
#[cfg(feature = "ffmpeg_4_4")]
MSP2,
#[cfg(feature = "ffmpeg_4_4")]
VVC,
#[cfg(feature = "ffmpeg_4_4")]
MOBICLIP,
#[cfg(feature = "ffmpeg_4_4")]
PHOTOCD,
#[cfg(feature = "ffmpeg_4_4")]
ARGO,
#[cfg(feature = "ffmpeg_4_4")]
CRI,
#[cfg(feature = "ffmpeg_4_4")]
IPU,
#[cfg(feature = "ffmpeg_4_4")]
SIMBIOSIS_IMX,
#[cfg(feature = "ffmpeg_4_4")]
SGA_VIDEO,
#[cfg(feature = "ffmpeg_4_4")]
PCM_SGA,
#[cfg(feature = "ffmpeg_4_4")]
ADPCM_IMA_MOFLEX,
#[cfg(feature = "ffmpeg_4_4")]
FASTAUDIO
}
impl Id {
@ -1139,6 +1168,35 @@ impl From<AVCodecID> for Id {
AV_CODEC_ID_HCA => Id::HCA,
#[cfg(feature = "ffmpeg_4_3")]
AV_CODEC_ID_EPG => Id::EPG,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_PGX => Id::PGX,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_AVS3 => Id::AVS3,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_MSP2 => Id::MSP2,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_VVC => Id::VVC,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_MOBICLIP => Id::MOBICLIP,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_PHOTOCD => Id::PHOTOCD,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_IPU => Id::IPU,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_ARGO => Id::ARGO,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_CRI => Id::CRI,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_SIMBIOSIS_IMX => Id::SIMBIOSIS_IMX,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_SGA_VIDEO => Id::SGA_VIDEO,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_PCM_SGA => Id::PCM_SGA,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_ADPCM_IMA_MOFLEX => Id::ADPCM_IMA_MOFLEX,
#[cfg(feature = "ffmpeg_4_4")]
AV_CODEC_ID_FASTAUDIO => Id::FASTAUDIO
}
}
}
@ -1704,6 +1762,35 @@ impl Into<AVCodecID> for Id {
Id::HCA => AV_CODEC_ID_HCA,
#[cfg(feature = "ffmpeg_4_3")]
Id::EPG => AV_CODEC_ID_EPG,
#[cfg(feature = "ffmpeg_4_4")]
Id::PGX => AV_CODEC_ID_PGX,
#[cfg(feature = "ffmpeg_4_4")]
Id::AVS3 => AV_CODEC_ID_AVS3,
#[cfg(feature = "ffmpeg_4_4")]
Id::MSP2 => AV_CODEC_ID_MSP2,
#[cfg(feature = "ffmpeg_4_4")]
Id::VVC => AV_CODEC_ID_VVC,
#[cfg(feature = "ffmpeg_4_4")]
Id::MOBICLIP => AV_CODEC_ID_MOBICLIP,
#[cfg(feature = "ffmpeg_4_4")]
Id::PHOTOCD => AV_CODEC_ID_PHOTOCD,
#[cfg(feature = "ffmpeg_4_4")]
Id::IPU => AV_CODEC_ID_IPU,
#[cfg(feature = "ffmpeg_4_4")]
Id::ARGO => AV_CODEC_ID_ARGO,
#[cfg(feature = "ffmpeg_4_4")]
Id::CRI => AV_CODEC_ID_CRI,
#[cfg(feature = "ffmpeg_4_4")]
Id::SIMBIOSIS_IMX => AV_CODEC_ID_SIMBIOSIS_IMX,
#[cfg(feature = "ffmpeg_4_4")]
Id::SGA_VIDEO => AV_CODEC_ID_SGA_VIDEO,
#[cfg(feature = "ffmpeg_4_4")]
Id::PCM_SGA => AV_CODEC_ID_PCM_SGA,
#[cfg(feature = "ffmpeg_4_4")]
Id::ADPCM_IMA_MOFLEX => AV_CODEC_ID_ADPCM_IMA_MOFLEX,
#[cfg(feature = "ffmpeg_4_4")]
Id::FASTAUDIO => AV_CODEC_ID_FASTAUDIO
}
}
}

View File

@ -48,6 +48,9 @@ pub enum Type {
ICC_PROFILE,
#[cfg(feature = "ffmpeg_4_3")]
DOVI_CONF,
#[cfg(feature = "ffmpeg_4_4")]
S12M_TIMECODE
}
impl From<AVPacketSideDataType> for Type {
@ -94,6 +97,9 @@ impl From<AVPacketSideDataType> for Type {
AV_PKT_DATA_ICC_PROFILE => Type::ICC_PROFILE,
#[cfg(feature = "ffmpeg_4_3")]
AV_PKT_DATA_DOVI_CONF => Type::DOVI_CONF,
#[cfg(feature = "ffmpeg_4_4")]
AV_PKT_DATA_S12M_TIMECODE => Type::S12M_TIMECODE
}
}
}
@ -142,6 +148,9 @@ impl Into<AVPacketSideDataType> for Type {
Type::ICC_PROFILE => AV_PKT_DATA_ICC_PROFILE,
#[cfg(feature = "ffmpeg_4_3")]
Type::DOVI_CONF => AV_PKT_DATA_DOVI_CONF,
#[cfg(feature = "ffmpeg_4_4")]
Type::S12M_TIMECODE => AV_PKT_DATA_S12M_TIMECODE
}
}
}

View File

@ -341,6 +341,12 @@ pub enum Pixel {
Y210BE,
#[cfg(feature = "ffmpeg_4_3")]
Y210LE,
#[cfg(feature = "ffmpeg_4_4")]
X2RGB10LE,
#[cfg(feature = "ffmpeg_4_4")]
X2RGB10BE,
#[cfg(feature = "rpi")]
RPI,
#[cfg(feature = "rpi")]
@ -675,6 +681,11 @@ impl From<AVPixelFormat> for Pixel {
#[cfg(feature = "ffmpeg_4_3")]
AV_PIX_FMT_Y210LE => Pixel::Y210LE,
#[cfg(feature = "ffmpeg_4_4")]
AV_PIX_FMT_X2RGB10LE => Pixel::X2RGB10LE,
#[cfg(feature = "ffmpeg_4_4")]
AV_PIX_FMT_X2RGB10BE => Pixel::X2RGB10BE,
#[cfg(feature = "rpi")]
AV_PIX_FMT_RPI => Pixel::RPI,
#[cfg(feature = "rpi")]
@ -1029,6 +1040,11 @@ impl Into<AVPixelFormat> for Pixel {
#[cfg(feature = "ffmpeg_4_3")]
Pixel::Y210LE => AV_PIX_FMT_Y210LE,
#[cfg(feature = "ffmpeg_4_4")]
Pixel::X2RGB10LE => AV_PIX_FMT_X2RGB10LE,
#[cfg(feature = "ffmpeg_4_4")]
Pixel::X2RGB10BE => AV_PIX_FMT_X2RGB10BE,
#[cfg(feature = "rpi")]
Pixel::RPI => AV_PIX_FMT_RPI,
#[cfg(feature = "rpi")]

View File

@ -43,6 +43,11 @@ pub enum Type {
#[cfg(feature = "ffmpeg_4_3")]
VIDEO_ENC_PARAMS,
#[cfg(feature = "ffmpeg_4_4")]
SEI_UNREGISTERED,
#[cfg(feature = "ffmpeg_4_4")]
FILM_GRAIN_PARAMS
}
impl Type {
@ -91,6 +96,11 @@ impl From<AVFrameSideDataType> for Type {
#[cfg(feature = "ffmpeg_4_3")]
AV_FRAME_DATA_VIDEO_ENC_PARAMS => Type::VIDEO_ENC_PARAMS,
#[cfg(feature = "ffmpeg_4_4")]
AV_FRAME_DATA_SEI_UNREGISTERED => Type::SEI_UNREGISTERED,
#[cfg(feature = "ffmpeg_4_4")]
AV_FRAME_DATA_FILM_GRAIN_PARAMS => Type::FILM_GRAIN_PARAMS
}
}
}
@ -132,6 +142,11 @@ impl Into<AVFrameSideDataType> for Type {
#[cfg(feature = "ffmpeg_4_3")]
Type::VIDEO_ENC_PARAMS => AV_FRAME_DATA_VIDEO_ENC_PARAMS,
#[cfg(feature = "ffmpeg_4_4")]
Type::SEI_UNREGISTERED => AV_FRAME_DATA_SEI_UNREGISTERED,
#[cfg(feature = "ffmpeg_4_4")]
Type::FILM_GRAIN_PARAMS => AV_FRAME_DATA_FILM_GRAIN_PARAMS
}
}
}