手机端
or

欢迎您加入我爱方案网QQ群

1.智能产品外包服务群(311606115)
2.嵌入式项目开发群(491609563)

蓝牙高级音频应用系统软件的设计研究

江尚; 李雪冬| 蓝牙规范,音频流传输,免提,音视频遥控| 2010-12-14
1280 收藏
分享到: 
每日精选
热门文章
热门方案

【中心议题】

  •        *提出了一个新的系统应用框架模型———蓝牙高级音频应用模型
  •        *给出了软件设计

【解决方案】

  •        *免提应用模式下HPAG之间的免提通话
  •        *立体声音频流传输模式下SRCSNK之间的立体声音频流传输
  •        *音视频遥控模式下CTTG之间的无线遥控

0引言

蓝牙技术是一种无线数据与数字通信的开放性全球规范,属于短距离无线通信技术。它以低成本的近距离无线连接为基础,用于替代数字设备和计算机外设间的电缆连线以及实现

数字设备之间的无线组网。蓝牙技术产品体积小、功耗低,可以方便地集成到数字设备中,具有广阔的应用前景。音视频传输技术作为蓝牙应用的一大方向,SIG发布了一系列的应用协议和框架为其提供规范与保证。本文提出了蓝牙高级音频系统的应用模型和解决方案,设计并实现符合应用框架规范要求的蓝牙高级音频系统应用软件,主要包括音频流传输、免提以及音视频遥控3方面的应用设计。

1蓝牙高级音频技术应用系统模型

蓝牙高级音频技术的应用模型是以蓝牙免提应用框架(Hand Free ProfileHFP)、蓝牙头戴式设备应用框架(Head SetProfileHSP)、高级音频分发框架(Advanced Audio Distribution

ProfileA2DP)、音频视频遥控应用框架(Audio Vedio RemoteControl ProfileAVRCP)为基础发展而来,组成模型的各蓝牙实体部分在各种不同应用模式下的角色定义如下:

 

在免提应用的模式下,蓝牙手机作为音频网关AG,立体声蓝牙耳机(包括麦克风)作为免提设备HFAG负责与HF建立音频连接,并把手机通话通过蓝牙语音链路转接至HF;在立体声音频流传输的模式下,蓝牙适配器作为信源端SRC,立体声蓝牙耳机作为信宿端SNKSRC负责查找并连接SNK的流端点,并将编码后的立体声音频流通过蓝牙数据信道传送给SNK;在音视频遥控的模式下,立体声蓝牙耳机(包括遥控)作为控制器CT,蓝牙适配器作为目标机TGCT作为遥控指令的发送端,负责遥控会话的建立并发送控制指令至TGTG作为指令的接收端,根据控制指令的内容和自身的当前状态执行相应的控制操作,并回复响应消息。

2音频流传输应用软件设计

音频流传输应用软件部分是基于高级音频分发框架(A2DP)的。该部分软件提供一些比较低层的服务,以允许设备对一个音频流进行建立、配置、开始传输以及挂起。音频流被导

BC3MM芯片的DSP中进行编码、解码操作,然后再通过低层蓝牙协议堆栈固件传输至相连的设备。为利用蓝牙的异步无连接(ACL)传输高质量的单声道(Mono)和立体声(Stereo)音频(Audio)数据,我们根据高级音频分发框架(A2DP)中所描述的通信流程构造该部分应用层软件实体,其中蓝牙适配器作为信源端,蓝牙立体声耳机作为信宿端。

该部分应用层软件核心部分是一个有限状态机,它通过控制AVDTP层中信令的交换并根据响应信息进行状态的跃迁,从而实现音频流的配置、建立、传输、暂停和释放过程。信令交

换采用命令/响应事务模式。音频流传输的通信流程整体上定义为初始化、流连接建立、数据流传输、流暂停和流释放5个阶段。

 

1)初始化阶段:信源端(SRC)和信宿端(SNK)均处于Ini-tiating状态,应用程序在AVDTP层注册流端点(Stream EndPointSEP)为其分配流端点标识符(SEID),并配置SEP所能提供的服务能力信息。

2)流建立阶段:先由SRC查找并收集SNK的流端点的服务能力信息,选定音频参数对SEP进行应用服务能力和传输服务能力的配置;然后,SRC发起音频流连接建立过程,建立L2CAP信道连接并打开相应的传输会话,后续的操作可由SRCSNK两端中的任何一方发起,软件中相应的设备角色也转换为发起方(INT)和接受方(ACP)。

3)数据流传输阶段:INT先调用库函数对便携式播放器输出的模拟音频数据进行ADC转换工作,之后对音频数据进行编码操作并传输到ACPACP将收到的分组进行解码,形成模拟音频信号驱动扬声器输出。

4)流暂停阶段:该阶段可选,当双方正在进行数据流传输时,由于INT方的某些特殊需要,需进行流暂停。该过程必须首先由INT方发起流暂停请求,在ACP方收到请求后,双方进入流暂停状态。

5)音频流释放阶段:由任一端作为INT来关闭本地SEP,释放相关资源,断开相应的传输信道。

3免提应用软件设计

免提应用软件部分是基于免提应用框架(HFP)的。在具体实现过程中,蓝牙立体声耳机作为免提设备(HF),蓝牙手机作为音频网关(AG)。免提应用软件的通信流程可分为初始化、匹配并建立服务级连接、AT指令/响应和连接释放4个阶段。

1)初始化阶段。该过程由耳机端发起,应用程序进行初始化工作,主要包括生成HFP实例,配置本地SDP参数等工作。

 

2)匹配并建立服务级连接阶段。首先HF免提应用程序接受外部按键命令信息进入匹配(Pair)模式,并处于Discover-able状态,相应的AG要进行查询HFP服务以及PIN码验证操作以完成匹配过程;匹配成功之后,建立服务级连接的过程由HF发起,HF先依据初始化阶段配置的SDP数据获取建立服务级连接必需的参数,初始化与AGRFCOMM层信道,然后向AG发送建立服务级连接请求,并在限定时间内得到AG端返回的确认信息后,完成与远端AG建立服务级连接的工作。

3AT命令/响应阶段。在服务级连接成功建立完成后,可以进行蓝牙免提通话了,蓝牙免提通话的全部功能是HFAG通过RFCOMM层传输蓝牙耳机应用框架中的AT指令来实现的。

4)连接释放阶段。HFAG均可以在需要时断开现有的服务级连接,同时与之对应的RFCOMM连接也会断开。免提软件实体一旦收到“HFP_SLC_DISCONNECT_CFM”消息,则认为自己与AG的服务级连接已经断开。

4音视频遥控软件设计

音视频遥控软件部分是基于音视频遥控应用框架(AVR-CP)的,而AVRCP又基于音视频控制传输协议(AVCTP)。在该部分软件实体的实现过程中按照AVRCP的规定,将立体声耳机作为遥控器CT,蓝牙适配器作为目标机TG,信令的交换采用命令/响应事务模式。遥控应用的软件核心部分被构造成一个有限状态机,它通过AVCTP层进行信令的交换,并根据响应信息进行状态的跃迁,从而实现控制信道的初始化配置、连接建立、基于AVC指令集的数据分组收发处理和信道的释放。

1)控制信道的初始化配置阶段。CTTG初始化本地AVRCP实体,应用程序根据收到的响应信息确认初始化完成。

 

2)控制连接建立阶段。建立过程可由CT发起,也可由TG发起。在信源端通过查找得知信宿端支持AVRCP服务的情况下,CT应用程序即可发起对指定TGAVRCP连接请求,TG对收到的连接请求予以确认,CT端应用程序根据响应信息认为控制连接已经建立。

3)基于AVC指令集的数据分组收发处理阶段。对应“典型的命令/响应流程”部分。控制连接一旦建立完成,CTTG间就可以进行AVC指令的收发。

4)控制信道释放阶段。CT向本地应用程序和TG发送释放请求,CTTG断开并向低层归还占用的L2CAP信道等资源,完成整个控制信道的释放。

5结束语

本文在研究多个蓝牙应用框架基础上,提出了一个新的系统应用框架模型———蓝牙高级音频应用模型,设计并实现了符合应用框架规范要求的蓝牙高级音频系统应用软件,实现了3

大主要功能:免提应用模式下HPAG之间的免提通话、立体声音频流传输模式下SRCSNK之间的立体声音频流传输、音视频遥控模式下CTTG之间的无线遥控。

点赞

深圳市中电网络技术有限公司 Copyright© www.52solution.com 粤ICP备10202284号