• Home
  • Posts
  • Home
  • Posts

Development

Wow. Some great suggestions coming in already! I have a big Evernote document full of notes.

Some of my favourites:

  • Larry Seyer over on the Loopy forum suggested putting together a bunch of pre-configured templates to match the functionality of existing looper hardware, to make transitioning over to Loopy really easy.
  • I’ve heard a number of variations on the theme of loop splicing: Tobias Rauck (a.k.a. obiwahnkentobi) proposed splitting loops into segments and muting/unmuting each segment, and even time-offsetting them. That was echoed by Tickletiger on the AB forum, who proposed a ‘cake cutter’ interface which splits loops into equal pieces, then lets you slide them in and out to adjust amplitude, or even remove them altogether, time-stretching the other slices to fit.
  • I’ve also heard a really good suggestion by Oliver Imseng about audio quantisation with transient analysis and warp markers.
  • Wally over on the Loopy forum wrote a good summary of the two kinds of track groupings that folks are going to want to use.

Keep it coming!

More for you tomorrow.

Read More


The journey begins. Stay tuned.

Read More

Thirteen Months of Audiobus: Part 2

This is the long awaited sequel to the tale of Audiobus’ development. I’m completing this article now, on the day we say an emotional farewell to our motorhome Nettle, who has today been sold to a new family in the UK. It seems like a fitting time to tie off some loose ends as we start the next chapter of our lives in our new home in Australia.

In Part 1 of this article, I wrote about the early stages of the technology which was to become Audiobus, our inter-app audio platform, now supported by over 500 great music apps. Part 1 ended just as Sebastian had one of his genius moments, which I obnoxiously left as a cliffhanger. So, onwards:

It was winter in the south of France, and I was buried in the best kind of work: A new project, and one that brought together a bunch of different interests into a challenging, exciting heap.

But first, it was time to move on and find a more satisfying place to spend the rest of the winter.

Read More

Searching iOS header files with Xcode

I’m often having to grep through various iOS frameworks in search of error codes that appear (“What the bloody hell does -10867 mean?”). This can be a bit annoying – especially while working with Core Audio – so I put together an Alfred workflow that does it for me.

Here it is – type “hs” (short for “header search”) then the text you want to search for, and it’ll give you matching results. Hit enter to open that file:line combination in Sublime Text, or edit the action script to work with the editor of your choice.

Search Xcode Header Files.alfredworkflow

Screen Shot 2013 04 01 at 11 54 24

Read More

Thirteen Months of Audiobus

Tomorrow, Monday December 10, my friend and partner-in-crime Sebastian Dittmann and I are launching a project over twelve months in the making: Audiobus. We’re very proud of what we’ve managed to do, and we both firmly believe that Audiobus is going to fundamentally alter the way people create music on the iPad and iPhone.

You can find out more about Audiobus itself at audiob.us, but I wanted to take a moment to breathe, look back, and explain why the hell I’ve been so quiet over the last year.

Read More

An Xcode 4 template to create universal static libraries

I’ve created an Xcode 4 project template to create universal (armv6, armv7 and simulator) static libraries for iOS, based on Adam Martin’s script:

iOS-Universal-Library-Template

The existing static library template provided with Xcode only builds one architecture, which is not particularly suitable for distribution. A number of people have created scripts to create universal libraries, which require some mucking around with Xcode target settings to use.

This template draws on this work to provide all that is required to produce universal libraries – just select the ‘Universal Static Library’ type in the New Project/New Target dialog, and you’re all set.

Universal static library

Read More

The Amazing Audio Engine: Funky Remote IO-based Core Audio Engine Coming Soon

The Amazing Audio EngineHuzzah! I’m announcing a new project which will be launching over the next couple of months.

It’s called The Amazing Audio Engine, and it represents the product of years of experience with iOS audio. It’s a sophisticated iOS audio engine that lets developers skip the Core Audio learning curve, and get on with writing great software.

The tech behind this is what drives Loopy and Loopy HD, as well as the in-development Audiobus app.

Subscribe at theamazingaudioengine.com to be kept in the loop as it approaches launch time.

Some of the features:

  • Automatic mixing of multiple audio signals with per-channel volume and pan controls.
  • Built-in support for audio filtering and effects, including the ability to form complex filter chains, constructing channel groups, or even whole trees of groups, and filtering them as one composite signal.
  • Built-in support for audio input, including optional use of the Voice Processing IO unit, for automatic echo removal – great for VoIP.
  • Record or monitor the output of the whole audio system, for in-app session recording, or get the output of one channel, or any group of channels in the processing tree.
  • Support for any audio format (AudioStreamBasicDescription) that the hardware supports: Interleaved, non-interleaved, mono, stereo, 44.1kHz or any other supported sample rate, 16-bit, 8.24 fixed floating-point – whatever you need for your project.
  • Very light, efficient engine, designed from the ground up for speed. All Core Audio code is pure C; no Objective- C or BSD calls, no locks, no memory allocation.
  • Efficient mixing of input signals, using Apple’s MultiChannelMixer.
  • Fast, lock-free synchronisation mechanism, enabling developers to send messages to the main thread from the Core Audio context, and vice versa, without
    locking or memory allocation from the Core Audio thread. Message sending from the main thread is two-way, and can be asynchronous, with a response
    block, or synchronous.
Read More

Talking about Audiobus on a bicycle

Lets have a chat about Audiobus, you and I. Here, you can sit on the handlebars.

Read More

Hi! I'm Michael Tyson, and I run A Tasty Pixel from our home in the hills of Melbourne, Australia. I occasionally write on a variety of technology and software development topics. I've also spent 3.5-years travelling around Europe in a motorhome.

I make Loopy, the live-looper for iOS, Audiobus, the app-to-app audio platform, and Samplebot, a sampler and sequencer app for iOS.

Follow me on Twitter.

Posts pagination

« 1 … 4 5 6 … 10 »
© 2021 A Tasty Pixel.