GStreamer plugins written in Rust. *These plugins can be used by applications written in other programming languages as well of course, they are just like any other GStreamer plugins available on the system.*
Find a file
Sebastian Dröge 0792fe4f1a ts-appsrc: Fix deadlock during shutdown
The IO Context has to be alive longer than the other parts
of the state. Otherwise a deadlock can happen between shutting down
the IO context (thread join while the state lock is held) and stuff
happening on the IO context (which might take the state lock).
2018-12-13 17:13:40 +02:00
gst-plugin Update CHANGELOG.md for 0.3.2 2018-11-26 17:07:40 +01:00
gst-plugin-audiofx Port audiofx plugin with audioecho element to new subclassing API 2018-11-30 17:18:40 +02:00
gst-plugin-file Change all links/mentions from gst-plugin-rs to gst-plugins-rs 2018-11-26 11:52:09 +01:00
gst-plugin-flv Change all links/mentions from gst-plugin-rs to gst-plugins-rs 2018-11-26 11:52:09 +01:00
gst-plugin-http Change all links/mentions from gst-plugin-rs to gst-plugins-rs 2018-11-26 11:52:09 +01:00
gst-plugin-simple Change all links/mentions from gst-plugin-rs to gst-plugins-rs 2018-11-26 11:52:09 +01:00
gst-plugin-threadshare ts-appsrc: Fix deadlock during shutdown 2018-12-13 17:13:40 +02:00
gst-plugin-togglerecord togglerecord: Don't call override_vfuncs() 2018-12-13 12:02:38 +02:00
gst-plugin-tutorial tutorial: Add identity element based directly on GstElement 2018-12-13 15:04:19 +02:00
.gitignore Update gitignore for Cargo.lock and vim files 2018-10-28 10:20:54 +00:00
.gitlab-ci.yml CI: fix fmt 2018-12-09 16:03:27 +01:00
.travis.yml Remove travis cargo cache 2018-10-05 17:19:30 +03:00
Cargo.toml Merge gst-plugin-threadshare into gst-plugin-rs 2018-11-05 13:40:43 +02:00
LICENSE-APACHE Change license from LGPLv2.1+ to Apache2/MIT 2017-02-16 17:52:27 +02:00
LICENSE-LGPLv2 Add gst-plugin-togglerecord 2017-12-05 09:56:58 +02:00
LICENSE-MIT Change license from LGPLv2.1+ to Apache2/MIT 2017-02-16 17:52:27 +02:00
Makefile updated Makefile to use cargo build all 2017-08-01 19:15:27 +03:00
README.md Update documentation to gitlab pages 2018-11-26 16:27:13 +01:00

NOTE: The canonical repository for gst-plugins-rs has moved to freedesktop.org GitLab!

gst-plugins-rs crates.io pipeline status

Infrastructure for writing GStreamer plugins and elements in the Rust programming language, and a collection of various GStreamer plugins.

Documentation for the crate containing the infrastructure for writing GStreamer plugins in Rust, gst-plugin, can be found here. The whole API builds upon the application-side GStreamer bindings. Check the README.md of that repository also for details about how to set-up your development environment.

Various example plugins can be found in the GIT repository. A blog post series about writing GStreamer plugins/elements can be found here2.

For background and motivation, see the announcement blogpost and the follow-up blogposts 1, 2, 3. Note that the overall implementation has changed completely since those blogposts were written.

LICENSE

gst-plugins-rs and all crates contained in here that are not listed below are licensed under either of

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.