Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

MIDIBridge

Stream MIDI signals to any device over the Internet in real time

Platform Golang GitHub Repo stars License

English | 简体中文


Overview

MIDIBridge is a lightweight, open-source toolset that streams MIDI signals to any machine over the Internet in real time.

No extra hardware. No distance limit. Just plug in and play.

MIDI Keyboard ──USB──▶ Server ──WebSocket──▶ Client ──Virtual MIDI──▶ DAW / Other Software

Repositories

Component Repo Description
Server midibridge-server Reads USB MIDI input and broadcasts over WebSocket
Client midibridge-client Receives signals and injects them into a virtual MIDI port for use by DAWs
Android midibridge-android Run MIDIBridge Server on your Android device

Features

Feature Description
🔌 Zero-config pairing Set password once — client auto-connects
👥 Multi-client One server broadcasts to multiple clients simultaneously
🔄 Hot-plug recovery Unplug and replug the keyboard anytime — server auto-detects
🎯 Device targeting Configure target MIDI device name — auto-retries until ready
🔒 Password-protected bcrypt-hashed storage with remote online update
♻️ Auto-reconnect Exponential backoff with random jitter to avoid connection storms

Quick Start

Server

Download the binary for your platform from MIDIBridge-Server Releases, extract and run

Change the default password via the HTTP API after first launch.
See the server repository README.md for detailed instructions.

Android

Run MIDIBridge Server on your Android device

Download the APK from MIDIBridge-Android Releases and install it on your phone.

See MIDIBridge-Android README for details.

Client

Download the binary for your platform from MIDIBridge-Client Releases, extract and run:

./midibridge-client

Edit data/config.json with your server IP and password before starting.

Important

Windows users: Due to driver limitations, install loopMIDI first and create a virtual port with the same name as virtualPortName in your config file — otherwise the client cannot inject MIDI signals.

License

MIT — Use, modify, and distribute freely.

About

Route MIDI from your device to any computer over Internet.

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors