团队博客

声音信号

周志强  2023-08

声音基础

声音我们每天都会听见,这是我们听觉对震动的感知,本质上声音是是介质的震动,包括固体液体和空气。振动的物体产生压强变化,这些变化将不断往外部扩散移动,这些压强的变化成为声波。声音的传播类似于丢入池塘的石头产生的水波,但是水波是上下波动,而声波是纵波,沿着波运动的方向向前向后振荡。

声音的传播和介质的硬度和密度相关,介质的密度越大,声音的传播速度越慢,而介质的硬度越大,声音的传播速度越快。例如水的密度比空气密度大,速度应该慢一些,但是水的硬度比空气大很多,所以水中声波传播的速度是空气中的几倍,所以用于声呐的性能非常好。

最简单的声波是纯音,纯音的声压的变化与时间成正弦关系:

式中,x(t ) 表示随着时间 t 的推移,压强的变化;A 表示峰值振幅(或压强);f 表示该纯音的频率;Φ 表示起始相位。这个正弦函数产生的波形随着时间的推移在 ±1 之间上下交替变化。常量 π,旧是圆的周长和直径的比值 (3.14159265...),正弦运动是最简单的一种振动形式。

音频信号

现在一般都是使用麦克风来采集声音信号,首先声波通过空气传播到麦克风的振膜,振膜随空气抖动的振幅大小产生相应的电学信号。我们把这种带有声学表征的电学信号叫做模拟信号(Analog signal)。通过 A/DC(模数转换器)将模拟信号转换成 1 和 0 表示的二进制数字,数字信号(Digital signal)。即通过 PCM(Pulse Code Modulation)脉冲编码调制对连续变化的模拟信号进行抽样、量化和编码转换成离散的数字信号。

采样位深

模拟音频是一种连续波,实际上具有无限数量的可能幅度值。然而,要在数字音频中测量这种波,我们需要在每次采样时将波的幅度定义为一个有限值,必须采用“四舍五入”的方法把样值分级“取整”,使一定取值范围内的样值由无限多个值变为有限个值,这一过程称为量化,位深代表的就是振动幅度的表达精确程度或者说粒度。一般在网络电话中用的就是 16bit 的位深,而 24bit 的一般用于电影配乐,交响乐团等等大动态的音频信号。

采样率

采样率定义了每秒从连续信号中提取并组成离散信号的采样个数,就是 1 秒内采集到的采样点的个数,一般用赫兹 Hz 来表示。比如 1 秒有 48000 个采样点那么采样率就是 48000Hz(48kHz)。

常见的采样率为:

  • 8,000 Hz - 电话所用采样率, 对于人的说话已经足够
  • 22,050 Hz - 无线电广播所用采样率
  • 32,000 Hz - miniDV 数码视频 camcorder、DAT (LP mode)所用采样率
  • 44,100 Hz - 音频 CD, 也常用于 MPEG-1 音频(VCD, SVCD, MP3)所用采样率
  • 48,000 Hz - miniDV、数字电视、DVD、DAT、电影和专业音频所用的数字声音所用采样率
  • 96,000 或者 192,000 Hz - DVD-Audio、一些 LPCM DVD 音轨、Blu-ray Disc(蓝光盘)音轨、和 HD-DVD (高清晰度 DVD)音轨所用所用采样率

通道数

声音的通道的数目。常有单声道和立体声之分,单声道的声音仅仅能使用一个喇叭发声(有的也处理成两个喇叭输出同一个声道的声音),立体声能够使两个喇叭都发声(一般左右声道有分工) ,更能感受到空间效果,当然还有很多其它的通道数。

PCM 编码

简化来说:PCM 脉冲编码调制,以一个固定的频率对模拟信号进行采样,并将采样的信号按照一定精度进行量化,最终量化后的值被输出,记录到存储介质中。

在计算机应用中,PCM 是能达到音频最高保真水平的格式,它被广泛用于素材保存及音乐欣赏,PCM 也因此被称为无损编码格式。但这并不意味着 PCM 就能够确保信号绝对保真,它只能做到最大程度的无限接近原始声音。要计算一个 PCM 音频流的码率需要数字音频的三要素信息即可:码率 = 采样率 × 量化位深 × 声道数。

Kamailio极简websocket脚本