音视频封装格式:AAC音频基础和ADTS打包方案详解

本文介绍了AAC音频编码的基本情况,包括它的起源、与AC3的关系、编码技术参数。重点讲解了AAC的封装格式ADTS,解析了ADTS帧头的各个字段及其含义,并提供了核心代码示例,帮助理解如何解析ADTS音频帧。
摘要由CSDN通过智能技术生成

问题背景:

现在主流的封装格式支持的音视频编码标配是H264+AAC,其中像TS、RTP、FLV、MP4都支持音频的AAC编码方式。当然,后继者不乏Opus这种编码方式,它主要应用在互联网场景,比如现在谷歌的WebRTC音视频解决方案就用的Opus,最新发布的Android10支持的音视频编码方式就是AV1和Opus,但是AAC目前在广电,安防,电影院等还是应用最多,Opus目前还不足以威胁到AAC的地位。本篇文章准备讲解下AAC的封装格式ADTS字段含义和解封装,顺便讲解下AAC编码的一些基本情况。

AAC基本概况:

l AAC(Advance Audio Coding):

即高级音频编码,出现在1997年,基于MPEG-2的音频编码技术,当时被称为MPEG-2 AAC,因此把其作为MPEG-2(MP2)标准的延伸。是由Fraunhofer IIS、杜比实验室、AT&T、Sony等公司共同开发,目的是取代MP3格式,随着MPEG-4(MP4)标准在2000年的成型,则为AAC也叫M4A。

l 和AC3编码关系:

和AC3关系不大,AC3早于AAC,是由AAC的发起单位杜比实验室和日本先锋合作研制的新编码方式。AAC能输出AC-3的任何码率,胜过AC-3,压缩率更高,但技术上更加复杂。

l AAC背景和发展:

1997年制定了不兼容MPEG-1的音频标准MPEG-2 NBC即MPEG-2 AAC;

1999年AAC又增加了LTP和PNS工具,形成了MPEG-4 AAC V1;

2002年在MPEG-4 AAC v1增加了SBR和错误鲁棒性工具,形成了 HE-AAC;

2004年MPEG-4在HE-AAC引入了PS模块,提升降码率性能,形成了EAAC+;

对于1999年、2002年、2004年增加了SBR和PS等编码技术的统称为MPEG-4 AAC;

备注:上面这些SBR PS等缩写就是音频的编码算法代名词,网上比较多,感兴趣的可以进一步自行搜索。1. SBR技术即Spectral Band Replication(频段复制)音乐的主要频谱集中在低频段,高频段幅度很小,但很重要,决定了音质。如果对整个频段编码,若是为了保护高频就会造成低频段编码过细以致文件巨大;若是保存了低频的主要成分而失去高频成分就会丧失音质。SBR把频谱切割开来,低频单独编码保存主要成分,高频单独放大编码保存音质,“统筹兼顾”了,在减少文件大小的情况下还保存了音质,完美的化解这一矛盾。

2. PS指“parametric stereo”(参数立体声)。原来的立体声文件文件大小是一个声道的两倍。但是两个声道的声音存在某种相似性,根据香农信息熵编码定理,相关性应该被去掉才能减小文件大小。所以PS技术存储了一个声道的全部信息,然后,花很少的字节用参数描述另一个声道和它不同的地方。

l AAC编码技术参数:

采样率范围:8KHz-96KHz 范围比较广,就是一秒在模拟信号上进行多少次采样;

码率:8kbps-576kbps,支持范围比较宽,在压缩比和质量上都能考虑到ÿ

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值