音频有损编码有:aac,mp3,ogg(vobis),opus等。这里只讨论主流编码格式,aac编码器有faac,qaac,fhgacc,neroacc,fdkacc,falabaac等,其封装格式有.aac,.m4a,.m4b,.mp4等。
aac基本上是最优秀的有损编码器,它有着非常好的频谱一致性,照顾了0~22kHZ的频谱响应,而不是高频一刀切。虽然我们很难分辨高频信息,但是高频信息影响我们对音乐的赏析,没有高频信息会变得难听,而且频谱差异也并不是用肉眼看的,即使频谱上很难发现差异,但是在波形上会出现极大差异,是肉耳可闻的差异,只不过有损压缩一般会得到一致的频率响应,为此可以在振幅大的点误差也大,也就是音量大的时刻差异相应地增大,而由于音量的增大,我们更难发现这个差异,所以良好的有损压缩会利用这个特点,原始音频的频谱和有损音频频谱一致,且和两者差值(也叫纠错音频)的频谱基本一致,也就是说纠错音频放大音量来听也能听到原音乐的大部分信息,这就是三者的相似性。
其他有损音频也大致如此,当然,也有不完全考虑或完全不考虑三者频谱一致性(即人体声学),如:wv有损模式,ofs双流模式。wv有损基本没有考虑之,它的纠错音频频谱是一条条竖线,即某时刻各频率响应基本一致,这样可以尽量与原始音频接近从而纠错音频可以压缩得更小,这就是wv混合模式可以不增加文件体积的原因。而ofs双流模式(OptimFROG DualStream),它介于wv和aac之间,频率响应优于wv,但压缩耗时多,文件体积基本没变,这是最好的有损无损混合模式,但支持设备极少。另外,aac编码有一种HD-AAC,也即MPEG-4 SLS,它是对AAC音频的纠错音频应用MPEG-4 SLS编码,某些情况下效果可以(文件体积多出1%),某些情况下极差(可能是编码不成熟),对应的编解码器是Nero商业版工作站,它的HD-AAC基本没用。
mp3格式音频实在是不太好的有损,不过是最先流行起来的,它编码效率不高,但是一般地320kbps的mp3还是优于256kbps的aac音频的,两者音质基本一样。
ogg格式音频也是十分适合高码率有损音频的,一般建议128~512kbps使用,在较高码率下可能优于aac(不过太高码率意义不大)。
opus格式音频其实没什么用,你说它对低频处理得非常好,但是在它的纠错文件频谱上,可以明显看见低频上有明显的响应,这说明它其实是本末倒置,它对20kHZ以上频谱一刀切,而且它要求编码後采样率为48kHZ,然而重采样也会损失部分音质(信噪比一般有130dB)。
一、在频谱上比较各种有损音频编码方案:
音频:BGM02A.wav 立体声 16位 48kHZ
1、比特率大约256kbps
faac q730 255kbps
faac编码比特率十分不确定,当前音频编码码率较一般情况低很多。
qaac cvbr256 256kbps
qaac tvbr110 255kbps
fhg vbr6 238kbps
ogg q8.0 243kbps
opus vbr256music 275kbps
nero vbr0.69 254kbps
mp3 256kbps
fdk vbr5 234kbps
以上是按有损音频质量来排序的,faac的编码质量最好,毕竟用了-q730参数,一般faac使用-q300时码率是256kbps左右。其次是qaac编码器。该频谱是Audition软件里面最大分辨率的频谱,使用完全线性+5次更加对数。在PS里面处理图片比较,方式为差值。可以看到频谱差异都很小,基本一片黑,偏红是正值,偏绿是负值。
2、比特率大约64kbps
音频:梦的光点 - 王心凌.flac
编码质量依次是:fhg he-aac v1 > fhg vbr2 > fdk v1 > qaac he > nero > fhg v2 > fdk v2 > qaac > fdk > faac
前三者质量基本一样,fhg v1,fhg vbr2,fdk v1的频谱差异如下:(fhg v1为例)
而faac的频谱差异极大,可以看到即使低码率,它的频谱带宽也基本没变(需要手动设置带宽)。
3、比特率大约32kbps
音频:梦的光点 - 王心凌.flac
编码质量依次是:fhg v2 > nero > fdk v2 > fhg v1 > qaac he
前三者质量基本一样,差异如下:(fdk v2为例)
二、纠错音频的比较
音频:BGM31.wav 立体声 16位 48kHZ
1、256kbps
qaac cvbr256
qaac tvbr110
fhg vbr6
faac q300
ogg q8.0
nero vbr0.69
fdk cbr256
fdk vbr5
mp3 256kbps
opus vbr256 music
编码质量依次排序(码率不一定是256kbps),前三者编码质量其实非常接近,而opus编码质量实在不敢恭维,这也就解释了为何opus频谱表现看起来更接近却听感差于aac音频。
2、64kbps
依次为:fdk vbr1 84kbps > fhg vbr2 78kbps > qaac tvbr27 74kbps > faac q55 80kbps > fhg he 64kbps > nero q0.25 75kbs
由于时间轴不一,无法深入比较。该结果并不太可靠。尤其是fdk v1,fdk v2,fhg v2,qaac he,时间轴不准确,无法比较。所以该码率下还是看频谱差异比较。
此外,还有一个falabaac编码器,如下:(falab q1.5 250kbps)
原始音频:梦的光点 - 王心凌.flac
频谱差异:
这基本是其中最差的编解码器了,毫无用处。
三、结论
优秀的编解码器是:qaac,fhgaac.
高码率使用AAC-LC编码,推荐编码器qaac
低码率使用AAC-HE编码,推荐编码器fhgacc
使用以下码率相应的可变码率模式及质量参数
512kbps+,wavpack,takc等无损编码器或faac
256~512kbps,AAC-LC,faac
96~320kbps,AAC-LC,qaac
40~96kbps,AAC-HEv1,fhgaac,fdkaac
8~40kbps,AAC-HEv2,fhgaac,fdkaac
fhgaac基本是全能的,推荐使用,极不推荐使用opus,mp3,nero,qaac在压缩简单音频时质量不如faac,只要同码率下faac能取到q500+参数就不用qaac,中码率下qaac是其中王者,低码率下fhgaac是第一,较高码率下faac是最佳。
四、下载
链接:https://pan.baidu.com/s/1Wb4Os7OfYlIcjbob5mYsLQ
提取码:3r45
包含PS中比较图片、命令行编解码器等。