音频格式之PCM

音频格式之PCM PCMPulse Code Modulation脉冲编码调制 是最基础、无损的原始音频格式绝大多数音频文件、播放设备的底层数据都是 PCM。PCM是把连续的模拟声波按固定间隔采样、量化、编码转换成数字二进制数据全程无压缩、无损耗。狭义点讲PCM数据可以理解为麦克风采样后的原始数据也是扬声器播放的基础数据。PCM未经过压缩每个点的数据是标准时间点的采样2进制数据。一、采样数据关键属性1.1 采样率Sample Rate每秒采集多少次声波样本单位 Hz。常见的采用率有8000Hz电话、对讲机窄带语音16000Hz主流语音通话、微信语音44100HzCD 标准、MP3 / 音乐通用48000Hz视频、直播、影视、声卡主流96000/192000HzHiFi 高保真1.2 采用位数Bit Depth单个样本用多少 bit 存储决定动态范围、信噪比。8bit低音质、老旧设备16bitCD、绝大多数音乐 / 语音最常用24bit专业录音、HiFi、混音1.3 声道数Channels单声道 Mono1 声道语音、录音笔立体声 Stereo2 声道音乐、耳机多声道5.1/7.1 环绕声影视1.4 计算公式比特率 采样率 × 采用位数× 声道数例44100Hz 16bit 双声道比特率 44100 × 16 × 2 1411200 bps每秒字节1411200 ÷ 8 172.27 KB/s由以上公式可知采样率越大采用位数越高声道数越多 单位时间的PCM数据越大当然音质也越好。二、 PCM存储格式2.1 裸流PCM该数据无法知晓PCM的采用率采用位数和声道数因此在播放的时候需要人工输入相关的音频属性。纯二进制音频数据无头部信息播放器无法直接识别必须手动指定采样率 / 位深 / 声道 / 字节序用途嵌入式、实时音频流、音频编解码中间数据2.2 带头格式的PCMWAVAIFFwindows的标准音频数据音频头PCM 组合的方式存储音频数据。 并且以.wav格式存储数据。 使用该格式音频播放器可以从wav的头中读取采用率采用位数和声道数等数据用于音频播放。wav格式具体在后面介绍。AIFF为苹果公司的音频格式也是头裸流的PCM的格式具体后面 AIFF格式介绍。三、字节序 编码格式开发 / 音频处理必看PCM 编码标识PCM_S16LE16 位有符号、小端序全球最通用WAV 默认PCM_S16BE16 位有符号、大端序PCM_U88 位无符号字节序PC 系统几乎都是小端 LE。四、优缺点优点无损、音质最佳音频处理、混音、转码首选源格式结构简单编解码开销极小实时性强缺点体积巨大不适合网络传输、存储所以才有 MP3/AAC 等压缩格式五、应用场景录音软件、专业音频工作站声卡、麦克风、耳机底层数据WebRTC、直播、语音通话原始音频流FFmpeg、音频编解码开发中间格式CD 唱片标准 44100Hz/16bit / 双声道 PCM