前言
我们已经了解了如何使用AudioRecord录制pcm音频,所以我们要了解pcm数据的存储格式,才能对其进行转换。
正文
首先看一下图片:
在这里插入图片描述
以上图为例,在初始化AudioRecord的时候可以设置录制的格式:
public static final int ENCODING_PCM_16BIT = 2;
public static final int ENCODING_PCM_8BIT = 3;
其中最常用的是ENCODING_PCM_16BIT,在网上查看一下很多的资料,ENCODING_PCM_8BIT已经处于半废弃状态,随着科技的进步,就连小孩子的玩具播放的音频都是16位的。
另外一个参数是声道数:
public static final int CHANNEL_IN_MONO = CHANNEL_IN_FRONT; // 单声道
public static final int CHANNEL_IN_STEREO = (CHANNEL_IN_LEFT | CHANNEL_IN_RIGHT); // 双声道
双声道会以LRLRLR的格式保存左右声道的内容,组合成一个完成的样本。
从上图我们可以总结:8个比特的位置,8位单声道可以存储8个样本,8位双声道能存储个样本,16位双声道能存储4个,16位双声道只能存储2个。
总结
今天的内容非常的简单,主要是为了下一篇做准备,下一篇我们会实际操作:pcm单声道和双声道的转换。
网友评论