Midiflow 4+

MIDI Router and Processor

Johannes Doerr

Designed for iPad

    • 3.9 • 38 Ratings
    • $6.99
    • Offers In-App Purchases



Midiflow allows you to send MIDI from app to app in a similar way to what you already do with audio. That way, you can sync apps with each other or send MIDI parts from a sequencer app to different synth apps. You can also route the MIDI from your keyboard to apps and assign different key zones to them. Different settings can be stored as a preset, recalled later and inserted into another preset. Furthermore, all MIDI transfer can be monitored in order to find problems or just to learn what MIDI is doing (normally) behind the scenes.

Important news: There is a full documentation on the Midiflow website now!

Midiflow allows you to create multiple routings. Each routing receives MIDI data on its source and sends it to its destination. The selectable sources and destinations include your CoreMIDI compatible MIDI interface and other apps if they provide a virtual MIDI port. You can also create custom ports that can be used by other apps to receive data from Midiflow or send data to it. A routing also has a modifier which allows you to filter data or modify it. That way, you can transpose notes, limit them to a key range, change the MIDI channel of the incoming data, etc. (see the feature list below).

+ MIDI clock – specify tempo and your apps will be in sync
+ Channel filtering and remapping
+ Velocity filtering – a routing is only active for notes in a given velocity range
+ Note shift – shift all notes by a given number of half-tone steps
+ Note remapping – shift each note individually
+ Velocity remapping – apply a velocity curve, transform to fixed velocity, or specify the map value by value. In the latter case, you can also export the mapping to the clipboard, edit it in another app like Apple Numbers, and paste it back in Midiflow
+ Filtering out Clock or dividing the tempo into subdivisions
+ Filtering out SysEx
+ Connect to other iPads/iPhones via Bluetooth MIDI (iOS8 or higher)
+ Save a configuration as a preset, which can be recalled later or inserted into another preset
+ Custom virtual MIDI ports, which can be selected in other apps as a source or destination
+ Control aspects of Midiflow via MIDI. For example, select presets or control the clock with any MIDI command
+ Launch your synth apps from Midiflow (works with an increasing number of apps)
+ Sharing your configurations

ADDITIONAL FEATURES (available as an In-app purchase)
+ Filtering and remapping of controllers – transform (a) the controller type, e.g. from CC1 to pitch-bend or note value to CC1, and (b) transform the value in several ways: as a linear remapping from an input range to an output range, as a curve, or as a value by value list. In the latter case, you can also export the mapping to the clipboard, edit it in another app like Apple Numbers, and paste it back in Midiflow. This allows you to create very sophisticated remappings.
+ Controller conditions – adjust your routings depending on other MIDI messages. This allows you to create sophisticated behavior within your setup by switching routings on and off.

Midiflow works with every app that has a correct MIDI implementation. In the best case, it has an own virtual MIDI port and can be configured so that it receives MIDI only on that port. Unfortunately, some apps don't have that, but can at least be restricted to one MIDI channel. In that case, you can send to that channel on the global MIDI port "Network Session 1". If you can't select a channel either, then the app won't work with Midiflow. There is a tutorial video on www.midiflow.com that explains this in more detail.

What’s New

Version 2.2.19

Stability improvements

Ratings and Reviews

3.9 out of 5
38 Ratings

38 Ratings

jwsfamily ,

Useful, but no support

Good set of features for managing your MIDI chain on IOS, but if you run into a bug or have a question there is no response, and the community forum is locked

AJ Gros ,

Excellent MIDI router for iOS

Midiflow is a focused, full-featured, and efficient app for routing MIDI data among devices connected to an iOS tablet/phone. It is intuitive to setup, and basically worked straight away. The fact that it runs in the background is a crucial feature for any MIDI routing app.

Setup and use case is this:
Three MIDI-capable devices on a USB hub connected to my iPad Pro via the camera connection kit. Devices include: a digital mixer, a programmable MIDI foot switch, and a DMX lighting controller that has 5-pin (DIN) MIDI In port connected to the USB hub via a USB<->DIN MIDI controller cable.

A multitrack audio app sends digital audio to the mixer and midi note instructions to DMX controller. MIDI foot switch needs to send MIDI note and CC commands to the audio app, digital mixer, and DMX lighting controller. As is, only the audio app properly receives and sends MIDI data, since it is acting as a MIDI host app the iOS device; but, the app does provide MIDI thru/router functions to forward the MIDI data to other destination devices.

Enter, Midiflow. Midiflow is setup to receive MIDI data from the foot switch and forward these commands also to the mixer and DMX controller devices. Works perfectly!

This is a rather simple use case, but good demonstration of Midiflow’s critical function. Add to this its ability to also transform MIDI data while routing it to the proper destinations, while running as a background app on iOS... Just perfect!

Matt N. M. ,

Beautiful App for MIDI Interfaces

This app does exactly what it purports to do. It provides the essential MIDI port routing that is missing from iOS and most USB hardware MIDI interfaces. Plus, it continues running in the background while doing so.

I have a Midisport 4x4 interface connected to my iPad via USB camera adaptor. Now this by itself is useless: You might have a couple controllers and synths plugged in to the interface, but there is no default internal routing in the Midisport. You need to provide this yourself on your USB host. Usually this is easy enough if you're connecting to a Mac or PC, but not so with an iPad. That's where Midiflow comes in.

In addition, you can add filters and all this complicated stuff in the routing paths. In my case, this provides a crucial ability to clean MIDI clock and other noise coming from my controller keyboard.

Thank you Johannes, and I hope you earn a decent income from your well-crafted suite of iOS MIDI apps. I'll be following you on Github and Twitter :)

App Privacy

The developer, Johannes Doerr, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Not Collected

The developer does not collect any data from this app.

Privacy practices may vary, for example, based on the features you use or your age. Learn More

More By This Developer

Midiflow Transposer (Audiobus)
Midiflow Monitor (Audiobus)
Midiflow Adapter (Audiobus)
Midiflow Splitter (Audiobus)
Midiflow Channels (Audiobus)

You Might Also Like

Mozaic Plugin Workshop
Camelot Pro
KeyStage Lite
Galileo Organ 2