While the basic SoundPool
class and related classes are excellent if you only need to play back sounds, these will always be limited to prerecorded and precomposed audio. The only real effect you can add is changing the volume on either the left or right output side, or both simultaneously. This can be used to somewhat create the illusion of the sound traveling with, for example, an on-screen character, but this adds a fair bit of complexity, which is already part of the basic OpenSL ES functionality, that is, positional audio.
Both OpenSL ES and OpenAL function with the concept of 3D sources, with the ability to set a source in a three-dimensional space and listeners capturing the resulting audio. This can create effects such as an audio source circling around the player's head.
Unfortunately, this is also where you come across the first major gotcha with OpenSL ES. Google has decided in its infinite wisdom that it only needs to provide a token implementation of OpenSL ES...