4 releases

0.1.0-3 Nov 26, 2019
0.1.0-2 Oct 14, 2018
0.1.0-1 Mar 26, 2018
0.0.0 Jan 18, 2018

#1542 in Hardware support

Download history 43/week @ 2023-11-10 49/week @ 2023-11-17 48/week @ 2023-11-24 31/week @ 2023-12-01 35/week @ 2023-12-08 46/week @ 2023-12-15 42/week @ 2023-12-22 24/week @ 2023-12-29 40/week @ 2024-01-05 45/week @ 2024-01-12 40/week @ 2024-01-19 38/week @ 2024-01-26 32/week @ 2024-02-02 57/week @ 2024-02-09 115/week @ 2024-02-16 131/week @ 2024-02-23

341 downloads per month
Used in 2 crates (via rascam)

MIT license

540KB
15K SLoC

Rust definitions for mmal

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.

Documentation

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

Dependencies

~150KB