转自http://blog.csdn.net/leixiaohua1020/article/details/50534316
PCM的概念参考http://blog.csdn.net/qingkongyeyue/article/details/52122486
4分钟每分钟60秒,由采样率为44100Hz可知一秒可采样44100次(人耳只能听到22.05KHz的声音,如果声音比这个高一般人听不到(超声波)取2倍是根据奈特抽样定理,比这个低会出现混叠效应),第一个2代表2声道,第2个2是因为采样精度为16bit,也就是2字节的意思
PCM音频采样数据没有文件头信息,所以采样率需要自己设置,如果设置错误,应该也不能听。
PCM格式
1、分离PCM16LE双声道音频采样数据的左声道和右声道
本程序中的函数可以将PCM16LE双声道数据中左声道和右声道的数据分离成两个文件。函数的代码如下所示
循环读取4个字节的采样数据,先向左声道写入两字节数据,然后向右声道写入两字节数据。
2、将PCM16LE双声道音频采样数据中左声道的音量降一半
本程序中的函数可以将PCM16LE双声道数据中左声道的音量降低一半。函数的代码如下所示。
变成short型只有2个字节,把两个字节的数据除以2,再写回去
3、将PCM16LE双声道音频采样数据的声音速度提高一倍
本程序中的函数可以通过抽象的方式将PCM16LE双声道数据的速度提高一倍。函数的代码如下所示
声音频率的高低叫做音调(Pitch)