Skip to content

About

Independent full-cycle multimedia framework in Rust (demux/decode/filter/encode/mux/transport)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

rustmpeg-next

version crates.io downloads GitHub release downloads

  •   Docs — architecture, codecs, and status
  •   Benchmarks — measured BD-rate and speed
  •   Config — CLI, options, and offline build
  •   FAQ — common build and codec questions

Status: active development, pre-alpha. Not ready for production: APIs, file formats, and encoded streams change without notice.

A Rust-only multimedia framework built from the standards, not ported from FFmpeg: demux, decode, filter, encode, mux, and transport. Pre-alpha.

Try it

cargo build --release --workspace
cargo run -p rustmpeg-cli -- version
cargo run -p rustmpeg-video --example vvc_dump -- 64 64 26 3 /tmp/out \
    --bit-depth 8 --chroma-format 420
cargo run -p rustmpeg-video --example vvc_decode -- /tmp/out.vvc /tmp/out.yuv

Nightly is pinned in rust-toolchain.toml (std::simd). More commands: docs/configs/CONFIG.md.

Support

Area Implemented Status
Containers Matroska/WebM, ISOBMFF/CMAF demux + mux
Video H.266/VVC (intra subset + multi-tool P), AV2 (experimental), APV intra partial
Audio Opus, FLAC, LPCM, LC3 partial
Image JPEG XL (JxlDecoder + JxlEncoder), OpenEXR (ExrDecoder + ExrEncoder), moxcms implemented (v1/v2)
Transport — planned
GPU Vulkan Compute, opt-in, bit-exact vs CPU partial

Status

Pre-alpha. Self-reported workspace completion is in the footer and in docs/status.json; conformance is claimed only where an external oracle was run (VVC status).

Releases

A v<version> tag or a manual Release workflow run verifies the tree (cargo fmt, clippy, tests, license audit), builds the release examples, and publishes a GitHub Release with the source archive, the example binaries, and their checksums. Crates are published in dependency order only when the CARGO_REGISTRY_TOKEN repository secret is configured; otherwise the step records the skip in the run summary.

License

Apache-2.0. The VVC module derives from VTM 24.0 (BSD-3-Clause), the AV2 conformance data from dav2d (BSD-2-Clause), and the OpenEXR module from OpenEXR 3.5.2 OpenEXRCore (BSD-3-Clause); see THIRD_PARTY.md and NOTICE.

Rust lines: 166,403 · workspace completion: 63% · unsafe: 0 · source tokens: ~1,582,400 (chars/4)

About

Independent full-cycle multimedia framework in Rust (demux/decode/filter/encode/mux/transport)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages