Add additional crate for element bindings
First step would be to write a code generator for this (maybe based on the metadata used for generated docs by hotdoc?). The element bindings should cover (fallible) creation, properties (considering readability/writability), signals, action signals, custom enums/flags.
Usage of the
glib_wrapper! macro seems useful but unclear how well that would behave with a fallible
Version information for any of the API should be handled like in the other bindings, stuff put behind feature flags.
Elements from gst-plugins-bad should be put behind an
unstable feature flag, core/base/good/ugly handled normally.
Advantage would be that there wouldn't be any stringly-typed API anymore and errors like setting a non-existing property wouldn't have to be handled by the application.