编码(Encode)
PCM
PCM数据可以理解为是:未经压缩的原始音频数据,体积比较大,为了更便于存储和传输,一般都会使用某种音频编码对它进行编码压缩,然后再存成某种音频文件格式。
![](https://img.haomeiwen.com/i1638260/0268a548e99a0860.png)
压缩分为无损压缩和有损压缩。
无损压缩
- 解压后可以完全还原出原始数据
- 压缩比小,体积大
有损压缩
- 解压后不能完全还原出原始数据,会丢失一部分信息
- 压缩比大,体积小
- 压缩比越大,丢失的信息就越多,还原后的信号失真就会越大
- 一般是通过舍弃原始数据中对人类听觉不重要的部分,达成压缩成较小文件的目的
压缩比 = 未压缩大小 / 压缩后大小
解码(Decode)
当需要播放音频时,得先解码(解压缩)出PCM数据,然后再进行播放。
![](https://img.haomeiwen.com/i1638260/1dab3a967bbb8156.png)
常见的音频编码和文件格式
需要注意的是:音频文件格式并不等于音频编码。比如:
WAV只是一种文件格式,并不是一种编码
FLAC既是一种文件格式,又是一种编码
常见的音频编码和文件格式:
名称 | 无损压缩 | 文件扩展名 |
---|---|---|
Monkey's Audio | ✔️ | .ape |
FLAC(Free Lossless Audio Codec) | ✔️ | .flac |
ALAC(Apple Lossless Audio Codec) | ✔️ | .m4a/.caf |
MP3(MPEG Audio Layer III) | ❌ | .mp3 |
WMA(Windows Media Audio) | ❌ | .wma |
AAC(Advanced Audio Coding) | ❌ | .acc/.mp4/.m4a |
Vorbis | ❌ | .ogg |
Speex | ❌ | .spx |
Opus | ❌ | .opus |
Ogg | .ogg | |
WAV(Waveform Audio File Format) | .wav | |
AIFF(Audio Interchange File Format) | .aiff、.aif |
无损
Monkey's Audio
Monkey's Audio,是一种无损的音频编码和文件格式,文件扩展名为.ape,压缩率一般在55%左右。
FLAC
FLAC(Free Lossless Audio Codec),是一种无损的音频编码和文件格式,文件扩展名为.flac。虽然压缩率稍有不及Monkey's Audio,但FLAC技术更先进,占用资源更低,有更多的平台及硬件产品支持FLAC。
ALAC
ALAC(Apple Lossless Audio Codec),是由Apple开发的一种无损的音频编码,文件扩展名为.m4a、.caf。
有损
MP3
MP3(MPEG Audio Layer III),是非常流行的一种有损音频编码和文件格式,文件扩展名为.mp3。
- 第1版是:MPEG-1 Audio Layer III,属于国际标准ISO/IEC 11172-3
- 第2版是:MPEG-2 Audio Layer III,属于国际标准ISO/IEC 13818-3
- 第3版是:MPEG-2.5 Audio Layer III,并不是由MPEG官方开发的,不是公认的标准
WMA
WMA(Windows Media Audio),是由Microsoft开发的音频编码和文件格式,文件扩展名为.wma。包括4种类型:
- WMA:原始的WMA编解码器,作为MP3的竞争者,属于有损音频编码
- WMA Pro:支持更多声道和更高质量的音频,属于有损音频编码
- WMA Lossless:属于无损音频编码
- WMA Voice:属于有损音频编码
AAC
AAC(Advanced Audio Coding),是由Fraunhofer IIS、杜比实验室、AT&T、Sony、Nokia等公司共同开发的有损音频编码和文件格式,压缩比通常为18:1。
AAC被设计为MP3格式的后继产品,通常在相同的比特率下可以获得比MP3更高的声音质量,是iPhone、iPod、iPad、iTunes的标准音频格式。
AAC编码的文件扩展名主要有3种:
- .acc:传统的AAC编码,使用MPEG-2 Audio Transport Stream(ADTS)容器
- .mp4:使用了MPEG-4 Part 14的简化版即3GPP Media Release 6 Basic(3gp6)进行封装的AAC编码
- .m4a:为了区别纯音频MP4文件和包含视频的MP4文件而由Apple公司使用的扩展名
- Apple iTunes对纯音频MP4文件采用了.m4a文件扩展名
- M4A的本质和音频MP4相同,故音频MP4文件可以直接更改文件扩展名为.m4a
Vorbis
Vorbis,是由Xiph.Org基金会开发的一种有损音频编码。通常以Ogg作为容器格式,所以常合称为Ogg Vorbis,文件扩展名为.ogg。
Speex
Speex,是由Xiph.Org基金会开发的一种有损音频编码和文件格式,文件扩展名为.spx。
Opus
Opus,是由Xiph.Org基金会开发的一种有损音频编码和文件格式,文件扩展名为.opus。用以取代Vorbis和Speedx。经过多次盲听测试,在任何给定的比特率下都比其他标准音频格式具有更高的质量,包括MP3、AAC。
文件格式
Ogg
Ogg是一种多媒体文件格式,由Xiph.Org基金会所维护,可以纳入各式各样的音视频编码(音频、视频都可以),文件扩展名常为.ogg。
Ogg常用的音频编码有:
- 有损压缩:Speex、Vorbis、Opus
- 无损压缩:FLAC
- 未压缩:PCM
参考 : 【秒懂音视频开发】07_重识音频
网友评论