Expand description
§ff-sys
Low-level FFmpeg FFI bindings for Rust.
This crate provides raw FFI bindings to FFmpeg libraries, generated by bindgen. It is intended as a building block for higher-level safe wrappers.
§Safety
All functions in this crate are unsafe. Higher-level safe wrappers are provided by other ff-* crates:
ff-probe- Media metadata extractionff-decode- Decoding and seekingff-encode- Encoding and exportff-filter- Filters and effects
Modules§
- avcodec
- Stub
avcodecwrapper module. - avformat
- Stub
avformatwrapper module. - error_
codes - Common FFmpeg error codes for convenience.
- swresample
- Stub
swresamplewrapper module. - swscale
- Stub
swscalewrapper module.
Macros§
- check_
av_ error - Macro to check FFmpeg return values and convert to Result.
Structs§
- AVBuffer
Ref - AVChannel
Layout - AVChapter
- AVCodec
- AVCodec
Context - AVCodec
Parameters - AVDictionary
- AVDictionary
Entry - AVFilter
- AVFilter
Context - AVFilter
Graph - AVFormat
Context - AVFrame
- AVIO
Context - AVInput
Format - AVOutput
Format - AVPacket
- AVRational
- AVStream
- SwrContext
- SwsContext
Constants§
- AVChannel
Order_ AV_ CHANNEL_ ORDER_ NATIVE - AVChannel
Order_ AV_ CHANNEL_ ORDER_ UNSPEC - AVCodecID_
AV_ CODEC_ ID_ AAC - AVCodecID_
AV_ CODEC_ ID_ AC3 - AVCodecID_
AV_ CODEC_ ID_ ALAC - AVCodecID_
AV_ CODEC_ ID_ ASS - AVCodecID_
AV_ CODEC_ ID_ AV1 - AVCodecID_
AV_ CODEC_ ID_ BMP - AVCodecID_
AV_ CODEC_ ID_ DNXHD - AVCodecID_
AV_ CODEC_ ID_ DTS - AVCodecID_
AV_ CODEC_ ID_ DVB_ SUBTITLE - AVCodecID_
AV_ CODEC_ ID_ EAC3 - AVCodecID_
AV_ CODEC_ ID_ FLAC - AVCodecID_
AV_ CODEC_ ID_ H264 - AVCodecID_
AV_ CODEC_ ID_ HDMV_ PGS_ SUBTITLE - AVCodecID_
AV_ CODEC_ ID_ HEVC - AVCodecID_
AV_ CODEC_ ID_ MJPEG - AVCodecID_
AV_ CODEC_ ID_ MP3 - AVCodecID_
AV_ CODEC_ ID_ MPEG4 - AVCodecID_
AV_ CODEC_ ID_ MPEG2VIDEO - AVCodecID_
AV_ CODEC_ ID_ NONE - AVCodecID_
AV_ CODEC_ ID_ OPUS - AVCodecID_
AV_ CODEC_ ID_ PCM_ F32BE - AVCodecID_
AV_ CODEC_ ID_ PCM_ F32LE - AVCodecID_
AV_ CODEC_ ID_ PCM_ F64BE - AVCodecID_
AV_ CODEC_ ID_ PCM_ F64LE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S16BE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S16LE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S24BE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S24LE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S32BE - AVCodecID_
AV_ CODEC_ ID_ PCM_ S32LE - AVCodecID_
AV_ CODEC_ ID_ PCM_ U8 - AVCodecID_
AV_ CODEC_ ID_ PNG - AVCodecID_
AV_ CODEC_ ID_ PRORES - AVCodecID_
AV_ CODEC_ ID_ SRT - AVCodecID_
AV_ CODEC_ ID_ SSA - AVCodecID_
AV_ CODEC_ ID_ SUBRIP - AVCodecID_
AV_ CODEC_ ID_ THEORA - AVCodecID_
AV_ CODEC_ ID_ TIFF - AVCodecID_
AV_ CODEC_ ID_ VORBIS - AVCodecID_
AV_ CODEC_ ID_ VP8 - AVCodecID_
AV_ CODEC_ ID_ VP9 - AVCodecID_
AV_ CODEC_ ID_ WEBP - AVCodecID_
AV_ CODEC_ ID_ WEBVTT - AVCodecID_
AV_ CODEC_ ID_ WMAV2 - AVColor
Primaries_ AVCOL_ PRI_ BT709 - AVColor
Primaries_ AVCOL_ PRI_ BT470BG - AVColor
Primaries_ AVCOL_ PRI_ BT2020 - AVColor
Primaries_ AVCOL_ PRI_ SMPT E170M - AVColor
Primaries_ AVCOL_ PRI_ UNSPECIFIED - AVColor
Range_ AVCOL_ RANGE_ JPEG - AVColor
Range_ AVCOL_ RANGE_ MPEG - AVColor
Range_ AVCOL_ RANGE_ UNSPECIFIED - AVColor
Space_ AVCOL_ SPC_ BT709 - AVColor
Space_ AVCOL_ SPC_ BT470BG - AVColor
Space_ AVCOL_ SPC_ BT2020_ CL - AVColor
Space_ AVCOL_ SPC_ BT2020_ NCL - AVColor
Space_ AVCOL_ SPC_ RGB - AVColor
Space_ AVCOL_ SPC_ SMPT E170M - AVColor
Space_ AVCOL_ SPC_ UNSPECIFIED - AVHW
Device Type_ AV_ HWDEVICE_ TYPE_ CUDA - AVHW
Device Type_ AV_ HWDEVICE_ TYPE_ D3D11VA - AVHW
Device Type_ AV_ HWDEVICE_ TYPE_ QSV - AVHW
Device Type_ AV_ HWDEVICE_ TYPE_ VAAPI - AVHW
Device Type_ AV_ HWDEVICE_ TYPE_ VIDEOTOOLBOX - AVMedia
Type_ AVMEDIA_ TYPE_ AUDIO - AVMedia
Type_ AVMEDIA_ TYPE_ SUBTITLE - AVMedia
Type_ AVMEDIA_ TYPE_ VIDEO - AVPixel
Format_ AV_ PIX_ FMT_ BGR24 - AVPixel
Format_ AV_ PIX_ FMT_ BGRA - AVPixel
Format_ AV_ PIX_ FMT_ CUDA - AVPixel
Format_ AV_ PIX_ FMT_ D3D11 - AVPixel
Format_ AV_ PIX_ FMT_ DXVA2_ VLD - AVPixel
Format_ AV_ PIX_ FMT_ GRAY8 - AVPixel
Format_ AV_ PIX_ FMT_ MEDIACODEC - AVPixel
Format_ AV_ PIX_ FMT_ NONE - AVPixel
Format_ AV_ PIX_ FMT_ NV12 - AVPixel
Format_ AV_ PIX_ FMT_ NV21 - AVPixel
Format_ AV_ PIX_ FMT_ OPENCL - AVPixel
Format_ AV_ PIX_ FMT_ P010LE - AVPixel
Format_ AV_ PIX_ FMT_ PAL8 - AVPixel
Format_ AV_ PIX_ FMT_ QSV - AVPixel
Format_ AV_ PIX_ FMT_ RGB24 - AVPixel
Format_ AV_ PIX_ FMT_ RGBA - AVPixel
Format_ AV_ PIX_ FMT_ VAAPI - AVPixel
Format_ AV_ PIX_ FMT_ VDPAU - AVPixel
Format_ AV_ PIX_ FMT_ VIDEOTOOLBOX - AVPixel
Format_ AV_ PIX_ FMT_ VULKAN - AVPixel
Format_ AV_ PIX_ FMT_ YUV420P - AVPixel
Format_ AV_ PIX_ FMT_ YUV420 P10LE - AVPixel
Format_ AV_ PIX_ FMT_ YUV422P - AVPixel
Format_ AV_ PIX_ FMT_ YUV444P - AVPixel
Format_ AV_ PIX_ FMT_ YUVJ420P - AVSample
Format_ AV_ SAMPLE_ FMT_ DBL - AVSample
Format_ AV_ SAMPLE_ FMT_ DBLP - AVSample
Format_ AV_ SAMPLE_ FMT_ FLT - AVSample
Format_ AV_ SAMPLE_ FMT_ FLTP - AVSample
Format_ AV_ SAMPLE_ FMT_ NONE - AVSample
Format_ AV_ SAMPLE_ FMT_ S16 - AVSample
Format_ AV_ SAMPLE_ FMT_ S32 - AVSample
Format_ AV_ SAMPLE_ FMT_ S64 - AVSample
Format_ AV_ SAMPLE_ FMT_ S16P - AVSample
Format_ AV_ SAMPLE_ FMT_ S32P - AVSample
Format_ AV_ SAMPLE_ FMT_ S64P - AVSample
Format_ AV_ SAMPLE_ FMT_ U8 - AVSample
Format_ AV_ SAMPLE_ FMT_ U8P - AV_
BUFFERSRC_ FLAG_ KEEP_ REF - Flag for
av_buffersrc_add_frame_flags: keep a reference to the frame. - AV_
DICT_ IGNORE_ SUFFIX - AV_
DISPOSITION_ FORCED - AV_
NOPTS_ VALUE - Invalid PTS value (no presentation timestamp).
- AV_
NUM_ DATA_ POINTERS - AV_
TIME_ BASE - BUFFERSRC_
FLAG_ KEEP_ REF
Functions§
- av_
buffer_ ⚠ref - av_
buffer_ ⚠unref - av_
buffersink_ ⚠get_ frame - av_
buffersrc_ ⚠add_ frame_ flags - av_
channel_ ⚠layout_ default - av_
channel_ ⚠layout_ uninit - av_
dict_ ⚠get - av_
dict_ ⚠set - av_
error_ string - Convert an FFmpeg error code to a human-readable string.
- av_
frame_ ⚠alloc - av_
frame_ ⚠free - av_
frame_ ⚠get_ buffer - av_
frame_ ⚠move_ ref - av_
frame_ ⚠unref - av_
hwdevice_ ⚠ctx_ create - av_
hwframe_ ⚠transfer_ data - av_
interleaved_ ⚠write_ frame - av_
mallocz ⚠ - av_
opt_ ⚠set - av_
packet_ ⚠alloc - av_
packet_ ⚠free - av_
packet_ ⚠rescale_ ts - av_
packet_ ⚠unref - av_
read_ ⚠frame - av_
strerror ⚠ - av_
write_ ⚠trailer - avcodec_
get_ ⚠name - avcodec_
parameters_ ⚠copy - avcodec_
receive_ ⚠frame - avcodec_
send_ ⚠packet - avfilter_
get_ ⚠by_ name - avfilter_
graph_ ⚠alloc - avfilter_
graph_ ⚠config - avfilter_
graph_ ⚠create_ filter - avfilter_
graph_ ⚠free - avfilter_
graph_ ⚠set_ auto_ convert - avfilter_
link ⚠ - avformat_
alloc_ ⚠output_ context2 - avformat_
free_ ⚠context - avformat_
new_ ⚠stream - avformat_
write_ ⚠header - ensure_
initialized - Ensure FFmpeg is initialized.
- swr_
alloc_ ⚠set_ opts2 - swr_
convert ⚠ - swr_
free ⚠ - swr_
get_ ⚠out_ samples - swr_
init ⚠
Type Aliases§
- AVChannel
Order - AVCodecID
- AVColor
Primaries - AVColor
Range - AVColor
Space - AVHW
Device Type - AVMedia
Type - AVPicture
Type - AVPixel
Format - AVSample
Format