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.
Updated script to extract music from GarageBand project
Important note: I am not planning on keeping this project around for long as I want to move on to other things, such as making music! I therefore propose to shut the Git project down on March 1st 2021 at the latest. Anyone is welcome to adopt and find a new home for the code in the meantime but I do not have the time to offer long term support and I will not respond to requests for the script once the project has been removed. Download it while you can!
You can find the project here: https://github.com/MisplacedDevelopment/GBExtractorPublic
Python script that extracts MIDI and audio from GarageBand projects, plus a few extras. Even if you do not like/use GarageBand or are DAWless then there may be something here for you.
Following on from investigations into how SonoBus can be used in DAWs (https://forum.audiob.us/discussion/43076/use-sonobus-to-expose-daw-tracks-to-aum) I found myself rediscovering GarageBand. I realised that there were a number of nice features in GarageBand that I had not been aware of such as multiple MIDI/audio takes and the ability of the virtual drummers to follow the rhythm of another track.
This experience spurred me to update the script I had written to extract drum parts from GB (https://forum.audiob.us/discussion/40735/extract-drum-patterns-from-garageband-on-ios-python-ista-script) so that it could extract other MIDI from GarageBand projects.
I have been working with @seonnthaproducer (thanks Seonn!) for the last couple of weeks to improve and test the script and it now has the following feature list:
- Note on/off supported for all instruments, including all types of smart instrument
- Creates a number of views of your data - full song, per track, per section.
- Time signature and tempo are preserved
- Understands a variety of MIDI meta-data such as MIDI CC and pitch wheel changes.
- GB multi-take sections are supported - use GB to jam short clips of MIDI and then export to a clip launcher such as LK.
- Export drum sections as one track per drum part to allow for multi-stem processing. Features automatic naming of each stem with the appropriate instrument for ease of use in your sequencer (limited DAW support for this option).
- Extract and compress audio from projects.
- Cut-Up mode to combine all permutations of takes in a track for creative exploration.
- Velocity and duration filter with side-by-side before/after comparison. Ideal for cleaning up MIDI guitar or drum-kit input.
Do read the project documentation, including the limitations section as there are a number of bits of functionality that I did not get to implementing.
The code got a bit bloated. I wanted to split it over multiple files but I figured it would be easier to consume as a single file. I regretted my decision to develop and test the whole thing on the iPad. Do not write code like this in real life.