Audiobus: Use your music apps together.

What is Audiobus?Audiobus is an award-winning music app for iPhone and iPad which lets you use your other music apps together. Chain effects on your favourite synth, run the output of apps or Audio Units into an app like GarageBand or Loopy, or select a different audio interface output for each app. Route MIDI between apps — drive a synth from a MIDI sequencer, or add an arpeggiator to your MIDI keyboard — or sync with your external MIDI gear. And control your entire setup from a MIDI controller.

Download on the App Store

Audiobus is the app that makes the rest of your setup better.

Who is using MIDIFlow?

123578

Comments

  • Well thanks @JohannesD

    Your solution works. Using a custom MidiFlow port instead does the trick. Thanks!

    I now have my little project pretty much working (making Yamaha Synth and Drum app work a bit like a midi out version of the Elastic Drums Jam pad).

    Latency is a slight issue though. Different drum parts that go through different routings seem to pick up different latancies along the way.

    Have you considered having latency compensation adjustments for different routings in MidiFlow?

  • edited September 2015

    I've mapped patterning to Attack drums using midiflow, works pretty well, Attack has a mapping where the very lowest 8 midi note range are the first 8 tracks....

    .....except Attack has this behaviour where whichever track you select, that's channel 1 And When using midiflow, midi notes also come through to whichever channel you select....annoying if you want to tweak sounds...it's not too much of a problem but a bit irritating.

    So when routing via midiflow I just turn down volume of all other tracks except 1 to 8 and select a muted track and the extra notes turn to silence.

    But If I map directly in patterning to Attack, these extra notes don't also come through on the channel you select in Attack...this is what I want, except I'd like the same behaviour when routing via midiflow too.

    These extra notes are only coming through when routing via midiflow, why is this?

    Is there a way when routing via midiflow to stop this behaviour in Attack? I've not found the solution yet if there is... Thanks :)

    Edit: something to do with Attack being promiscuous and always listening so it's getting some info twice when routing via midiflow, yes it's the same issue as with Gadget.

  • @Matt_Fletcher_2000 said:
    Latency is a slight issue though. Different drum parts that go through different routings seem to pick up different latancies along the way.

    Really? Do all of the routings use a custom MIDI port?

    Have you considered having latency compensation adjustments for different routings in MidiFlow?

    Yes, someone already requested a delay feature that I will implement at some point.

    @Carnbot
    Puh, I don't know what is happening there... Maybe I have to read your message more carefully again, but the Apple conference starts in half an hour and I have to get ready :)

  • Hi @JohannesD

    I think I'm getting latency issues purely because sometimes I'm sending notes through StepPolyArp and they are not quite in sync with other notes that aren't. So that would be expected and nothing to do with MidiFlow. But if I could compensate in some routes in MidiFlow that would be cool.

    Anyway. I have another question.

    When converting ccs to notes...

    • does it send note on and then note off?
    • what determines the length of the notes?

    Any help appreciated...

  • Good questions, I have to add this to the documentation.

    When converting a controller to notes, the output is monophone. That means, a new note is sent on each new cc value, and it will be switched off (note off) when the next note is sent. The last note will sound forever.

    I could add an option so that the note offs are sent after a fixed time period instead. However, this will require some bigger changes.

  • Thanks @johannesD I very much appreciate your quick reply.

    So if I'm converting cc1 to note C3 and having the cc value determine the velocity of the note, when I fire the first cc1 value it will send note on for C3 then when I send the next cc value it will send note off for C3 and then immediately send note on again?

  • @JohannesD: whle we have your attention, any chance of a custom BTLE port in the same vein as your incredibly useful VM ports? Apollo has now stopped development, and it breaks Audiobus Remote. Core Network is too jittery and slow as an alternative. And there is no MidiMix server for iOS.

  • @dwarman
    I already thought about this months ago (actually last year, when it was introduced at WWDC), but then midimittr came out quickly and I thought there is no need anymore.

    However, if would fit quite well into Midiflow's concept. Do you have any specific wishes that other apps currently don't fulfill? I would implement it so that a bluetooth icon can be selection as source or destination, like e.g. "Network session 1".

  • @JohannesD said:
    dwarman
    I already thought about this months ago (actually last year, when it was introduced at WWDC), but then midimittr came out quickly and I thought there is no need anymore.

    However, if would fit quite well into Midiflow's concept. Do you have any specific wishes that other apps currently don't fulfill? I would implement it so that a bluetooth icon can be selection as source or destination, like e.g. "Network session 1".

    Just a thought, but being able to route a Wist connection would also be very useful, and the ability to connect Wist apps on the same device. not sure if that would be possible if you plan to add Bluetooth?

  • Yes. Very few App support BTLE, and even if they did I would rather be in ontrol of the routing via MF (and MB but I don't think Nic is paying much attention to coding thse days, MB is getting a bit buggy as iOS evolves). I am exploring iPhone + iPad jam techniquesand connectivity options between them are limited. BTLE is about it, and as I said Apollo is also begining to suffer bitrot which is officially not going to be addressed.

  • Hi @dwarman

    Did you see this thread a while back
    https://forum.audiob.us/discussion/7656/send-midi-between-ipad-and-mac-directly-by-usb/p1

    I never went ahead and bought this device but I'm tempted to now because I'm getting more into live jamming and I'd like to use an iPhone or iPad midi as a controller to my main iPad.

    If it works as described this device could be the solution I think.

  • @Carnbot
    To be honest, I've never used WIST. Apple offers a very easy to use API to add bluetooth MIDI support. WIST is something different I think. I wonder if there is a SDK that I could use, and there might be problems if you want to use Apples Bluetooth MIDI and WIST at the same time, which then has to be addressed in Midiflow's UI. Is anyone using WIST? I have to do some research I guess :)

  • BTLE would get my vote.

    Gadget uses BTLE and it works very nicely.

  • @Matt_Fletcher_2000: MidiMux and Music IO are great products but they require the use of a Mac or PC as intermediary. I do not carry a laptop with me any more, only my iPhone and iPad. Now, if one of them were to write an iOS version of their Mac server ... hint hint ... I could plug my iPhone via its sync cable into the CCK attached to me iPad. Though even that is a thought distractor - I would have to dig out the cable and CCK. And pack them up again when the ferry docks, in time to catch my drive-off-now cue.

  • With that device it connects iPhone to iPad directly. You don't need midimux or music iO

  • I remember it now. I was put off by the url "iPad-and-Mac". But it is yet another piece of gear, and $40 too. I'm aiming for quick setup. Hoping for BTLE in MidiFlow as a no hardware solution.

  • @JohannesD said:
    Carnbot
    To be honest, I've never used WIST. Apple offers a very easy to use API to add bluetooth MIDI support. WIST is something different I think. I wonder if there is a SDK that I could use, and there might be problems if you want to use Apples Bluetooth MIDI and WIST at the same time, which then has to be addressed in Midiflow's UI. Is anyone using WIST? I have to do some research I guess :)

    I'd use it more if I could control it better, there are quite a few apps which support it. iKaossilator for example can only sync with Wist, so would like more control over that. But yeah maybe not enough people use it....
    There is an SDK available https://code.google.com/p/korg-wist-sdk/

  • @Carnbot
    Ok, I see. I can't say anything about this right now, only that there are many things on my todo list right now...

    @dwarman
    You said something about problems with ABR and Apollo. I wonder, if this is a general issue, because both might use BTLE at the same time.

  • edited September 2015

    @JohannesD: yes. If you start ABR first, then Apollo, ABR loses its conneciton You have to quit both ABR and AB and restart them - with Apollo still running - to get working again. I uderstand Apollo is now free and frozen because BTLE seems to do the same thing, but very few of my Apps (at least) know how to see BTLE ports. Apollo does not AFAIK use the OS for its connection, which may be the conflict source (it predates BTLE MIDI OS support). Adding BTLE suport to MF would instantly add it effectively to all Apps. Lots of leverage I think. I would expect if all Apps using BTLE MIDI use the OS API there should be no problems.

  • edited September 2015

    Hi @JohannesD

    Another question if I may...

    Do you think it's possible to "script" MidiFlow to interpret and use continuous hardware encoders set to "relative" (eg they just send a 2 if being dialed up, a 1 when you let go and a 0 when being dialed backwards - or sometimes it's values 63, 64 and 65 instead). The Beatstep allows for this, for example.

    The idea would be add values to whatever the destination iOS app already has its parameters in the patch set to. Rather than sending an absolute value which initially could be a big leap from the default patch value and so makes a nasty glitch.

    As I write this, however, I realise that MidiFlow won't know the destination apps' starting values will it? And Midi doesn't let you send 'add 1'. Unless you know of any apps that send their values in - and MidiFlow can work with this? (As I believe Ableton does?)

  • Yep. Unfortunately I think that's going to be entirely up to the receiving app. I don't think I never found a use for the (rather dreamy sounding) relative mode for the BS knobs. Actually, feel like I did but hell if I can remember what it was.

    Also, for what it's worth (hint: not much) there is a "Data Increment" cc that can be sent along with an (N)RPN. I usually only see it in the context of program changes though. http://www.midi.org/techspecs/midimessages.php

  • The only thing that would work I think is using the controller mode "Increase" in Midiflow. This lets you increase/decrease an output controller by sending a certain input controller value. Midiflow computes the absolute value and sends it to the receiver.

  • Thanks. But I think the whole problem requires the receiving app to report its current cc value before you start sending anything to it, because even if you are just "incrementing" - you need to know where to start from.

  • Yes, unless you control the parameter exclusively via MIDI. Then it will jump to 0 and start from there, when you move the controller for the first time.

  • Yep. It's that initial jump im trying to avoid - after you load in a new preset.

  • Year, the only way to solve that (besides the synth app sending the parameter value to Midiflow) would be that Midiflow itself was somehow part of the AB route and restore it's internal values.

  • edited October 2015

    @JohannesD FYI: Latest update is broken for me on ios 7 Ipad 4.

    Just trying to add a simple remapping to different channel is impossible with strange behaviour that I will try to explain.

    Input keyboard > Output Thumbjam.

    Placing a condition in the middle ..... When attempting to remap channel, pressing 'No remapping' makes the text in the pop-up dialogue briefly display at a 90% angle before the text disappears completely, leaving a pure white dialog box. Repeating these steps results in same result.

    I have just found a workaround while writing this however.

    Pressing 'No remapping' has the above behaviour still, and tapping '+' does nothing.

    However I've now found that tapping the minus symbol WILL allow me to change the channel number, so it looks like I may be in luck.

    I'm sure you'll still want to resolve the two ways that have bugs though.

    Thanks.

  • edited October 2015

    I'm now finding this 90 degree text flip is happening on most boxes in between the - and + symbols.

    Anybody else on ios7 finding this with Midiflow?

    An un and re-install has not helped.

    Device hard-rebooted etc.

    Bug still exists.

  • Has anyone tried syncing iMS20 with Midiflow?

Sign In or Register to comment.