Crates.io | ffav-sys |
lib.rs | ffav-sys |
version | 4.4.0 |
source | src |
created_at | 2020-08-01 14:02:13.313515 |
updated_at | 2021-05-13 03:16:40.339012 |
description | FFI bindings to FFmpeg |
homepage | |
repository | https://github.com/vaxpl/ffav-sys |
max_upload_size | |
id | 271937 |
size | 287,195 |
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.
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