A2DP协议笔记 a2dp协议

1.概述A2DP(AdvancedAudio Distribution Profile)是蓝牙的音频传输协议,典型应用为蓝牙耳机。A2DP协议的音频数据在ACLLink上传输,这与SCO上传输的语音数据要区别。A2DP不包括远程控制的功能,远程控制的功能参考协议AVRCP。AVDTP则定义了蓝牙设备之间数据流句柄的参数协商,建立和传输过程以及相互交换的信令实体形式,该协议是A2DP框架的基础协议。A2DP与相关协议的附属关系如下图:

A2DP协议笔记 a2dp协议
A2DP在协议栈中的位置如下图所示:
注意下数据包装的过程。2.A2DP的一些定义GAVDP定义了两种角色:Initiator (INT) – This is the device that initiates asignaling procedure.【发起signaling的】Acceptor (ACP) – This is the device that shallrespond to an incoming request fromtheINT.【响应signaling的】A2DP在此基础上具体实现了连个角色:Source (SRC) – A device is the SRC when it acts as asource of a digital audiostreamthatis delivered to the SNK of the piconet.【输出音频stream的】Sink (SNK) – A device is the SNK when it acts as asink of a digital audio streamdeliveredfrom the SRC on the same piconet.【接受音频stream的】这里需要注意的是:一般在A2DP中Source和Sink的角色是固定的,而GAVDP的这两个角色是可以互换的,只要是发起signaling的一方就为initiator。一个Source和Sink的实例:

3.A2DP协议的限制(1)不支持synchronized point-to-multipoint distribution。(2)在Source和Sink端存在延迟。(3)音频数据的速率必须足够小于蓝牙的传输速率。(4)不提供任何数据保护的方法
4.编码 传输音频数据必须在Source端编码,在Sink端解码。A2DP规定了下面几种编码类型:

SBC是强制支持的(Mandatory Codec),其余三种可选(OptionalCodec),除了这些外,也可以有厂家自己的编码形式(Vendor Specific A2DP Codecs)。
5.SBC编码格式SBC是A2DP规定的强制支持的编码格式,这里我们具体只讨论这一种编码格式:
参数Sampling Frequency:

Sink端必须支持44100和48000这两种frequency,Source端支持一种就行。
参数Channel Mode:

参数Block Length:
参数Subbands:

参数Allocation Method:

参数Minimum / Maximum BitpoolValue:

6.Media Packet Header与Mediapayload: 在第一部分数据的包装中可以看出,在每一个Media payload上都会加上Mediapackrt header。主要包括以下几个部分:Timestamp (TS),Payload Type(PT),Marker (M) bit【置为全0】,Extension (X)bit【不使用,置为全0】。具体在AVDTP协议中定义,这里不详述。Media payload的格式如下:
其中Media Payload的Header部分的格式如下:
F bit – Set to 1 if the SBC frame is fragmented,otherwise set to 0.S bit – Set to 1 for the starting packet of a fragmented SBCframe, otherwise set to 0.L bit – Set to 1 for the last packet of a fragmented SBCframe, otherwise set to 0RFA – 置为0.Number of frames (4 bits) – If the F bit is set to 0, thisfield indicates the number offrames contained in this packet. If the F bit is set to 1,this field indicates the numberof remaining fragments, including the current fragment. Thusthe last counter valueshall be one. For example, if there are three fragments thenthe counter has value 3,2 and 1 for subsequent fragments. This field is expressed by 4bit UiMsbf.
7.A2DP的通信过程A2DP规定Sink个Source端有三种状态:IDLE、OPEN和STREAM,通过下图的流程进行状态转换:
Connection Establishment:
前提是L2CAP首先建立signaling Channel.Start Streaming:

OPEN状态下经过Start Stream 过程就转换到STREAMING状态。Connection Release:

在OPEN和STREAMING状态下都可以通过Stream Release过程变为IDLE状态。Suspend:

只能从STREAMING状态通过Stream Suspend过程变为OPEN。Change Parameters:

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/361737.html

更多阅读

理解透彻--802.1d,802.1w,802.1s与802.1q ieee 802.1d

一.STP:在谈本主题之前,先简单的对STP(802.1d)做个回顾.STP是用于打破层2环路的协议,但这个协议有个最明显的缺点,就是当层2网络重新收敛的时候,至少要等待50秒的时间(转发延迟+老化时间).50秒的时间对于一个大型的层2网络来说,是一

冯小刚对赌协议 解析对赌协议

     2010年,闹得纷纷扬扬的国美商战的董事局与贝恩签订的协议(网传,未验证)就好像有对赌的味道,什么如果陈离开,需要赔偿贝恩多少多少,如果董事局撤销指定董事,又要如何如何,关于细节,本文无需赘述,搜索足以。言归对赌,顾名思义,互相打

离婚协议应注意事项 签订离婚协议书的注意事项

离婚协议,是指双方均表示离婚,以及离婚后财产如何处理、子女归谁抚养等相关问题达成的共同意思表示。其中,子女抚养、财产分割的约定只有在双方解除婚姻关系后才能生效。也就是说,离婚协议中的“协议”是附条件的,即以“离婚”为生效条

协议离婚程序怎么走 协议离婚及其具体程序

什么是协议离婚,协议离婚的具体程序?工具/原料步骤/方法    协议离婚是指夫妻双方在平等、自愿、协商一致的基础上,就离婚及其有关财产分割、子女抚养等事项达成协议,经婚姻登记管理机关认可即可以解除婚姻关系的离婚方式

声明:《A2DP协议笔记 a2dp协议》为网友黎明有星辰分享!如侵犯到您的合法权益请联系我们删除