GstPipelineStudio aims to provide a graphical user interface to the GStreamer framework.
Find a file
Stéphane Cerveau 96952aa17e flatpak: disable gst-examples and align gstreamer options
gst-examples' WebRTC signalling server pulls in actix-web, which needs
rustc 1.88, but the flatpak SDK ships 1.86. -Dexamples=disabled does not
cover it (gst-examples is a separate option), so add -Dgst-examples=disabled
and align the rest (devtools, ges, rtsp_server, python, sharp) with the
macOS/Windows builds. rs left at default for enabling later.
2026-07-20 12:38:19 +02:00
.gitlab/issue_templates gitlab: update issue templates with GTK version field 2026-01-09 11:23:27 +01:00
build-aux flatpak: disable gst-examples and align gstreamer options 2026-07-20 12:38:19 +02:00
ci build: update GStreamer to 1.28.5 2026-07-20 12:38:19 +02:00
data version: allow to display intermediate version if no tag 2026-05-20 15:19:25 +02:00
graphs examples: rename examples to gps extension 2024-10-22 12:50:18 +02:00
installer installer: add libadwaita to the rpm package 2026-07-20 12:38:19 +02:00
po Rename app ID from org.freedesktop.dabrain34 to dev.mooday 2026-03-19 15:41:35 +00:00
src ui: use libadwaita AboutDialog for the about window 2026-07-20 12:38:19 +02:00
subprojects build: update GStreamer to 1.28.5 2026-07-20 12:38:19 +02:00
.gitignore readme: update contributing section with AI policy 2026-04-15 10:38:03 +02:00
.gitlab-ci.yml gps: add libadwaita to the build 2026-07-18 23:16:32 +02:00
.gitlint ci: add commit message linting with gitlint 2025-12-19 14:43:58 +01:00
.pre-commit-config.yaml gitlint: remove hook on local storage 2025-12-27 20:04:46 +01:00
_typos.toml macos: expand cleanup folders to reduce installer size 2025-11-20 21:31:49 +01:00
AGENTS.md readme: update contributing section with AI policy 2026-04-15 10:38:03 +02:00
Cargo.lock ui: use libadwaita AboutDialog for the about window 2026-07-20 12:38:19 +02:00
Cargo.toml ui: use libadwaita AboutDialog for the about window 2026-07-20 12:38:19 +02:00
ChangeLog.md release: 0.5.1 2026-03-28 22:06:46 +01:00
Gemfile ci: add gitlab pages jobs 2023-09-19 13:00:20 +02:00
index.html landing: update page to 0.5.1 2026-03-29 22:21:44 +02:00
LICENSE GPS: change license to GPLv3 2021-12-02 10:28:24 +01:00
meson.build build: declare libadwaita-1 dependency in meson 2026-07-20 12:38:19 +02:00
meson_options.txt meson_options: Drop comment that was there by mistake 2025-12-19 22:01:09 +07:00
New_Release_Announcement.md release: 0.5.1 2026-03-28 22:06:46 +01:00
README.md gps: add libadwaita to the build 2026-07-18 23:16:32 +02:00
release.md release: 0.5.1 2026-03-28 22:06:46 +01:00
run-tests.sh common: add gst-launch value escaping helper 2026-07-08 13:26:21 +02:00
TODO.md gps: add crash recovery dialog to display previous session log on startup 2026-01-29 19:30:23 +01:00
VERSION release: 0.5.1 2026-03-28 22:06:46 +01:00

GstPipelineStudio: Draw your own GStreamer pipeline ...

Important

Until version 1.0, this software should be considered as unstable. The settings moreover the graph file format might change over the development phase.

Description

GstPipelineStudio aims to provide a graphical user interface to the GStreamer framework. From a first step in the framework with a simple pipeline to a complex pipeline debugging, the tool provides a friendly interface to add elements to a pipeline and debug it.

alt tag

Setup

Install the Rust toolchain via rustup

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Check https://rustup.rs for alternative installation options.

Ubuntu/Debian/etc

apt install python3-pip ninja-build pkg-config
pip3 install --user meson
apt install libgtk-4-dev libadwaita-1-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev

Fedora/RedHat/SuSE/etc

dnf install python3-pip ninja-build pkgconfig
pip3 install meson
dnf install gtk4-devel libadwaita-devel gstreamer1-devel gstreamer1-plugins-base-devel

MacOS

brew install gtk4 libadwaita
brew install gstreamer gst-plugins-base gst-plugins-bad

Windows (MSYS2)

pacman -S mingw-w64-x86_64-gtk4 mingw-w64-x86_64-libadwaita
pacman -S mingw-w64-x86_64-gstreamer mingw-w64-x86_64-gst-plugins-base

Getting started

$ meson setup builddir -Dbuildtype=release
$ ninja -C builddir
$ ./builddir/target/release/gst-pipeline-studio

Flatpak

The application is also available on Flathub.

License

GstPipelineStudio is distributed under the terms of the GPL3 license. See LICENSE for more information.

Credits

GstPipelineStudio wouldn't exist without free and open-source software such as GLib, GStreamer, GTK, libadwaita and many more.

This project has been also possible thanks to amazing projects such as:

Contributing

Contributions are welcome, whether written by hand or with the assistance of AI tools, as long as the human contributor fully understands every line they submit. See AGENTS.md for the full developer guide: project structure, build and test instructions, code style, commit-message format, and the complete contribution and AI-usage policy.

Quick workflow: create an account on gitlab.freedesktop.org, fork this repo, create a feature branch, commit, push, and open a merge request.

Install commit hooks locally so .gitlint, cargo fmt and friends run on each commit:

pip3 install pre-commit
pre-commit install --hook-type commit-msg

Or via meson:

meson setup builddir
ninja -C builddir install-git-hooks

Bugs, suggestions and questions go to the Issue Tracker.

Troubleshooting

Interface is not clean: rm ~/.config/dev.mooday.GstPipelineStudio/settings.toml