GstPipelineStudio aims to provide a graphical user interface to the GStreamer framework.
Find a file
Stéphane Cerveau 37a0aa6994 graphmanager: rubber-band also selects connecting links
When the user rubber-bands several nodes, also select every link
whose two endpoints are both on selected nodes. Matches the
intuitive "everything I rubber-banded plus the wires between them"
mental model so a follow-up Delete acts on the whole subgraph.
2026-05-07 15:49:42 +00:00
.gitlab/issue_templates gitlab: update issue templates with GTK version field 2026-01-09 11:23:27 +01:00
build-aux nodes: add category badges from element klass 2026-04-21 21:34:17 +02:00
ci gps: update package version and cleanup win32 build 2026-03-01 19:29:28 +01:00
data nodes: add category badges from element klass 2026-04-21 21:34:17 +02:00
graphs examples: rename examples to gps extension 2024-10-22 12:50:18 +02:00
installer installers: drop gtk-4.0/emoji from Linux and Windows packages 2026-04-23 12:25:38 +02:00
po Rename app ID from org.freedesktop.dabrain34 to dev.mooday 2026-03-19 15:41:35 +00:00
src graphmanager: rubber-band also selects connecting links 2026-05-07 15:49:42 +00:00
subprojects ci: install librsvg for macOS and AppImage builds 2026-03-01 19:29:42 +01:00
.gitignore readme: update contributing section with AI policy 2026-04-15 10:38:03 +02:00
.gitlab-ci.yml Rename app ID from org.freedesktop.dabrain34 to dev.mooday 2026-03-19 15:41:35 +00: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 release: 0.5.1 2026-03-28 22:06:46 +01:00
Cargo.toml release: 0.5.1 2026-03-28 22:06:46 +01: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 Release 0.5.0: new features and simplified version management 2026-03-20 12:00:12 +01: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 readme: update contributing section with AI policy 2026-04-15 10:38:03 +02:00
release.md release: 0.5.1 2026-03-28 22:06:46 +01:00
run-tests.sh tests: add unit test infrastructure with GTK MainContext support 2025-11-25 16:47:06 +01: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 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 gstreamer1-devel gstreamer1-plugins-base-devel python3-pip ninja-build pkgconfig

MacOS

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

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 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