Мое предложение - использовать OpenAl (3D кроссплатформенный Audio API)
Его довольно легко освоить, и он предполагает такой же поток программирования, что и OpenGl. Это бесплатно и имеет различные расширения для использования звуковых карт. OpenAl имеет библиотеку, похожую на OpenGl Utility Toolkit (GLUT), которая называется freealut. Это делает вещи еще проще.
Это может быть хорошим местом для начала:
http://www.devmaster.net/articles/openal/
Некоторые функции в этом коде устарели, но, прочитав документацию, вы сможете обновить ее.
В руководстве devmaster также рассказывается, как загружать файлы ogg vorbis (без лицензионных отчислений) в память и воспроизводить их. Вам нужно скачать и собрать libvorbis и libogg, чтобы сделать это, но есть хорошая документация и, если вы используете Visual Studio, уже готовые решения.
Тот факт, что Creative Labs (крупнейший производитель звуковых карт) является основным спонсором проекта, является отличным аргументом в его пользу. Оборудование не будет проигнорировано.
И последнее, не забудьте скачать OpenAl SDK и ссылаться на соответствующие библиотеки и включать каталоги. Всегда много людей спрашивают, какие именно файлы хранятся внутри него.