[package]
name = "mediadecode-ffmpeg"
version = "0.2.0"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
description = "FFmpeg adapter for the `mediadecode` abstraction layer — implements its `VideoAdapter` / `AudioAdapter` / `SubtitleAdapter` traits and the matching push-style decoder traits, with hardware-acceleration auto-probe across VideoToolbox / VAAPI / NVDEC / D3D11VA and software fallback via ffmpeg-next."
repository.workspace = true
homepage.workspace = true
documentation = "https://docs.rs/mediadecode-ffmpeg"
keywords = ["ffmpeg", "decoder", "video", "audio", "mediadecode"]
categories = ["multimedia", "multimedia::video", "multimedia::audio"]
[features]
default = ["std"]
std = ["mediadecode/default"]
alloc = []
[dependencies]
mediadecode = { workspace = true, features = ["alloc"] }
ffmpeg-next = { workspace = true }
smol_str = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }
libc = { workspace = true }
[dev-dependencies]
criterion = { workspace = true }
[[example]]
name = "decode"
path = "examples/decode.rs"
[[example]]
name = "decode_via_trait"
path = "examples/decode_via_trait.rs"
[[bench]]
name = "decode"
path = "benches/decode.rs"
harness = false
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[lints]
workspace = true