Boddlnagg / Midir
Licence: mit
Cross-platform realtime MIDI processing in Rust.
Stars: ✭ 221
Programming Languages
rust
11053 projects
Projects that are alternatives of or similar to Midir
Cute headers
Collection of cross-platform one-file C/C++ libraries with no dependencies, primarily used for games
Stars: ✭ 3,274 (+1381.45%)
Mutual labels: library, audio, cross-platform
Rust Jack
Decent jack bindings for rust
Stars: ✭ 128 (-42.08%)
Mutual labels: audio, midi, rust-bindings
Raz
Modern & multiplatform game engine in C++17
Stars: ✭ 161 (-27.15%)
Mutual labels: library, cross-platform
Uriparser
🔪 Strictly RFC 3986 compliant URI parsing and handling library written in C89; moved from SourceForge to GitHub
Stars: ✭ 163 (-26.24%)
Mutual labels: library, cross-platform
Libaudiodecoder
The Cross-Platform Audio Decoder API
Stars: ✭ 114 (-48.42%)
Mutual labels: library, audio
Borealis
Hardware accelerated, controller and TV oriented UI library for PC and Nintendo Switch (libnx).
Stars: ✭ 135 (-38.91%)
Mutual labels: library, cross-platform
Helio Workstation
One music sequencer for all major platforms, desktop and mobile
Stars: ✭ 2,257 (+921.27%)
Mutual labels: midi, cross-platform
Omnimidi
A software MIDI synthesizer for professional use.
Stars: ✭ 181 (-18.1%)
Mutual labels: audio, midi
Gwork
Skinnable GUI with useful widget collection. Fork of GWEN.
Stars: ✭ 179 (-19%)
Mutual labels: library, cross-platform
Mixxx
Mixxx is Free DJ software that gives you everything you need to perform live mixes.
Stars: ✭ 2,510 (+1035.75%)
Mutual labels: audio, midi
Kivymd
Set of widgets for Kivy inspired by Google's Material Design.
Stars: ✭ 107 (-51.58%)
Mutual labels: library, cross-platform
Fsynth
Web-based and pixels-based collaborative synthesizer
Stars: ✭ 146 (-33.94%)
Mutual labels: audio, midi
Wad
Web Audio DAW. Use the Web Audio API for dynamic sound synthesis. It's like jQuery for your ears.
Stars: ✭ 1,540 (+596.83%)
Mutual labels: audio, midi
Jcplayer
🎵 A simple audio player for Android applications.
Stars: ✭ 209 (-5.43%)
Mutual labels: library, audio
Xdg
Go implementation of the XDG Base Directory Specification and XDG user directories
Stars: ✭ 88 (-60.18%)
Mutual labels: library, cross-platform
X32 Behringer
This GIT repo (C language) holds applications and utilities for the Behringer X32 and M32 mixing consoles. Additional details, documentation, implementation examples and apps can be found in my website:
Stars: ✭ 97 (-56.11%)
Mutual labels: audio, midi
Cross-platform, realtime MIDI processing in Rust.
Features
midir is inspired by RtMidi and supports the same features*, including virtual ports (except on Windows) and full SysEx support – but with a rust-y API!
* With the exception of message queues, but these can be implemented on top of callbacks using e.g. Rust's channels.
midir currently supports the following platforms/backends:
- [x] ALSA (Linux)
- [x] WinMM (Windows)
- [x] CoreMIDI (macOS, iOS (untested))
- [x] WinRT (Windows 8+), enable the
winrt
feature - [x] Jack (Linux, macOS), enable the
jack
feature - [x] Web MIDI (Chrome, Opera, perhaps others browsers)
A higher-level API for parsing and assembling MIDI messages might be added in the future.
Documentation & Example
API docs can be found at docs.rs. You can find some examples in the examples
directory. Or simply run cargo run --example test_play
after cloning this repository.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].