参考自:https://www.jianshu.com/p/86e1b1017564
https://blog.csdn.net/qq_25333681/article/details/90682989
1、引言
现实生活中,我们听到的声音都是时间连续的,我们称为这种信号叫模拟信号
。模拟信号需要进行数字化以后才能在计算机中使用。
目前我们在计算机上进行音频播放都需要依赖于音频文件。音频文件的生成过程是将声音信息采样
、量化
和编码
产生的数字信号的过程,人耳所能听到的声音,最低的频率是从20Hz起一直到最高频率20KHZ,因此音频文件格式的最大带宽是20KHZ。根据奈奎斯特
的理论,只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音,所以音频文件的采样率一般在40~50KHZ,比如最常见的CD音质采样率44.1KHZ。
2、音频基本概念
采样: 波是无限光滑的,采样的过程就是从波中抽取某些点的频率值,就是把模拟信号数字化。如下图所示:
蓝色代表模拟音频信号,红色代表采样得到的量化数值
采样频率(Sample Rate): 单位时间内对模拟信号的采样次数,它用赫兹(Hz)来表示。采样频率越高,声音的还原就越真实越自然,当然数据量就越大。采样频率一般共分为22.05KHz、44.1KHz、48KHz三个等级。8KHz - 电话所用采样率, 对于人的说话已经足够,22.05KHz只能达到FM广播的声音品质(适用于语音和中等品质的音乐),44.1KHz则是是最常见的采样率标准,理论上的CD音质界限,48KHz则更加精确一些(对于高于48KHz的采样频率人耳已无法辨别出来了,所以在电脑上没有多少使用价值)。
小知识点:
5kHz的采样率仅能达到人们讲话的声音质量。
11kHz的采样率是播放小段声音的最低标准,是CD音质的四分之一。
22kHz采样率的声音可以达到CD音质的一半,目前大多数网站都选用这样的采样率。
44kHz的采样率是标准的CD音质,可以达到很好的听觉效果。
重采样: 主要是分为上采样和下采样,在进行采样的过程中,需要注意采样的倍率的问题,并不是可以随意的改变采样率的大小的,根据采样定理:在进行模拟/数字信号的转换过程中,当采样频率大于信号中最高频率的2倍时,采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号是最高频率的5~10倍。采样定理又称奈奎斯特定理。
- 上采样: 在进行采样的过程中,通常是分为上采样和下采样的,而区分的依据是重新采样的时候新采样率和原采样率的大小的比较,如果是大于原信号就成为是上采样,如果是小于原信号就称为下采样。而上采样的实质也就是内插或插值。
- 下采样: 新的采样率的大小小于原采样率的大小。
- 方法: 重采样的时候,主要是有最邻近法、双线性内插法以及三次卷积内插法这三种。 在卷积网络中还有反卷积,亚像素卷积等。
采样位数(Sample Bits,也称采样精度、量化级、样本尺寸、量化数据位数): 每个采样点能够表示的数据范围。采样位数通常有8bits或16bits两种,采样位数越大,所能记录声音的变化度就越细腻,相应的数据量就越大。8位字长量化(低品质)和16位字长量化(高品质),16 bit 是最常见的采样精度。
"采样频率"和"采样位数"是数字化声音的两个最基本要素,相当于视频中的屏幕大小
(例如800*600)和颜色分辨率(例如24bit)。
声道数(或通道数Channels): 声道数是指支持能不同发声的音响的个数,它是衡量音响设备的重要指标之一。
单声道的声道数为1个声道;
双声道的声道数为2个声道;
立体声道的声道数默认为2个声道;
立体声道(4声道)的声道数为4个声道。
帧(Frame): 帧记录了一个声音单元,其长度为样本长度(采样位数)和通道数的乘积。
周期(Period Size): 音频设备一次处理所需要的帧数,对于音频设备的数据访问以及音频数据的存储,都是以此为单位。硬件缓冲传输单位,即完成这么多采样帧的传输,就会回馈一个中断。
Periods: 传输完成一个应用Buffer要多少次硬件传输中断。
Buffer Bytes: 一个应用Buffer多少个字节,DMA缓冲区大小。
因为Buffer Size由应用设置,其可大可小,若其太大,则传输的延时太大,所以对此进行分片,提出Period的概念。overrun,录制时,数据都满了,应用来不及取走;underrun,需要数据来播放,应用来不及写入数据
交错模式: 数字音频信号存储的方式。数据以连续帧的方式存放,即首先记录帧1的左声道样本和右声道样本,再开始帧2的记录…
非交错模式: 首先记录的是一个周期内所有帧的左声道样本,再记录所有右声道样本。
量化: 将采样后离散信号的幅度用二进制数表示出来的过程称为量化。(日常生活所说的量化,就是设定一个范围或者区间,然后看获取到的数据在这个条件内的收集出来)。
PCM: PCM(Pulse Code Modulation),即脉冲编码调制,对声音进行采样、量化过程,未经过任何编码和压缩处理。
PCM数据是最原始的音频数据完全无损,所以PCM数据虽然音质优秀但体积庞大,
为了解决这个问题先后诞生了一系列的音频格式,这些音频格式运用不同的方法对音频数据
进行压缩,其中有无损压缩(ALAC、APE、FLAC)和有损压缩(MP3、AAC、OGG、WMA)两种。
编码: 采样和量化后的信号还不是数字信号,需要将它转化为数字编码脉冲,这一过程称为编码。模拟音频进采样、量化和编码后形成的二进制序列就是数字音频信号。
码率:(也成位速、比特率) 是指在一个数据流中每秒钟能通过的信息量,代表了压缩质量。 比如MP3常用码率有128kbit/s、160kbit/s、320kbit/s等等,越高代表着声音音质越好。MP3中的数据有ID3和音频数据组成,ID3用于存储歌名