ASCS:AUDIO STREAM CONTROL SERVICE,音频流控制服务,顾名思义会对音频流的一些参数去做控制的服务,下面我们还是以手机和耳机为例,结合空口来分析ASCS都有哪些内容:
1:ASE CODEC CONFIG
配置ASE的codec,左右耳分别有3个ASE(这是通过前面ATT服务从耳机读取出来的),然后手机开始配置,下面以左耳(右耳类似)为例,结合空口看看手机是如何配置ASE CODEC:

如上图所示,红色框表示手机通过EATT Write来配置codec,绿色框是耳机通知手机,配置成功与否,最后配置成啥样。具体来看看:

如上图,手机给左耳配置了3个ASE,每个ASE codec config下面都定义了ASE ID,Latency,PHY和Codec四个选项,可以看到ASE ID 1和3的latency比较平衡,这两个ASE是为通话准备的,ASE ID 2的latency很高,这个是为音乐准备的,具体看看ASE 2的codec配置如何:

如上图可以看到codec的配置:
| 配置项 | 值 |
|---|---|
| 采样率 | 48k |
| 帧间隔 | 10ms |
| 音频通道分配 | 左耳 |
| 每帧字节数 | 155 |
| SDU包含几个帧 | 1 |
再看看耳机返回的Notification:

主要关注红色框里面的几个参数:
| 参数 | 值 | 详解 |
|---|---|---|
| Framing | unframed | 非成帧方式,在应用层组包 |
| preferred Retransmission number | 13 | 重传次数13次,这个是比较高的 |
| presentation delay | 20-40 | 后面四个参数都是为QOS准备,这个是为了左右耳做音频同步的 |
2:ASE QOS CONFIG
配置左右耳机的3个ASE的QOS,下面还是以左耳为例来看配置命令:

如上图所示,红色框表示手机通过EATT Write来配置QOS,绿色框是耳机通知手机,配置成功与否,最后配置成啥样。具体来看看:

如上图,手机给左耳的三个ASE都配置了QOS,我们看一下红色框标准的ASE 2的配置,里面的参数在上面已经解释过了,再看看耳机返回的ASE ID 2的QOS Notification:

3:ASE ENABLE
通过前面两个步骤,手机已经获取了耳机的3个ASE codec信息和QOS信息,然后手机会根据自己的场景(音乐,通话,游戏等)选择合适的ASE:

如上图红色框是分别enable 左右耳机的ASE,可以看到右边黄色框的ASE ID等于2,audio data context type为Media,说明是音乐场景。耳机会返回Enabling NOTIFICATION,如上面绿色框。
4:ASE STREAMING
ASE ENABLE之后,手机会发起LLCP CIS连接:

如上图:红色框表示手机给左右耳机建立两条CIS链路,绿色框代表耳机通知手机ASE 进入streaming状态,黄色框表示手机发给耳机的ISO数据。



















