日期:2014-05-16  浏览次数:20803 次

请教ARM LINUX下声卡驱动问题?
我的开发板的声音芯片是WM8731的,我用开发板自带的驱动程序能够将这芯片驱动起来,cat   xx.wav   >   /dev/dsp有些文件能够发出声音来,我移植了一个madplay过去,能够播放MP3,但声音效果很不好,播放速度也很快,兹声很大。
请教各位是怎么回事?那位有做过类似的驱动能否发个来参考下,谢谢啦。

------解决方案--------------------
是不是声道问题,如果双声道模式播放单声道声音,速度就会很快。
------解决方案--------------------
声音效果和很多因素有关,包括audio codec相关的电路设计(耳机/speaker),以及软件处理的好坏,不过一般而言,软件处理不太会影响到音质。

建议先用简单的声音测试(注意要设置采样率,单声道/立体声等),看看简单的声音是否有问题(如方波,正弦波等),如果有硬件人员辅助的话输出通道可以接到示波器看实际波形。
------解决方案--------------------
还不能确认,估计你用的wav文件刚好和声卡driver默认的采样率等一致,因此可以正常播放。

MP3播放器用到的声卡driver的功能比直接cat xxx.wav > /dev/dsp要多,cat方式下其实只使用了声卡driver的write,而MP3播放器还会用到声卡driver的一些ioctl等。
------解决方案--------------------
估计我和楼上的开发的相似,只是我的开发声音芯片是WM9712,装上mplayer后,只有耳机发声,喇叭却不能发生,各个寄存器设置都正确,这是怎么回事,谁遇到过这种问题啊??????