Элементарнее работы с OpenAL ничего нет. В SDK найдёшь все необходимые примеры.
Тривиальный пример. Создаём устройство и контекст, источник звука и буффер, который он будет проигрывать.
device = alcOpenDevice( 0 );
context = alcCreateContext( device, 0 );
alcMakeContextCurrent( context );
int source, buffer;
alGenSources( 1, &source );
alGenBuffers( 1, &buffer );
...
QByteArray sound_data;
// Load sound data from something to sound_data
alBufferData( buffer, AL_FORMAT_STEREO16/*num channels*/, sound_data.constData(), sound_data.size(), 44100/*frequency*/ );
alSourcei( source, AL_BUFFER, buffer );
alSourcePlay( source );
...
alcDestroyContext( context );
alcCloseDevice( device );
Дёшево и сердито :-D