目录
[1. AAC 文件格式](#1. AAC 文件格式)
[(1) ADIF (Audio Data Interchange Format)](#(1) ADIF (Audio Data Interchange Format))
[(2) ADTS (Audio Data Transport Stream)](#(2) ADTS (Audio Data Transport Stream))
[2. AAC 裸流格式(Raw AAC)](#2. AAC 裸流格式(Raw AAC))
[(1) AudioSpecificConfig](#(1) AudioSpecificConfig)
[(2) AAC 数据帧](#(2) AAC 数据帧)
[3. AAC 编码类型(Profile)](#3. AAC 编码类型(Profile))
[4. AAC vs. MP3 数据对比](#4. AAC vs. MP3 数据对比)
[5. 解析工具](#5. 解析工具)
AAC音频格式介绍
AAC(Advanced Audio Coding,高级音频编码)是一种有损数字音频压缩格式,由MPEG(Moving Picture Experts Group)和ISO/IEC联合开发,作为MP3格式的后继者。
主要特点
-
高效压缩:在相同比特率下,AAC通常能提供比MP3更好的音质
-
广泛支持:被Apple iTunes、YouTube、Android、iOS等广泛采用
-
采样率范围:8-96 kHz
-
多声道支持:最多支持48个声道
-
扩展性:支持可变比特率(VBR)和恒定比特率(CBR)
技术优势
-
采用改进的滤波器组(改进的离散余弦变换)
-
时域噪声整形(TNS)
-
预测技术
-
联合立体声编码
-
量化噪声处理更精细
-
更高效的霍夫曼编码
常见文件扩展名
-
.aac - ADIF格式的AAC文件
-
.m4a - MPEG-4音频(通常为AAC编码)
-
.mp4 - MPEG-4容器(可能包含AAC音频)
应用领域
-
流媒体服务(如Spotify、Apple Music)
-
数字电视和广播
-
移动设备音频
-
视频游戏音效
-
网络视频(如YouTube)
AAC已成为当今最流行的音频格式之一,尤其在苹果生态系统中占据主导地位。
AAC与PCM的区别与优势对比
基本概念差异
PCM (脉冲编码调制):
-
原始无损音频格式
-
直接记录声音波形的数字样本
-
未压缩格式,文件体积大
-
CD音频的标准格式(44.1kHz/16bit)
AAC (高级音频编码):
-
有损压缩音频格式
-
使用心理声学模型去除人耳不易察觉的声音信息
-
通过复杂算法大幅减小文件体积
-
MPEG标准的一部分,广泛用于流媒体和移动设备
主要技术区别
特性 | PCM | AAC |
---|---|---|
压缩方式 | 无压缩 | 有损压缩 |
数据量 | 大(约10MB/分钟CD音质) | 小(约1MB/分钟128kbps) |
音质 | 原始无损 | 接近无损(高比特率时) |
处理复杂度 | 低 | 高(编解码需要更多计算) |
延迟 | 低 | 较高(编码需要缓冲) |
各自优势
PCM的优势
-
完美音质:保留原始音频所有细节
-
低处理延迟:无需编解码,实时性好
-
编辑友好:多次编辑不会造成音质损失
-
通用兼容:所有音频设备都支持基本PCM格式
-
专业应用:音乐制作、录音棚等专业领域标准
AAC的优势
-
高效压缩:比MP3更高效,相同体积音质更好
-
节省空间:适合移动设备和流媒体传输
-
网络友好:减少带宽需求,加快传输速度
-
广泛支持:苹果生态、Android、流媒体平台普遍支持
-
灵活比特率:支持从低质量语音到高质量音乐的不同需求
应用场景选择
使用PCM的情况:
-
专业音频制作和母带处理
-
需要多次编辑的音频工程
-
对延迟敏感的实时音频应用
-
需要绝对保真度的场景
使用AAC的情况:
-
消费级音乐播放和流媒体
-
移动设备存储音频文件
-
网络视频的音频轨道
-
需要节省存储空间的场合
现代音频系统通常会根据需要在PCM和AAC之间转换,如在录音时使用PCM,分发时转换为AAC。
AAC音频数据格式解析
AAC(Advanced Audio Coding)是一种高效的有损音频压缩格式,广泛应用于流媒体、数字广播和移动设备。其数据格式可以分为文件格式 和裸流格式两种主要形式。
1. AAC 文件格式
AAC通常以容器格式存储,常见的包括:
-
.aac(ADIF 或 ADTS 格式)
-
.m4a(MPEG-4 容器,通常为 AAC-LC)
-
.mp4(MPEG-4 视频/音频容器)
-
.3gp(移动设备常用)
(1) ADIF (Audio Data Interchange Format)
-
特点:整个文件只有一个头部,后面紧跟连续的 AAC 数据帧。
-
适用场景:本地存储,不适合流式传输(因为必须从头开始解码)。
-
结构:
| ADIF Header | Raw AAC Data Frames... |
(2) ADTS (Audio Data Transport Stream)
-
特点:每个 AAC 数据帧前都有一个同步头,适合流媒体传输(如 HTTP Live Streaming)。
-
适用场景:网络流媒体、实时广播。
-
结构:
| ADTS Header | AAC Frame | ADTS Header | AAC Frame | ... |
-
ADTS 头结构(7或9字节):
字段 位数 说明 Sync Word 12 bits 固定 0xFFF
,用于帧同步MPEG Version 1 bit 0
=MPEG-4,1
=MPEG-2Layer 2 bits 固定 00
(AAC无Layer概念)Protection Absent 1 bit 1
=无CRC校验,0
=有CRCProfile 2 bits 0
=AAC Main,1
=AAC LC,2
=AAC SSR,3
=AAC LTPSampling Freq Index 4 bits 采样率索引(如 4
=44.1kHz)Private Bit 1 bit 通常为 0
Channel Config 3 bits 声道配置(如 2
=双声道)Original/Copy 1 bit 0
=原始,1
=复制Home 1 bit 通常为 0
Copyright ID Bit 1 bit 版权标识 Copyright ID Start 1 bit 版权开始标识 Frame Length 13 bits ADTS帧总长度(头+AAC数据) Buffer Fullness 11 bits 码流缓冲信息 Num of Raw Data Blocks 2 bits 0
=1个AAC帧
2. AAC 裸流格式(Raw AAC)
AAC裸流数据通常存储在MP4等容器中,其结构由音频配置信息(AudioSpecificConfig) 和原始数据帧组成。
(1) AudioSpecificConfig
-
描述AAC的编码参数,通常存储在MP4的
esds
(Elementary Stream Descriptor)或ADTS头中。 -
结构(2字节或更多):
字段 位数 说明 Audio Object Type 5 bits 编码类型(如 2
=AAC-LC)Sampling Freq Index 4 bits 采样率索引(同ADTS) Channel Config 4 bits 声道配置(同ADTS) GASpecificConfig 可变 扩展参数(如帧长、是否含SBR/PS等)
(2) AAC 数据帧
-
AAC 数据以帧(Frame)为单位存储,每帧包含:
-
1024个PCM样本 (AAC-LC)或 960个样本(AAC-LD,低延迟模式)。
-
**采用改进的离散余弦变换(MDCT)**进行频域编码。
-
使用霍夫曼编码进一步压缩数据。
-
3. AAC 编码类型(Profile)
AAC有多个变种,适用于不同场景:
Profile | 说明 | 典型应用 |
---|---|---|
AAC-LC (Low Complexity) | 标准AAC,平衡音质和计算量 | 音乐流媒体(Spotify、Apple Music) |
AAC-HE (High Efficiency, v1) | 结合SBR(频带复制),提高低码率音质 | 网络广播、低比特率传输 |
AAC-HEv2 (v2) | 增加PS(参数立体声),进一步压缩立体声数据 | 超低码率语音/音乐 |
AAC-LD (Low Delay) | 低延迟(~20ms),适合实时通信 | 视频会议、VoIP |
AAC-ELD (Enhanced Low Delay) | 增强低延迟,音质更好 | 高清语音通话 |
4. AAC vs. MP3 数据对比
特性 | AAC | MP3 |
---|---|---|
压缩效率 | 更高(相同音质下文件更小) | 较低 |
音质 | 高频保留更好,低码率表现更优 | 高码率接近AAC,低码率较差 |
帧结构 | 固定1024样本(LC)或960(LD) | 1152样本(MPEG1)或576(MPEG2) |
延迟 | 较高(编码需缓冲) | 较低 |
专利 | 需授权(但已广泛免费支持) | 专利已过期 |
5. 解析工具
-
FFmpeg:可提取AAC裸流并分析:
sh
复制
下载
ffmpeg -i input.aac -c:a copy -f adts output.aac
-
Hex Editor:手动分析ADTS头。
-
MP4Box:解析MP4中的AAC配置:
sh
复制
下载
MP4Box -info input.mp4
总结
-
ADIF 适合本地存储,ADTS 适合流式传输。
-
AAC裸流 由
AudioSpecificConfig
+ 数据帧组成。 -
AAC-LC 最常用,AAC-HE/HEv2 适合低码率,AAC-LD/ELD 适合实时通信。
-
比MP3更高效,但计算复杂度更高。
AAC凭借其高压缩比和优秀音质,已成为现代音频编码的主流标准。