Long shot, but any possible way to speed up audio but retain original pitch?

Hi,

I’m in the process of creating a digital version of a 1980s synth called the Omnichord which originally featured a selection of drum/bass loops whose speed could be changed via a dial without affecting their pitch.

I’ve been trying for ages to figure out how to accomplish this in Corona and have been playing with the secret audio APIs but come up empty-handed. I can’t figure out a way to modify the playback speed of a sample without modifying its pitch, and the only alternative I can think of, queuing up individual drum and bass samples in order then changing the rate at which they are triggered, seems enormously complex too, particularly given that I understand Corona’s audio API is not metronome-accurate in terms of timing.

Is there a solution to this I’ve not thought of? Conversely, have I picked utterly the wrong tool for the job?

My Objective-C is dreadful so I am hoping for a non-native solution. I love Lua so am really hoping I can stick with Corona on this one!

Not within Corona SDK.  If it’s possible to do so in native space, then you might be able to use Corona Enterprise for that part and Corona SDK for the rest.

Rob

Dang. Time to read up on objective-c, then. :confused:

Thanks for the confirmation!

Did the original instrument playback and pitch shift sampled loops, or did it use sequenced rhythms and just alter the tempo? 

You could attempt to create sequenced patterns using percussion samples and then control the tempo of the playback with touching the sample rates.

I don’t know that this would be any easier, but it’s an alternative approach.

The latter. I have got a bit overwhelmed with the sheer number of assets and functions in the app so was a bit concerned about whether it’d even be possible to go this route, but I might try at least since I think both sufficient Objective-C and the cost of Enterprise are a bit beyond me at this moment in time.

Not within Corona SDK.  If it’s possible to do so in native space, then you might be able to use Corona Enterprise for that part and Corona SDK for the rest.

Rob

Dang. Time to read up on objective-c, then. :confused:

Thanks for the confirmation!

Did the original instrument playback and pitch shift sampled loops, or did it use sequenced rhythms and just alter the tempo? 

You could attempt to create sequenced patterns using percussion samples and then control the tempo of the playback with touching the sample rates.

I don’t know that this would be any easier, but it’s an alternative approach.

The latter. I have got a bit overwhelmed with the sheer number of assets and functions in the app so was a bit concerned about whether it’d even be possible to go this route, but I might try at least since I think both sufficient Objective-C and the cost of Enterprise are a bit beyond me at this moment in time.