This is the library used on the Raspberry Pi to interact with VideoCore. Basic
functions are to control the camera, encode and decode video. Applications that
use it (natively, not via Rust) include raspistill
and VLC
.
These FFI definitions are, for the most part, automatically generated by bindgen.
If you would like to generate the bindings yourself, simply enable the
generate_bindings
feature. By default the pre-generated bindings are used.
Please note that I have no idea what I am doing with rust so bindgen could probably be tweaked to improve its output.
PRs welcome. Breaking changes that make the library better to use eg changing
constified_enum_module
are also welcome.
Steps for improvement:
- Evaluate if rust nightly is useful or switch on/off bindgen's nightly flag if running in nightly or not
- Make API as natural as possible
- Implement
fmt::Display
trait for more types or remove it entirely