Contributing to the rav1e AV1 encoder software

Contributing to the rav1e AV1 encoder software

Hi everyone,

Yesterday I had my first experience writing code in Rust. I decided to implement 2 command-line options for the rav1e AV1 encoder software that I’ve been playing around for some days.

The encoder currently encodes files with a keyframe every 30 frames. This value is hardcoded into the code and can’t be changed by the user unless it is changed at the code and rav1e is compiled again. Also, there is a new option which is called “Compound mode” in the source code, which can also be enabled or disabled by sending a boolean value of true or false.

To give more power to the user, I added these 2 command-line options:

  • –low_latency, to enable compound mode. Default is false.
  • keyint, or -I, to specify a value for the keyframe interval. Default is 30.

This is currently waiting approval. You can see this Pull Request here: https://github.com/xiph/rav1e/pull/677