GstPipelineStudio aims to provide a graphical user interface to the GStreamer framework.
Find a file
2026-04-10 11:53:22 +02:00
.gitlab/issue_templates gitlab: update issue templates with GTK version field 2026-01-09 11:23:27 +01:00
build-aux settings: migrate legacy config directory on app ID rename 2026-03-19 15:41:35 +00:00
ci gps: update package version and cleanup win32 build 2026-03-01 19:29:28 +01:00
data landing: update page to 0.5.1 2026-03-29 22:21:44 +02:00
graphs examples: rename examples to gps extension 2024-10-22 12:50:18 +02:00
installer ci: use Homebrew libffi on macOS to fix Tahoe 26 SDK build 2026-03-28 22:06:46 +01:00
po Rename app ID from org.freedesktop.dabrain34 to dev.mooday 2026-03-19 15:41:35 +00:00
src graphview: notify graph update on clear 2026-04-10 11:53:22 +02:00
subprojects ci: install librsvg for macOS and AppImage builds 2026-03-01 19:29:42 +01:00
.gitignore ci: add GitLab job to generate AppImage 2025-12-02 12:49:12 +01: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
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 Rename app ID from org.freedesktop.dabrain34 to dev.mooday 2026-03-19 15:41:35 +00: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

Every contribution is greatly appreciated! You will just need a gitlib account. Fork this repo, clone your fork, create a feature branch, commit, push and submit a merge request.

Development Setup

Install pre-commit hooks to validate your commits locally:

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

Or using meson:

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

This will validate commit messages following GStreamer guidelines:

  • Format: module: short description (e.g., settings: fix crash on startup)
  • No WIP, fixup!, or squash! commits in merge requests

Submit any suggestions, questions or bugs to the Issue Tracker.

Troubleshooting

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