一、Hands-free和Stereo模式简介

电脑连接上蓝牙耳机(音响)之后,点击Windows桌面扬声器然后点击播放设备会看到两个蓝牙耳机对应的2个设备,分别是XXX Hands-Free AG Audio以及XXX Stereo。

1674566590-79efe6714ba0f2c

 

Hands-Free免提设备,相当于“免提模式(Hands-Free Profile,HFP)”或者”耳机模式(headset profile,HSP)”,最初用于通话设计优化语音,具备双向单声道,这种模式下响应频率有限。免提模式(特别是HSP)为优化耳机耗电设计,更省电。此模式下可以同时进行播放音乐(音频输出)和录音通话(音频输入)操作。

Stereo立体声设备,在蓝牙术语中被称为“高级音频分发配置文件(Advanced Audio Distribution Profile)”,缩写为A2DP,针对单向传输高质量的双声道立体声设计,音质更高,通常用于播放立体声音乐。此模式下只能进行音频输出操作,当通过HFP协议进入语音通话,通过A2DP的音频流将被暂停,直到免提语音通话断开,这也就是“win10播放音乐时进行录音,音乐播放没有声音,要么只能进行音频输入,要么只能进行音频输出”的原因。Windows系统默认使用Stereo设备,可手动更改。

二、两种协议架构
1、Hands-Free协议架构
支持HFP的蓝牙设备定义了免提单元(HF)和音频网关(AG)角色。其中,免提单元(HF)角色用于控制输入和接收来自音频网关角色的设备输出,例如便携式导航设备(PND)。音频网关(AG)角色作为音频网关的设备,用于输入和输出,例如手机。一个Windows嵌入式NavReady驱动的设备只支持免提单元(HF)角色。

为了通过使用音频网关设备进行免提语音呼叫和接收,Windows嵌入式NavReady设备对一个设备进行配对,然后搜索配对设备上的服务发现配置文件(SDP)记录,以确定该设备是否支持HFP。如果它确实支持HFP, Windows嵌入式NavReady驱动的设备将承担免提单元(HF)的角色,以便通过蓝牙连接进行和接收语音呼叫。HFP服务通过蓝牙HFP连接与配对的手机通信,发送电话命令,接收状态更新,并从配对的手机流语音数据到免提设备。

Hands-Free协议架构如下图所示:

1674566590-cec150d8d0bad61

2、A2DP协议架构
A2DP协议允许创建一个蓝牙通道,通过该通道实现高级音频数据从一个支持蓝牙的设备流到另一个支持蓝牙的设备。字面意思,A2DP协议(Stereo设备)仅支持音频流传递到蓝牙设备输出。

支持A2DP协议的蓝牙设备定义了源(SRC)和Sink (SNK)两个角色。当一个设备是数字音频数据的源并将流发送给SNK时,它就是SRC,例如便携式导航设备(PND)。当设备接收到来自SRC的数字音频流时,它就是SNK,例如车载媒体播放器。Windows嵌入式NavReady设备只支持源(SRC)角色。

Windows嵌入式NavReady驱动的设备是SRC,它在内存中存储音频数据。如要将音频数据流传输到SNK设备,需要Windows嵌入式NavReady驱动的设备对蓝牙设备进行配对,然后搜索配对设备上的服务发现概要(SDP)记录,以确定该设备是否支持A2DP。如果它确实支持A2DP,Windows嵌入式NavReady驱动的设备将采用SRC角色,并使用音频压缩管理器(ACM)通过蓝牙连接发送音频数据至蓝牙外设SNK。

Windows嵌入式NavReady驱动的设备包括一个波形音频驱动程序,用于音量控制、管理音频线路以及播放数字音频文件。为了将音频数据路由到远程输出目的地,SRC设备可以使用A2DP协议通过蓝牙链接将音频数据流传输到支持单声道或立体声音频输出功能的SNK设备,例如车载蓝牙设备。通过使用A2DP,音频数据被压缩成合适的格式,从而有效地利用蓝牙链路上的带宽。SNK设备使用A2DP接收音频数据,然后使用其媒体播放器和音频驱动程序将其发送到音频输出设备,如车载立体声扬声器。A2DP依赖于蓝牙堆栈中的通用访问配置文件,也使用音频/视频分发传输协议来处理音频数据流。

A2DP协议架构如下图所示:

1674566590-aef38f394d1a232

如果用户发起一个交互,将一个新的启用蓝牙的设备连接到当前连接到另一个配对设备的配置文件端口(HFP或A2DP),以前连接的设备将被断开,新的设备将被连接。如果通过HFP进入语音通话,通过A2DP的音频流将被暂停,直到免提语音通话断开。

三、写在最后
1、Windows蓝牙革新
Windows10蓝牙这块存在比较多的问题,根据微软工作者透露,Windows 10 20H2后续版本将会有比较大的更新。目前最新发布的Windows 11,针对连接的单个蓝牙音频设备,在桌面右下角扬声器中的播放设备列表、声音面板中的播放和录制面板中均显示一个设备,不再分别显示Hands-Free AG Audio和Stereo设备,且已实现根据音频场景作Hands-Free AG Audio和Stereo协议设备的自动切换。用户通过蓝牙耳机播放音乐过程中也能进行录音操作,从这一点来说,用户不用再自行根据场景需要切换蓝牙播放设备,一定程序上提升了用户体验。

2、参考资料

1、蓝牙官网(https://www.bluetooth.com/)

2、Overview of Hands-Free Profile (Hands-Free Unit Role) | Microsoft Docs(https://docs.microsoft.com/zh-cn/previous-versions/windows/embedded/cc510823%28v=msdn.10%29)

3、Overview of Advanced Audio Distribution Profile (A2DP) (Source Role) | Microsoft Docs(https://docs.microsoft.com/zh-cn/previous-versions/windows/embedded/cc510655%28v=msdn.10%29)

发表回复

后才能评论