Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
RAMP Stack's fork of ffmpeg-sys-next, originally derived from ffmpeg-sys. It includes the Apple framework-linking fix, bundled FFmpeg 9.0.2 C source, and pregenerated Apple bindings. The safe wrapper is ramp-ffmpeg.
Building
The default features compile the bundled C source into static libraries with portable CPU settings. macOS and iOS builds use pregenerated bindings, so no installed FFmpeg, pkg-config, libclang, Git, or build-time source download is required. A native C compiler, Make, and the target SDK are still required; Intel builds also require NASM. On Apple platforms, install Xcode's command-line tools and the SDK for the target.
The pregenerated bindings cover Apple Silicon and Intel macOS, arm64 iOS devices,
and arm64/x86_64 iOS simulators. They are used only with the bundled FFmpeg source.
Other targets and system/prebuilt FFmpeg installations require the explicit
generate-bindings feature and libclang. To use an installed FFmpeg, disable default
features and enable generate-bindings plus the required component features.
The bundled source and its provenance are described in vendor/README.md. FFmpeg retains its own licensing; see LICENSE.md.
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.
Feature flags
In addition to feature flags declared in Cargo.toml, this crate performs various compile-time version and feature detections and exposes the results in additional flags. These flags are briefly documented below; run cargo build -vv to view more details.
-
ffmpeg_<x>_<y>flags (new in v4.3.2), e.g.ffmpeg_4_4, indicating the FFmpeg installation being compiled against is at least version<x>.<y>. Currently available:ffmpeg_3_0ffmpeg_3_1ffmpeg_3_2ffmpeg_3_3ffmpeg_3_4ffmpeg_4_0ffmpeg_4_1ffmpeg_4_2ffmpeg_4_3ffmpeg_4_4ffmpeg_5_0ffmpeg_5_1ffmpeg_6_0ffmpeg_6_1ffmpeg_7_0ffmpeg_7_1ffmpeg_8_0ffmpeg_8_1ffmpeg_9_0
-
avcodec_version_greater_than_<x>_<y>(new in v4.3.2), e.g.,avcodec_version_greater_than_58_90. The name should be self-explanatory. -
ff_api_<feature>, e.g.ff_api_vaapi, corresponding to whether their respective uppercase deprecation guards evaluate to true. -
ff_api_<feature>_is_defined, e.g.ff_api_vappi_is_defined, similar to above except these are enabled as long as the corresponding deprecation guards are defined.