美文网首页
【嵌入式】蓝牙音频

【嵌入式】蓝牙音频

作者: Blue_Well | 来源:发表于2023-05-15 15:09 被阅读0次

录音和播放笼统的讲就是模拟和数字信号的相互转化,就是ADC和DAC的相互转化。将音频信号转化成数字信号为ADC,将数字信号转化成音频信号为DAC。所以这里其实只需要一个ADC和DAC模块就可以将声音录下来和播放出去了。
但是很多应用中并不是自己录音自己播放的,它可能是录音后需要传输在其他设备上面播放的,或者接收其他设备的数据再进行播放,而这些数据的传输就需要先将模拟信号数字化。

模拟信号数字化

模拟信号数字化通俗来讲就是录音,主要经过采样-量化-编码三个过程。日常生活中采集音频信号主要通过麦克风来采集,现在麦克风主要分为两大类:模拟麦克风和数字麦克风(AMIC/DMIC)

  • AMIC
    日常生活中使用的基本是AMIC即模拟麦克风,模拟麦克风输出的信号是模拟信号,需要经过ADC采样和 codec 处理才能转化为数字信号。AMIC通常需要提供偏置电压。
  • DMIC
    数字MIC相对于模拟MIC是其内部集成了ADC,所以输出的是数字信号,一般是PDM/I2S信号。
    DMIC接口也称双/立体声数字麦克风接口。这种接口允许两个麦克风共享一个公共的时钟与数据线。每个麦克风被配置为在时钟信号的不同沿产生各自的输出。这样两个麦克风的输出就能保持相互同步,设计师就能确保来自每个通道的数据被同时捕获到。
    数字麦克风的输出只有1bit ,所以使用 PDM 编码。

采样-量化-编码

  • 采样:是指用每隔一定时间的信号样值序列来代替原来在时间上连续的信号,也就是在时间上将模拟信号离散化。
    这里有一个概念,Sample Rate : 采样频率。8KHz(电话)、44.1KHz(CD)、48KHz(DVD)。
    人耳能听到的声音是20Hz ~ 20000Hz,如果让人耳能够听不出来区别,必须在20000Hz × 2 = 40000Hz以上的采样率才能达到最基本高保真要求 。

  • 量化:用有限个幅度值近似原来连续变化的幅度值,把模拟信号的连续幅度变为有限数量的有一定间隔的离散值。
    这里也有一个概念,Sample Size : 量化位数(位深)。通常该值为16-bit。
    量化规则遵循四舍五入原则,不正好处于在分级中的样值,均四舍五入后进行存储,那么也就不可避免的会造成数据损失,从而失真。

  • 编码:按照一定的规律,把量化后的值用二进制数字表示。
    这里有一个专门的模块Codec(编解码器),将量化后离散整数序列转化为计算机实际储存所用的二进制字节序列的过程叫做音频编码。反之,将二进制字节恢复成音频信号的过程称为解码。下文讲到的PCM应该也是Codec中的一个功能。

PCM( 脉冲编码调制)

经过采样-量化-编码形成的是音频的原始数据,这种原始数据格式称为PCM。PCM文件是以PCM编码方式存储音频的文件,是未经压缩的原始数字音频文件。
理论上说,任何数字音频都是无法完全还原模拟信号的,不过PCM编码是模拟信号转换为数字信号时的原始编码,它代表着数字音频的最佳保真水平,所以PCM编码就约定俗成为无损编码。

PCM数据

PCM数据体积计算方式为:采样率(Hz) x 位深(bit) x 声道数 x 时长(s)
如:一段常见的4分钟立体声(双声道)的音乐,我们以CD标准(44.1KHz采样率,16bit位深)在进行PCM编码后,其体积为:44100Hz x 16bit x 2 x 240 = 338,688,000 bit(比特)= 40.37MB

ADPCM

ADPCM(Adaptive Difference Pulse Code Modulation)自适应差分脉冲编码调制,是对PCM数据进行调制的一种方式。

PCM数据压缩主要有两种压缩算法MS_ADPCM(Microsoft-ADPCM)IMA_ADPCM(Interactive Multimedia Associatio-ADPCM)

相关文章

网友评论

      本文标题:【嵌入式】蓝牙音频

      本文链接:https://www.haomeiwen.com/subject/ilymsdtx.html