77百科网
当前位置: 首页 生活百科

aac格式怎么播放音频(AAC音频格式详解和实战解析)

时间:2023-06-01 作者: 小编 阅读量: 4 栏目名: 生活百科

aac格式怎么播放音频一.基本概念AAC:即MPEG-2AdvancedAudioCoding,分为流格式和文件格式。文件格式主要用于文件存储和文件播放,流格式主要用于流媒体在线播放。流式AAC可以简单理解如下图:固定头如下:syncword同步字Thebitstring‘111111111111’,说明一个ADTS帧的开始。Raw数据块:一个帧包含1024个采样Duration算法:一个AAC原始帧包含一段时间内1024个采样及相关数据。时间t=总帧数x一个AAC音频帧的播放时间。

aac格式怎么播放音频?一.基本概念AAC:即MPEG-2 Advanced Audio Coding,分为流格式和文件格式文件格式主要用于文件存储和文件播放,流格式主要用于流媒体在线播放,今天小编就来说说关于aac格式怎么播放音频?下面更多详细答案一起来看看吧!

aac格式怎么播放音频

一.基本概念

AAC:即MPEG-2 Advanced Audio Coding,分为流格式和文件格式。文件格式主要用于文件存储和文件播放,流格式主要用于流媒体在线播放。

文件格式:adif格式

adif格式

该格式特点:只有开头有一个头部信息,后面都是AAC裸数据。适应磁盘存储和文件播放

流格式:adts_frame格式

adts_frame格式

该格式特点:每一帧数据=固定头(fixed_header)可变头(variable_header) 帧数据(raw_data),适合流媒体在线播放。

流式AAC可以简单理解如下图:

固定头如下:

syncword 同步字The bit string ‘1111 1111 1111’,说明一个ADTS帧的开始。

ID MPEG 标示符, 设置为1.

layer Indicates which layer is used. Set to ‘00’

protection_absent 表示是否误码校验

profile 表示使用哪个级别的AAC,如01 Low Complexity(LC)--- AACLC

sampling_frequency_index 表示使用的采样率下标

channel_configuration 表示声道数

frame_length 一个ADTS帧的长度包括ADTS头和raw data block.

可变头如下:

adts_buffer_fullness 0x7FF 说明是码率可变的码流

number_of_raw_data_blocks_in_frame

表示ADTS帧中有number_of_raw_data_blocks_in_frame1个AAC原始帧.

所以说number_of_raw_data_blocks_in_frame == 0 表示说ADTS帧中有一个AAC数据块并不是说没有。

其他字段为定义,可以忽略,。

Raw数据块:

一个帧包含1024个采样

Duration算法:

一个AAC原始帧包含一段时间内1024个采样及相关数据。

一个AAC音频帧的播放时间=一个AAC帧对应的采样样本的个数/采样率。总时间t=总帧数x一个AAC音频帧的播放时间。

时间t=总帧数x一个AAC音频帧的播放时间。

二. 实战演练

1)使用ffmpeg抽取一个mp4文件中的aac音频如下:

ffmpeg.exe -i CCTV-2-dszg-1.mp4 -vn -y -acodec copy audio.aac

2)利用工具分析该aac音频固定头和可变头字段如下:

adts头解析

3)使用程序代码解析

#include"stdafx.h"#include<windows.h>typedefstruct_AdtsHeader{unsignedintnSyncWord;unsignedintnId;unsignedintnLayer;unsignedintnProtectionAbsent;unsignedintnProfile;unsignedintnSfIndex;unsignedintnPrivateBit;unsignedintnChannelConfiguration;unsignedintnOriginal;unsignedintnHome;unsignedintnCopyrightIdentificationBit;unsignedintnCopyrigthIdentificationStart;unsignedintnAacFrameLength;unsignedintnAdtsBufferFullness;unsignedintnNoRawDataBlocksInFrame;}AdtsHeader;int_tmain(intargc,_TCHAR*argv[]){FILE*fd=fopen("D:\\ffmpeg-4.1-tool\\bin\\audio.aac","rb ");if(fd==NULL){printf("fopenisfailed,err%d\n",GetLastError());}charadts[7];intadtslen=7;intret=fread(adts,adtslen,1,fd);if(ret!=1){printf("freadisfailed,err%d\n",GetLastError());}char*p=adts;GetAdtsSpecificConfig(p,&tAdtsHeader);printf("AACkeyparam:\n");printf("id:%d\n",tAdtsHeader.nId);printf("layer:%d\n",tAdtsHeader.nLayer);printf("ProtectionAbsent:%d\n",tAdtsHeader.nProtectionAbsent);printf("Profile:%d\n",tAdtsHeader.nProfile);printf("SfIndex:%d\n",tAdtsHeader.nSfIndex);printf("PrivateBit:%d\n",tAdtsHeader.nPrivateBit);printf("ChannelConfiguration:%d\n",tAdtsHeader.nChannelConfiguration);printf("Original:%d\n",tAdtsHeader.nOriginal);printf("nHome:%d\n",tAdtsHeader.nHome);printf("nCopyrigthIdentificationStart:%d\n",tAdtsHeader.nCopyrigthIdentificationStart);printf("nAacFrameLength:%d\n",tAdtsHeader.nAacFrameLength);printf("nAdtsBufferFullness:%d\n",tAdtsHeader.nAdtsBufferFullness);printf("NoRawDataBlocksInFrame:%d\n",tAdtsHeader.nNoRawDataBlocksInFrame);getchar();return0;}

由此可见:代码读出来的参数和工具分析参数一致。

更多更详细资源请关注公众号:AV_Chat

    推荐阅读
  • 送老婆生日祝福语简短(需要怎么给老婆表达生日快乐)

    送老婆生日祝福语简短感谢上苍在今天给了我一个特别的礼物,就是你。祝老婆生日快乐。有一份极珍贵的礼物,我要把它送给你,那就是我一颗纯洁的心,老婆生日快乐。日月轮转永不断,情若真挚长相伴,不论你身在天涯海角,我将永远记住这一天祝你生日快乐。因为你的降临这一天成了一个美丽的日子,从此世界便多了一抹诱人的色彩。生日的烛光中摇曳一季繁花,每一支都是我的祝愿:生日快乐。

  • 张家界什么时候去最好(张家界属于5A景区吗)

    接下来我们就一起去研究一下吧!张家界什么时候去最好秋季去最合适,秋天的张家界层林尽染,正是猕猴桃、蜜橘等水果成熟的时节。张家界是中国首批5A级旅游区。张家界国家森林公园为核心的武陵源地区因奇特的石英砂岩大峰林被联合国列入《世界自然遗产名录》。国家森林公园自然风光以峰称奇、以谷显幽、以林见秀。其间有奇峰3000多座,如人如兽、如器如物,形象逼真,气势壮观。

  • 罗村蛋糕店排行(曲靖有哪些蛋糕店)

    5小时预约配送范围:安宁市;每日配送时间:10:00-23:00;18:00点之后停止接单。如今嘉华的直营门店数量将近250家,遍布云南省内。嘉华饼屋堪称是曲靖的老字号。嘉华的蛋糕,面包是唯一获90年,91年,92年优秀新产品奖的产品,93年,94年又获最受消费者欢迎的优质产品;“嘉华月饼”多次在曲靖市的质量评比中名列前予,连续三年被评为质量信得过的免检产品。

  • 国货十大良心洗发水(国内公认十大良心)

    国内公认十大良心“超棒”洗发水曝光这些国货宝藏超好用飘柔上榜,我来为大家科普一下关于国货十大良心洗发水?以下内容希望对你有帮助!

  • 徐志雷名字打分116分 徐志雷吧 百度贴吧

    文章目录:一、徐志雷相关名字打分106二、徐志雷相关名字评分107三、徐志雷相关名字推荐四、徐志雷相关名字大全五、其他人还看了一、徐志雷相关名字打分106徐婉晴徐志雄徐龙奎徐寿松徐士敏徐春明徐春晖徐文达徐学澥徐戎徐雨徐臣徐仁彬徐承平徐沐婵徐冶琼徐建雄徐剑徐丹明徐计耀徐泽明徐月红徐云天徐剑秋徐婉薇徐梓伊徐锻徐宣徐婉徐建群徐莹徐洪军徐昌酩徐秉金徐宛徐本华徐嘉蔓徐贵樱徐晓良徐爱杰徐东升徐蔓徐茜徐成芳徐恒

  • 怎么辨别渣女漫画(女孩谈恋爱被PUA全过程曝光)

    pua是近年来在网上流行的一种说法,pua是一种很常见的代名词,但并不是一种爱情,而是一种扭曲的爱情。pua的精髓就是:我说的每一句话都是为了你好,但是我告诉你的是,我对你的感情太糟糕了。很多人都不知道pua是怎么回事,所以今天我们就用一套漫画,来跟你分享一个女生被pua的整个过程。

  • 酵母粉发面要多久才有效果(用酵母粉的注意)

    ▲检查酵母粉包装是否完好1、酵母粉的包装。▲检查生产日期和保质期2、酵母粉的保质期。看看家里已开封的酵母粉,如果超过12个月,建议不要用了,可能发不了面了。和面时,需要激活酵母粉的活性才能发面,通常都是用温水搅拌化开,然后倒入面粉中。▲酵母粉不能用开水4、酵母粉不能与食盐同时使用。▲酵母粉加点白糖能促进发酵6、酵母的用量。▲酵母粉的用量要成比例7、酵母粉的保存。

  • 姚策养母许敏最新采访(姚策遗孀熊磊半个月内)

    姚策遗孀熊磊发长文,核心直冲亡夫姚策与养母许敏母子演戏诈捐,“割肝救子”不实。熊磊嘴上虽说“房产归属方面,尊重法律的判决。”并喊话许敏放下屠刀,放他们一套生路。但上海中山医院医护人员却力挺了许敏。抹黑许敏在她发出第二篇文章后,操控网友对熊磊她本人及其家人进行网暴。以熊磊的智商,非常肯定地认为,三篇文章绝对不是出自熊磊的笔作,都是由他人代笔。

  • 如何评价穷游的似水年华 穷游的似水年华

    穷游的似水年华是一个视频博主,视频中详细记录了他们一家四口半年来生活在旅途当中那平凡而开心、朴实而温馨的穷游故事。一辆房车是他们旅行的全部,无论刮风下雨,无论酷暑寒冬,他们都以车当家,以手机当载体,以天当幕布,以地当厨房。来自河南郑州的似水年华阳光直率,在2012年情人节那天与大学同学喜结良缘,婚后育有两女。

  • 男人多吃瓜子好吗(男人多吃瓜子好吗还是少吃)

    而葵花籽中含有丰富的锌,恰好可以补充人体需求。精氨酸是制造精液不可缺少的成分。因此,处在生育期的男人,每天食用一些葵花籽对身体是非常有好处的。这类病人如果食用瓜子,会引起消化不良。吃瓜子的注意事项有哪些1、正确选择智道瓜子的味道,原味最好。