Patent ID: 6999922

Claim:
An electronic device for playing audio at user selectable rates comprising: an audio output module coupled to a single circular fixed-length outbound audio buffer for playing audio therefrom through a speaker, wherein the audio is stored as a series of sequential time-based audio samples, which are portioned into sequential frames; a first modulo pointer for modulo indexing into the circular fixed-length outbound audio buffer where a first portion of audio samples is indexed; a second modulo pointer for modulo indexing into the circular fixed-length outbound audio buffer where a second portion of the audio samples is indexed so that the first portion and the second portion of the audio samples are sequential in time; a cross correlation function for determining a position of maximum correlation between the first portion of the audio samples and the second portion of the audio samples; a third modulo pointer for modulo indexing into the circular fixed-length outbound audio buffer at the position of maximum correlation; and a SOLA (Synchronized OverLap and Add) function with a selectable rate variable, the SOLA function operating on the first portion of the audio samples and the second portion of the audio samples with an output of the SOLA function being written in the circular fixed-length outbound audio buffer at a starting position of the third modulo pointer.