Меня всегда радовало разнообразие возможностей по работе со звуком в Линуксе.
Сегодня, например, несколько часов подряд взрывал себе мозг на тему QSound в Qt. Дело в том, что под Виндой, чтобы воспроизвести звуковой эффект без извращений, нужно просто вызвать статический метод QSound::play("имя файла")
. В Линуксе тоже так можно, но чтобы звук действительно прозвучал — надо ставить NAS. Узнав об этой необходимости, принялся ставить оный, параллельно размышляя, как лучше заставить пользователей проделать то же самое. Мозги начали нагреваться.
Когда с nasd возникли какие-то проблемы, быстренько переключился на поиск альтернатив. Уже задумался о компиляции версии под Линукс с Phonon. Остановил тот факт, что фононовский учебный проект из состава Qt SDK не собрался out of the box. Попробовал учебный проект QAudioOutput оттуда же — не работает.
Уже начал было впадать в уныние, но в конце-концов осенило:
#ifdef Q_WS_X11
QProcess::startDetached("play mysound.wav");
#else
QSound::play("mysound.wav");
#endif
Вроде бы, ерундовая задача, а — чуть стол головой не разбил. Так жить нельзя.