声音与信号

模拟信号和数字信号

区别和定义

模拟信号就是我们直接说话时的声波,包括黑胶唱片播放出来的声音也是。而数字信号则是模拟信号转换成的1和0组成的数字。模拟信号能够最大限度还原声音,但是在传输上有欠缺。比如说如果在传输时直接传输模拟信号就会导致因为收到各种干扰而失真。相反,数字信号虽然不能像模拟信号一样最大限度还原声波,但是可以最大限度保证传输的准确性。

模拟信号和数字信号的转换

我们在测量电压的时候,会发现电压的变化是连续的,而数值变化是离散的。我们在输入电压到测量仪器的时候,会经过一个模块,叫做ADC(Analog to Digit Convertor),也就是模拟-数字转换器(模数转换器)。

模拟信号是平滑连续的,比如0s到1s之间只有无数个值。但是数字信号是离散的。以下面这张图为例,0s到1s之间就只有一个值。

那么我们想要把模拟信号转换成数字信号只要把模拟信号音频量化切分成若干等份,再将每一等份用二进制数字表示出来就可以了。

我们现在在这个声波的最低值到最高值之间划了五次。在0s前面有一个采样条,采样条上有五个采样点,采样点的原理就是比较输入值和当前的参考值,如果输入值大于等于当前参考值就输出1,反之输出0。当我们开始播放这段音频的时候,采样条就往右。比如现在采样条在2s的位置,对应的是3,那么采样条上面的五个采样点从上往下分别输出00111。因为此时输入的值是3:

第一个采样点的参考值是5,5>3,所以输出0;第二个采样点的参考值是4,4>3,所以输出0;第三个采样点的参考值是3,3=3,所以输出1;第四个采样点的参考值是2,2<3,所以输出1;第五个采样点的参考值是1,1<3,所以输出1。

如果是在1s的时候采样,此时的输入数值大概是1.5,因为1< 1.5 <2,所以只有最下面的采样点输出1,而倒数第二个采样点则输出0。因此1s的数值是00001。

以此类推,最后我们可以得到一串二进制数字:

00001 00001 01111 11111 11111 01111 00001 00001 00001 00001 01111 11111 11111 01111 00001 00001

这串数字就是这段声波的数字信号。但是现在得到的每一组二进制数字(如00001)都只能代表一个大概的范围,比如1< 00001 <2。有一个问题就是0s的数值和1s的数值在图表上其实并不一样,但是转换成数字信号之后我们会发现两个竟然是一样的。造成这个的原因就是我们的采样点太少了。如果多一些采样点,输出的数字信号才会更加的准确。

另外,我们现在是每秒采样一次。如果说我们每秒采样的次数提升,那么转换之后的数字信号就越接近模拟信号,失真的情况就越少。

这种方法就叫做并联比较型AD,也是所有比较器里面速度最快的。

采样率

如果使用过Cubase,Audition等软件的读者可能会对采样率这个词比较熟悉。简单了说采样率就是一秒内对声音采样多少次,也叫采样频率。在上面的例子中,采样率就是1Hz。但是1Hz在我们日常生活中肯定是不行的。

基本来说,现在最常见的两种采样率分别是44.1kHz和48kHz,他们分别代表的是一秒内对声音采样44100次和48000次。

拓展一个知识:根据奈奎斯特-香农采样定理,由样值序列无失真恢复原信号的条件是 fs ≥2fh ,为了满足抽样定理,要求模拟信号的频谱限制在0~fh 之内(fs为采样频率,fh为模拟信号的最高频率)。

也就是说,信号的频率必须小于不等于采样率的一半。比如,44.1kHz的采样率能采集22.05kHz以下频率的声音。为此,在抽样之前,先设置一个前置低通滤波器,将模拟信号的带宽限制在fh以下,如果前置低通滤波器特性不良或者抽样频率过低都会产生折叠噪声。

比特深度

计算机一直以来都是以二进制,也就是1和0组成和储存的。具体到数据存储时,计算机里的数据都是以字节(Byte)为单位的,而一个字节占用8位。我们常见的一些单位,如GB、MB、KB等与字节和位之间的关系是:

1GB=1024MB;1MB=1024KB;1KB=1024Byte;1Byte=8bit

比如一种图片格式支持256种颜色,那么它的比特深度(也叫位深)就是8bit,也就是256=28 ,那么这256种颜色用二进制表示就是00000000到11111111。

数字音频也是一样的。

还是以这个图为例,我们刚刚讲过了,采样条有5个采样点,那么这里的位深就是5(约为2.32183bit)。

我们常见的比特位深有16bit,24bit,32bit float等等……

在电子图像中,我们知道:一种格式所支持的颜色越多,图片颜色变化时就会越细腻,变化越顺畅。

这里以图像的不同比特深度举个例子。

这三个其实是同一个图片文件,但是在解析的时候使用了不同的比特位深,所以呈现的效果也不同。在音频中也是一样的,音频的比特位深越多,理论上来说层次感越强,对应的文件大小就越大。

16bit和24bit

16bit就是216 =65536个采样档位,可以采样65536个不同档位的电平。16bit对应的动态范围就是20×log(65536)≈96dB。在录音的过程中,0dB为峰值,超过0dB就开始削波失真。96dB的动态范围就是0dB的峰值往下到-96dB。

24bit也是差不多的,它拥有224 =16777216个采样档位。相比起16bit的65536个档位,24bit就更精准,在音质上的提升也是很大的。24bit所计算出来的动态范围就是20×log(16777216)≈144dB,就是0dB到-144dB的有效采样范围。

其实在日常生活中,如果是单纯的唱歌或者普通的录音,我们用的最多的就是16bit;如果是大型的交响乐团,有多种不同的乐器,并且各种乐器有不同的特点,24bit也是足够的。但是近几年就有很多的厂商推出32bit float。

32bit float

根据上面所说的16bit和24bit,32bit也是一样的道理,它就拥有232 =4294967296个采样档次,这个是我们目前来说几乎永远不会用到的,所以我不讲。

注意!32bit录音≠32bit float录音!

32bit float是由24bit的分辨率加上8bit的动态范围记录。16bit的有效采样范围是0dB到-96dB;24bit的有效采样范围是0dB-144dB。32bit float的上限不是0dB,而是770dB,它的动态范围也就变成了770dB到-758dB。 16bit和24bit都是全部数字代表不同的组合。32bit float数值跟16bit和24bit都不同。但是32bit float是科学计数法,它的组成是:第一位代表数值的正负,接着的八位是指数,最后23位是尾数。现在大部分的音频处理软件应该都是可以读取32bit float文件的,有一些软件在第一次读取时,大于0dB的信号可能会被削波导致失真。因为32bit float有+770dB的动态范围,我们可以录制一些超过0dB的音频信号,然后再软件中调整它的增益,使其降到0dB以下但是不失真。

注意:32bit float的录制必须要装载的声卡支持32bit float的AD转换,如果声卡不支持,在软件调也是没用的

数字音频

音频压缩

音频压缩原理是指利用一些算法和技术,将音频文件的大小减小,以便于存储和传输。音频压缩可以分为无损压缩和有损压缩两种:

无损压缩是指在压缩过程中不会丢失任何音频信息,可以完全恢复原始音频信号。无损压缩的优点是保证了音质的完整性,适合对音质要求高的场合,如专业录音或高保真音乐。无损压缩的缺点是压缩率较低,文件大小仍然较大,占用更多的存储空间和带宽。常见的无损压缩格式有WAV、FLAC、APE等。

有损压缩是指在压缩过程中会丢失一些音频信息,无法完全恢复原始音频信号。有损压缩的优点是压缩率较高,文件大小较小,节省了存储空间和带宽。有损压缩的缺点是降低了音质,可能会产生一些听觉上的失真或噪声,适合对音质要求不高的场合,如网络流媒体或移动设备。常见的有损压缩格式有MP3、AAC、Opus等。

各种常见的音频格式

MP3:一种有损压缩格式,能够大幅度降低音频数据量,同时保持较高的音质。

AAC:一种有损压缩格式,由多家公司共同开发,旨在取代MP3格式,能够大幅度降低音频数据量,同时保持较高的音质。

Opus:一种有损压缩格式,由Xiph.Org基金会开发,适用于网络上低延迟的即时声音传输。

WAV:一种无损压缩格式,通常用于存储原始的音频数据,音质很好,但文件很大。

FLAC:一种无损压缩格式,可以保持音频数据的完整性,但比WAV节省一半左右的空间。

ALAC:一种无损压缩格式,由苹果公司开发,主要用于iTunes和iPod等设备。

APE:一种无损压缩格式,由中国人开发,主要用于音乐存档和发烧友。

WMA:一种有损压缩格式,由微软公司开发,主要用于Windows Media Player和Zune等设备。

OGG:一种有损压缩格式,由Xiph.Org基金会开发,是一种开源和免费的格式,主要用于网络流媒体和游戏音效。

AC3:一种有损压缩格式,由杜比实验室开发,主要用于DVD播放机和数字电视等设备。

AMR:一种有损压缩格式,由3GPP开发,主要用于语音录制和移动电话等设备。

G.711/G.722/G.723等:一系列有损压缩格式,由ITU-T开发,主要用于语音通信和VoIP等场景。

MP3格式

MP3是一种有损压缩的音频格式,也是最常见的音频格式之一。它可以将原始的音频数据压缩到很小的文件大小,但是会牺牲一些高频部分的音质。MP3的优点是兼容性好,支持多种设备和播放器,缺点是音质不如无损格式。

MP3是MPEG标准的一部分,MPEG是一个国际组织,制定了多种视频和音频压缩标准。MPEG标准包括MPEG-1、MPEG-2、MPEG-4等,其中MPEG-1和MPEG-2定义了三种音频编解码方案,分别为Layer 1、Layer 2、Layer 3。MP3就是MPEG-1或MPEG-2的Layer 3音频编解码方案。

MP3采用了感知音频编码(Perceptual Audio Coding)这一失真算法。这种算法利用了人耳对声音的感知特性,去掉了人耳听不到或听不清的声音部分,从而达到压缩的目的。MP3可以根据不同的比特率(Bit Rate)来调整压缩比和音质,比特率越高,压缩比越低,音质越好,反之亦然。MP3常见的比特率有32Kbps、64Kbps、128Kbps、192Kbps、256Kbps、320Kbps等。

MP3文件由多个帧(Frame)组成,每个帧都包含一个帧头(Frame Header)和一个声音数据(Sound Data)。帧头记录了该帧的一些参数信息,如采样率(Sample Rate)、比特率(Bit Rate)、声道数(Channel Mode)等。声音数据是经过编码后的压缩数据,需要通过解码器还原成原始的音频信号。每个帧播放时间是0.026秒,其长度随位率的不同而不等。

MP3文件还可以包含一些额外的信息,如歌手、标题、专辑、年代、风格等。这些信息被称为ID3标签(ID3 Tag),可以分为两个版本:ID3v1和ID3v2。ID3v1标签位于文件末尾的固定128字节,以TAG字符开头,记录了固定格式的信息。ID3v2标签位于文件开头,长度可变,记录了更多种类和更详细的信息。

AAC格式

AAC是一种有损压缩的音频格式,也是MPEG标准的一部分。它是MP3的后继者,相同码率下比MP3有更好的音质和更高的压缩效率。AAC的优点是音质好,支持多声道和变速编码,缺点是兼容性不如MP3。

AAC是由Fraunhofer IIS、杜比实验室、AT&T、索尼等公司共同开发的,目的是取代MP3格式。它出现于1997年,基于MPEG-2的音频编码技术。2000年,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。

AAC采用了感知音频编码(Perceptual Audio Coding)这一失真算法。这种算法利用了人耳对声音的感知特性,去掉了人耳听不到或听不清的声音部分,从而达到压缩的目的。AAC可以根据不同的比特率(Bit Rate)来调整压缩比和音质,比特率越高,压缩比越低,音质越好,反之亦然。AAC常见的比特率有32Kbps、64Kbps、128Kbps、192Kbps、256Kbps、320Kbps等。

AAC文件由多个帧(Frame)组成,每个帧都包含一个帧头(Frame Header)和一个声音数据(Sound Data)。帧头记录了该帧的一些参数信息,如采样率(Sample Rate)、比特率(Bit Rate)、声道数(Channel Mode)等。声音数据是经过编码后的压缩数据,需要通过解码器还原成原始的音频信号。每个帧播放时间是0.023秒,其长度随位率的不同而不等。

AAC文件还可以包含一些额外的信息,如歌手、标题、专辑、年代、风格等。这些信息被称为ID3标签(ID3 Tag),可以分为两个版本:ID3v1和ID3v2。ID3v1标签位于文件末尾的固定128字节,以TAG字符开头,记录了固定格式的信息。ID3v2标签位于文件开头,长度可变,记录了更多种类和更详细的信息。

WAV格式

WAV格式是一种存储声音波形的数字音频格式,是由微软公司和IBM联合设计的,可用于Windows,Macintosh,Linux等多种操作系统。WAV格式的特点是能够真实记录自然声波形,不进行数据压缩,保证声音不失真,但是文件体积较大。WAV格式遵循资源互换文件格式(RIFF)的规范,由若干个块构成,每个块包含块标识、块长度和数据等三部分。WAV格式支持多种音频位数、采样频率和声道,也支持多种压缩算法,如PCM、ADPCM、MP3等。WAV格式不一定只用于音频文件,也可以用于其他需要使用到振幅和时间的形式的应用,如电路模拟、广播等。

M4A格式

M4A格式是一种由苹果公司开发的数字音频格式,是MPEG-4 Part 14(MP4)的一种变体,专门用于存储音频数据。M4A格式通常使用AAC(Advanced Audio Coding)编码,也可以使用ALAC(Apple Lossless Audio Codec)编码。M4A格式的特点是:

- M4A格式是一种有损或无损的音频格式,取决于使用的编码方式。AAC编码是一种有损的音频压缩技术,可以在较低的位率下保持较高的音质,比MP3更加高效。ALAC编码是一种无损的音频压缩技术,可以在不损失音质的情况下减少文件大小,比WAV或AIFF更加节省空间。

- M4A格式是一种兼容性较好的音频格式,可以在多种操作系统和设备上播放,如Windows,MacOS,iOS,Android等。M4A格式也可以被多种音频编辑软件和播放器支持,如iTunes,VLC,Audacity等。

- M4A格式是一种支持元数据和章节标记的音频格式,可以在文件中嵌入歌曲信息,如标题,艺术家,专辑等。M4A格式也可以在文件中添加章节标记,用于标识不同的部分或段落,方便用户跳转和导航。

不同格式与MP3的对比

对比MP3与AAC

兼容性方面,AAC格式不如MP3格式,因为MP3格式推出的时间早,已经成为了音乐传播的标准,而AAC格式相对较新,可能在某些设备和软件上无法播放。MP3格式也有更多的制作和传播工具,而AAC格式相对较少。另外,MP3格式的专利已经过期,而AAC格式仍然需要支付授权费用。所以,如果你想要更好的兼容性和便利性,你可以选择MP3格式。如果你想要更好的音质和压缩效率,你可以选择AAC格式。

AAC在音质和声道方面超越MP3的原因有以下几点:

AAC采用了更先进的感知音频编码算法,可以更有效地去除人耳听不到或听不清的声音部分,从而提高压缩效率和音质。

AAC支持更多种采样率和比特率,可以根据不同的音频内容和需求进行灵活的调整,而MP3只支持固定的几种采样率和比特率。

AAC支持更多种声道模式,最多可以支持48个音轨和15个低频音轨,可以实现5.1或更高的多声道效果,而MP3只支持单声道和立体声两种模式。

AAC支持更高的采样精度,最高可以达到32bit,而MP3最高只能达到16bit,这意味着AAC可以保留更多的音频细节和动态范围。

AAC与MP3规格对比比特率:

AAC - 最高超过400kbps / MP3 - 32~320kbps

采样率:AAC - 最高96kHz / MP3 - 最高48kHz

声道数:AAC - (5.1)六声道 / MP3 - 两声道

采样精度:AAC - 最高32bit / MP3 - 最高16bit

对比MP3与WAV

WAV格式是无损音乐的一种,能够真实记录自然声波形,不进行数据压缩,保证声音不失真,但是文件体积较大。MP3格式是有损音乐的一种,利用人耳对高频声音信号不敏感的特性,对音频进行编码,去掉了某些部分,从而节省了空间,但是音质有所下降。

WAV格式遵循资源互换文件格式(RIFF)的规范,由若干个块构成,每个块包含块标识、块长度和数据等三部分。MP3格式遵循动态影像专家组(MPEG)的规范,由若干个帧构成,每个帧包含帧头、边信息和数据等三部分。

WAV格式支持多种音频位数、采样频率和声道,也支持多种压缩算法,如PCM、ADPCM、MP3等。MP3格式只支持一种压缩算法,即MPEG-1 Layer III或MPEG-2 Layer III。

WAV格式通常用于录音室录音和专业音频项目。MP3格式通常用于网络传播和移动播放设备储存。

对比MP3与M4A

- 音质:M4A格式使用AAC编码时,通常可以在相同的位率下提供比MP3更好的音质,因为AAC编码更加先进和高效 。M4A格式使用ALAC编码时,可以提供无损的音质,而MP3则是一种有损的音频压缩技术 。

- 文件大小:M4A格式使用AAC编码时,通常可以在相同的音质下提供比MP3更小的文件大小,因为AAC编码更加节省空间 。M4A格式使用ALAC编码时,通常会产生比MP3更大的文件大小,因为ALAC编码不会丢失任何数据 。

- 兼容性:MP3格式是一种广泛使用和支持的音频格式,几乎所有的操作系统和设备都可以播放MP3文件 。M4A格式虽然也有较好的兼容性,但是在一些老旧或者特定的设备上可能无法播放或者需要转换 。

- 功能:M4A格式支持元数据和章节标记,可以在文件中嵌入歌曲信息和标识不同的部分 。MP3格式也支持元数据,但是不支持章节标记 。

索引

因为不记得具体链接了,只记得大的网站:

CSDN

知乎专栏

百度知道

维基百科WiKipedia

哔哩哔哩Bilibili