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.

New app development from midiSequencer dev - midi file editor/recorder

edited July 2014 in Creations

Hi,
Just to let you know I'm busy working on a new app that's a step away from midiSequencer.
It will allow you to read & write standard midi files on your ipad, edit them in a piano roll/grid, play them to coreMidi devices, and more importantly, allow you to record in realTime your midi performances whilst in AudioBus(or outside of AB if you prefer).

So far I have mostly completed the read/write midi files, and allowed basic editing (pinch/zoom, scrolling, weird time signatures) etc.

Intention is to make this a universal app this time (iphone - with reduced grid, ipad retina with hi-res graphics etc).

I'm interested in any suggestions you would like to have me include in this much needed app - why should audio have all the fun!

tony

«134

Comments

  • edited July 2014

    Is this multi track or one track at a time? Can you open midi files and edit them?
    Edit: never mind it says you can open midi files

    I'm sure I'll think of some other questions once I've had coffee.

  • edited July 2014

    yes multi-track as a midi file can have multiple tracks.
    I've added colour coding per track and an ability to filter on track too for easier editing.
    Interesting problem to solve is how to handle the tempo track (as midi files allow a change in time signature mid way through!).

    For recording, you can arm the track you want to record to first.

  • edited July 2014

    Great opportunity for you guys with sophisticated wants/need to chime in on the ground floor.

    For someone at the other end of the technical understanding/ability scale, I still find MIDI confusing, but would love a program that really took piano roll editing to an ease-of-use level that seems to have eluded touch-screen developers so far.

    I believe there's a 'raise the bar' opportunity for someone in this respect; I hope it's you, Tony.

  • Is this for notes only or are there plans for more midi control?
    Color coding is nice but it would be great to label each track (drums, bass, etc)

    Would be nice to have the option to see a real keyboard along the left vertical (white, black keys) with number for each octave

  • edited July 2014

    Great that you are trying to incorporate tempo and time signature changes which are sorely lacking in most iOS apps. Not everyone wants to play EDM in 4/4 only.

    What about quantize options? It would be great if tuplets could be incorporated.

    What's the timing resolution (pulse per quarter note) going to be?

  • @Johnny - yes, I like to develop apps on peoples needs as I spend more time coding than playing!
    Midi files do have their own strangeness however (e.g. meta data that can include sysex), which I will eventually hope to include and present graphically.
    For the ipad, I'm specifically aiming this to use gestures (like iMPC Pro TimeLine say), but it's built from the ground up to use midi (and not just ignore it like so many apps tend to do!).
    I will be producing a video soon showing the development, which makes it easier to see where this is heading.

  • @yowza - I have notes at the moment, but will include controller, program changes and all forms of meta data (lyrics, text, key change, time change etc). I'm looking to dig out as much of the midi file internals as I can and present them on a piano-roll grid.
    Labelling, yes - my pics show note names at the moment, but this can be numbers (0..127) or name them yourself using saved templates. I don't think midi file includes note naming (just sequence or instrument=track). But there are places in a midi file I could store these (and also allow you to save your own setups).
    So, naming at sequence, track (=instrument) & note name planned.

    Well midi file has a tempo track (track 99) - so will handle this like I will handle control messages (with a control lane underneath the note grid). You will be able to insert/edit your tempi changes. As mentioned, I need to cater for time signature changes too (creates a problem for mapping touch to cells as the number of beats in a bar change!).

    Vertical keyboard graphic no problem, but it would need to be same vertical height for each note (otherwise the grid looks strange!)

    I already have quantise function implimented (see the screen image bottom right) - aligns new & existing notes to snap to the grid (=beats), but I will be adding finer levels of quantisation(1/32 say or PPQN levels).

    How do you see tuplets being created? I could force input to be on tuplet/triplet etc boundaries, or when selecting a group of notes rearrange them - evenly spaced). Is that ok - sort of micro-quantisation! The great thing about working at ppqn level!

    As for PPQN, midi files specify their own PPQN, so for editing that's no problem.
    For recording & playback, I'm going to see how fast I can record & playback to determine the resolution I record virtuoso performances & massive controller changes. I'd like to match hardware if possible (so 480 ppqn+), but this is an ipad working on coreMidi so might have to settle for less. But I have achieved good playback speeds with midiSequencer (using midibus and it's low level midi routines).

    I should also mention, like hardware sequencers of yore, I'm looking for this app to support large files - 1000's of controller changes and notes.

  • @JohnnyGoodyear said:

    would love a program that really took piano roll editing to an ease-of-use level that seems to have eluded touch-screen developers so far.

    This program already exists, it's called NanoStudio. You can import midi files with "open in...". The editing is so intuitive and precise that I could not imagine it improved. The only annoying thing is that you have to use the computer to get to the exported midi files.

  • Sounds great!! It looks like you've already thought of most of the things I had questions about.

    "How do you see tuplets being created? I could force input to be on tuplet/triplet etc boundaries, or when selecting a group of notes rearrange them - evenly spaced). Is that ok - sort of micro-quantisation! The great thing about working at ppqn level!"

    This is perfect! Wow I can't wait! Let me know if you need any testers?

  • @Crizzy said:

    This program already exists, it's called NanoStudio. You can import midi files with "open in...". The editing is so intuitive and precise that I could not imagine it improved. The only annoying thing is that you have to use the computer to get to the exported midi files.

    NS is great but it doesn't do tempo or time signature changes which I realize isn't important to a lot of people but it's pretty essential to me.

  • @Crizzy I will take another look at NS, which was my first love/obsession with iPad1, but has been left behind (as first loves seem to be).

    I also accept that half of my ease-of-use issues with midi-note editing might be due to my heavy-handed fat fingers etc.

  • This app looks really great, thanks for sharing Tony! Yes there are other apps with piano roll, but there is still a need for a good MIDI note sequencer that works easily with other programs.

    One huge request for launch or a later update - could there be a preview note option? So, in other words, when you enter a note on the grid it plays a sample tone, so you can move it around and program by ear (Caustic works like this). Nothing elaborate, just a simple synth note for pitch.

    Keep up the great work!

  • Usually, in my experience, triplets, quadruplets, quintuplets, etc. are entered as a normal note sequence of the desired visual value, eg. 8th notes, then the user drag selects them and selects a subdivide function. This could easily depend on the number of notes selected, so selecting 3 notes would give you triplets, 5 notes, quintuplets, etc. Quadruplets generally only apply to triple and compound time sigs where you want to have 4 notes across a beat that is already a triple, like a dotted note, so if 4 8th notes were selected in simple time they'd need to end up as 16th notes instead. Conversely, triplets in a triple time would end up unchanged.

  • @midisequencer I said this on twitter, but I'll say it here: you're a genius.

    Who are you? You should be famous!

  • Really looking forward to the development of this app. Do you have plans to include midi CC as part of what you can record?

  • Stuff I don't see in other ipad sequencers (that were common to hardware sequencers of yore):
    sysex dumping/recording (so I can always recall a patch) and quantize strength. Would love to see them both.

    You're calling it a midi file editor/recorder but it looks like it's shaping up to be a full on midi sequencer with piano roll style editing. Is that the plan? If so, and I only ask this as a framing question, how do you see yourself differentiating this app from Genome or to a lesser extent BM2/Cubasis/NS/...?

    I would agree with the @crizzy that NanoStudio remains the king of the buttery piano roll editors. Beatmaker 2 nipped a lot of it but somehow didn't get all of the special sauce because it's just not as smooth. What they did get was that it's easier to move notes around on a touch screen with dedicated handles than with GB/IMPC style tap/hold/drag. Or more consistent anyway.

  • @Crizzy - I agree nanostudio is very good, but I want the editing to be more integrated into one screen (possibly like iMPC pro) - for example showing notes & tempo on the same screen (like Abelton Live). I'm going to try NS some more though as I didn't realise how good it was.
    @Yowza - quantization is important for spacing. I want to make selecting a group of notes as easy as possible without menus. What songs don't have tempo changes!!
    @StormHJ1 - I see this app as sitting in the output of AB say allowing you to record your (midi) performance - we already have apps that can do audio. Being able to save this to disk and editing different versions (takes) will be key to it's song mode. Playback can be directed to open apps per track or note. By note is important as it allows you to treat a note as a sampler (albeit on a different app) - so there will be mappings for device (endpoint), midi channel & even velocity (for velocity layered multi-timbral instruments)
    So routing into and out of this app, together with the ability to work in standard midi files and an editor will be it's main USP.
    btw, preview shouldn't be an issue - basically just a play mode that stays still and sends midi out when you select a cell.
    @PaulB - yes so much easier to select first then divide. I will be putting in copy/paste on groups of notes as well though.
    @John - thanks :) time will tell though! Personally, I'd be happy with an app that just records midi and saves it (like cantabile on the PC) as I tend to noodle my music. My name is on my app :)
    @Paulinko - Developing this in IOS came about because we don't have the old hardware sequencer capabilities in IOS - you know, the sequencers that were made before MPC's - like yamaha rs7000, rm1x, alesis mmt8 - which were capable of recording your entire performance (1000's of notes and controller messages) at a high enough ppqn (96+) to record expression.
    So to answer your question - yes - controllers are probably more important than notes, as they occur continuosly and in high volume. Using a screen graph to present and allow you draw (and even optimise) these is going to be essential.
    The only midi recording I am unsure of is sysex, but all other parts of the midi file should be recordable.

  • Trouble with nanoStudio is no MIDI out.

    Tony - my QX5! Want, want!

    Couple of obs:

    QX5 has a useful configuration for mapping which track each incoming MIDI channel recorded to, and what channel number each track played back as.

    Sysex dumps: if you get Sysex handled, one can always make a Sysex track with Dump requests, and have Sysex responses record into another track; most dump formats can just be sent back to the synth by playing back that track. But. This only works for hardware synths. AFAIK, none of the iOS synths implement any kind of Sysex patch management. AB2 state saving can helpwith the initial patch, but if you have program changes durng the song the patches at those prgram numbrs may not be the ones you expected, depending on messing around history. So where possible I save as patches I use into a bank amed for the song so I can revisit any time. (Assuming my AAS gives me any time for actually making stuff:)

  • edited July 2014

    @david - yes noticed that when trying to link it up to animoog.
    The QX5 is an interesting device - I like the idea of independant input/output on midi channels. As I mentioned I want this per note as well as track - which I can store as emdedded data in the standard midi file (probably sysex).
    I see sysex as useful for setting up controllers (e.g. Akai LPD8 editor sends sysex to set this up - probably alot of other controllers do too). Having the ability to 'dump' this to your devices pre play would be a good feature of this editor and can again be embedded in the standard midi file.
    I think normal practice on PC DAWs like Cubase/Abelton is to have a couple of silent bars whilst you are sending?
    This editor does need a sysex (hex keypad) text editor with a meta event you can easily move in the editor window. The same sort of meta-event that enables you to change the time signature, tempo or key signature mid sequence say.

    I get your point about sysex record/playback - sort of like midi learn!

  • You might want to add an option to thin out MIDI data in case there is too much causing things to bog down. I hear sending too much sysex at once can gum up the works.

  • edited July 2014

    @Yowza, yes we all don't have iConnectMidi4's! On playback, maybe a slower tempo (automation graph) could help here, especially if there are no notes playing.
    I'm not expecting to record sysex during heavy performances - that may be too much!

  • I'd love a dead simple screen for recording/sending sysex; not necessarily as part of a song but as simple way to dump/recall stuff from/to my hardware like presets and sequences. There are a few apps that have it but this looks like it could be my MIDI all in one. Maybe as an IAP down the line? And yes, transmission rate limiting would realllllllllllly help with some older boxes.

    Speaking of, a MIDI monitor down the line as an IAP would be welcome as well. Not to derail your vision for the app (still curious about the end goal) but it could be cool to have all of this sort of MIDI functionality in one place and might serve as an extra source of income.

    Another thing missing from iOS sequencers but common to old hardware sequencers (and some desktop ones with roots as a MIDI sequencers) are things like transposition of any sort of MIDI data, scale of any sort of midi data (eg adjust velocity by 15%), intricate selection of MIDI data (eg select all notes on channel 2 with velocity between 30-65) which you can feed into MIDI transformations... You know, computery stuff! Logic actually has a MIDI velocity compressor: http://www.musictech.net/2014/01/logic-power-4/ I'm thinking of my QX-1, Voyetra for DOS and Cakewalk 3 for Windows 3.1 here. :)

    But my real question is: what's up with the racks version of MIDI Sequencer? Want!

  • @syrupcore said: "what's up with the racks version of MIDI Sequencer? Want!"

    Yup. Me too.

  • @syrupcode - midi transforms you could apply to your midi file in the editor would be good idea too - lots of things here that could work on a selection of notes or the whole sequence or a single track &/or channel say:
    note stretch to lengthen/shorten(e.g. turn those 1/4 notes into 1/16ths),
    transpose (chromatic or key shift) - like in midiSequencer
    patterns you can cut and paste (QX5 has this),
    velocity adjusts - can be done by redrawing or shifting(the velocity graph will be displayed under the note grid).
    filter & compress & redraw midi CC's

    so yes, the key to this is an ability to fine select with some common dialog.

  • edited July 2014

    midiSequencer rack is abit on hold at the moment as I'm finishing off v1.7 first because this contains a redesign of how midi CC's work (to enable me to ramp up to at least 16 rather than 4). I need about another week to work on this.
    Chords do give a flavour of the rack, but the rack is truely contrapuntal as you can work on melody lines independantly.
    I will start work on this after 1.7 then as it's the destination of design for midiSequencer , and the sequencer I would most like to have on the ipad!

  • So, Genome started glitching during rehearsal this weekend and I'm pretty sure the likelihood will continue to increase with iOS updates. I started exploring bm2 as a possibility, but I'm not loving it and won't be able to repeat sections anyway. So, no pressure Tony, but I'm going to hold off trying to reprogram until this app comes out.

  • This app is sorely needed!! We dont even have the equivalent of an MMT8 on IOS - go figure. A lot of these devs - Nano Studio, BM2, even the new iMPC Pro - don't see the value of bringing a capable midi sequencer (reminiscent of the afore mentioned hardware boxes - RS7000, MPC1000, MC505) to the IOS market (and really the same goes for desktop apps). That's crazy! Just the ability of pattern/sequence switching on-the-fly would be a welcome addition to Nano Studio or BM2, but despite the pleading, they've never gone for it. Maybe they just don't have the programming chops to do it (jus' kidding) but make no mistake - this is a huge opportunity for Tony and this app will be a game changer.

    Tony - another cool feature would be something inspired by the Elektron boxes - "Triggerless Trigs" - this gives you the ability to engage quantized/un-quantized sequences at any moment. For example, one cool thing one could do with this feature is modulate something (e.g. CCs to mod filter cutoff). Say you have a drum beat going and you trigger this sequence at any time during playback. This sequence (which likely would only contain CC data) plays back only while you hold down it's trigger. This would open up some clever ways to modulate sound during a live performance. It gets really awesome when you use different sequence lengths for the notes and the CCs. Which brings up the point - pattern lengths need to be variable within a given sequence, with the longest pattern being the master (or user config'd).

    Can't wait for this!! :-)

  • edited July 2014

    @Moonwolf - I'm back working on it.
    @Mkunoff - looking forward to the challenge. I was expecting good things from iMPC Pro Timeline editor, but alas no, so nanostudio is still the best I feel (but not sure I want all those yellow guide-lines when you can just swipe...)

    Your triggerless trigs sound like phrases - press a button and it plays a set of midi commands (sort of like what steinberg's xphraze vst synth did with non-programmed sound). It sits somewhere between this new app (midi file editing) and midiSequencer (which will soon be able to play up to 16 controllers (NRPN,RPN, Sysex or normal CC's).

  • Yep - I think you understand! :-)

  • Genome supports pattern switching on the fly. Actually more robust than an mmt-8 though I think you'd need blank sequences to emulate the mmt8's muting. I did a lot of shows driven by the mmt8! Still have it but the screen is dead.

Sign In or Register to comment.