mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-22 19:41:00 +00:00
b42bd3d026
Unlike in other sinks this defaults to false as generally every user of GDK paintables already ensures that the aspect ratio is kept and the paintable is layed out in the most optimal way based on the context. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1547> |
||
---|---|---|
.. | ||
examples | ||
src | ||
build.rs | ||
Cargo.toml | ||
LICENSE-MPL-2.0 | ||
README.md |
Gtk 4 Sink & Paintable
GTK 4 provides gtk::Video
& gtk::Picture
for rendering media such as videos. As the default gtk::Video
widget doesn't
offer the possibility to use a custom gst::Pipeline
. The plugin provides a gst_video::VideoSink
along with a gdk::Paintable
that's capable of rendering the sink's frames.
The Sink can generate GL Textures if the system is capable of it, but it needs to be compiled
with either wayland
, x11glx
or x11egl
cargo features.
Flatpak Integration
To build and include the plugin in a Flatpak manifest, you can add the following snippet to your json manifest:
{
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.rust-stable"
],
"build-options": {
"env": {
"CARGO_HOME": "/run/build/cargo-c/cargo"
},
"append-path": "/usr/lib/sdk/rust-stable/bin",
},
"modules": [
{
"name": "cargo-c",
"buildsystem": "simple",
"build-commands": [
"cargo install cargo-c --root /app"
],
"build-options": {
"build-args": [
"--share=network"
]
},
"cleanup": [
"*"
]
},
{
"name": "gst-plugins-rs",
"buildsystem": "simple",
"sources": [
{
"type": "git",
"url": "https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs",
"branch": "0.10"
}
],
"build-options": {
"build-args": [
"--share=network"
]
},
"build-commands": [
"cargo cinstall -p gst-plugin-gtk4 --prefix=/app"
]
}
]
}