23 unstable releases (7 breaking)

0.7.0 Mar 6, 2025
0.5.5 Feb 15, 2025
0.4.1 Nov 9, 2023
0.1.0 Jul 16, 2023

#722 in Testing

Download history 83/week @ 2024-11-29 248/week @ 2024-12-06 64/week @ 2024-12-13 12/week @ 2024-12-20 24/week @ 2024-12-27 43/week @ 2025-01-03 13/week @ 2025-01-10 123/week @ 2025-01-31 109/week @ 2025-02-07 496/week @ 2025-02-14 38/week @ 2025-02-21 436/week @ 2025-02-28 968/week @ 2025-03-07 534/week @ 2025-03-14

1,977 downloads per month
Used in 2 crates (via vvdec)

BSD-3-Clause-Clear

2MB
39K SLoC

C++ 39K SLoC // 0.2% comments JavaScript 245 SLoC // 0.0% comments Python 58 SLoC // 0.1% comments Rust 56 SLoC // 0.1% comments

VVdeC-rs

Rust bindings for VVdeC.

Work in progress: the bindings are not stable yet and may change at any time. Stabilization will begin once integration with some framework is working (e.g. GStreamer).

Sub-projects:

  • vvdec-sys: unsafe bindings generated by bindgen
  • vvdec: the safe bindings on top of vvdec-sys
  • vvdecli: CLI application using the safe bindings to decode VVC Annex-B files into YUV4MPEG (Y4M).

Installing the CLI

In order to build, either VVdeC >= 3.0 needs to be installed and be found via pkg-config, or a VVdeC will be compiled while building vvdec-sys, which requires CMake.

Then, the CLI app can be installed with cargo install vvdecli.

If you have FFmpeg installed, you can then test vvdecli and play VVC with

vvdecli -i ./tests/short.vvc | ffplay -

License

This crate is license under the BSD-3-Clause-Clear license, to maintain compatibility with VVdeC's license.

Dependencies