穿戴式设备控件

快速配对的耳戴式设备控件旨在为 Android 上的重要耳戴式设备功能提供更好的访问权限控制。为此,我们在消息流中添加了新的消息组 Hearable 控件。

消息群组名称
穿戴式设备控制 0x08

主动降噪

主动降噪功能正成为高端头戴式耳机的一项重要功能。在查找器端,快速配对将具有用于设置、获取和保存状态的界面和逻辑,并且状态将存储在提供方端。事件流连接时,提供方必须发送会话 Nonce。为此,定义了以下消息代码:

消息代码名称 发件人 回复者 MAC ACK
获取 ANC 状态 0x11 Seeker 提供商
设置 ANC 状态 0x12 Seeker 提供商
通知主动降噪状态 0x13 提供商 Seeker

当 Seeker 连接到 Provider 时,或者当 Provider 收到“Get ANC state”(获取 ANC 状态)消息时,Provider 可以通知 ANC 状态,以便 Seeker 了解其 ANC 功能和存储状态。消息如下所示:

字节 数据类型 说明
0 uint8 穿戴式设备控制 0x08
1 uint8 通知 ANC 状态 0x13
2 - 3 uint16 其他数据长度 0x04
4 - 7 ANC 控制数据 不定
ANC 控制数据
字节 数据类型 说明
0 uint8 版本号 不定,此版本为 0x02
1 标志 界面切换开关
每种模式的启用(1)或停用(0)状态取决于其标志位值,如下所示:
位 0(最有显位):透明
位 1:预留(将位设置为 0)
位 2:关闭
位 3:预留(将位设置为 0)
位 4:ANC
不定
2 标志 可设置的切换开关
您还可以在此处设置上述任一或所有界面切换开关位,以指明当前启用的切换开关。
不定
3 标志 当前状态
只能设置一个位,并且此字节的值不得为零。
不定

Seeker 会根据主动降噪控制数据显示切换界面。

示例 1:提供程序支持 3 种主动降噪模式:通透模式 - 关闭模式 - 主动降噪模式,且耳机已戴在头上,所有模式现在均可设置,当前状态为关闭:

字节 数据类型 说明
0 uint8 版本号 0x01
1 标志 界面切换开关 0b10101000
2 标志 可设置的切换开关 0b10101000
3 标志 当前状态 0b00100000

示例 2:提供程序支持 3 路主动降噪功能:通透 - 关闭 - 主动降噪,目前只有一只耳机戴在头上或没有耳机戴在头上,因此无法设置任何模式,当前状态为关闭:

字节 数据类型 说明
0 uint8 版本号 0x01
1 标志 界面切换开关 0b10101000
2 标志 可设置的切换开关 0b00000000
3 标志 当前状态 0b00100000

如果用户切换切换开关,Seeker 会将当前状态设置为提供方,如下所示:

字节 数据类型 说明
0 uint8 穿戴式设备控制 0x08
1 uint8 设置 ANC 状态 0x12
2 - 3 uint16 其他数据长度 不定,0x04 或 0x14
4 uint8 Seeker 版本号 不定,0x01 或 0x02
5 标志 可设置的主动降噪模式(界面切换开关) 不定
6 标志 启用主动降噪模式(可设置的切换开关) 不定
7 标志 新的 ANC 模式索引(新状态) 不定
8 - 23 已预留 不定

字节 4-7 实际上是从 Seeker 端发送的 ANC 控制数据。如果将额外长度值设置为 0x14,则会出现预留的字节 8-23,并且在收到这些字节时,提供程序应忽略它们。如果将额外长度值设置为 0x04,则不存在预留字节。

当提供程序收到“Set ANC state”(设置 ANC 状态)消息时,应确认,并向所有已连接的 Seeker 通知 ANC 状态。如果用户通过耳机手势或配套应用更改设置,提供方还应向所有已连接的查找者发送通知。