1.1.2 音频简介
音频(Audio)是一个专业术语,人类能够听到的所有声音都称为音频,它可能包括噪声。声音被录制下来以后,无论是说话声、歌声、乐器声都可以通过数字音乐软件处理。把它制作成CD,这时所有的声音没有改变,因为CD本来就是音频文件的一种类型,而音频只是存储在计算机里的声音。例如演讲和音乐,如果用计算机加上相应的音频卡,把所有的声音录制下来,包括声音的声学特性,则音的高低都可以用音频文件的方式存储下来。反过来,也可以把存储下来的音频文件通过一定的音频程序播放,还原以前录下的声音。
1.数字音频
音频数据的承载方式最常用的是脉冲编码调制,即PCM。在自然界中,声音是连续不断的,是一种模拟信号,怎样才能把声音保存下来呢?目前最常用的办法是对声音进行数字化处理,即转换为数字信号,然后存储到磁盘。声音是一种波,有振幅和频率,所以要保存声音,就要保存声音在各个时间点上的振幅,但数字信号并不能连续保存所有时间点的振幅,事实上,并不需要保存连续的信号,就可以还原到人耳可接受的声音。根据奈奎斯特采样定理:为了不失真地恢复模拟信号,采样频率应该不小于模拟信号频谱中最高频率的2倍。根据以上分析,PCM的采集分为以下步骤:
模拟信号→采样→量化→编码→数字信号
音频是一个专业词汇,相关的概念包括比特率、采样、采样率、奈奎斯特采样定律等。比特率表示经过编码(压缩)后的音频数据每秒需要用多少比特来表示,单位常为Kb/s。采样是把连续的时间信号变成离散的数字信号。采样率是指每秒采集多少个样本。
数字音频是一种利用数字化手段对声音进行录制、存放、编辑、压缩或播放的技术,它是随着数字信号处理技术、计算机技术、多媒体技术的发展而形成的一种全新的声音处理手段。数字音频的主要应用领域是音乐后期制作和录音。
计算机数据的存储是以0、1的形式存储的,那么数字音频就是首先对音频文件进行转化,接着将这些电平信号转化成二进制数据进行保存,播放时就把这些数据转换为模拟的电平信号再送到扬声器播出。数字声音和一般磁带、广播、电视中的声音就存储播放方式而言有着本质区别。相比而言,它具有存储方便、存储成本低廉、存储和传输的过程中没有声音的失真、编辑和处理非常方便等特点。
数字音频涉及的基础概念非常多,包括采样、量化、编码、采样率、采样数、声道数、音频帧、比特率、PCM等。从模拟信号到数字信号的过程包括采样、量化、编码3个阶段,如图1-3所示。
2.声道数与采样率
声道数,即声音的通道数目,常见的有单声道和双声道(立体声道)。记录声音时,如果每次生成一个声波数据,则称为单声道;每次生成两个声波数据,称为双声道(立体声)。立体声存储大小是单声道的2倍。单声道的声音只能使用一个声道发声,或者也可以处理成两个扬声器输出同一个声道的声音,当通过两个扬声器回放单声道信息时,可以明显感觉到声音是从两个音箱中间传递到耳朵里的,无法判断声源的具体位置。双声道就是有两个声音通道,其原理是当人们听到声音时可以根据左耳和右耳对声音相位差来判断声源的具体位置。声音在录制过程中被分配到两个独立的声道,从而达到了很好的声音定位效果。
音频跟视频不太一样,视频的每帧就是一幅图像,但是音频是流式的,本身没有一帧的概念。对于音频来讲,确实没有办法明确定义出一帧。例如对于PCM流来讲,采样率为44 100Hz,采样位数为16b,通道数为2,那么1s音频数据的大小是固定的,共有44 100×16b×2÷8=176 400B。通常情况下,可以规定一帧音频的概念,例如规定每20ms的音频是一帧。
比特率(码率),是指音频每秒传送的比特数,单位为b/s。比特率越大表示单位时间内采样的数据越多,传输的数据量就越大。例如对于PCM流,采样率为44 100Hz,采样大小为16b,声道数为2,那么比特率为44 100×16×2=1 411 200b/s。一个音频文件的总大小,可以根据采样率、采样位数、声道数、采样时间来计算,即文件大小=采样率×采样时间×采样位数×声道数÷8。
图1-3 音频的采样、量化、编码
3.声音压缩编码
在原始的音频数据中存在大量的冗余信息,有必要进行压缩处理。音频信号能压缩的基本依据,包括声音信号中存在大量的冗余度,以及人的听觉具有强音能抑制同时存在的弱音的现象。
压缩编码,其原理是压缩掉冗余的信号,冗余信号是指不能被人耳感知的信号,包括人耳听觉范围之外的音频信号及被掩蔽掉的音频信号。模拟音频信号转换为数字信号需要经过采样和量化。根据不同的量化策略,产生了许多不同的编码方式,常见的编码方式有PCM和ADPCM。这些数据代表着无损的原始数字音频信号,添加一些文件头信息,就可以存储为WAV文件了,它是一种由微软和IBM联合开发的用于音频数字存储的标准,可以很容易地被解析和播放。在进一步了解音频处理和压缩之前需要明确几个概念,包括音调、响度、采样率、采样精度、声道数、音频帧长等。
音频压缩编码主要包括两大类,包括无损压缩和有损压缩。
(1)无损压缩,主要指熵编码,包括霍夫曼编码、算术编码、行程编码等。
(2)有损压缩,包括波形编码、参数编码、混合编码。波形编码包括PCM、DPCM、ADPCM、子带编码、向量量化等。
音频编码致力于降低传输所需要的信道带宽,同时保持输入语音的高质量。音频编码的目标在于设计低复杂度的编码器以尽可能低的比特率实现高品质数据传输。音频信号数字化是指将连续的模拟信号转换成离散的数字信号,完成采样、量化和编码3个步骤。它又称为脉冲编码调制,通常由A/D转换器实现。
注意:关于音视频基础理论的详细讲解,可参考笔者的另一本书《FFmpeg入门详解——音视频原理及应用》。