音频基础知识

1. 声音介绍
声音(sound)是一种物理现象。物体振动时产生声波通过空气传到人们的耳膜经过大脑的反射被感知为声音。声音以波的形式振动传播。

声音是一种压力波:当演奏乐器、拍打一扇门或者敲击桌面时,他们的振动会引起介质——空气分子有节奏的振动,使周围的空气产生疏密变化,形成疏密相间的纵波,这就产生了声波,这种现象会一直延续到振动消失为止。

声音作为波的一种,频率和振幅就成了描述波的重要属性,频率的大小与我们通常所说的音高对应,而振幅影响声音的大小。声音可以被分解为不同频率不同强度正弦波的叠加。这种变换(或分解)的过程,称为傅立叶变换(Fourier Transform)。

2. 声音的三要素

i. 音调(pitch):
声音频率的高低叫做音调(Pitch)声音的高低(高音、低音),由频率决定,频率越高音调越高(频率单位Hz,赫兹),人耳听觉范围20~20000Hz。20Hz以下称为次声波,20000Hz以上称为超声波)。人耳的听力频率范围(20Hz ~ 20kHz),人耳对 3~4kHz 频率范围内的声音比较敏感。

ii. 响度(loudness):
人主观上感觉声音的大小(俗称音量),由“振幅”(amplitude)和人离声源的距离决定,振幅越大响度越大,人和声源的距离越小,响度越大。

iii. 音色(Timbre):
波形决定了声音的音调。由于不同对象材料的特点,声音具有不同的特性,音色本身就是抽象的东西,但波形就是把这种抽象和直观的性能。波形因音调而异,不同的音调可以通过波形来区分。

人耳的听力频率范围(20Hz ~ 20kHz),人耳对 3~4kHz 频率范围内的声音比较敏感


3. 模拟信号
音频信号是典型的连续信号,在时间和幅度上都是连续的。在任何一个特定的时间点都一个对应的幅值。时间和幅度上都是连续的信号成为模拟信号。


4. 数字信号
复杂的声波由许许多多具有不同振幅和频率的正弦波组成。代表声音的模拟信号是个连续的量,不能由计算机直接处理,必须将其数字化。
经过数字化处理之后的数字声音能够像文字和图形信息一样进行存储、检索、编辑和其他处理。


数字音频是指使用数字编码的方式也就是使用0和1来记录音频信息。
声音可以表达成一种随着时间的推移形成的一种波形,那么如何描述这种波形存储到计算机中呢?
每隔一定的时间间隔,存储波形图对应的位置(电平信号),然后将电平信号转化成二进制数据保存。


模拟音频数字化:

采样:对时间轴上的信号进行数字化。将时间轴上连续的信号每隔一定的时间间隔抽取出一个信号的幅度样本,把连续的模拟量用一个个离散的点表示出来,使其成为时间上离散的脉冲序列。采样定律(Nyquist定理):要想不产生低频失真,采样频率至少应为所要录制的音频的最高频率的2倍。
量化:在幅度轴上对信号进行数字化。将采样后离散信号的幅度用二进制数表示出来。每个采样点所能表示的二进制位数称为量化精度,或量化位数。量化精度反映了度量声音波形幅度的精度。
编码:按照一定的格式记录采样和量化后的数字数据,比如顺序存储和压缩存储。采样和量化后的信号还不是数字信号,需要将它转化为数字编码脉冲,这一过程称为编码。

音频编码的格式有很多种,而通常所说的音频裸数据指的是脉冲编码调制(PCM)数据。


5. 音频编码
一分钟量化格式 16比特(2字节),采样率 44100, 声道数 2(CD音质)的数据采样需要的存储空间约为10.1MB,从存储的角度或者实时传播的角度,这个数据量都太大了,所以需要对音频数据进行压缩编码。

压缩编码原理:压缩掉冗余信号,冗余信号是指不能被人耳感知的信号,包含人耳听觉范围之外的音频信号以及被掩蔽掉的信号

人耳掩蔽效应:当一个强音信号与一个弱音信号同时存在时,弱音信号将被强音信号所掩蔽而听不见,这样弱音信号就可以视为冗余信号而不用传送。
掩蔽 = 时域掩蔽 + 频域掩蔽
编码格式:WAV,AAC,MP3,Ogg
一般情况下音频的数据量要远小于视频的数据量,因而音频编码的数据流对于视音频的总数据量不会产生太大的影响。

 

6.音视频封装格式

日常生活中的视频文件 avi, rmvb, mp4, flv, mkv 等后缀,叫作 封装格式。
封装格式 是由 视频编码数据(H.264, MPEG2, VC-1) 和 音频编码数据(AAC, MP3, AC-3) 组成。
视频编码数据 是由 视频像素数据(YUV420P, RGB) 组成
音频编码数据 是由 音频采样数据(PCM) 组成

 

7.音频封装格式

容器的说明

MP3容器:是一种只用来盛放MP3音频的容器。

AAC流:AAC不能算封装容器,它太简单了,算是编码好的原始音频流吧,当然就只能是AAC音频编码的。

OGG容器:最常见的封装内容是Vorbis格式音频。虽然OGG容器能盛放所有这一列包括音频视频,但它本意是用来盛放如Vorbis、FLAC等开放格式的,封入视频也不常见。所以我只勾了Vorbis这一行。

MP4容器:很常见。虽然能盛放所有这一列,但是播放器不一定能播,所以通常不会收Vorbis那些。

M4A容器:与MP4相同。只不过声称自己仅含音频。M4V容器:与MP4相同。

MOV容器:苹果设计的容器,基本上也是什么都能盛放,但是与MP4一样,也要考虑播放器的感受。视频容器实际上就是其中盛放了既有视频流也有N个音频流,甚至还有其他东西例如字幕啥的而已。其他

基本上,比较新的编码格式都比较好。适应性我没多少经验。通常在普及率的基础上,越新的越好。

格式的历史网上很多,搜编码格式的历史就行,不需要搜容器格式的历史,不然很多文章把两者混在一起说,很是混乱。

 

参考:

https://www.jianshu.com/p/1f44556faa96
https://zhidao.baidu.com/question/942139958890320292.html
https://baike.baidu.com/item/%E5%A3%B0%E9%9F%B3/33686?fr=aladdin
https://www.zhihu.com/question/54189685/answer/138286326

修改时间 2019-06-23

真诚赞赏,手留余香
赞赏
随机推荐
网络协议入门
CentOS 8 firewalld 防火墙操作
2018.1.26 Night King
Windows系统下Apache性能优化,提高并发 mod_mpm
vue-cli引用第三方框架
git 取消文件跟踪
Windows下解决Apache2.4日志文件太大的方法
SVG,字体图标的替代者
PHP 判断是否为 AJAX 请求
Photoshop 抠图技巧笔记