PCM (Pulse Code Modulation) 音频数据是一种未经压缩的原始音频数据格式,各个音频样本都由固定大小且有符号/无符号的整数值组成。每个 PCM 帧包含一个或多个 PCM 音频样本,通常表示为 16 比特或 24 比特或 32 比特的整数值。
PCM 格式音频的数据结构是轻松理解和实现的。每个音频帧包含一个或多个 PCM 音频样本(例如,对于单声道,每个PCM帧只包含一个音频样本,而对于立体声,则有两个样本),每个样本由一个固定数量的比特位(通常为 16 比特)表示,可以是有符号整数或无符号整数。
以下是用于描述基本 PCM 数据结构示例:
Byte 1 Byte 2 Byte 3
+--------------+--------------+
| Left Sample 1| Right Sample 1|
+--------------+--------------+
Byte 4 Byte 5 Byte6
+--------------+--------------+
| Left Sample 2| Right Sample 2|
+--------------+--------------+
... ... ...
上面的示例展示了一种记录“立体声 PCM”音频样本的方法,其中每个音频帧都包含左右两个音频样本,每个样本是由16位宽度的整数值来表示。
AMR-WB (Adaptive Multi Rate Wideband) 是一种语音编码格式,它使用抽样率为 16 kHz,量化位数为 16 比特,并且允许比较低的码率(通常在 6 到 12.2 kbps 范围内)来压缩语音内容。
AMR-WB 的数据结构与 PCM 数据有所不同。PCM 格式的音频是原始音频数据,而 AMR-WB 音频则是压缩后的数据。每个 AMR-WB 编码帧包含多个采样点意味着一个 AMR-WB 帧可以

文章介绍了PCM作为未经压缩的原始音频格式和AMR-WB压缩语音编码格式的区别。PCM数据结构直观,每个帧包含固定数量的样本,而AMR-WB则包含帧头和压缩音频数据。通过MediaCodecAPI进行转换可能出现杂音,原因包括数据质量、丢失、顺序错误、格式不匹配或编码器配置错误。
最低0.47元/天 解锁文章
979

被折叠的 条评论
为什么被折叠?



