ffav-sys

Crates.ioffav-sys
lib.rsffav-sys
version4.4.0
sourcesrc
created_at2020-08-01 14:02:13.313515
updated_at2021-05-13 03:16:40.339012
descriptionFFI bindings to FFmpeg
homepage
repositoryhttps://github.com/vaxpl/ffav-sys
max_upload_size
id271937
size287,195
Varphone Wong (varphone)

documentation

README

ffav-sys

ffav-sys on crates.io Build Status

This is a fork of the abandoned ffmpeg-sys-next crate. You can find this crate as ffav-sys on crates.io.

This crate contains low level bindings to FFmpeg. You're probably interested in the high level bindings instead: ffav-rs.

A word on versioning: major and minor versions track major and minor versions of FFmpeg, e.g. 4.2.x of this crate has been updated to support the 4.2.x series of FFmpeg. Patch level is reserved for bug fixes of this crate and does not track FFmpeg patch versions.

FAQ

Cross Compilation

To build with cross toolchain, you shoud be set BINDGEN_EXTRA_CLANG_ARGS to tell the clang where to find the headers, if not do this, the bindgen maybe raise an error like:

/usr/include/gnu/stubs.h:7:11: fatal error: 'gnu/stubs-32.h' file not found
/usr/include/gnu/stubs.h:7:11: fatal error: 'gnu/stubs-32.h' file not found, err: true
thread 'main' panicked at 'Unable to generate baldrapi.h bindings: ()', src/libcore/result.rs:1009:5

For example, to build with --target=aarch64-unknown-linux-gnu --features=bundled:

# .cargo/config.toml:
[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"
# Shell commands:
export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/aarch64-linux-gnu"
cargo build --target=aarch64-unknown-linux-gnu --features=bundled
Commit count: 242

cargo fmt