AC3/EAC3格式总结
2019独角兽企业重金招聘Python工程师标准>>>
关于AC3、EAC3比特流的基本格式
1 AC3基本格式
Ac3比特流由一系列的synchronization frame组成,每个synchronization frame包含6个audio block。每个frame的基本结构如图1:
SI |
BSI |
AB0 |
AB1 |
AB2 |
AB3 |
AB4 |
AB5 |
Aux |
CRC |
SI |
BSI |
图1
AC3 Sync frame可按如下流程,具体每个域的解释参考spec:
syncframe()
{
sync_info();//同步信息头为0x0B77
bsi();
for(blk=0;blk<6;blk++)
{
audblk();
}
auxdata();//可选
errorcheck();//可选
}/*end of syncframe*/
2 EAC3基本格式
EAC3,全称Enhanced AC-3 bit streams,与AC3类似,但不能后向兼容。AC3的decoder不能解EAC3的bitstream,EAC3的decoder即能解AC3,也能解EAC3。
每个Frame的基本结构与AC3一致。
EAC3 Sync frame可按如下流程,具体每个域的解释参考spec:
syncframe()
{
sync_info();//同步信息头为0x0B77
bsi();
Audfrm();
for(blk=0;blk<number_of_blocks_per_syncframe;blk++)
{
audblk();
}
auxdata();//可选
errorcheck();//可选
}/*end of syncframe*/
注意:bsi()域中的numblkscod标明每个syncframe包含多少个block,与AC3不同(AC3每个syncframe一定包含6个audio block,解码出来共1536个sample),EAC3每个syncframe不一定包含6个block,即如果每个syncframe只有一个有效block,那么该frame只包含256个sample。
Bsi()域中如果标明使用fscod2,Reduced Sampling Rates(24/22.05/16),numblkscod一定为0x11,即每个syncframe包含6个block。
Bsi()域中bsid,Bit Stream Identification:
0~8 标明是AC3;
11-16 标明是EAC3;
9、10或者大于16的值:不支持的bitstream,decoder必须要mute;
3 数字输出接口
IEC60958规定了PCM输出时的传输方式。每个Block包含192个frames,每个frames包含两个subframe,两个subframe则分别对应着左右两个channel的Sample值,默认16bits,最大可传输24bits。
IEC61937仍然采用IEC60958 frame格式,用来传递非PCM数值,即原始的audio bitstream。只适用于consumer application,professional mode不在该标准范围内。
IEC61937通过data burst的概念来传输audio bitstream。data burst由burst preamble(即Pa,Pb,Pc,Pd)和burst payload组成, 传输Data Burst时还需要做一些Stuffing动作,保持同步。
传输一个data burst,必须能够解出一个完整的帧。data burst结构如图:
|pa|pb|pc|pd|Bitstream|NULL |pa|pb|pc|pd|Bitstream|NULL pa|pb|pc|pd|Bitstream|NULL
IEC_DATA长度:pa~NULL,对AC3,该值为1536;对EAC3,该值为6144;即需要多少个IEC60958 frames来完成一个databurst的传输。
IEC_NULL:NULL,用于同步;
PD:Bitstream,传输的payload长度,必须要能够解出一个完整的帧。
传递一个Data Burst之前,首先需要传递pa,pb,pc,pd四个header,通过两个IEC60958 frame来传递。frame0的subframe0传递pa,subframe1传递pb;frame1的subframe0传递pc,frame1的subframe1传递pd。随后再传递audio bitstream的IEC60958 frames。
转载于:https://my.oschina.net/tangcong/blog/89798
AC3/EAC3格式总结相关推荐
- MP3,aac,ac3,eac3
mp3,aac,ac3,eac3都是音频的一种编码格式; MP3: 是一种音频压缩技术,其全称是动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio L ...
- ffmpeg mp4 mp3 wav flac webm aac ac3 ogg格式转换
转载自:ffmpeg mp4 mp3 wav flac webm aac ac3 ogg格式转换 - liuyihua1992 - 博客园 fmpeg是Linux中转换音频视频文件的常用工具. mp4 ...
- MX Player不支持此音频格式(EAC3)
文章目录 问题描述 解决方案 遇到的坑 参考文献 问题描述 MX Player不支持此音频格式(EAC3),MX Player 从 1.69 开始因为授权问题移除了 AC3/DTS 支持 可以使用本人 ...
- 跨平台转码软件HandBrake, 一款万能的视频压缩/格式转换工具!
无论是下载高清电影,还是用手机录制的视频,很多时候文件体积都非常巨大.收藏保存或分享时会比较麻烦,因此常备一款真正好用的视频压缩软件是很有必要的. 网上的视频处理工具非常繁多,收费免费的一大堆,很多人 ...
- ac3/eac/eac+atmos编码同步帧参数概述
ac3 是杜比公司出的一种音频压缩格式,在影院级别的场所经常会用到,最大支持5.1升到.在编码中ac3的主要同步帧参数格式如 syncframe() { syncinfo(); bsi() ; for ...
- 音视频系列1:流媒体
1. 流媒体技术 1.1 基本需求 流媒体技术需要: 1.允许客户端在不下载完整文件的时候即可以开始播放视频: 2.允许客户端从完整内容的任何位置开始播放(不包括视频直播): 3.针对视频直播,允许客 ...
- Qualcomm 音频学习一
前言 最近在学习高通的音频驱动,在学习了高通音频 bring up 和 Audio overview 文档后,并在网上寻找到一篇比较重要的 blog进行学习后,将这部分学习笔记记录于此. 四个重要部分 ...
- Qualcomm 音频学习(Bring up)
原址 Qualcomm Audio HAL 音频通路设置 前言 最近在学习高通的音频驱动,在学习了高通音频 bring up 和 Audio overview 文档后,并在网上寻找到一篇比较重要的 b ...
- nPlayer Plus视频播放器 免越狱直装
这是一款付费软件,略有小贵,plus版本为60元,普通版本为30元,lite版本为免费,但是会有广告.前几年买过一款叫Avplayer的视频播放器,听这个名字就很有诱惑力,但是刚买不久,它就不更新了. ...
最新文章
- mysql8.0.18ZIP版下载与安装(以及无my-default.ini文件和data文件夹的解决方法)
- 计算机教学中因才施教,浅析高校《大学计算机基础》教学中的因材施教
- 全国计算机等级考试题库二级C操作题100套(第42套)
- 字符串常量到底存放在哪个存储区
- hadoop 单机单间_Hadoop单机模式配置
- CVPR2020 | PV-RCNN: 3D目标检测Waymo挑战赛+KITTI榜单模态第一算法
- 智慧社区防控(测温)
- 站立会议中发现的一些新问题
- 2021东华杯misc详解
- 医惠护理系统服务器错误,医惠智能云随访系统
- 电子万年历——沐雨先生
- 2020电子设计竞赛G题 - 非接触物体尺寸形态测量
- 华为云免费试用_如何试用华为云服务器
- GO语言实战之类型的本质
- 欢迎使用CSDN-markdown编辑器额企鹅去恶趣味
- 玩个游戏好难 Win10我的世界(Minecraft)下载
- linux启动和关闭防火墙命令
- 电脑无法显示移动硬盘文件内容的解决方法
- 《飞轮效应》 - 系统动力学 - 增强回路 - 推荐序 /刘润
- 录音类MediaRecorder的简单应用-录音频
热门文章
- c语言内存泄漏怎么测试,C语言内存泄漏检测方法
- android查找本地图片数据库,Android 图片数据库那些事儿
- EMC原理-传导(共模、差模)与辐射(近场、远场)详解
- python 矩阵乘法 跳过nan_奇怪的numpy矩阵运算bug
- ae去闪插件deflicker使用_一款专业的Ae视频去闪烁插件:REVisionFX DEFlicker
- 用友web portal开发-附件表
- Marbles CodeForces - 1215E 状态压缩dp
- 阿里双十一微服务改造—架构设计
- 番茄的随笔7:从PI和PR的传递函数波特图分析参数的影响
- word设置页码从非第一页开始