OpenAL++ is an object oriented API for spatial sound, built on top of OpenAL. It also uses OpenThreads and PortAudio to give easy to use, portable support using input devices. By using smart pointers, memory allocation problems are held down to a minimum