linux音频编程,记录一些可能用得到的信息。
音频编程的过程很简单,按照一定的模式打开声卡(open),设置声卡参数(ioctl),读声卡缓存(read)录音,写声卡缓存(write)放音,最后关闭声卡(close)。
主要是IOTCL函数中相关的命令:
SOUND_PCM_WRITE_BITS:设置声卡的量化位数,8或者16,有些声卡不支持16位;
SOUND_PCM_READ_BITS:获取当前声卡的量化位数;
SOUND_PCM_WRITE_CHANNELS:设置声卡的声道数目,1或者2,1为单声道,2为立体声;
SOUND_PCM_READ_CHANNELS:获取当前声卡的声道数;
SOUND_PCM_WRITE_RATE:设置声卡的采样频率,8K,16K等等;
SOUND_PCM_READ_RATE:获取声卡的采样频率
SOUND_PCM_SYNC:更改播放文件参数时,播放掉缓冲区中的内容;
详细的内容可以参考下面的网站,不过是英文的:
http://www.oreilly.de/catalog/multilinux/excerpt