Nick Collins

Home [Music] Research {Software} [Teaching] Contact

 

iPhone/iPad Apps

Five of my apps are now available (for free) courtesy of Op 133 Studios
The live coding app trilogy:
Cryptoclash
RISCy
TOPLAPapp
and:
BBCut
Concat

Four further apps are now withdrawn. Contact me if you're interested in the code:
iGendyn
PhotoNoise (iPad)
VideoNoise
PhotoOSC

Cryptoclash

Get it from the App Store: LINK

Cryptoclash is a strange generative synthesizer, which translates letters into sound. By typing in a string of up to 20 letters (a-z), you set up the states of the sound engine, which are represented as roaming particles. Every time they collide, things can change! Use the accelerometers to change gravity, and tap on a ball to give it a velocity boost. Each time you choose the source string, you create a new sounding patch. Some sounds are noisier, and others more meditative; keep exploring and you'll hear interesting new tuning systems (such as 26 notes per octave), and different amounts of synthesizer feedback.

The central idea behind this work is that of the musical cryptogram, where letters are turned into notes; but the sound engine here avoids such a direct and obvious mapping for a combination of physics engine (thank you Box2D), live coding, sonification, finite state machines, Markov models and feedback FM.

Download Cryptoclash if you are open to stranger computer music sounds, and avoid it if you just want diatonic melodies and piano sounds!

You may be interested in the other two in my accessible live coding triology; TOPLAPapp and RISCy, below.


RISCy

App Store link for RISCy

RISCy is a drag and drop synthesizer puzzle full of sonic perturbation. You live code via the limited instruction set in the lower part of the interface; drag out tokens to the top area to build your synth graph, drag a token back off the top area to remove it. Each token has an aural consequence, and some special tokens also change the nature of the hidden graph connecting active tokens; puzzling out these relationships is part of the fun. You'll be able to make lots of noisy sounds as well as generative sequenced patterns. Press ! to clear the graph and reset; press ? to get a random starting point. Download RISCy if you are open to stranger computer music sounds, and avoid it if you just want diatonic melodies and piano sounds!

version 1.1: A few fixes and rationalisations, and two brand new instructions: D for delay, and T for tempo!


TOPLAPapp

App Store link for TOPLAPapp (free app)

TOPLAPapp is a sonic puzzle based around a virtual machine for sound synthesis. This machine only accepts a few valid instructions, and you control it by placing each command letter within a grid, along with setting some associated parameter sliders. The machine runs through the grid, following the instructions to create the output sounds, which are usually of a somewhat noisy character, hopefully interestingly so. The historical antecedents include instruction synthesis as pionneered at the Institute of Sonology in the 1970s, and the live coding movement, of modifying a running program as it acts. This app is intended for those interested in more experimental sound art, and is in no way a traditional diatonic melody generator. Don't download this unless you are open to stranger computer music sounds.

Be careful of your ears, this app can produce wild sounds at high volume. Program this sound synthesis puzzle machine by dragging letters TOPLAp to the grid; you can also set a parameter for each position via the slider at each slot. The audio engine whizzes through the states many times per second. Press ! to clear the grid, and ? to randomise. No save or load is allowed, to promote improvisation. Live coding engineered by Click Nilson.

TOPLAP is the Transnational Organisation for the Promotion of Live Algorithm Programming, or somesuch abbreviation (TOPLAP website).


BBCut

Get it from the App Store: LINK(version 1.2, iOS 7)

Create remixes of anything in your Music Library with the help of BBCut. This app uses live beat tracking to automatically attempt to align itself to the structure of your music (it will work best with strongly rhythmic music in 4/4, but can also have interesting consequences on other sources...). You can have automatic or manually triggered cut-ups, and bring in a comb filter effect as well for additional havoc. Lots of fun will ensue.


Concat

Get it from the App Store: LINK

NOTE: Requires audio input; iPod Touch owners need to have a headphone microphone, and on iPhone will use 'phone' mode rather than the bottom loudspeaker to avoid feedback.

Concat is a 'concatenative synthesizer' operating on live audio streams. The current sound input is matched to the best fitting stored audio in recorded buffers; for example, you can control playback of other sounds via your voice. The matching is based on four timbral features, and you can choose the size of the matched segment played back, from immediate small grains to larger segments. Concatenation comes from choosing lots of these grains one after another to make novel output sounds. This feature-based granulator lets you create up to five buffers of around 20 seconds each; try capturing your friends' voices, the sounds of your environment, and more...

Remember to press 'record' to get started. The app can playback segments from the buffer while the buffer is being recorded; the grey 'read' pointer on the recording graphic shows where sound is sourced from, and the black 'write' pointer shows where in the buffer you are. Recording will loop around the buffer (it's a circular buffer) if you leave it recording, so you can continuously be creating new source materials. Up to five favourite buffers can be saved and loaded via the preset buttons, which will persist between uses of the app. Try changing the audio feature weights to get variation in the matching behavior, and change threshold to make the app more or less sensitive to audio input; it only triggers matches if there is sufficient volume at the mic.

Have fun!

1.1 update: As well as a cosmetic tidy-up, I've added the ability to fill the buffer by sourcing from a track in your iPod Music Library. Select the track via the control box, and wait for a moment for it to load (this will take noticeably longer on older devices before iPod 4 or iPhone 4). The source position slider will choose where in the track you grab the audio from as a proportion of the whole length of the track; so put it central to get audio from the middle.



iGendyn

Live and entertainingly noisy synthesiser, responding to multitouch and accelerometer control. You can control up to three independent voices at once. The sound synthesis method is GENeral DYNamic stochastic synthesis, as pioneered by Iannis Xenakis. Imagine a set of control points (CPs) which together define the shape of a time domain waveform; with each new cycle through this waveform, their relative positions are updated using probabilistic distributions.

Further instructions:

On screen x is amplitude, y is minimum frequency (the frequency of scanning through the control points to make a waveform). Hold the device flat with longer edge pointing away from you. Then tilting left to right controls the degree of probabilistic change to control points with each output cycle. Tilting around the axis through the middle of the device parallel to the shorter edge will change the frequency range (between minimum and maximum frequencies of scanning allowed). It shoudl be much more intuitive to try this out for yourself and not worry about the exact mechanics of the algorithm unless you're really curious. For the second algorithm, below, the other two accelerometer axes also have an effect on the two parameters of a Lehmer random number generator.

Double touch to toggle displaying the options screen icon; click it to go to a page where you can change algorithm parameters such as the probability distributions for updating amplitude and duration positions of control points (AmpDistr and DurDistr, choose from LINear, CAUchy, LOGist, HYPerbcos, ARCsine, EXPon, to use Xenakis's names), as well as their parameters (Amp Param and Dur Param), the number of control points within each cycle (CPs), and which algorithm to use.

Two variants of the algorithm are provided:

Gendy1: first order random walk on control point positions.

Gendy2: second order random walk, with controllable Lehmer random number generator parameters mapped to two accelerometer axes. Closer to Hoffmann, Peter. (2000) The New GENDYN Program. Computer Music Journal 24:2, pp 31-38.

For more reading, see Xenakis' Formalized Music (1992, Stuyvesant, NY: Pendragon Press) chapter 9 (pp 246-254) and chapters 13 and 14 (pp 289-322). The BASIC program in the book was written by Marie-Helene Serra so I think it helpful to credit her too.


PhotoNoise

Watch out: this app can be very noisy, be careful with your ears and keep volume low initially!

Choose photos and images from your Photo Albums as the data source for noisy sound synthesis. Up to five touches on screen are detected, and the image r,g,b and intensity values at touch locations mapped to the parameters of chaotic and noisy sound synthesis algorithms. Three algorithms are provided:

1) Gravity Grid: a particle is trapped under the influence of gravity within a set of fixed bodies, and spins around chaotically at fast rates
2) Frequency Modulation: each touch controls one carrier and modulator pair using FM synthesis.
3) Nonlinear Synthesis: a special nonlinear differential equation with weirdly oscillatory solutions is continually solved.

If your definition of 'music' is limited to diatonic notes, you probably won't like this. But if you're up for some fun with noisy sound, you should enjoy the experience! Try different images as sources and remember to use up to five fingers at once to control each algorithm.

Version 1.2: Added a new synthesis mode based on square waves, alternative mappings for each preset, and a tube reverb simulation. Even noisier!


VideoNoise

Watch out: this app can be very noisy, be careful with your ears and keep volume low initially!

Use live video from a 4th gen iPod or iPhone as the data source for noisy sound synthesis. Up to five touches on screen are detected, and the image r,g,b and intensity values at touch locations mapped to the parameters of chaotic and noisy sound synthesis algorithms. Four algorithms are provided:

1) Gravity Grid: a particle is trapped under the influence of gravity within a set of fixed bodies, and spins around chaotically at fast rates
2) Frequency Modulation: each touch controls one carrier and modulator pair using FM synthesis.
3) Nonlinear Synthesis: a special nonlinear differential equation with weirdly oscillatory solutions is continually solved.
4) Square wave synthesis

Use the Torch button to toggle iPhone torch; you can change cameras between front and back, and the 'tube' toggle will turn on or off a tube reverb on the final audio output.

If your definition of 'music' is limited to diatonic notes, you probably won't like this. But if you're up for some fun with noisy sound, you should enjoy the experience! Try different places as sources and remember to use up to five fingers at once to control each algorithm.


PhotoOSC

Choose photos and images from your Photo Albums as the data source, and send touch based pixel data via Open Sound Control (OSC) to another computational device. Up to five touches on screen are detected, and the image r,g,b and intensity values at touch locations obtained. The OSC messages are sent to the IP and port number you choose; changing either value will update the target address (make sure your iDevice is on the same network as your target; with a laptop, you can create one locally, for instance). The OSC messages are of the form:

[/PhotoOSC/began, touch ID] : touch began, touch ID is a number from 0-4, stable throughout the touch action

[/PhotoOSC/moved, touch ID, x, y, r, g, b, intensity] : touch position update, x and y are in normalized co-ordinates of 0.0 to 1.0, and r, g, b, and intensity are also normalized from 0.0 to 1.0, giving the color and intensity values at the touch point

[/PhotoOSC/ended, touch ID] : touch action finished

You can now set up your own sound synthesis mappings or whatever you'd like to control

For an example of a self-contained app based on these principles, with its own sound synthesis engine, see PhotoNoise above. Have fun!