音频的量化过程
音频的量化就是将模拟信号采样后转换成一种数字信号的过程
模拟信号转换数字信号的基本流程图
量化过程有如下概念:
- 采样大小:就是我们采样模拟型号值表达的Y轴的高度(幅值),也就是一个采样需要多少个bit位来存储,常用的是8bit、16bit
- 采样率:采样模拟型号的频率(每秒采集N次模拟信号样本),是单位Hz,也就是我们常熟的采样频率,通常采样频率越高,精度也越高,常用的采样频率有8K、16K、32K、44.1K、48K,对于AAC来说一般来说采用44.1K
- 声道数:有单声道、双声道、多声道
- 比特率:比特率是指每秒传送的比特(bit)数。单位为 bps(Bit Per Second),比特率越高,每秒传送数据就越多,画质就越清晰。声音中的比特率(码率)是指将模拟声音信号转换成数字声音信号后,单位时间内的二进制数据量,是间接衡量音频质量的一个指标。 计算一个PCM(脉冲编码调制)音频流的码率公式如下:
采样率 * 采样大小 * 声道数:例如一个PCM编码的音频文件,它的采样率为44.1KHz,采样大小为16bit,双声道,那么码率为44.1KHz * 16 * 2 = 1411.2Kb/s
常见音频压缩方法:
主要两种方法:
- 消除冗余数据:我们成为有损压缩技术,我们在音频的采集过程中,但是其中只有一部分是人能够识别出来的,我们对人能够识别出来的数据进行筛选,这样叫减少了数据的存储
- 哈夫曼无损压缩
常见音频编码器:
OPUS、AAC、Vorbis、Speex、iLBC、AMR、G.711等
应用领域和优缺点:
- OPUS编码器是一个有损声音编码的格式,格式是一个开放格式,没有任何专利或限制,低码率下Opus完胜曾经优势明显的HE AAC,中码率就已经可以媲敌码率高出30%左右的AAC格式,而高码率下更接近原始音频。
- AAC用在泛娱乐化直播系统里用的比较多,RTMP支撑AAC,SPEEX,但是不支持OPUS
- Speex早于OPUS和AAC,最大的特点是包括外围的模块,降噪,回音消除
- G.711多用于电话系统
性能评测对比图:
AAC (Advanced Audio Coding) 高级音频编码:
出现于1997年,基于MPEG-2的音频编码技术。由Fraunhofer IIS、杜比实验室、AT&T、Sony等公司共同开发,目的是取代MP3格式。2000年,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC
AAC优缺点
优点:相对于mp3,AAC格式的音质更佳,文件更小
不足:AAC属于有损压缩的格式,与时下流行的APE、FLAC等无损格式相比音质存在“本质上”的差距AAC 常用规格:
AAC LC、AAC HE V1、AAC HE V2
AAC LC
:(Low Complexity)低复杂度,码流128K
AAC HE V1
:AAC LC + SBR (Spectral Band Replication)采用分频复用,将一个音频的频带分成低频和高频两部分分别进行编码,对于低频信号采样记录主体信号,从而减少采样数据。对于高频数据,同样采样率下高频采样的样本会相对于低频少很多,使用SBR技术则增加高频信号的采样数目,从而保证高频的音质,这样就实现了采样的码率的同时又提高了高频数据的音质
AAC HE V2
:AAC LC + SBR + PS (Parametric Stereo) 双声道分别保存,一个声道完整保存,另一个声道存储差异信息和相关参数信息AAC常用格式:
ADIF
(Audio Data Interchange Format) 音频数据交换格式:这种格式的特征是可以确定的找到这个音频数据的开始,不需进行在音频数据流中间开始的解码,即它的解码必须在明确定义的开始处进行,故这种格式常用在磁盘文件中
ADTS
(Audio Data Transport Stream) 音频数据传输流:每一帧都有一个同步字,可以在音频的任何位置开始解码AAC常用编码库
libfdk_aac、ffmpeg aac、libfaac、libvo_aacenc性能也是由左向右递减