https://github.com/dividebysandwich/rusty-pipes
A sample-based, MIDI-controlled virtual pipe organ instrument compatible with GrandOrgue and Hauptwerk sample sets
https://github.com/dividebysandwich/rusty-pipes
audio egui grandorgue hauptwerk instrument midi midi-player music pipe-organ ratatui rust sample-player
Last synced: about 2 months ago
JSON representation
A sample-based, MIDI-controlled virtual pipe organ instrument compatible with GrandOrgue and Hauptwerk sample sets
- Host: GitHub
- URL: https://github.com/dividebysandwich/rusty-pipes
- Owner: dividebysandwich
- License: gpl-2.0
- Created: 2025-11-04T16:08:12.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-01-10T16:27:22.000Z (2 months ago)
- Last Synced: 2026-01-11T05:03:33.027Z (2 months ago)
- Topics: audio, egui, grandorgue, hauptwerk, instrument, midi, midi-player, music, pipe-organ, ratatui, rust, sample-player
- Language: Rust
- Homepage: https://rusty-pipes.com
- Size: 1.31 MB
- Stars: 42
- Watchers: 3
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ratatui - rusty-pipes - Sample-based, MIDI-controlled virtual pipe organ instrument. (💻 Apps / 🎼 Music and Media)
- awesome-tuis - rusty-pipes - based, MIDI-controlled virtual pipe organ instrument compatible with GrandOrgue and Hauptwerk sample sets. (Table of Contents)
README

# Rusty Pipes
[](https://ratatui.rs/)
Rusty Pipes is a digital organ instrument compatible with GrandOrgue sample sets. It features both graphical and text-based user interface, can be controlled via MIDI and play back MIDI files. Rusty Pipes can stream samples from disk instead of load them into RAM, though a RAM precache mode similar to GrandOrgue and Hauptwerk is available too.
Music samples:
Bach - Praeludium in E Minor BWV 548 - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-Bach-Praeludium-in-e-minor-BWV548.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Bach-Praeludium-in-e-minor-BWV548.ogg)]
Bach - Klavier Uebung BWV 669 - Strassburg organ: [[FLAC](https://playspoon.com/files/RustyPipes-Bach-Klavier_Uebung_BWV-669-Strassburg.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Bach-Klavier_Uebung_BWV-669-Strassburg.ogg)]
Vierne - Organ Symphony No.2 - Allegro - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Allegro.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Allegro.ogg)]
Vierne - Organ Symphony No.2 - Scherzo - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Scherzo.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Scherzo.ogg)]
Vierne - Organ Symphony No.2 - Cantabile - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Cantabile.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Cantabile.ogg)]
Vierne - Organ Symphony No.2 - Finale - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Finale.flac)] [[OGG](https://playspoon.com/files/RustyPipes-Vierne-Symphony-No2-Finale.ogg)]
Cesar Franck - Chorale No. 3 - Friesach organ: [[FLAC](https://playspoon.com/files/RustyPipes-CesarFrank-ChoraleNo3.flac)] [[OGG](https://playspoon.com/files/RustyPipes-CesarFrank-ChoraleNo3.ogg)]

[](https://www.youtube.com/watch?v=Ewm-s5aoeLc)
(Click to play video)
## Features
* GrandOrgue Sample Set support
* Hauptwerk Sample Set support (Experimental)
* Streaming-based sample playback
* RAM based sample playback (optional)
* Tremulant (synthesized)
* Extremely low memory requirements (in streaming mode)
* Polyphony limited only by CPU power
* MIDI controlled
* Multiple MIDI input device support with flexible channel mapping
* On-the-fly configurable MIDI channel mapping
* MIDI mappings can be quickly saved into one of 10 slots and recalled
* MIDI mappings are saved to disk for each organ (by name)
* MIDI file playback
* MIDI and Audio recording of performances
* MIDI-learning for control of stops, saved to file for each organ
* Graphical and text mode (TUI) user interface
* REST API for remote control and physical organ consoles
## Missing features / Limitations / Known Issues
* Streaming mode will not work well on HDDs or slow SSDs (use precaching in such cases)
* No support for split manuals and switches
* Does not work as a plugin in DAWs
*Contributions to add the above or other features are welcome!*
## Download
Downloads are available here: [https://github.com/dividebysandwich/rusty-pipes/releases](https://github.com/dividebysandwich/rusty-pipes/releases)
On Arch linux, just run ```yay -S rusty-pipes``` or ```paru -S rusty-pipes``` to install from the AUR.
## Manual and Documentation
Please visit https://rusty-pipes.com for a complete user guide, installation instructions and FAQ.