一种蓝牙媒体播放控制方法和相关装置 【技术领域】
本发明涉及蓝牙技术领域, 尤其涉及一种蓝牙媒体播放控制方法和相关装置。背景技术 蓝牙是一种支持设备短距离通信 ( 一般 10m 内 ) 的无线电技术, 能在包括移动电 话、 掌上电脑 (PDA, Personal Digital Assistant)、 无线耳机、 笔记本电脑、 相关外设等众 多设备之间进行无线信息交换。利用蓝牙技术, 能够有效地简化移动通信终端设备之间的 通信, 也能够成功地简化设备与因特网 (Internet) 之间的通信, 从而使数据传输变得更 加迅速高效, 为无线通信拓宽道路。蓝牙采用分散式网络结构以及快跳频和短包技术, 支 持点对点及点对多点通信, 工作在全球通用的 2.4GHz 工业、 科学、 医学 (ISM, Industrial Scientific Medical) 频段, 其数据速率为 1Mbps。 采用时分双工传输方案实现全双工传输。
蓝牙协议组同时定义了多媒体控制的规范 : 音频 / 视频远程控制配置文件协议 (AVRCP, Audio/Video Remote Control Profile)。AVRCP 设计用于提供控制电视机 (TV, Television)、 高 保 真 (Hi-Fi, High-Fidelity) 设 备 等 的 标 准 应 用 程 序 编 程 接 口 (API, Application Programming Interface), 此配置文件用于许可单个远程控制设备 ( 或其它 设备 ) 控制所有用户可以接入的 A/V 设备。它可以与高级音频传输功能 (A2DP, Advanced Audio Distribution Profile) 或视频传输功能 (VDP, Video Distribution Profile) 配 合使用。
本发明的发明人发现现有技术至少存在以下缺陷 : AVRCP 协议规范对蓝牙芯片及 开发平台要求较高, 能够支持该 AVRCP 协议规范的设备较少。
发明内容 本发明实施例提供了一种蓝牙媒体播放控制方法和相关装置, 用于提供多数设备 能够支持的蓝牙媒体播控能力。
本发明实施例一方面提供了基于被控端实现的一种蓝牙媒体播放控制方法, 包 括:
被控端与控制端之间建立虚拟串口功能 SPP 连接或串行线性仿真协议 RFCOMM 连 接;
所述被控端与所述控制端之间建立免提功能 HFP 连接 ;
所述被控端与所述控制端之间建立高级音频传输功能 A2DP 连接和 / 或视频传输 功能 VDP 连接 ;
所述被控端接收所述控制端根据用户的输入选择的播放控制指令, 所述播放控制 指令通过所述 SPP 连接或所述 RFCOMM 连接传输 ;
所述被控端根据所述播放控制指令, 执行与所述播放控制指令相应的控制操作。
本发明实施例另一方面提供了基于控制端实现的一种蓝牙媒体播放控制方法, 包 括:
控制端与被控端之间建立虚拟串口功能 SPP 连接或串行线性仿真协议 RFCOMM 连接; 所述控制端与所述被控端之间建立免提功能 HFP 连接 ;
所述控制端与所述被控端之间建立高级音频传输功能 A2DP 连接和 / 或视频传输 功能 VDP 连接 ;
所述控制端接收用户的输入, 并根据所述用户的输入选择播放控制指令, 所述播 放控制指令通过所述 SPP 连接或所述 RFCOMM 连接传输 ;
所述控制端向所述被控端发送所述播放控制指令。
本发明实施例提供了一种蓝牙媒体播放被控端, 包括 :
蓝牙连接单元, 用于建立与控制端的虚拟串口功能 SPP 连接或串行线性仿真协议 RFCOMM 连接 ; 建立与所述控制端的免提功能 HFP 连接 ; 建立与所述控制端的高级音频传输 功能 A2DP 连接和 / 或视频传输功能 VDP 连接 ;
控制指令接收单元, 用于接收所述控制端根据用户的输入选择的播放控制指令, 所述播放控制指令通过所述 SPP 连接或所述 RFCOMM 连接传输 ;
媒体控制单元, 用于根据所述播放控制指令, 执行与所述播放控制指令相应的控 制操作。
本发明实施例提供了一种蓝牙媒体播放控制端, 包括 :
蓝牙连接单元, 用于建立与被控端的虚拟串口功能 SPP 连接或串行线性仿真协议 RFCOMM 连接 ; 建立与所述被控端的免提功能 HFP 连接 ; 建立与所述被控端的高级音频传输 功能 A2DP 连接和 / 或视频传输功能 VDP 连接 ;
控制指令选择单元, 用于接收用户的输入, 并根据所述用户的输入选择播放控制 指令, 所述播放控制指令通过所述 SPP 连接或所述 RFCOMM 连接传输 ;
控制指令发送单元, 用于向所述被控端发送所述播放控制指令。
从以上技术方案可以看出, 本发明实施例具有以下优点 :
本发明实施例中, 被控端与控制端之间通过建立虚拟串口功能 SPP 连接或串行线 性仿真协议 RFCOMM 连接完成了蓝牙的连接, 在建立免提功能 HFP 连接、 建立高级音频传输 功能 A2DP 连接和 / 或视频传输功能 VDP 连接之后, 被控端根据用户在控制端的输入选择播 放控制指令, 执行与该播放控制指令相应的控制操作。由于本发明实施例中采用的蓝牙连 接方式对蓝牙协议要求较低, 能够支持市场上主流的蓝牙设备, 所以能够适配现有的主流 开发平台, 特别是智能手机开发平台, 提供多数设备能够支持的蓝牙媒体播控能力。
附图说明
为了更清楚地说明本发明实施例中的技术方案, 下面将对实施例描述中所需要使 用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例, 对于 本领域的技术人员来讲, 还可以根据这些附图获得其他的附图。
图 1 为本发明实施例提供的一种蓝牙媒体播放控制方法的示意图 ;
图 2 为本发明实施例提供的另一种蓝牙媒体播放控制方法的示意图 ;
图 3 为本发明实施例提供的蓝牙媒体播放控制方法中被控端与控制端的交互流 程示意图 ;图 4 为本发明实施例提供的一种蓝牙媒体播放被控端的示意图 ; 图 5 为本发明实施例提供的一种蓝牙媒体播放控制端的示意图 ; 图 6 为本发明实施例提供的蓝牙媒体播放被控端与控制端的协议栈结构示意图。具体实施方式
本发明实施例提供了一种蓝牙媒体播放控制方法和相关装置, 用于提供多数设备 能够支持的蓝牙媒体播控能力。
为使得本发明的发明目的、 特征、 优点能够更加的明显和易懂, 下面将结合本发明 实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 下面所描述 的实施例仅仅是本发明一部分实施例, 而非全部实施例。 基于本发明中的实施例, 本领域的 技术人员所获得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例提供的一种蓝牙媒体播放控制方法, 如图 1 所示, 包括 :
101、 被控端与控制端之间建立 SPP 连接或 RFCOMM 连接。
在本发明实施例中, 按照蓝牙规范的描述, 蓝牙播放控制系统一般由两部分组成 : 控制端和被控端 ( 同时被控端也是媒体播放设备 )。其中, 控制端 (CT, controller) 是一 种通过发送命令到被控端与被控端进行交互的装置。 CT 具体可以是个人电脑, 掌上电脑, 移 动电话, 遥控器或音视频 (AV, Audio Video) 设备 ( 例如具体的 AV 设备可以是车载系统, 耳 机, 播放器 / 录音机, 定时器, 调谐器, 监视器等 )。被控端 (TG, target) 是一种通过接收命 令、 完成相应的动作、 并产生一个响应的装置。TG 具体可以是音频播放器 / 录音机, 视频播 放器 / 录音机, 电视机, 调谐器, 放大器或耳机等。需要说明的是, 控制端所包括的具体的设 备和被控端所包括的具体的设备之间的角色不是固定不变而是可以互换的, 例如对同样是 耳机在一种应用场景下可以是控制端, 用于控制与该耳机相连的播放设备, 该耳机在另一 种场景下可以是被控端, 用于接收与该耳机相连的个人电脑下达的指令。 总之, 被控端与控 制端只是在一种实现场景下的不同角色, 而并非固定不变, 需要根据具体的应用场景决定, 本发明实施例不作限定。
本发明实施例中, 蓝牙芯片以及开发接口普遍支持虚拟串口功能 (SPP, Serial Port Profile) 规范和串行线性仿真协议 (RFCOMM) 规范, 被控端可以建立与控制端的 SPP 连接或 RFCOMM 连接, 在实际应用中, 被控端发起建立 SPP 连接或 RFCOMM 连接之前, 被控端 首先进行蓝牙设备发现之后, 被控端进行蓝牙设备连接, 被控端与控制端进行蓝牙设备配 对, 被控端向控制端查询蓝牙业务, 控制端返回蓝牙业务列表。
102、 被控端与控制端之间建立 HFP 连接。
在本发明实施例中, 被控端建立与控制端的免提功能 (HFP, Hand-Free Profile) 连接, 在实际应用中, 被控端可以向控制端发送 HFP 连接请求, 控制端向被控端返回 HFP 连 接响应。
103、 被控端与控制端之间建立的 A2DP 连接和 / 或 VDP 连接。
在本发明实施例中, 当被控端用于实现音频控制时, 被控端可以建立与控制端的 高级音频传输功能 (A2DP, Advanced Audio Distribution Profile) 连接, 当被控端用于 实现视频控制时, 被控端可以建立与控制端的视频传输功能 (VDP, Video Distribution Profile) 连接。当被控端同时用于实现音视频控制时, 被控端可以建立与控制端之间的A2DP 连接和 VDP 连接, 但是在被控端需要播放音视频文件时, 被控端需要对音视频文件作 相应的同步操作, 具体音视频文件的同步过程可参见现有技术, 此处不再赘述。
在实际应用中, 被控端建立与控制端的 A2DP 连接具体可以为, 被控端在 HFP 连接 建立之后通过播放音频建立与控制端的 A2DP 连接。具体的, 可以由被控端主动播放音频建 立与控制端的 A2DP 连接, 也可以在用户发起音频播放时被控端根据用户的发起播放请求 播放音频建立与控制端的 A2DP 连接。另外现有技术中也存在具体的 A2DP 连接过程和 VDP 连接过程, 故可借鉴现有技术, 此处不再赘述。
需要说明的是, 在本发明实施例中, 对于操作 101、 102、 103 而言, 其实包括如下六 种技术方案, 分别作如下说明 :
第一种 : 被控端与控制端之间建立 SPP 连接 ; 被控端与控制端之间建立 HFP 连接 ; 被控端与控制端之间建立 A2DP 连接。
第二种 : 被控端与控制端之间建立 RFCOMM 连接 ; 被控端与控制端之间建立 HFP 连 接; 被控端与控制端之间建立 A2DP 连接。
第三种 : 被控端与控制端之间建立 SPP 连接 ; 被控端与控制端之间建立 HFP 连接 ; 被控端与控制端之间建立 VDP 连接。 第四种 : 被控端与控制端之间建立 RFCOMM 连接 ; 被控端与控制端之间建立 HFP 连 接; 被控端与控制端之间建立 VDP 连接。
第五种 : 被控端与控制端之间建立 SPP 连接 ; 被控端与控制端之间建立 HFP 连接 ; 被控端与控制端之间建立 A2DP 连接和 VDP 连接。
第六种 : 被控端与控制端之间建立 RFCOMM 连接 ; 被控端与控制端之间建立 HFP 连 接; 被控端与控制端之间建立 A2DP 连接和 VDP 连接。
以上六种技术方案的实现过程可以参见操作 101、 102、 103 的描述, 此处不再赘 述。
104、 被控端接收控制端根据用户的输入选择的播放控制指令。
在本发明实施例中, 当被控端建立起与控制端的蓝牙连接后, 用户可以通过控制 端实现对被控端 ( 被控端同时也是媒体播放设备 ) 的控制。例如, 用户可以通过向控制端 输入操作信息用于实现播放、 暂停、 停止、 音量控制、 上一首、 下一首等操作, 控制端在接收 到用户的操作信息之后, 可以根据用户的输入选取相应的播放控制指令, 并将选择的播放 控制指令发送给被控端, 实现用户对被控端的控制。在实际应用中, 播放控制指令的设定 可以有多种实现方式, 例如, 具体的播放控制指令可以包括 : 播放、 暂停、 上一首、 下一首、 停 止、 音量控制。需要说明的是, 播放控制指令可以通过 SPP 连接或 RFCOMM 连接实现在控制 端和被控端之间的传输。下面以建立 SPP 连接为例进行播放控制指令的自定义, 如下表 1 所示 :
表 1 为本发明实施例中自定义的播放控制指令的说明表
需要说明的是, 在表 1 中, 最左边的第一列表示自定义的播放控制指令都有哪些, 方向一列的含义是播放控制指令从哪一端下达到哪一端, 例如 “->” 表示播放控制指令从被 控端发送到控制端, “<-” 表示播放控制指令从控制端发送到被控端, “<->” 表示播放控制 指令可以由控制端发送到被控端, 也可以由被控端发送到控制端。另外, 表 1 虽然是以建立 SPP 连接定义的播放控制指令, 但是对于建立 RFCOMM 连接的情况同样适用, 此处不再赘述。
105、 被控端根据播放控制指令执行与该播放控制指令相应的控制操作。
在本发明实施例中, 被控端接收到控制端下发的播放控制指令后, 根据该播放控 制指令执行相应的控制操作, 例如, 当接收到的播放控制指令为播放时, 被控端即媒体播放 设备播放音频文件或视频文件或播放音视频文件。当接收到的播放控制指令为暂停时, 媒 体播放设备暂停播放音频文件或视频文件或暂停播放音视频文件。
需要说明的是, 在本发明实施例中, 还可以包括如下的可选实现方式 : 被控端向控 制端发送蓝牙释放请求指令, 其中, 蓝牙释放请求指令包括 : 断开 A2DP 连接请求指令和 / 或 断开 VDP 连接请求指令、 断开 HFP 连接请求指令、 断开 SPP 连接请求指令或断开 RFCOMM 连 接请求指令。在实际应用中, 被控端向控制端发送蓝牙释放请求指令, 由控制端释放蓝牙
连接, 为了保证业务正常, 控制端在释放蓝牙连接时, 要遵循如下蓝牙释放流程 : 首先断开 A2DP 连接和 / 或 VDP 连接, 然后断开 HFP 连接, 最后断开 SPP 连接或 RFCOMM 连接。当蓝牙 还存在除了以上断开的连接之外还存在其它连接时, 这些连接要在断开 SPP 连接或 RFCOMM 连接之前断开。需要说明的是, “断开 A2DP 连接和 / 或 VDP 连接” 的具体含义为 : 当被控端 与控制端之间只建立有 A2DP 连接时就只需要断开 A2DP 连接即可, 当被控端与控制端之间 只建立有 VDP 连接时就只需要断开 VDP 连接即可, 当被控端与控制端之间同时建立有 A2DP 连接和 VDP 连接时需要将 A2DP 连接和 VDP 连接都断开。同样, “断开 SPP 连接或 RFCOMM 连 接” 的具体含义为 : 当被控端与控制端之间只建立有 SPP 连接时就只需要断开 SPP 连接即 可, 当被控端与控制端之间只建立有 RFCOMM 连接时就只需要断开 RFCOMM 连接即可。
需要说明的是, 在本发明实施例中, 还可以包括如下的可选实现方式 : 被控端根据 播放控制指令执行与该播放控制指令相应的控制操作之后, 被控端可以向控制端返回与该 播放控制指令相应的响应消息, 用于告知控制端被控端已经执行该播放控制指令。 例如, 当 接收到的播放控制指令为播放时, 被控端向控制端发送播放音频文件或视频文件或同时播 放音视频文件的响应消息, 当接收到的播放控制指令为暂停时, 被控端向控制端发送暂停 播放音频文件或视频文件或暂停播放音视频文件的响应消息。
本发明实施例中, 被控端通过建立 SPP 连接或 RFCOMM 连接完成了蓝牙的连接, 在 建立 HFP 连接、 建立 A2DP 连接和 / 或 VDP 连接之后, 被控端接收控制端根据用户的输入选 择的播放控制指令, 执行与该播放控制指令相应的控制操作。由于本发明实施例中采用的 蓝牙连接方式对蓝牙协议要求较低, 能够支持市场上主流的蓝牙设备, 所以能够适配现有 的主流开发平台, 特别是智能手机开发平台, 提供多数设备能够支持的蓝牙媒体播控能力。
以上实施例介绍了本发明实施例基于被控端实现的一种蓝牙媒体播放控制方法, 接下来, 请参阅图 2 所示, 本发明实施例基于控制端实现的另一种蓝牙媒体播放控制方法, 包括 :
201、 控制端与被控端之间建立 SPP 连接或 RFCOMM 连接。
在本发明实施例中, 按照蓝牙规范的描述, 蓝牙播放控制系统一般由两部分组成 : 控制端和被控端 ( 同时被控端也是媒体播放设备 )。其中, 控制端是一种通过发送命令到 被控端与被控端进行交互的装置。控制端具体可以是个人电脑, 掌上电脑, 移动电话, 遥控 器或音视频设备 ( 例如具体的音视频设备可以是车载系统, 耳机, 播放器 / 录音机, 定时器, 调谐器, 监视器等 )。被控端是一种通过接收命令、 完成相应的动作、 并产生一个响应的装 置。被控端具体可以是音频播放器 / 录音机, 视频播放器 / 录音机, 电视机, 调谐器, 放大 器或耳机等。需要说明的是, 控制端所包括的具体的设备和被控端所包括的具体的设备之 间的角色不是固定不变而是可以互换的, 例如对同样是耳机在一种应用场景下可以是控制 端, 用于控制与该耳机相连的播放设备, 该耳机在另一种场景下可以是被控端, 用于接收与 该耳机相连的个人电脑下达的指令。总之, 被控端与控制端只是在一种实现场景下的不同 角色, 而并非固定不变, 需要根据具体的应用场景决定, 本发明实施例不作限定。
本发明实施例中, 蓝牙芯片以及开发接口普遍支持 SPP 协议规范和 RFCOMM 协议规 范, 控制端可以建立与被控端的 SPP 连接或 RFCOMM 连接。在实际应用中, 控制端发起建立 SPP 连接或 RFCOMM 连接之前, 控制端首先进行蓝牙设备发现之后, 控制端进行蓝牙设备连 接, 控制端与被控端进行蓝牙设备配对, 控制端向被控端查询蓝牙业务, 被控端返回蓝牙业务列表。 202、 控制端与被控端之间建立 HFP 连接。
在本发明实施例中, 控制端建立与被控端的免提功能连接, 在实际应用中, 控制端 可以主动发起 HFP 连接请求到被控端。
203、 控制端与被控端之间建立的 A2DP 连接和 / 或 VDP 连接。
在本发明实施例中, 当被控端用于实现音频控制时, 控制端可以建立与被控端的 高级音频传输功能 A2DP 连接, 当被控端用于实现视频控制时, 控制端可以建立与被控端的 视频传输功能连接。在实际应用中, 控制端也可以在被控端通知下主动发起 A2DP 连接和 / 或 VDP 连接, 具体建立过程可以参见图 1 所示的实施例。 当被控端同时用于实现音视频控制 时, 被控端可以建立与控制端之间的 A2DP 连接和 VDP 连接, 但是在被控端需要同时播放音 视频时, 被控端需要对音视频作相应的同步操作, 具体音视频的同步过程可参见现有技术, 此处不再赘述。
需要说明的是, 在本发明实施例中, 还可以包括如下的可选实现方式 : 在被控端与 控制端连接建立 HFP 连接的情况下, 如果被控端是手机, 有用户呼叫该被控端, 当被控端被 呼入时, 控制端会接收到用户下发的通话转接指令, 控制端将通话转接指令发送给被控端, 以实现被控端与用户之间的语音通话或音视频通话。
需要说明的是, 在本发明实施例中, 对于操作 201、 202、 203 而言, 其实包括如下六 种技术方案, 分别作如下说明 :
第一种 : 控制端与被控端之间建立 SPP 连接 ; 控制端与被控端之间建立 HFP 连接 ; 控制端与被控端之间建立 A2DP 连接。
第二种 : 控制端与被控端之间建立 RFCOMM 连接 ; 控制端与被控端之间建立 HFP 连 接; 控制端与被控端之间建立 A2DP 连接。
第三种 : 控制端与被控端之间建立 SPP 连接 ; 控制端与被控端之间建立 HFP 连接 ; 控制端与被控端之间建立 VDP 连接。
第四种 : 控制端与被控端之间建立 RFCOMM 连接 ; 控制端与被控端之间建立 HFP 连 接; 控制端与被控端之间建立 VDP 连接。
第五种 : 控制端与被控端之间建立 SPP 连接 ; 控制端与被控端之间建立 HFP 连接 ; 控制端与被控端之间建立 A2DP 连接和 VDP 连接。
第六种 : 控制端与被控端之间建立 RFCOMM 连接 ; 控制端与被控端之间建立 HFP 连 接; 控制端与被控端之间建立 A2DP 连接和 VDP 连接。
以上六种技术方案的实现过程可以参见操作 201、 202、 203 的描述, 此处不再赘 述。
204、 控制端接收用户的输入, 并根据用户的输入选择播放控制指令。
在本发明实施例中, 当控制端建立起与被控端的蓝牙连接后, 用户可以通过控制 端实现对被控端 ( 被控端同时也是媒体播放设备 ) 的控制。 例如, 用户可以通过向控制端输 入操作信息用于实现播放、 暂停、 停止、 音量控制、 上一首、 下一首等操作, 控制端在接收到 用户的操作信息之后, 可以根据用户的输入选择相应的播放控制指令。 在实际应用中, 播放 控制指令的设定可以有多种实现方式, 例如, 具体的播放控制指令可以包括 : 播放、 暂停、 上 一首、 下一首、 停止、 音量控制等。 需要说明的是, 播放控制指令可以通过 SPP 连接或 RFCOMM
连接实现在控制端和被控端之间的传输。其中, 播放控制指令的格式可以自定义, 以建立 SPP 连接为例进行播放控制指令的自定义, 具体可以参见表 1 所示, 此处不再赘述。需要说 明的是, 表 1 虽然是以建立 SPP 连接定义的播放控制指令, 但是对于建立 RFCOMM 连接的情 况同样适用。另外在建立 RFCOMM 连接的情况下, 还可以设定其它的播放控制指令, 此处不 作限定。
需要说明的是, 在本发明实施例中, 还可以包括如下的可选实现方式 : 若控制端支 持 AVRCP 协议, 当控制端接收用户的输入并根据用户的输入选择播放控制指令时, 为了保 障正常的通信秩序, 控制端需要屏蔽掉与用户的输入相应的 AVRCP 指令, 因为如果不屏蔽 掉 AVRCP 指令, 当用户在控制端输入时, 控制端也会接收到根据用户的输入选择生成的相 应 AVRCP 指令, 会造成控制端的信令识别紊乱。
205、 控制端向被控端发送该播放控制指令。
在本发明实施例中, 当控制端根据用户的输入选择播放控制指令后, 将该播放控 制指令发送给被控端, 实现用户对被控端的控制, 其中, 该播放控制指令通过控制端与被控 端之间的 SPP 连接或 RFCOMM 连接传输。例如, 当接收到的播放控制指令为播放时, 被控端 即媒体播放设备播放音频文件或视频文件或同时播放音视频文件。 当接收到的播放控制指 令为暂停时, 媒体播放设备暂停播放音频文件或视频文件或暂停播放音视频文件。 需要说明的是, 在本发明实施例中, 还包括如下的可选实现方式 : 控制端主动释放 蓝牙, 或控制端在接收到被控端发送的蓝牙释放请求指令之后释放蓝牙。 其中, 控制端释放 蓝牙包括 : 断开 A2DP 连接和 / 或断开 VDP 连接、 断开 HFP 连接、 断开 SPP 连接或断开 RFCOMM 连接。控制端主动释放蓝牙包括 : 主动断开 A2DP 连接和 / 或主动断开 VDP 连接、 主动断开 HFP 连接、 主动断开 SPP 连接或主动断开 RFCOMM 连接。在实际应用中, 由控制端释放蓝牙 连接, 为了保证业务正常, 控制端在释放蓝牙连接时, 要遵循如下蓝牙释放流程 : 首先断开 A2DP 连接和 / 或 VDP 连接, 然后断开 HFP 连接, 最后断开 SPP 连接或 RFCOMM 连接。当蓝牙 还存在除了以上断开的连接之外还存在其它连接时, 这些连接要在断开 SPP 连接或 RFCOMM 连接之前断开。
需要说明的是, “断开 A2DP 连接和 / 或 VDP 连接” 的具体含义为 : 当被控端与控制 端之间只建立有 A2DP 连接时就只需要断开 A2DP 连接即可, 当被控端与控制端之间只建立 有 VDP 连接时就只需要断开 VDP 连接即可, 当被控端与控制端之间同时建立有 A2DP 连接和 VDP 连接时需要将 A2DP 连接和 VDP 连接都断开。同样, “断开 SPP 连接或 RFCOMM 连接” 的 具体含义为 : 当被控端与控制端之间只建立有 SPP 连接时就只需要断开 SPP 连接即可, 当被 控端与控制端之间只建立有 RFCOMM 连接时就只需要断开 RFCOMM 连接即可。
本发明实施例中, 控制端通过建立 SPP 连接或 RFCOMM 连接了与被控端之间的蓝牙 连接, 在建立 HFP 连接、 建立 A2DP 连接和 / 或 VDP 连接之后, 控制端根据用户的输入选择播 放控制指令, 并将该播放控制指令发送给被控端, 以使被控端执行与该播放控制指令相应 的控制操作。由于本发明实施例中采用的蓝牙连接方式对蓝牙协议要求较低, 能够支持市 场上主流的蓝牙设备, 所以能够适配现有的主流开发平台, 特别是智能手机开发平台, 提供 多数设备能够支持的蓝牙媒体播控能力。
下面以一个具体的应用场景来介绍本发明实施例提供的蓝牙媒体播放控制方法, 如图 3 所示, 以被控端通过 SPP 协议、 HFP 协议、 A2DP 协议建立蓝牙连接为例进行说明, 将分
别介绍蓝牙建立、 语音转接、 播放控制、 蓝牙释放四个不同的业务场景。具体说明如下 :
蓝牙连接过程如下 :
1、 被控端进行蓝牙设备发现 (Device Discovery)。
2、 被控端进行蓝牙设备连接 (Device Connection)。
3、 被控端与控制端进行蓝牙设备配对 (Device Pairing)。
4、 被控端向控制端查询蓝牙业务 (Service Query)。
5、 控制端返回蓝牙业务列表 (Service List)。
6、 被控端与控制端完成 SPP 连接。
7、 被控端发起 HFP 连接。
8、 控制端返回 HFP 连接响应。
9、 控制端主动发起 HFP 连接到被控端。需要说明的是, 步骤 9 和步骤 7 为建立 HFP 连接的两种方式, 步骤 7 由被控端发起, 步骤 9 由控制端发起, 在实际应用中可选择其一进 行实现即可, 不需要步骤 7 和步骤 9 同时执行, 此处仅作说明。
10、 被控端 ( 可以是媒体播放设备 ) 进行媒体播放 ( 如 : 用户发起音频播放 )。
11、 在媒体播放过程中, 被控端主动建立与控制端的 A2DP 连接。
语音转接过程如下 : 12.1、 在被控端与控制端连接建立 HFP 连接的情况下, 有用户呼叫该被控端。 12.2、 控制端通过 HFP 连接将语音电话 ( 或者音视频电话 ) 转给被控端。 播放控制过程 : 13、 用户通过控制端进行播放 / 暂停控制。 13.1、 控制端基于建立 SPP 连接的情况下发送自定义的播放 / 暂停的指令 (PLAY/PAUSE)。 13.2、 被控端完成播放 / 暂停操作, 并返回响应给控制端。
14、 用户通过控制端进行上一首 / 下一首操作 (PREV/NEXT)。
14.1、 控制端基于建立 SPP 连接的情况下发送自定义的上一首 / 下一首指令。
14.2、 被控端完成上一首 / 下一首操作, 并返回响应给控制端。
为避免与现有协议冲突, 若控制端还支持 AVRCP 协议, 控制端掉屏蔽与用户输入 的选择相应的 AVRCP 指令。
蓝牙释放过程如下 :
15、 被控端发送断开 A2DP 连接请求指令 (DISC_A2DP)。
16、 控制端接收到断开 A2DP 连接请求指令之后, 断开 A2DP 连接。
17、 控制端返回成功 (OK) 给被控端。
18、 被控端发送断开 HFP 连接请求指令 (DISC_HFP)。
19、 控制端接收到断开 HFP 连接请求指令之后, 断开 HFP 连接。
20、 控制端返回成功 (OK) 给被控端。
21、 被控端发送断开所有连接指令 (DISC)。
22、 控制端主动断开 A2DP 连接。需要说明的是, 步骤 16 和步骤 22 为断开 A2DP 连 接的两种方式, 步骤 16 由被控端发起断开 A2DP 连接请求指令之后控制端断开 A2DP 连接, 步骤 22 由控制端主动发起断开 A2DP 连接, 在实际应用中可选择其一进行实现即可, 不需要
步骤 22 和步骤 16 同时执行, 此处仅作说明。
23、 控制端主动断开 HFP 连接。需要说明的是, 步骤 19 和步骤 23 为断开 HFP 连接 的两种方式, 步骤 19 由被控端发起断开 HFP 连接请求指令之后控制端断开 HFP 连接, 步骤 23 由控制端主动发起断开 HFP 连接, 在实际应用中可选择其一进行实现即可, 不需要步骤 19 和步骤 23 同时执行, 此处仅作说明。
24、 控制端返回成功 (OK) 给被控端。
25、 控制端断开 SPP 等其它蓝牙连接。
以上实施例介绍了本发明实施例提供的蓝牙媒体播放控制方法, 接下来将介绍使 用本发明实施例方法的装置, 请参阅图 4 所示, 本发明实施例提供的一种蓝牙媒体播放被 控端 400, 包括 :
蓝牙连接单元 401, 用于建立与控制端的 SPP 连接或 RFCOMM 连接 ; 建立与控制端 的 HFP 连接 ; 建立与控制端的 A2DP 连接和 / 或 VDP 连接 ;
控制指令接收单元 402, 用于接收控制端根据用户的输入选择的播放控制指令, 其 中, 播放控制指令通过 SPP 连接或 RFCOMM 连接传输 ;
媒体控制单元 403, 用于根据该播放控制指令, 执行与该播放控制指令相应的控制 操作。
需要说明的是, 在本发明实施例中, 还包括如下的可选实现方式 : 蓝牙媒体播放被 控端 400 还包括 ( 未在图 4 中示出 ) : 蓝牙释放请求单元, 用于向控制端发送蓝牙释放请求 指令, 其中, 蓝牙释放请求指令包括 : 断开 A2DP 连接请求指令和 / 或断开 VDP 连接请求指 令、 断开 HFP 连接请求指令、 断开 SPP 连接请求指令或断开 RFCOMM 连接请求指令。
在实际应用中, 蓝牙连接单元 401, 具体可以用于在 HFP 连接建立之后通过播放音 频建立与控制端的 A2DP 连接。
需要说明的是, 在本发明实施例中, 还存在一种可选的实现方式, 蓝牙媒体播放被 控端 400 还包括 ( 未在图 4 中示出 ) : 响应单元, 用于向控制端返回与该播放控制指令相应 的响应消息。
以上实施例只介绍了各单元模块之间的结构关系, 在实际应用中, 各单元模块的 执行方法请参阅图 1 所示的方法, 此处不再赘述。
需要说明的是, 本发明实施例中提供的蓝牙媒体播放被控端中可以集成蓝牙芯 片、 控制硬件及蓝牙软件, 用于实现与控制端之间的蓝牙通信。在实际应用中, 蓝牙媒体播 放被控端具体可以是音频播放器 / 录音机, 视频播放器 / 录音机, 电视机, 调谐器, 放大器或 耳机等硬件设备。
本发明实施例中, 蓝牙连接单元 401 通过建立 SPP 连接或 RFCOMM 连接完成了蓝牙 的连接, 在建立 HFP 连接、 建立 A2DP 连接和 / 或 VDP 连接之后, 控制指令接收单元 402 接收 控制端根据用户的输入选择的播放控制指令, 媒体控制单元 403 执行与该播放控制指令相 应的控制操作。由于本发明实施例中采用的蓝牙连接方式对蓝牙协议要求较低, 能够支持 市场上主流的蓝牙设备, 所以能够适配现有的主流开发平台, 特别是智能手机开发平台, 提 供多数设备能够支持的蓝牙媒体播控能力。
以上实施例介绍了本发明实施例提供的一种蓝牙媒体播放被控端, 接下来, 请参 阅图 5 所示, 本发明实施例提供的一种蓝牙媒体播放控制端 500, 包括 :蓝牙连接单元 501, 用于建立与被控端的 SPP 连接或 RFCOMM 连接 ; 建立与被控端 的 HFP 连接 ; 建立与被控端的 A2DP 连接和 / 或 VDP 连接 ;
控制指令选择单元 502, 用于接收用户的输入, 并根据用户的输入选择播放控制指 令;
控制指令发送单元 503, 用于向被控端发送该播放控制指令, 其中, 播放控制指令 通过 SPP 连接或 RFCOMM 连接传输。
需要说明的是, 在本发明实施例中, 还存在一种可选的实现方式, 蓝牙媒体播放控 制端 500 还可以包括 ( 未在图 5 中示出 ) : 蓝牙释放单元, 用于主动释放蓝牙, 或在接收到被 控端发送的蓝牙释放请求指令之后释放蓝牙。其中, 主动释放蓝牙包括 : 主动断开 A2DP 连 接和 / 或主动断开 VDP 连接、 主动断开 HFP 连接、 主动断开 SPP 连接或主动断开 RFCOMM 连 接; 释放蓝牙包括 : 断开 A2DP 连接和 / 或断开 VDP 连接、 断开 HFP 连接、 断开 SPP 连接或断 开 RFCOMM 连接。
在本发明实施例中, 还存在一种可选的实现方式, 在被控端与控制端连接建立 HFP 连接的情况下, 如果被控端是手机, 有用户呼叫该被控端, 当被控端被呼入时, 蓝牙媒体播 放控制控制端 500 还可以包括 ( 未在图 5 中示出 ) : 通话转接指令接收单元, 用于接收通话 转接指令 ; 转发单元, 用于将通话转接指令发送给被控端。
在本发明实施例中, 还存在一种可选的实现方式, 若控制端支持 AVRCP 协议, 当控 制端接收用户的输入并根据用户的输入选择播放控制指令时, 蓝牙媒体播放控制控制端 500 还可以包括 ( 未在图 5 中示出 ) : 屏蔽单元, 用于屏蔽掉与用户的输入相应的 AVRCP 指 令。
以上实施例只介绍了各单元模块之间的结构关系, 在实际应用中, 各单元模块的 执行方法请参阅图 2 所示的方法, 此处不再赘述。
需要说明的是, 本发明实施例中提供的蓝牙媒体播放控制端中可以集成蓝牙芯 片、 控制硬件及蓝牙软件, 用于实现与被控端之间的蓝牙通信。在实际应用中, 蓝牙媒体播 放控制端具体可以是个人电脑, 掌上电脑, 移动电话, 遥控器或音视频设备 ( 如车载系统, 耳机, 播放器 / 录音机, 定时器, 调谐器, 监视器等 ) 等硬件设备。
本发明实施例中, 蓝牙连接单元 501 通过建立 SPP 连接或 RFCOMM 连接完成了蓝牙 的连接, 在建立 HFP 连接、 建立 A2DP 连接和 / 或 VDP 连接之后, 控制指令选择单元 502 根据 用户在控制端的输入选择播放控制指令, 控制指令发送单元 503 将该播放控制指令发送给 被控端, 以使被控端执行与该播放控制指令相应的控制操作。由于本发明实施例中采用的 蓝牙连接方式对蓝牙协议要求较低, 能够支持市场上主流的蓝牙设备, 所以能够适配现有 的主流开发平台, 特别是智能手机开发平台, 提供多数设备能够支持的蓝牙媒体播控能力。
需要说明的是, 为了清楚的描述本发明实施例中蓝牙媒体播放控制端和蓝牙媒体 播放被控端上配置了哪些协议, 请参阅图 6, 为本发明实施例中的控制端和被控端的协议栈 结构。 如图 6 中, 蓝牙基带 (Base Band) 是蓝牙系统中用于指定或实施媒体接入及物理层程 序, 以支持在蓝牙设备间进行实时语音、 数据信息流交换及建立即时网络的部分。 播放控制 逻辑 (Play Control Logic) 用于实现播放控制指令的控制。在蓝牙媒体播放控制端配置 的协议有服务发现协议 (SDP, Service Discovery Protocol)、 HFP 协议、 SPP 协议、 RFCOMM 协议、 链路管理协议 (LMP, Link Manager Protocol)、 逻辑链路控制和适配协议 (L2CAP,Logical Link Control and Adaptation Protocol)。同样在蓝牙媒体播放被控端也配置 有与控制端相同的协议, 此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以 通过程序来指令相关的硬件完成, 所述的程序可以存储于一种计算机可读存储介质中, 上 述提到的存储介质可以是只读存储器, 磁盘或光盘等。
以上对本发明所提供的一种蓝牙媒体播放控制方法和相关装置进行了详细介绍, 对于本领域的一般技术人员, 依据本发明实施例的思想, 在具体实施方式及应用范围上均 会有改变之处, 因此, 本说明书内容不应理解为对本发明的限制。