那么现在终于!终于可以回到解码问题上来了!你一定是这么想的吧?
但是且慢!
且慢!
咱们这不才说了数字音频和模拟波形信号可以互换嘛,还没说到解码中唯一牵涉到的内容——不同的数字音频格式!
格式!就算并不了解音频系统,你现在一定也有些想法了对不对?嗯,没错,mp3就是一种众所周知的不开源的,靠版权吃饭的音频格式。而ogg则是一种开源的,不收费的音频格式。AAC也是一种开源的音频格式,后来苹果家又弄出了开源的ALAC无损,索尼家有AC3有损,而索尼家往上又有ATRAC 3+有损……FLAC是开源无损,APE是无损也开源,TTA还是无损,TAK又是无损……
晕了?我相信这其中的许多格式大多数人见过至少一半以上。想必也基本明白有损无损是怎么来的。
但还是要提一提,因为解码的核心就在这里。
那么无损是怎么来的呢?首先是原始数字音频。3楼提到了,原始波形是无损,那么以模拟信号记录的技术所能达到的最高记录精度下记录的模拟信号就可以视为我们目前在模拟信号中的真无损,而从模拟信号记录(即母带)提取出的最高比特和采样率的线性PCM数字音频,就可以视为一张唱片的录音在商业唱片中的真无损。有些唱片有SACD和CD,那么它的数字音频真无损就是更高采样率更高比特的SACD。这是从母带角度出发的理论。
但通常情况下并不实用。某些对SACD,CD,DVD9的音质的盲测结果可说是令人啼笑皆非,因此对大部分人来说,事实上无论是SACD、CD、DVD9的PCM音轨,还是HiRes规格下的DSD,都可以视为无损,因为就算是用你熟悉的设备盲测你听得最多的专辑,即使是老烧,也没多少人能分辨出来。我凭什么这么说呢?这就涉及到模拟信号与波形的互转了。
以下黑括号括住的部分是个笑话,如果大家觉得这么多文字居然只有这点信息量,那么无聊的话看一眼就好。
【 3楼有提到,波形是一种曲线,而不是许多人以为的锯齿状,采样精度会影响到部分曲线的精度,但是这种影响并不是使平滑的曲线变成平直的折线,那它造成什么结果?假使真实声音的声波波形曲线在函数模型上本应通过某些点,那么精度不够就会使从数字音频转为模拟信号后理论上能还原上来的声音波形不通过这些点。
你是不是以为没通过这些点就等于听起来不像真实声音?其实不是哦。因为我们使用的44100HZ(普通CD)采样精度就已经非常高了,48000HZ(SACD)则通常被认为对于还原原始声音具有绝对足够的精度,那么这种精度到底会造成多大的影响呢?答案是由于还原后的声波曲线未通过本应通过的点,影响了音色的准确度。但别急!它对音色的是极其轻微的,轻微到人耳几乎不可察。真实的声波也许在某个时间段上应当是2000.4235HZ,但是这种影响使它变成了2000.4236HZ,嗯,就是这么小……Attention!这段是口胡的!
嗯,有时候也需要一点调侃嘛……
我差点忘了原意了,这个影响极其轻微,且对于基础知识并无什么意义,但是打了这么一段又舍不得删,所以就保留在这,大家权且当作个冷笑话来看……
】
嗯,回到原题上来,在商业唱片上,采样精度对普通用户或者初烧来说,并无区别,相反的,在数字音频时代,更高的采样精度只会占据你更多文件存储空间。
所以对初烧来说,从商业模式出发,我们在这个时期可以先假定商业唱片上的数字音频就是这张唱片的真无损数字音频。
那么终于到解码的核心部分了哈!
对,解码的核心部分来了!首先,商业唱片是以线性PCM来进行记录的!
商业唱片中的“线性PCM音频”就是真无损。如果使用Windows media player的唱片将唱片中的数据翻录出来的话,WAV格式(即原始线性PCM音频)是最快的翻录方式,因为它就是老实地把光盘里的音频文件原原本本地抓取到硬盘上。那么我们假设先用抓碟的软件将唱片上的音频抓取出来了,我们现在手上得到的音频文件就是WAV即线性PCM音频,这就是我们在商业唱片上所能得到的最好的,最原始的,无损的数字音频。
想必有不少人知道,WAV是占用硬盘空间最大的文件。
那么大家用过压缩软件嘛!占用硬盘空间太多怎么办?压缩呗!
以下黑括号中的大段大段文字“简”
“要”介绍有损无损压缩们的前世今生。
【 这一压缩,问题来了。压缩软件是压缩成压缩软件专用的压缩格式(绕口吧
),而且!而且根本就没有减少空间占用啊!
嗯哼,这就是各有所长了。压缩软件针对普通文件中的空白字节进行压缩,最大限度地减小空白字节占用,这就是压缩软件的算法。那么对于从头到尾全是数据的音频文件,这种算法当然不行。于是针对音频文件的压缩算法就诞生了。FLAC、APE、ALAC、WAVPACK、TAK、TTA……噢耶!空间占用下降了至少一半诶!压缩算法发明者万岁!
诶诶诶但是等等!这个不损失音质?
对,这个不损失音质!因为这种算法和压缩软件一样,是可逆算法,可以压缩也可以解压缩!万岁!万岁!万万岁!
但是等等,既然无损压缩是可逆算法,为什么会有像mp3,wma,ogg那样的有损压缩?
嗯,这是个问题。