近几日在Ubuntu折腾了下OpenAL这个声音库,Ubuntu下有很多可以开发声音的库,什么ALSA, Pulse, Phonon, OpenAL, OSS, SDL等等,可以搜到很多,但是我一个一个安装,只有OpenAL安装成功了。安装OpenAL大概流程是,安装CMake,OpenAL,OpenALUT,你搜索关键字都可以找到下载包,好像都是跨平台的。
安装完毕后,我在Qt中写代码,运行过程中给出了提示:
AL lib:(EE) ALCplaybackOSS_open: Could not open /dev/dsp:没有那个文件或者目录
在另一台电脑还出现:
AL lib:pulseaudio.c:612: Context did not connet:拒绝访问
最终解决办法也是很奇怪,无视它,直接双击可执行文件,或者命令行执行该程序,或者脚本调用该程序都可以播放声音,而就是不可以在Qt里运行。我估计是Qt运行时环境做的怪,以及我安装之前多个库东西没有安装成功。
这个问题弄了二三天,在此记录下。
2015-10-9后记:在有的电脑上述方法依旧没有声音,然后重新安装使用了ALSA可能有声音,但有的电脑还是没有声音。我想,没有声音和硬件有关系也可能和系统驱动没安装好有关吧,到目前为止没有彻底弄明白这个问题。