Patent ID: 7596582

Claim:
A system for synchronizing a visualization with audio samples comprising: a memory; one or more audio sources configured to provide audio samples that are to be rendered by a media player; an audio sample pre-processor coupled to the memory communicatively linked with the one or more audio sources and configured to receive and pre-process audio samples before the audio samples are rendered, the pre processing providing characterizing data associated with each sample, wherein the characterizing data is derived from the audio samples, the audio sample pre-processor comprises a Fast Fourier Transform to process the audio samples to provide frequency data associated with the audio samples; the audio sample pre-processor to provide a timestamp for each audio sample, wherein each timestamp is maintained by a data structure associated with the audio sample, and wherein each timestamp is assigned based upon when the audio sample is calculated to be rendered by the media player; an audio rendering object called by the media player to render visualizations corresponding to the audio samples, wherein the audio rendering object has an associated target frame rate defining how frequently the visualizations are drawn, redrawn, or painted; and one or more effects associated with the audio rendering object, the one or more effects configured to receive the characterizing data and an instruction to render a visualization from the audio rendering object, the one or more effects rendering the visualization using the characterizing data, wherein the visualization is synchronized with an audio sample that is being rendered by the media player and the rendering corresponds to the associated target frame rate.