Audio基本概念及处理流程

Posted Coder个人博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Audio基本概念及处理流程相关的知识,希望对你有一定的参考价值。

1、声音的三要素:频率、振幅、波形

1.1、频率:

        声波的频率,即声音的音调, 音调越高,频率越大;音调越低,频率越小。 人类听觉的频率(音调)范围为20Hz--20KHz 。

1.2、振幅:

        即声波的响度,通俗的讲就是声音的高低。 音量(响度)越大,振幅越大;音量越小,振幅越小 。

1.3、波形:

即声音的音色,同样的频率和振幅下,钢琴和小提琴的声音听起来完全不同的,因为他们的音色不同。波形决定了其所代表声音的音色。音色不同是因为它们的介质所产生的波形不同。 音调越高,波长越短;音调越低,波长越长。

2、PCM

        脉冲编码调制,是通过等时间隔(即采样率时钟周期)采样将模拟信号数字化的方法。

        也就是对声音进行采样、量化过程,未经过任何编码和压缩处理。PCM数据是最原始的音频数据完全无损,所以PCM数据虽然音质优秀但体积庞大。

 2.1、模拟音频

        声音拾取处理后以磁记录或机械刻度的方式记录下来,此时磁带上剩磁的变化或密纹,唱片音槽内的纹路起伏变化都是与声音信号的变化相对应、成正比的。

2.2、数字音频

        首先将音频文件转化,接着再将这些电平信号转化成二进制数据保存,播放的时候就把这些数据转换为模拟的电平信号再送到喇叭播出。

2.3、采样(Sample)

        在信号处理中,采样就是将连续时间的信号减少成离散时间的信号。

2.4、采样率

        每秒中对音频采样的次数(8K,16,K,22.05K,44.1K,48K)。

2.5、采样定理

        所谓采样定理,又称香农采样定理,奈奎斯特采样定理,是信息论,特别是通讯与信号处理学科中的一个重要基本结论。

        采样定理指出,如果信号是无限的,并且采样频率高于信号带宽的两倍,那么,原来的连续信号可以从采样样本中完全重建出来。

2.6、声道(Channel)

        是指声音在录制或播放时在不同空间位置采集或回放的相互独立的音频信号,所以声道数也就是声音录制时的音源数量或回放时相应的扬声器数量。

2.7、位宽/位深

        在使用脉冲编码调制(PCM)的数字音频中,bit depth是每个Sample(采样)点占用的位数,并且它直接对应于每个采样的分辨率。

2.8、比特率/码率(Bit Rate)

        比特率是指每秒传送的比特(bit)数。单位为 bps(Bit Per Second),比特率越高,传送数据速度越快。声音中的比特率是指将模拟声音信号转换成数字声音信号后,单位时间内的二进制数据量,是间接衡量音频质量的一个指标,常用的是16、20、24bit。 计算公式:

公式:
    码率 = 采样率 * 采样位数 * 声道数
例如:
    如果是CD音质,采样率44.1KHz,采样位数16bit,立体声(双声道),
    码率 = 44.1 * 1000 * 16 * 2 = 1411200bps = 176400Bps,那么录制一分钟的音乐,
    大概176400 * 1 * 60 / 1024 / 1024 = 10.09MB。

2.9、Frame

        最小单位时间点包含的一个或多个声音采样,最小单位时间点取决于声音采样设备,是一个时间点多个采样的集合。

2.10、重采样

        对于音频原始采样格式和目标要求的格式不匹配时,通常会进行音频重采样进行适配。重采样分为上采样和下采样,下采样时需要对信号进行抽取(可能会导致尾部丢失音频数据),上采样时需要对信号进行插值(可能会有噪音)。在实现有理数级重采样时,则是将上采样和下采样做结合(例如48kHz 转 44.1kHz时,将44.1kHz近似为44kHz,将48kHz下采样到4kHz,再上采样至44kHz来实现)。

3、声音处理流程

3.1、通常情况下的处理流程:

        模拟信号 -> 输入设备(传递电压值)-> 声卡(经过采样跟量化(即设置声音大小等各种值))-> 磁盘(文件) -> 声卡 -> 输出设备 -> 模拟信号 。

3.2、扩展后的音频处理流程:

        在获取音频时增加了 自动增益控制AGC(Auto Gain Control)、回声消除AEC( Acoustic Echo Cancellation )、静音检测VAD(Voice Activity Detection )。

以上是关于Audio基本概念及处理流程的主要内容,如果未能解决你的问题,请参考以下文章

第1章 异常与中断的概念及处理流程

require.js的基本概念及使用流程

git概念及工作流程详解

Android系统Audio框架介绍

Kafka-LEO和HW概念及更新流程

TensorFlow核心概念及基本使用