*: update to 2.7

This commit is contained in:
meh
2023-05-24 21:49:22 +02:00
committed by Till Höppner
parent e2327f1947
commit 0a8843dc37
12 changed files with 258 additions and 176 deletions
+15 -5
View File
@@ -193,6 +193,8 @@ pub enum AVCodecID {
AV_CODEC_ID_MVC1_DEPRECATED,
AV_CODEC_ID_MVC2_DEPRECATED,
AV_CODEC_ID_HQX,
AV_CODEC_ID_TDSC,
AV_CODEC_ID_HQ_HQA,
AV_CODEC_ID_BRENDER_PIX = MKBETAG!(b'B', b'P', b'I', b'X'),
AV_CODEC_ID_Y41P = MKBETAG!(b'Y', b'4', b'1', b'P'),
@@ -823,11 +825,12 @@ pub const FF_PROFILE_AAC_ELD: c_int = 38;
pub const FF_PROFILE_MPEG2_AAC_LOW: c_int = 128;
pub const FF_PROFILE_MPEG2_AAC_HE: c_int = 131;
pub const FF_PROFILE_DTS: c_int = 20;
pub const FF_PROFILE_DTS_ES: c_int = 30;
pub const FF_PROFILE_DTS_96_24: c_int = 40;
pub const FF_PROFILE_DTS_HD_HRA: c_int = 50;
pub const FF_PROFILE_DTS_HD_MA: c_int = 60;
pub const FF_PROFILE_DTS: c_int = 20;
pub const FF_PROFILE_DTS_ES: c_int = 30;
pub const FF_PROFILE_DTS_96_24: c_int = 40;
pub const FF_PROFILE_DTS_HD_HRA: c_int = 50;
pub const FF_PROFILE_DTS_HD_MA: c_int = 60;
pub const FF_PROFILE_DTS_EXPRESS: c_int = 70;
pub const FF_PROFILE_MPEG2_422: c_int = 0;
pub const FF_PROFILE_MPEG2_HIGH: c_int = 1;
@@ -886,6 +889,11 @@ pub const FF_PROFILE_HEVC_MAIN_10: c_int = 2;
pub const FF_PROFILE_HEVC_MAIN_STILL_PICTURE: c_int = 3;
pub const FF_PROFILE_HEVC_REXT: c_int = 4;
pub const FF_PROFILE_VP9_0: c_int = 0;
pub const FF_PROFILE_VP9_1: c_int = 1;
pub const FF_PROFILE_VP9_2: c_int = 2;
pub const FF_PROFILE_VP9_3: c_int = 3;
pub const FF_LEVEL_UNKNOWN: c_int = -99;
pub const FF_SUB_CHARENC_MODE_DO_NOTHING: c_int = -1;
@@ -1139,6 +1147,7 @@ pub struct AVCodec {
pub decode: extern fn(*mut AVCodecContext, *mut c_void, *mut c_int, *mut AVPacket) -> c_int,
pub close: extern fn(*mut AVCodecContext) -> c_int,
pub flush: extern fn(*mut AVCodecContext),
pub caps_internal: c_int,
}
pub const AV_HWACCEL_FLAG_IGNORE_LEVEL: c_int = 1 << 0;
@@ -1364,6 +1373,7 @@ extern {
pub fn av_packet_get_side_data(pkt: *mut AVPacket, kind: AVPacketSideDataType, size: *mut c_int) -> *mut uint8_t;
pub fn av_packet_merge_side_data(pkt: *mut AVPacket) -> c_int;
pub fn av_packet_split_side_data(pkt: *mut AVPacket) -> c_int;
pub fn av_packet_side_data_name(kind: AVPacketSideDataType) -> *const c_char;
pub fn av_packet_pack_dictionary(dict: *mut AVDictionary, size: *mut c_int) -> *mut uint8_t;
pub fn av_packet_unpack_dictionary(data: *const uint8_t, size: c_int, dict: *mut *mut AVDictionary) -> c_int;
pub fn av_packet_free_side_data(pkt: *mut AVPacket);
+8
View File
@@ -230,6 +230,7 @@ pub struct AVStream {
pub request_probe: c_int,
pub skip_to_keyframe: c_int,
pub skip_samples: c_int,
pub start_skip_samples: int64_t,
pub first_discard_sample: int64_t,
pub last_discard_sample: int64_t,
pub nb_decoded_frames: c_int,
@@ -281,6 +282,7 @@ pub struct AVChapter {
}
pub type av_format_control_message = extern fn(s: *mut AVFormatContext, kind: c_int, data: *mut c_void, data_size: size_t) -> c_int;
pub type AVOpenCallback = extern fn(*mut AVFormatContext, *mut *mut AVIOContext, *const c_char, c_int, *const AVIOInterruptCB, *mut *mut AVDictionary) -> c_int;
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
#[repr(C)]
@@ -391,6 +393,8 @@ pub struct AVFormatContext {
pub dump_separator: *mut uint8_t,
pub data_codec_id: AVCodecID,
pub open_cb: extern fn(*mut AVFormatContext, *mut *mut AVIOContext, *const c_char, c_int, *const AVIOInterruptCB, *mut *mut AVDictionary) -> c_int,
}
pub const AVFMT_FLAG_GENPTS: c_int = 0x0001;
@@ -408,6 +412,7 @@ pub const AVFMT_FLAG_MP4A_LATM: c_int = 0x8000;
pub const AVFMT_FLAG_SORT_DTS: c_int = 0x10000;
pub const AVFMT_FLAG_PRIV_OPT: c_int = 0x20000;
pub const AVFMT_FLAG_KEEP_SIDE_DATA: c_int = 0x40000;
pub const AVFMT_FLAG_FAST_SEEK: c_int = 0x80000;
pub const FF_FDEBUG_TS: c_int = 0x0001;
@@ -466,6 +471,9 @@ extern {
pub fn av_format_get_control_message_cb(s: *const AVFormatContext) -> av_format_control_message;
pub fn av_format_set_control_message_cb(s: *mut AVFormatContext, callback: av_format_control_message);
pub fn av_format_get_open_cb(s: *const AVFormatContext) -> AVOpenCallback;
pub fn av_format_set_open_cb(s: *mut AVFormatContext, callback: AVOpenCallback);
pub fn av_format_inject_global_side_data(s: *mut AVFormatContext);
pub fn av_fmt_ctx_get_duration_estimation_method(ctx: *const AVFormatContext) -> AVDurationEstimationMethod;
+43
View File
@@ -18,6 +18,45 @@ pub struct AVIOInterruptCB {
pub opaque: *mut c_void,
}
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
#[repr(C)]
pub enum AVIODirEntryType {
AVIO_ENTRY_UNKNOWN,
AVIO_ENTRY_BLOCK_DEVICE,
AVIO_ENTRY_CHARACTER_DEVICE,
AVIO_ENTRY_DIRECTORY,
AVIO_ENTRY_NAMED_PIPE,
AVIO_ENTRY_SYMBOLIC_LINK,
AVIO_ENTRY_SOCKET,
AVIO_ENTRY_FILE,
AVIO_ENTRY_SERVER,
AVIO_ENTRY_SHARE,
AVIO_ENTRY_WORKGROUP,
}
#[repr(C)]
pub struct AVIODirEntry {
name: *mut c_char,
kind: c_int,
utf8: c_int,
size: int64_t,
modification_timestamp: int64_t,
access_timestamp: int64_t,
status_change_timestamp: int64_t,
user_id: int64_t,
group_id: int64_t,
filemode: int64_t,
}
#[repr(C)]
pub struct AVIODirContext {
url_context: *mut c_void,
}
#[repr(C)]
pub struct AVIOContext {
pub av_class: *mut AVClass,
@@ -58,6 +97,10 @@ pub unsafe fn avio_tell(s: *mut AVIOContext) -> int64_t {
extern {
pub fn avio_find_protocol_name(url: *const c_char) -> *const c_char;
pub fn avio_check(url: *const c_char, flags: c_int) -> c_int;
pub fn avio_open_dir(s: *mut *mut AVIODirContext, url: *const c_char, options: *mut *mut AVDictionary) -> c_int;
pub fn avio_read_dir(s: *mut AVIODirContext, next: *mut *mut AVIODirEntry) -> c_int;
pub fn avio_close_dir(s: *mut *mut AVIODirContext) -> c_int;
pub fn avio_free_directory_entry(entry: *mut *mut AVIODirEntry);
pub fn avio_alloc_context(buffer: *mut c_uchar, buffer_size: c_int, write_flag: c_int, opaque: *mut c_void, read_packet: extern fn(*mut c_void, *mut uint8_t, c_int) -> c_int, write_packet: extern fn(*mut c_void, *mut uint8_t, c_int) -> c_int, seek: extern fn(*mut c_void, int64_t, c_int) -> int64_t) -> *mut AVIOContext;
pub fn avio_write(s: *mut AVIOContext, buf: *const c_uchar, size: c_int);
+3
View File
@@ -16,6 +16,7 @@ pub const AV_CPU_FLAG_ATOM: c_uint = 0x10000000;
pub const AV_CPU_FLAG_SSE4: c_uint = 0x0100;
pub const AV_CPU_FLAG_SSE42: c_uint = 0x0200;
pub const AV_CPU_FLAG_AVX: c_uint = 0x4000;
pub const AV_CPU_FLAG_AVXSLOW: c_uint = 0x8000000;
pub const AV_CPU_FLAG_XOP: c_uint = 0x0400;
pub const AV_CPU_FLAG_FMA4: c_uint = 0x0800;
pub const AV_CPU_FLAG_CMOV: c_uint = 0x1001000;
@@ -24,6 +25,8 @@ pub const AV_CPU_FLAG_FMA3: c_uint = 0x10000;
pub const AV_CPU_FLAG_BMI1: c_uint = 0x20000;
pub const AV_CPU_FLAG_BMI2: c_uint = 0x40000;
pub const AV_CPU_FLAG_ALTIVEC: c_uint = 0x0001;
pub const AV_CPU_FLAG_VSX: c_uint = 0x0002;
pub const AV_CPU_FLAG_POWER8: c_uint = 0x0004;
pub const AV_CPU_FLAG_ARMV5TE: c_uint = 1 << 0;
pub const AV_CPU_FLAG_ARMV6: c_uint = 1 << 1;
pub const AV_CPU_FLAG_ARMV6T2: c_uint = 1 << 2;
+1
View File
@@ -32,6 +32,7 @@ pub struct AVFrameSideData {
pub data: *mut uint8_t,
pub size: c_int,
pub metadata: *mut AVDictionary,
pub buf: *mut AVBufferRef,
}
#[derive(Debug)]
+1
View File
@@ -66,6 +66,7 @@ pub const AV_LOG_WARNING: c_int = 24;
pub const AV_LOG_INFO: c_int = 32;
pub const AV_LOG_VERBOSE: c_int = 40;
pub const AV_LOG_DEBUG: c_int = 48;
pub const AV_LOG_TRACE: c_int = 56;
pub const AV_LOG_MAX_OFFSET: c_int = (AV_LOG_DEBUG - AV_LOG_QUIET);
pub const AV_LOG_SKIP_REPEATED: c_int = 1;
+2 -2
View File
@@ -1,7 +1,7 @@
use libc::{c_void, c_char, c_int, c_uint, uint8_t, size_t};
use std::mem;
use std::ptr;
use super::error::AVERROR;
//use std::mem;
//use super::error::AVERROR;
#[inline(always)]
pub unsafe fn av_malloc_array(nmemb: size_t, size: size_t) -> *mut c_void {
+1 -1
View File
@@ -16,7 +16,7 @@ extern {
pub fn av_parse_color(rgba_color: *mut uint8_t, color_string: *const c_char, slen: c_int, log_ctx: *mut c_void) -> c_int;
pub fn av_get_known_color_name(color_idx: c_int, rgb: *const *const uint8_t) -> *const c_char;
pub fn av_parse_time(timeval: *mut int64_t, timestr: *const c_char, duration: c_int) -> c_int;
pub fn av_small_strptime(p: *const c_char, fmt: *const c_char, dt: *mut c_void) -> *mut c_char;
pub fn av_find_info_tag(arg: *mut c_char, arg_size: c_int, tag1: *const c_char, info: *const c_char) -> c_int;
pub fn av_small_strptime(p: *const c_char, fmt: *const c_char, dt: *mut c_void) -> *mut c_char;
pub fn av_timegm(tm: *mut c_void) -> time_t;
}
+180 -167
View File
@@ -6,195 +6,204 @@ pub const AVPALETTE_COUNT: c_int = 256;
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
#[repr(C)]
pub enum AVPixelFormat {
AV_PIX_FMT_NONE = -1,
AV_PIX_FMT_YUV420P,
AV_PIX_FMT_YUYV422,
AV_PIX_FMT_RGB24,
AV_PIX_FMT_BGR24,
AV_PIX_FMT_YUV422P,
AV_PIX_FMT_YUV444P,
AV_PIX_FMT_YUV410P,
AV_PIX_FMT_YUV411P,
AV_PIX_FMT_GRAY8,
AV_PIX_FMT_MONOWHITE,
AV_PIX_FMT_MONOBLACK,
AV_PIX_FMT_PAL8,
AV_PIX_FMT_YUVJ420P,
AV_PIX_FMT_YUVJ422P,
AV_PIX_FMT_YUVJ444P,
AV_PIX_FMT_XVMC_MPEG2_MC, // XXX: #if FF_API_XVMC
AV_PIX_FMT_XVMC_MPEG2_IDCT, // XXX: #if FF_API_XVMC
AV_PIX_FMT_UYVY422,
AV_PIX_FMT_UYYVYY411,
AV_PIX_FMT_BGR8,
AV_PIX_FMT_BGR4,
AV_PIX_FMT_BGR4_BYTE,
AV_PIX_FMT_RGB8,
AV_PIX_FMT_RGB4,
AV_PIX_FMT_RGB4_BYTE,
AV_PIX_FMT_NV12,
AV_PIX_FMT_NV21,
AV_PIX_FMT_NONE = -1,
AV_PIX_FMT_YUV420P,
AV_PIX_FMT_YUYV422,
AV_PIX_FMT_RGB24,
AV_PIX_FMT_BGR24,
AV_PIX_FMT_YUV422P,
AV_PIX_FMT_YUV444P,
AV_PIX_FMT_YUV410P,
AV_PIX_FMT_YUV411P,
AV_PIX_FMT_GRAY8,
AV_PIX_FMT_MONOWHITE,
AV_PIX_FMT_MONOBLACK,
AV_PIX_FMT_PAL8,
AV_PIX_FMT_YUVJ420P,
AV_PIX_FMT_YUVJ422P,
AV_PIX_FMT_YUVJ444P,
AV_PIX_FMT_XVMC_MPEG2_MC, // XXX: #if FF_API_XVMC
AV_PIX_FMT_XVMC_MPEG2_IDCT, // XXX: #if FF_API_XVMC
AV_PIX_FMT_UYVY422,
AV_PIX_FMT_UYYVYY411,
AV_PIX_FMT_BGR8,
AV_PIX_FMT_BGR4,
AV_PIX_FMT_BGR4_BYTE,
AV_PIX_FMT_RGB8,
AV_PIX_FMT_RGB4,
AV_PIX_FMT_RGB4_BYTE,
AV_PIX_FMT_NV12,
AV_PIX_FMT_NV21,
AV_PIX_FMT_ARGB,
AV_PIX_FMT_RGBA,
AV_PIX_FMT_ABGR,
AV_PIX_FMT_BGRA,
AV_PIX_FMT_ARGB,
AV_PIX_FMT_RGBA,
AV_PIX_FMT_ABGR,
AV_PIX_FMT_BGRA,
AV_PIX_FMT_GRAY16BE,
AV_PIX_FMT_GRAY16LE,
AV_PIX_FMT_YUV440P,
AV_PIX_FMT_YUVJ440P,
AV_PIX_FMT_YUVA420P,
AV_PIX_FMT_VDPAU_H264, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_MPEG1, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_MPEG2, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_WMV3, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_VC1, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_RGB48BE,
AV_PIX_FMT_RGB48LE,
AV_PIX_FMT_GRAY16BE,
AV_PIX_FMT_GRAY16LE,
AV_PIX_FMT_YUV440P,
AV_PIX_FMT_YUVJ440P,
AV_PIX_FMT_YUVA420P,
AV_PIX_FMT_VDPAU_H264, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_MPEG1, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_MPEG2, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_WMV3, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_VDPAU_VC1, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_RGB48BE,
AV_PIX_FMT_RGB48LE,
AV_PIX_FMT_RGB565BE,
AV_PIX_FMT_RGB565LE,
AV_PIX_FMT_RGB555BE,
AV_PIX_FMT_RGB555LE,
AV_PIX_FMT_RGB565BE,
AV_PIX_FMT_RGB565LE,
AV_PIX_FMT_RGB555BE,
AV_PIX_FMT_RGB555LE,
AV_PIX_FMT_BGR565BE,
AV_PIX_FMT_BGR565LE,
AV_PIX_FMT_BGR555BE,
AV_PIX_FMT_BGR555LE,
AV_PIX_FMT_BGR565BE,
AV_PIX_FMT_BGR565LE,
AV_PIX_FMT_BGR555BE,
AV_PIX_FMT_BGR555LE,
AV_PIX_FMT_VAAPI_MOCO,
AV_PIX_FMT_VAAPI_IDCT,
AV_PIX_FMT_VAAPI_VLD,
AV_PIX_FMT_VAAPI_MOCO,
AV_PIX_FMT_VAAPI_IDCT,
AV_PIX_FMT_VAAPI_VLD,
AV_PIX_FMT_YUV420P16LE,
AV_PIX_FMT_YUV420P16BE,
AV_PIX_FMT_YUV422P16LE,
AV_PIX_FMT_YUV422P16BE,
AV_PIX_FMT_YUV444P16LE,
AV_PIX_FMT_YUV444P16BE,
AV_PIX_FMT_VDPAU_MPEG4, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_DXVA2_VLD,
AV_PIX_FMT_YUV420P16LE,
AV_PIX_FMT_YUV420P16BE,
AV_PIX_FMT_YUV422P16LE,
AV_PIX_FMT_YUV422P16BE,
AV_PIX_FMT_YUV444P16LE,
AV_PIX_FMT_YUV444P16BE,
AV_PIX_FMT_VDPAU_MPEG4, // XXX: #if FF_API_VDPAU
AV_PIX_FMT_DXVA2_VLD,
AV_PIX_FMT_RGB444LE,
AV_PIX_FMT_RGB444BE,
AV_PIX_FMT_BGR444LE,
AV_PIX_FMT_BGR444BE,
AV_PIX_FMT_YA8,
AV_PIX_FMT_RGB444LE,
AV_PIX_FMT_RGB444BE,
AV_PIX_FMT_BGR444LE,
AV_PIX_FMT_BGR444BE,
AV_PIX_FMT_YA8,
AV_PIX_FMT_BGR48BE,
AV_PIX_FMT_BGR48LE,
AV_PIX_FMT_BGR48BE,
AV_PIX_FMT_BGR48LE,
AV_PIX_FMT_YUV420P9BE,
AV_PIX_FMT_YUV420P9LE,
AV_PIX_FMT_YUV420P10BE,
AV_PIX_FMT_YUV420P10LE,
AV_PIX_FMT_YUV422P10BE,
AV_PIX_FMT_YUV422P10LE,
AV_PIX_FMT_YUV444P9BE,
AV_PIX_FMT_YUV444P9LE,
AV_PIX_FMT_YUV444P10BE,
AV_PIX_FMT_YUV444P10LE,
AV_PIX_FMT_YUV422P9BE,
AV_PIX_FMT_YUV422P9LE,
AV_PIX_FMT_VDA_VLD,
AV_PIX_FMT_YUV420P9BE,
AV_PIX_FMT_YUV420P9LE,
AV_PIX_FMT_YUV420P10BE,
AV_PIX_FMT_YUV420P10LE,
AV_PIX_FMT_YUV422P10BE,
AV_PIX_FMT_YUV422P10LE,
AV_PIX_FMT_YUV444P9BE,
AV_PIX_FMT_YUV444P9LE,
AV_PIX_FMT_YUV444P10BE,
AV_PIX_FMT_YUV444P10LE,
AV_PIX_FMT_YUV422P9BE,
AV_PIX_FMT_YUV422P9LE,
AV_PIX_FMT_VDA_VLD,
AV_PIX_FMT_GBRP,
AV_PIX_FMT_GBRP9BE,
AV_PIX_FMT_GBRP9LE,
AV_PIX_FMT_GBRP10BE,
AV_PIX_FMT_GBRP10LE,
AV_PIX_FMT_GBRP16BE,
AV_PIX_FMT_GBRP16LE,
AV_PIX_FMT_GBRP,
AV_PIX_FMT_GBRP9BE,
AV_PIX_FMT_GBRP9LE,
AV_PIX_FMT_GBRP10BE,
AV_PIX_FMT_GBRP10LE,
AV_PIX_FMT_GBRP16BE,
AV_PIX_FMT_GBRP16LE,
AV_PIX_FMT_YUVA422P_LIBAV,
AV_PIX_FMT_YUVA444P_LIBAV,
AV_PIX_FMT_YUVA422P_LIBAV,
AV_PIX_FMT_YUVA444P_LIBAV,
AV_PIX_FMT_YUVA420P9BE,
AV_PIX_FMT_YUVA420P9LE,
AV_PIX_FMT_YUVA422P9BE,
AV_PIX_FMT_YUVA422P9LE,
AV_PIX_FMT_YUVA444P9BE,
AV_PIX_FMT_YUVA444P9LE,
AV_PIX_FMT_YUVA420P10BE,
AV_PIX_FMT_YUVA420P10LE,
AV_PIX_FMT_YUVA422P10BE,
AV_PIX_FMT_YUVA422P10LE,
AV_PIX_FMT_YUVA444P10BE,
AV_PIX_FMT_YUVA444P10LE,
AV_PIX_FMT_YUVA420P16BE,
AV_PIX_FMT_YUVA420P16LE,
AV_PIX_FMT_YUVA422P16BE,
AV_PIX_FMT_YUVA422P16LE,
AV_PIX_FMT_YUVA444P16BE,
AV_PIX_FMT_YUVA444P16LE,
AV_PIX_FMT_YUVA420P9BE,
AV_PIX_FMT_YUVA420P9LE,
AV_PIX_FMT_YUVA422P9BE,
AV_PIX_FMT_YUVA422P9LE,
AV_PIX_FMT_YUVA444P9BE,
AV_PIX_FMT_YUVA444P9LE,
AV_PIX_FMT_YUVA420P10BE,
AV_PIX_FMT_YUVA420P10LE,
AV_PIX_FMT_YUVA422P10BE,
AV_PIX_FMT_YUVA422P10LE,
AV_PIX_FMT_YUVA444P10BE,
AV_PIX_FMT_YUVA444P10LE,
AV_PIX_FMT_YUVA420P16BE,
AV_PIX_FMT_YUVA420P16LE,
AV_PIX_FMT_YUVA422P16BE,
AV_PIX_FMT_YUVA422P16LE,
AV_PIX_FMT_YUVA444P16BE,
AV_PIX_FMT_YUVA444P16LE,
AV_PIX_FMT_VDPAU,
AV_PIX_FMT_VDPAU,
AV_PIX_FMT_XYZ12LE,
AV_PIX_FMT_XYZ12BE,
AV_PIX_FMT_NV16,
AV_PIX_FMT_NV20LE,
AV_PIX_FMT_NV20BE,
AV_PIX_FMT_XYZ12LE,
AV_PIX_FMT_XYZ12BE,
AV_PIX_FMT_NV16,
AV_PIX_FMT_NV20LE,
AV_PIX_FMT_NV20BE,
AV_PIX_FMT_RGBA64BE_LIBAV,
AV_PIX_FMT_RGBA64LE_LIBAV,
AV_PIX_FMT_BGRA64BE_LIBAV,
AV_PIX_FMT_BGRA64LE_LIBAV,
AV_PIX_FMT_RGBA64BE_LIBAV,
AV_PIX_FMT_RGBA64LE_LIBAV,
AV_PIX_FMT_BGRA64BE_LIBAV,
AV_PIX_FMT_BGRA64LE_LIBAV,
AV_PIX_FMT_YVYU422,
AV_PIX_FMT_YVYU422,
AV_PIX_FMT_VDA,
AV_PIX_FMT_VDA,
AV_PIX_FMT_YA16BE,
AV_PIX_FMT_YA16LE,
AV_PIX_FMT_YA16BE,
AV_PIX_FMT_YA16LE,
AV_PIX_FMT_GBRAP_LIBAV,
AV_PIX_FMT_GBRAP16BE_LIBAV,
AV_PIX_FMT_GBRAP16LE_LIBAV,
AV_PIX_FMT_QSV,
AV_PIX_FMT_GBRAP_LIBAV,
AV_PIX_FMT_GBRAP16BE_LIBAV,
AV_PIX_FMT_GBRAP16LE_LIBAV,
AV_PIX_FMT_QSV,
AV_PIX_FMT_MMAL,
AV_PIX_FMT_0RGB = 0x123 + 4,
AV_PIX_FMT_RGB0,
AV_PIX_FMT_0BGR,
AV_PIX_FMT_BGR0,
AV_PIX_FMT_YUVA444P,
AV_PIX_FMT_YUVA422P,
AV_PIX_FMT_D3D11VA_VLD,
AV_PIX_FMT_YUV420P12BE,
AV_PIX_FMT_YUV420P12LE,
AV_PIX_FMT_YUV420P14BE,
AV_PIX_FMT_YUV420P14LE,
AV_PIX_FMT_YUV422P12BE,
AV_PIX_FMT_YUV422P12LE,
AV_PIX_FMT_YUV422P14BE,
AV_PIX_FMT_YUV422P14LE,
AV_PIX_FMT_YUV444P12BE,
AV_PIX_FMT_YUV444P12LE,
AV_PIX_FMT_YUV444P14BE,
AV_PIX_FMT_YUV444P14LE,
AV_PIX_FMT_GBRP12BE,
AV_PIX_FMT_GBRP12LE,
AV_PIX_FMT_GBRP14BE,
AV_PIX_FMT_GBRP14LE,
AV_PIX_FMT_GBRAP,
AV_PIX_FMT_GBRAP16BE,
AV_PIX_FMT_GBRAP16LE,
AV_PIX_FMT_YUVJ411P,
AV_PIX_FMT_0RGB = 0x123 + 4,
AV_PIX_FMT_RGB0,
AV_PIX_FMT_0BGR,
AV_PIX_FMT_BGR0,
AV_PIX_FMT_YUVA444P,
AV_PIX_FMT_YUVA422P,
AV_PIX_FMT_BAYER_BGGR8,
AV_PIX_FMT_BAYER_RGGB8,
AV_PIX_FMT_BAYER_GBRG8,
AV_PIX_FMT_BAYER_GRBG8,
AV_PIX_FMT_BAYER_BGGR16LE,
AV_PIX_FMT_BAYER_BGGR16BE,
AV_PIX_FMT_BAYER_RGGB16LE,
AV_PIX_FMT_BAYER_RGGB16BE,
AV_PIX_FMT_BAYER_GBRG16LE,
AV_PIX_FMT_BAYER_GBRG16BE,
AV_PIX_FMT_BAYER_GRBG16LE,
AV_PIX_FMT_BAYER_GRBG16BE,
AV_PIX_FMT_NB,
AV_PIX_FMT_YUV420P12BE,
AV_PIX_FMT_YUV420P12LE,
AV_PIX_FMT_YUV420P14BE,
AV_PIX_FMT_YUV420P14LE,
AV_PIX_FMT_YUV422P12BE,
AV_PIX_FMT_YUV422P12LE,
AV_PIX_FMT_YUV422P14BE,
AV_PIX_FMT_YUV422P14LE,
AV_PIX_FMT_YUV444P12BE,
AV_PIX_FMT_YUV444P12LE,
AV_PIX_FMT_YUV444P14BE,
AV_PIX_FMT_YUV444P14LE,
AV_PIX_FMT_GBRP12BE,
AV_PIX_FMT_GBRP12LE,
AV_PIX_FMT_GBRP14BE,
AV_PIX_FMT_GBRP14LE,
AV_PIX_FMT_GBRAP,
AV_PIX_FMT_GBRAP16BE,
AV_PIX_FMT_GBRAP16LE,
AV_PIX_FMT_YUVJ411P,
AV_PIX_FMT_BAYER_BGGR8,
AV_PIX_FMT_BAYER_RGGB8,
AV_PIX_FMT_BAYER_GBRG8,
AV_PIX_FMT_BAYER_GRBG8,
AV_PIX_FMT_BAYER_BGGR16LE,
AV_PIX_FMT_BAYER_BGGR16BE,
AV_PIX_FMT_BAYER_RGGB16LE,
AV_PIX_FMT_BAYER_RGGB16BE,
AV_PIX_FMT_BAYER_GBRG16LE,
AV_PIX_FMT_BAYER_GBRG16BE,
AV_PIX_FMT_BAYER_GRBG16LE,
AV_PIX_FMT_BAYER_GRBG16BE,
AV_PIX_FMT_YUV440P10LE,
AV_PIX_FMT_YUV440P10BE,
AV_PIX_FMT_YUV440P12LE,
AV_PIX_FMT_YUV440P12BE,
AV_PIX_FMT_NB,
}
pub const AV_PIX_FMT_XVMC: AVPixelFormat = AVPixelFormat::AV_PIX_FMT_XVMC_MPEG2_IDCT;
@@ -230,9 +239,11 @@ pub mod default {
pub const AV_PIX_FMT_YUV444P9: AVPixelFormat = AV_PIX_FMT_YUV444P9LE;
pub const AV_PIX_FMT_YUV420P10: AVPixelFormat = AV_PIX_FMT_YUV420P10LE;
pub const AV_PIX_FMT_YUV422P10: AVPixelFormat = AV_PIX_FMT_YUV422P10LE;
pub const AV_PIX_FMT_YUV440P10: AVPixelFormat = AV_PIX_FMT_YUV440P10LE;
pub const AV_PIX_FMT_YUV444P10: AVPixelFormat = AV_PIX_FMT_YUV444P10LE;
pub const AV_PIX_FMT_YUV420P12: AVPixelFormat = AV_PIX_FMT_YUV420P12LE;
pub const AV_PIX_FMT_YUV422P12: AVPixelFormat = AV_PIX_FMT_YUV422P12LE;
pub const AV_PIX_FMT_YUV440P12: AVPixelFormat = AV_PIX_FMT_YUV440P12LE;
pub const AV_PIX_FMT_YUV444P12: AVPixelFormat = AV_PIX_FMT_YUV444P12LE;
pub const AV_PIX_FMT_YUV420P14: AVPixelFormat = AV_PIX_FMT_YUV420P14LE;
pub const AV_PIX_FMT_YUV422P14: AVPixelFormat = AV_PIX_FMT_YUV422P14LE;
@@ -295,9 +306,11 @@ pub mod default {
pub const AV_PIX_FMT_YUV444P9: AVPixelFormat = AV_PIX_FMT_YUV444P9BE;
pub const AV_PIX_FMT_YUV420P10: AVPixelFormat = AV_PIX_FMT_YUV420P10BE;
pub const AV_PIX_FMT_YUV422P10: AVPixelFormat = AV_PIX_FMT_YUV422P10BE;
pub const AV_PIX_FMT_YUV440P10: AVPixelFormat = AV_PIX_FMT_YUV440P10BE;
pub const AV_PIX_FMT_YUV444P10: AVPixelFormat = AV_PIX_FMT_YUV444P10BE;
pub const AV_PIX_FMT_YUV420P12: AVPixelFormat = AV_PIX_FMT_YUV420P12BE;
pub const AV_PIX_FMT_YUV422P12: AVPixelFormat = AV_PIX_FMT_YUV422P12BE;
pub const AV_PIX_FMT_YUV440P12: AVPixelFormat = AV_PIX_FMT_YUV440P12BE;
pub const AV_PIX_FMT_YUV444P12: AVPixelFormat = AV_PIX_FMT_YUV444P12BE;
pub const AV_PIX_FMT_YUV420P14: AVPixelFormat = AV_PIX_FMT_YUV420P14BE;
pub const AV_PIX_FMT_YUV422P14: AVPixelFormat = AV_PIX_FMT_YUV422P14BE;
+2 -1
View File
@@ -1,4 +1,4 @@
use libc::{c_int, int64_t, c_double};
use libc::{c_int, uint32_t, int64_t, c_double};
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
#[repr(C)]
@@ -50,4 +50,5 @@ extern {
pub fn av_d2q(d: c_double, max: c_int) -> AVRational;
pub fn av_nearer_q(q: AVRational, q1: AVRational, q2: AVRational) -> c_int;
pub fn av_find_nearest_q_idx(q: AVRational, q_list: *const AVRational) -> c_int;
pub fn av_q2intfloat(q: AVRational) -> uint32_t;
}
+1
View File
@@ -77,6 +77,7 @@ extern {
pub fn av_dirname(path: *mut c_char) -> *const c_char;
pub fn av_match_name(name: *const c_char, names: *const c_char) -> c_int;
pub fn av_append_path_component(path: *const c_char, component: *const c_char) -> *mut c_char;
pub fn av_escape(dst: *mut *mut c_char, src: *const c_char, special_chars: *const c_char, mode: AVEscapeMode, flags: c_int) -> c_int;
pub fn av_utf8_decode(codep: *mut int32_t, bufp: *const *const uint8_t, buf_end: *const uint8_t, flags: c_uint) -> c_int;
pub fn av_match_list(name: *const c_char, list: *const c_char, separator: c_char) -> c_int;
+1
View File
@@ -64,6 +64,7 @@ extern {
pub fn swr_drop_output(s: *mut SwrContext, count: c_int) -> c_int;
pub fn swr_inject_silence(s: *mut SwrContext, count: c_int) -> c_int;
pub fn swr_get_delay(s: *const SwrContext, base: int64_t) -> int64_t;
pub fn swr_get_out_samples(s: *const SwrContext, in_samples: c_int) -> c_int;
pub fn swr_convert_frame(swr: *mut SwrContext, output: *mut AVFrame, input: *const AVFrame) -> c_int;
pub fn swr_config_frame(swr: *mut SwrContext, output: *mut AVFrame, input: *const AVFrame) -> c_int;