e729324cce
The biggest changes are - Many functions are not asynchronous anymore as it would be difficult to run them correctly with our mix of synchronous C code and Rust code. - The pad context and its corresponding custom event are gone and instead thread local storage and task local storage are used. This makes it easier to correctly pass it through the different layers of Rust and C code and back. - Sink events have a different function for serialized and oob events, src events are handled correctly by default now by simply forwarding them. - Task::prepare() has a separate variant that takes a preparation function as this is a very common task. - The task loop function can signal via its return value if it wants to be called again or not. |
||
---|---|---|
gst-plugin-audiofx | ||
gst-plugin-cdg | ||
gst-plugin-claxon | ||
gst-plugin-closedcaption | ||
gst-plugin-dav1d | ||
gst-plugin-fallbackswitch | ||
gst-plugin-file | ||
gst-plugin-flv | ||
gst-plugin-gif | ||
gst-plugin-lewton | ||
gst-plugin-rav1e | ||
gst-plugin-reqwest | ||
gst-plugin-rusoto | ||
gst-plugin-sodium | ||
gst-plugin-threadshare | ||
gst-plugin-togglerecord | ||
gst-plugin-tutorial | ||
gst-plugin-version-helper | ||
.gitignore | ||
.gitlab-ci.yml | ||
Cargo.toml | ||
cargo_wrapper.py | ||
LICENSE-APACHE | ||
LICENSE-LGPLv2 | ||
LICENSE-MIT | ||
Makefile | ||
meson.build | ||
meson_options.txt | ||
README.md |
gst-plugins-rs
Repository containing various GStreamer plugins and elements written in the Rust programming language.
The plugins build upon the GStreamer Rust bindings. Check the README.md of that repository also for details about how to set-up your development environment.
LICENSE
gst-plugins-rs and all crates contained in here that are not listed below are licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
gst-plugin-togglerecord is licensed under the Lesser General Public License (LICENSE-LGPLv2) version 2.1 or (at your option) any later version.
GStreamer itself is licensed under the Lesser General Public License version 2.1 or (at your option) any later version: https://www.gnu.org/licenses/lgpl-2.1.html
Contribution
Any kinds of contributions are welcome as a pull request.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in gst-plugins-rs by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.