音频 ACC 的ADTS格式分析

AAC(高级音频解码)音频格式: 是一种由mpeg-4标准定义的有损音频压缩格式。

AAC格式分为2 种: ADIF(音频数据交换格式)和 ADTS (音频的传输流格式),ADIF只有一个统一的头,可以确定的找到这个音频数据的开始,必须得到所有的数据后才能解码,常用在磁盘文件中。ADTS则是每一帧都有头信息,可以在任意帧解码,它是一个有同步字的比特流,解码可以在这个流中任何位置开始。

两者的组织结构如下:

目前一般编码后和抽取出的都是ADTS格式的音频流,当编码ACC裸流时出现写出来的不能播放出来,可能就是AAC文件的每一帧数据缺少ADTS头信息,加入ADTS头信息对原始数据帧进行封装,就形成了ADTS帧。

AAC(ADTS格式)文件的每一帧由ADTS Header和AAC AUdio Data组成。结构体如下:

每一帧的ADTS头文件信息都包含了音频的采样率、声道、帧长度等信息,一般情况下ADTS的头信息都是7个字节(也有9个字节),分为固定头信息和可变头信息2部分,固定头信息中的数据每一帧都相同,可变头信息则在帧与帧之间可变。

接下来看看可变头信息adts_variable_header();

TS流数据中的音频数据中自带了ADTS头信息,不需要开发者另外再增加ADTS头信息。ADTS头信息的代码片段如下:

相关推荐
敢敢のwings8 小时前
Wan2.2 模型系统解读:从视频扩散到 WAM 世界模型模块
音视频
小猴子爱上树9 小时前
跨境电商AI批量图片翻译工具,视频字幕翻译免费试用
人工智能·python·音视频
AI服务老曹9 小时前
车牌识别算法接入AI视频分析平台的流程和误报优化
人工智能·算法·音视频
深念Y11 小时前
视频平台架构重构:从微服务到可插拔基础设施
后端·微服务·云原生·架构·rabbitmq·音视频·rocketmq
深念Y12 小时前
06-移动端三技术栈优劣对比-理论推演
服务器·云原生·架构·音视频·短视频
FFZero113 小时前
[mpv架构] (三) mpv 怎么实现 MP4 秒开?
c++·音视频·mpv
Dovis(誓平步青云)13 小时前
同一条路线在手机和平板上怎样换一种排版
android·开发语言·数据库·智能手机·音视频
深念Y13 小时前
视频平台架构重构:从微服务到云原生
服务器·微服务·云原生·重构·架构·音视频·短视频
2601_955662461 天前
短视频配音 7 款测评:旁白情绪、断句、呼吸感完整打分
人工智能·音视频·语音识别
bj_bluewei_tech1 天前
拯救者外接耳机麦克风没声音,更换耳机无效,排查主板音频信号电路
电脑·笔记本电脑·音视频