0 Replies
      Latest reply on Jan 25, 2016 3:27 PM by theanalogkid
      theanalogkid Apple Staff Apple Staff (610 points)

        Every so often the question about what these NewTimePitch parameters control comes up. Unfortunately these two are really not documented anywhere else, so this information should help developers wondering what these two parameters do.

         

        kNewTimePitchParam_Overlap - This value controls the number of overlapped spectral windows that are used to produce the output. More overlaps can make smooth passages sound smoother. For percussive sound, a lower overlap may be better. The value of overlap is directly proportional to CPU cost.

         

        kNewTimePitchParam_EnablePeakLocking - Peak locking enforces phase coherence of spectral peaks. While it does add some expense, peak locking results in a less "phasey" or reverberant sound (sometimes also called loss of presence).

         

        // Parameters for AUNewTimePitch
        CF_ENUM(AudioUnitParameterID) {
          // Global, rate, 1/32 -> 32.0, 1.0
          kNewTimePitchParam_Rate = 0,
          // Global, Cents, -2400 -> 2400, 1.0
          kNewTimePitchParam_Pitch = 1,
          // Global, generic, 3.0 -> 32.0, 8.0
          kNewTimePitchParam_Overlap = 4,
          // Global, Boolean, 0->1, 1
          kNewTimePitchParam_EnablePeakLocking = 6
        };