AAE vs Superpowered SDK

I'm having trouble selecting between AAE and Superpowered SDK. Superpowered has way better Time stretching than Core Audio, so that would suggest using it instead of AAE (since I would need Time stretching for my purposes). On the other hand the new iOS9 Audio Unit Extension system would speak for AAE in the long run. Also I haven't found anything on integrating AudioBus with Superpowered.

So if someone has any pro tips on one of these it would help a lot:
1) Is there any proper (actually good quality) time stretching system to be used with AAE?
2) Has anyone integrated Superpowered with AudioBus?
3) Any other comments on the subject?

Hopefully this is a subject that would benefit others too!


  • Hi Juhoj:

    AAE Pro's: AudioBus Seamless Integration
    Superpowered: Haven't used it Sorry :s

  • Time stretching: take a look at Apple's time/pitch AU. I haven't integrated it into the sample app, but it should be just a matter of using AEAudioUnitFilter to load up the time/pitch AU and add it to a group.

  • The Apple's time/pitch AU is lower quality than Superpowered's. Works pretty well for melodic instruments but fails for most percussion sounds.

  • Right, fair enough =)

  • edited August 2015

    If you want a quick way to add and modify AEAudioUnitFilter parameters, I highly recommend using Dream Engine's helpful DETAAEFilters classes:


    #import "DEReverbFilter.h"
    #import "DEDistortionFilter.h"
    #import "DEDelayFilter.h"
    #import "DEBandpassFilter.h"
    #import "DEDynamicsProcessorFilter.h"
    #import "DEHighPassFilter.h"
    #import "DEHighShelfFilter.h"
    #import "DELowPassFilter.h"
    #import "DELowShelfFilter.h"
    #import "DENewTimePitchFilter.h"
    #import "DEParametricEqFilter.h"
    #import "DEPeakLimiterFilter.h"
    // For this example, let's apply the Varispeed filter
    #import "DEVarispeedFilter.h"
    @property (nonatomic, strong) DEVarispeedFilter *varispeedFilter;
    self.varispeedFilter = [DEVarispeedFilter filterWithAudioController:self.audioController];
    // Documented range is from 0.25 to 4.0, but empircal testing shows it to be 0.25 to 2.0. 
    // Default is 1.0.
    self.varispeedFilter.playbackRate = 1.0;
    // Range is from -2400 to 2400. Default is 0.0.
    self.varispeedFilter.playbackCents = 1200;
    [self.audioController addFilter:self.varispeedFilter];
  • Yep, the time stretching quality was what impressed me in Superpowered SDK but I would rather use TAAE if possible. One possibility is to dig into time stretching algorithms of course :)

  • Check out my previous post here:


    If you can get time stretching working with this let me know.

  • (Just replied to thread - my bad. Better two-months-late than never, eh?)

Sign In or Register to comment.