Many of the advanced features of gmmp can consume a good amount of cpu so this is a guide for getting playback as smooth as possible. To start I would like to explain why these features can consume a lot of CPU time. In order to provide some of the advanced features like gapless playback, equalization, and extra format (flac, wv, wma, ape) support I had to write my own code to read in the audio data, decode it, then send it to the audio device for output. I will refer to this as the "audioengine". Normally you can just use a built in java class (MediaPlayer)provided by google to play an audio track, but the features I mentioned are simply not possible to do with the MediaPlayer class. As time goes on it seems google is adding more features that make it possible to do some of these things just by simply using the built in API. Examples of this are equalizer support in 2.3+ and flac support in 3.1+. GMMP is smart enough to use the built in features when possible, then fa