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 9750195caa ts-udpsrc: Dup the socket so that both tokio and GIO can take ownership of it
Otherwise both would be closing the same socket, which a) breaks the
second user of the socket if any and b) could on the second close cause
a completely unrelated socket to be closed.

Windows part of the code is untested.
2018-11-30 19:39:39 +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-udpsrc: Dup the socket so that both tokio and GIO can take ownership of it 2018-11-30 19:39:39 +02:00
gst-plugin-togglerecord Port gst-plugin-togglerecord to new subclassing API 2018-11-30 17:17:37 +02:00
gst-plugin-tutorial Port tutorials plugin to new subclassing API 2018-11-30 17:18:53 +02:00
.gitignore Update gitignore for Cargo.lock and vim files 2018-10-28 10:20:54 +00:00
.gitlab-ci.yml First run lints, then tests 2018-11-04 18:52:31 +02: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.