音量控制方法、装置及计算机存储可读存储介质与流程

文档序号:12886930阅读:264来源:国知局
音量控制方法、装置及计算机存储可读存储介质与流程

本发明涉及终端技术领域,特别涉及一种音量控制方法、装置及计算机存储可读存储介质。



背景技术:

随着技术的发展,用户在使用诸如智能电视、平板电脑等终端进行音频数据的播放时,为了获得更好的音质效果体验,通常会通过智能无线音响进行音频数据的播放,该智能无线音响具有远程控制功能。比如,当该智能无线音响为蓝牙音响时,该蓝牙音响可以和智能电视配对使用,也即是将智能电视的声音通过蓝牙音响进行播放。当用户需要调节当前播放的音频数据的音量时,在蓝牙音响和用户的距离较远的情况下,用户可能不方便去调节蓝牙音响上的旋钮来控制音量大小,此时,用户可以通过电视遥控器控制蓝牙音响的音量。

现以蓝牙音响为例对调节音量的操作进行说明。相关技术中,终端通过蓝牙音响播放音频数据时,可以先将当前播放的音频数据解析为pcm(pulsecodemodulation,脉冲编码调制)格式的音频流,再将pcm格式的音频流编码为sbc(subbandcodec,次频带编码)格式的音频流,并将该sbc格式的音频流发送至蓝牙音响。当蓝牙音响接收到终端发送的sbc格式的音频流时,可以将该sbc格式的音频流解码为pcm格式的音频流,并按照pcm格式的音频流的幅度进行音频播放。在音频播放过程中,当终端接收到音量调节指令时,可以通过avrcp(audio/videoremotecontrolprofile,音频/视频远程控制规范)协议向蓝牙音响发送携带目标音量信息的音量调节指令。当蓝牙音响接收到该音频调节指令时,可以按照目标音量信息对pcm格式的音频流的幅度进行调节,以将该当前播放的音频数据的音量调节为目标音量。

但是,由于市面上很多蓝牙音响的avrcp协议版本较低或者不支持avrcp协议,导致蓝牙音响不能处理终端通过avrcp协议发送的音量调节指令。对于这样的智能无线音响,如果用户希望调节蓝牙音响播放音频数据的音量时,则必须手动旋转蓝牙音响上的按钮来调节音量,从而为用户带来不便,降低了音量调节的效率。另外,对于此类拥有较低版本的avrcp协议或不支持avrcp协议的蓝牙音响,当不通过avrcp协议调节蓝牙音箱的音量,而是在终端侧调节输入至蓝牙音响的音频流的音量时,虽然也可以使得蓝牙音箱的播放音量变化,但是会导致终端所有的音频输出端口的音量都会随之变化,如果此时断开蓝牙音响和终端的连接,则终端会切换到自身的音频输出设备,例如喇叭,此时用户发现终端自身的音频输出设备输出的音频数据的音量也同时发生改变;

也就是说,用户在希望通过调节蓝牙音响的音量时,如果蓝牙音响不能支持通过avrcp协议解析音量调节指令,则不得不在终端一侧将pcm音频流的幅度进行调整,但是这种调整会导致不仅蓝牙音响的音量发生变化,而且其他所有音频输出端口的音量都会随之变化,即无法实现对蓝牙音响的音量单独处理,从而影响了用户体验。



技术实现要素:

为了提高音量调节的效率和用户粘度,本发明实施例提供了一种终端外接的蓝牙音响的音量控制方法、装置及计算机可读存储介质。所述技术方案如下:

第一方面,提供了一种终端外接的蓝牙音响的音量控制方法,所述方法包括:

将待播放的音频数据解析得到的脉冲编码调制pcm音频流进行拷贝,得到两路相同的pcm音频流;

若检测到蓝牙音响已连接,则根据音量调节指令,调节其中一路pcm音频流的pcm幅度,其中,终端自身的音频输出设备基于另一路pcm音频流进行音量调节;

将调节后的所述一路pcm音频流传输至外接的蓝牙音响,以使得所述外接的蓝牙音响基于调节后的所述一路pcm音频流进行声音输出。

可选地,所述将待播放的音频数据解析得到的pcm音频流进行拷贝,包括:

创建第一音频流缓冲区,所述第一音频流缓冲区用于缓冲输入至所述外接的智能无线音响的pcm音频流;

将第二音频流缓冲区中的pcm音频流拷贝至所述第一音频流缓冲区中,所述第二音频流缓冲区用于缓冲对待播放的音频数据解析得到的脉冲编码调制pcm音频流。

可选地,所述根据音量调节指令,调节其中一路pcm音频流的pcm幅度,包括:

基于接收到的音量调节指令,调节第一音频流缓冲区中的pcm音频流的pcm幅度。

可选地,所述将待播放的音频数据解析得到的脉冲编码调制pcm音频流进行拷贝之前,还包括:

当接收到模式选择指令时,显示模式选择界面,所述模式选择界面用于提示对音量调节方式进行选择;

当基于所述模式选择界面接收到由终端进行音量调节的指令时,执行所述将待播放的音频数据解析得到的脉冲编码调制pcm音频流进行拷贝的操作。

可选地,所述将调节后的所述一路pcm音频流传输至外接的蓝牙音响,包括:

将调节后的所述一路pcm音频流进行sbc协议编码封装;

通过蓝牙信号将所述封装后的pcm音频流传输至所述外接的蓝牙音响。

第二方面,提供了一种对终端外接的蓝牙音响的音量控制装置,所述装置包括:

拷贝模块,用于将待播放的音频数据解析得到的初始脉冲编码调制pcm音频流进行拷贝,得到两路相同的pcm音频流;

调节模块,用于若检测到蓝牙音响已连接,则根据音量调节指令,调节其中一路pcm音频流的pcm幅度,其中,终端自身的音频输出设备基于另一路pcm音频流进行音量调节;

传输模块,用于将调节后的所述一路pcm音频流传输至外接的蓝牙音响,以使得所述外接的蓝牙音响基于调节后的所述一路pcm音频流进行声音输出。

可选地,所述拷贝模块包括:

创建子模块,用于创建第一音频流缓冲区,所述第一音频流缓冲区用于缓冲输入至所述外接的智能无线音响的pcm音频流;

拷贝子模块,用于将第二音频流缓冲区中的pcm音频流拷贝至所述第一音频流缓冲区中,所述第二音频流缓冲区用于缓冲对待播放的音频数据解析得到的脉冲编码调制pcm音频流。

可选地,所述调节模块用于:

基于接收到的音量调节指令,调节第一音频流缓冲区中的pcm音频流的pcm幅度。

可选地,所述装置还包括:

显示模块,用于当接收到模式选择指令时,显示模式选择界面,所述模式选择界面用于提示对音量调节方式进行选择;

触发模块,用于当基于所述模式选择界面接收到由终端进行音量调节的指令时,触发所述拷贝模块将待播放的音频数据解析得到的脉冲编码调制pcm音频流进行拷贝。

可选地,所述传输模块包括:

封装子模块,用于将调节后的所述一路pcm音频流进行sbc协议编码封装;

传输子模块,用于通过蓝牙信号将所述封装后的pcm音频流传输至所述外接的蓝牙音响。

第三方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法。

本发明实施例提供的技术方案带来的有益效果是:在本发明实施例中,可以对解析待播放的音频数据得到的pcm音频流进行拷贝,得到两路相同的pcm音频流,并在进行音量调节时,如果连接有蓝牙音响,则可以对其中一路pcm音频流的pcm幅度进行调节,并将调节后的pcm音频流发送至蓝牙音响,从而使蓝牙音响直接基于调整后的pcm音频流进行声音输出,无需avrcp协议支持,同时由于音量调节指令只是对其中一路pcm音频流的pcm幅度进行调节,终端自身的音频输出设备如喇叭,会基于另一路pcm音频流进行音量调节,通过两路pcm音频流可以对外接的蓝牙音响和自身的音频输出设备进行区分控制,实现了对蓝牙音响的音量单独处理,方便了用户远程调节蓝牙音响的音量,提高了音量调节的效率和用户粘度。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a是本发明实施例提供的一种对终端外接的蓝牙音响的音量控制系统的结构示意图;

图1b是本发明实施例提供的另一种对终端外接的蓝牙音响的音量控制系统的结构示意图;

图1c是本发明实施例提供的另一种对终端外接的蓝牙音响的音量控制系统的结构示意图;

图2a是本发明实施例提供的一种pcm音频流传输路径示意图;

图2b是本发明实施例提供的一种对终端外接的蓝牙音响的音量控制方法的流程图;

图3a是本发明实施例提供的一种对终端外接的蓝牙音响的音量控制装置的结构示意图;

图3b是本发明实施例提供的一种拷贝模块的结构示意图;

图3c是本发明实施例提供的另一种对终端外接的蓝牙音响的音量控制装置的结构示意图;

图3d是本发明实施例提供的一种传输模块的结构示意图;

图4是本发明实施例提供的一种终端的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

在对本发明实施例进行详细的解释说明之前,先对本发明实施例中涉及到的应用场景及系统架构分别进行解释说明。

首先,对本发明实施例涉及的应用场景进行介绍。

当用户通过智能无线音响播放终端中的音频数据时,如果当前播放的音频数据的音量过高,则会对用户的听觉器官造成损害,或者由于音量过高导致扰民时,往往需要对当前播放的音频数据的音量进行调节。当然,在当前播放的音频数据的音量过低,用户无法听清播放的音频数据的内容时,同样需要进行音量调节。然而,为了达到较好的音效,用户通常在终端上连接有智能无线音响,比如,蓝牙音响,并通过该蓝牙音响来播放声音。在这种情况下,当用户调节当前播放的音频数据的音量时,需要对蓝牙音响播放音频数据的音量进行调节,而不是对终端自身播放音频数据的音量进行调节。由于目前蓝牙音响不能通过终端的远程控制器来控制,比如,在电视连接蓝牙音响的时候,电视的遥控器不能对蓝牙音响进行控制。基于这种场景,本发明实施例提供了一种能够远程对终端外接的蓝牙音响的音量进行控制的方法。

最后,对本发明实施例涉及的系统架构进行介绍。

图1a是本发明实施例提供的一种对终端外接的蓝牙音响的音量控制系统的结构示意图,参见图1a,该音量控制系统包括终端1和智能无线音响2,终端1可以与智能无线音响2无线连接。在本发明实施例中智能无线音响2以蓝牙音响为例进行说明。当终端2在通过蓝牙音响2播放音频数据时,终端可以将待播放的音频数据解析得到的pcm音频流进行拷贝,并在需要进行音量调节时,可以对其中一路pcm音频流的pcm幅度进行调节,并将调节后的pcm音频流输入至蓝牙音响。当蓝牙音响接收到调节后的pcm音频流时,基于该调节后的pcm音频流进行声音输出。

示例的,终端为了实现对输入至蓝牙音响的pcm音频流的音量调节,该终端中可以包括音量调节模块11和音频流输出模块12。参见图1b,音量调节模块11与音频流输出模块12连接,音频流输出模块12可以与蓝牙音响2通过蓝牙信号连接。终端将待播放的音频数据解析得到的pcm音频流进行拷贝,得到两路相同的pcm音频流后,当前正在通过蓝牙音响进行音频数据的播放,且需要进行音量调节时,则音量调节模块11可以对输入至蓝牙音响2的一路pcm音频流的pcm幅度进行调节,并将调节后的一路pcm音频流输入至音频流输出模块12,音频流输出模块12在接收到调节后的一路pcm音频流后,对调节后的一路pcm音频流进行sbc协议封装,并将封装后的拷贝pcm音频流输出至蓝牙音响2。需要说明的是,当该音量调节模块11能够与蓝牙音响2无线连接,且该音量控制模块11能够对该拷贝pcm音频流进行sbc协议封装时,该终端也可以不包括音频流输出模块12。

另外,该终端中还可以包括其他模块,比如,可以包括音频流控制模块13、喇叭输出设备14和spdie(sony/philipsdigitalinterfaceformat,索尼/飞利浦数字接口格式)输出设备15等。该音频流控制模块13可以与喇叭输出设备14和spdie输出设备15分别连接,且该音频流控制模块13可以将该解析得到的pcm音频流输出至终端自身的音频输出设备(喇叭输出设备14和spdie输出设备15)中。其中,该音量调节模块11和音频流控制模块11位于终端1的soc(systemonchip,系统芯片)16。

需要说明的是,蓝牙音响2中可以包括音频流接收模块21和音频流驱动模块22,参见图1c,音频流接收模块21可以与音频流输出模块12通过蓝牙信号连接,且音频流接收模块21与音频流驱动模块22连接。其中,音频流接收模块21可以接收音频流输出模块12通过蓝牙信号输出的pcm音频流,并将该pcm音频流发送音频流驱动模块22,音频流驱动模块22可以基于该调节后的pcm音频流进行声音输出。

通常情况下,终端通过智能无线音响播放的音频数据在终端和智能无线音响中是以pcm音频流的形式体现的,为了便于对本发明的理解,下述以智能无线音响为蓝牙音响为例,并结合图2a对pcm音频流的传输路径进行解释说明。

在本发明实施例中,当终端通过蓝牙音响播放音频数据的过程中,参见图2a,中间件(middleware)包括的a2dp(advancedaudiodistributionprofile,蓝牙音频传输模块协定)可以解析需要播放的音频数据得到解析后的pcm音频流,并对该解析后的pcm音频流进行拷贝,得到两路相同的pcm音频流。在需要调节音量时,可以对其中一路pcm音频流的pcm幅度进行调节,并将调节后的一路pcm音频流发送至类库(library)包括的管理模块(mtal)中。该管理模块可以对该pcm音频流进行sbc协议封装,并将封装后的一路pcm音频流发送至蓝牙音响的内核(linuxkernel)包括的音频驱动(audiodriver)中,由该音频驱动进行音频数据的播放。

需要说明的是,上述a2dp中可以包括pcm数据获取模块(getpcmdata),该pcm数据获取模块即为上述图1b所示的音量调节模块,该管理模块即为上述图1b所示的音频流输出模块,蓝牙音响内核包括的音频驱动即为上述图1c所示的音频流驱动模块。

另外,在本发明实施例中,参见图2a,中间件可以与界面显示模块(webui)通过通讯封装(rpcwrapper)进行通信,该界面显示模块用于管理终端的屏幕。其中,在终端在对其中一路pcm音频流进行pcm幅度调节时,终端的屏幕上可以显示当前的音量,该音量可以是以进度条的形式显示,也可以是数字的形式显示。同时,在进行音量调节的过程中,中间件可以将调节后的音量发送至界面显示模块,从而使终端的屏幕上可以实时显示音量的变化。

再者,该中间件中不仅可以包括a2dp,还可以包括其他模块,比如,hid(humaninterfacedevice,人机接口设备)、隔离网闸(gap)等等。类库中同样不仅可以包括管理模块,还可以包括其他模块,比如,外部适配器层(externaladapterlayer)、内部适配器层(internaladapterlayer)、蓝牙协议(bluetoothprofile)、蓝牙数据栈(bluetoothstack)等等。其中,外部适配器层能够与a2dp进行通信、内部适配器层分别进行通信。当然,蓝牙音响的内核中同样不仅包括音频驱动,还可以包括其他模块,比如,蓝牙驱动(bluetoothdriver)、蓝牙芯片(bluetoothchip)等。其中,蓝牙驱动可以与蓝牙数据栈进行通信。

图2b是本发明实施例提供的一种对终端外接的蓝牙音响的音量控制方法的流程图,参见图2b,该方法包括如下步骤。

步骤201:终端将待播放的音频数据解析得到的pcm音频流进行拷贝,得到两路相同的pcm音频流。

其中,当终端外接有蓝牙音响时,说明终端需要通过蓝牙音响进行音频数据的播放,此时,终端可以对pcm音频流进行拷贝。当终端拷贝pcm音频流时,终端可以创建第一音频流缓冲区,第一音频流缓冲区用于缓冲输入至外接的智能无线音响的pcm音频流;将第二音频流缓冲区中的pcm音频流拷贝至第一音频流缓冲区中,该第二音频流缓冲区用于缓冲通过终端自身的音频输出设备输出的pcm音频流(也就是对待播放的音频数据解析得到的pcm音频流)。

需要说明的是,终端可以检测到已连接蓝牙音响时,拷贝解析得到的pcm音频流,也可以在未连接有蓝牙音响时拷贝解析得到的pcm音频流。当终端在未连接有蓝牙音响时拷贝解析得到的pcm音频流时,后续一旦检测到已连接蓝牙音响,则终端可以及时的将其中一路音频流输出至蓝牙音响,从而提高了通过蓝牙音响播放音频数据的效率。

进一步地,由于终端外接有蓝牙音响时,如果外接的蓝牙音响可以通过avrcp协议进行音量调节,则对蓝牙音响的音量进行调节的方式可能包括两种,因此,终端可以选择对蓝牙音响的音量进行调节的方式,具体操作可以为:当接收到模式选择指令时,可以显示模式选择界面,该模式选择界面用于提示对音量调节方式进行选择;当基于该模式选择界面接收到由终端进行音量调节的指令时,执行步骤201的操作。当基于该模式选择界面接收到由蓝牙音响进行音量调节的指令时,通过avrcp协议对蓝牙音响的音量进行调节。

需要说明的是,模式选择指令用于对音量调节方式进行选择,且该模式选择指令可以由用户通过指定操作触发,该指定操作可以为点击操作、滑动操作、语音操作等等。

步骤202:若检测到蓝牙音响已连接,则根据音量调节指令,调节其中一路pcm音频流的pcm幅度,其中,终端自身的音频输出设备基于另一路pcm音频流进行音量调节。

由于输入至蓝牙音响的pcm音频流(拷贝pcm音频流)缓冲于第一音频流缓冲区,因此,若终端检测到蓝牙音响已连接,则可以基于接收到的音量调节指令,调节第一音频流缓冲区中的pcm音频流的pcm幅度。

在实际中,两路相同的pcm音频流的任意一路都可以作为调节蓝牙音响音量的一路,例如,将初始解析音频数据得到的pcm音频流作为对应调节蓝牙音响音量的pcm音频流,那拷贝得到的另外一路pcm音频流就作为终端自身的音频输出设备进行音量调节,也可以反过来,将拷贝得到的一路pcm音频流作为对应调节蓝牙音响音量的pcm音频流,那初始待播放的音频数据解析得到的pcm音频流就可以对应调节终端自身的音频输出设备的音量,两种方式没有本质差异,可以根据实际需要选择,下述示例都以拷贝得到的一路pcm音频流作为针对蓝牙音响音量调节的一路pcm音频流做相关阐述。

需要说明的是,该音量调节指令用于对音量进行调节,该音量调节指令可以由用户通过指定操作触发。其中,该音量调节指令中可以携带音量调节强度,该音量调节强度可以为+1db(分贝)、+2db、+3db、-1db、-2db等等。当音量调节指令中携带音量调节强度为+1db时,说明终端需要在当前音频流的音量强度基础上增加1db,此时,终端可以将拷贝pcm音频流的pcm幅度减1。

值得说明的是,终端可能会只接收到一个音量调节指令,也可能会接收到多个音量调节指令,当终端接收到多个音量调节指令,可以按照下述两种方式对拷贝pcm音频流的pcm幅度进行调节。

第一种方式,当终端接收到的多个音量调节指令中每相邻两个音量调节指令的接收时间之间的差值小于预设时长时,终端可以基于最后一次接收到的音量调节指令,对该拷贝pcm音频流的pcm幅度进行调节。

其中,该预设时长可以事先设置,比如,该预设时长可以为2s(秒)、3s、4s等等。

需要说明的是,当该音量调节指令中携带音量调节强度时,终端可以将接收到的多个音量调节指令中携带音量调节强度进行叠加,得到叠加强度,并在接收到最后一个音量调节强度时,按照叠加强度对拷贝pcm音频流的pcm幅度进行调节,从而使调节后的拷贝pcm音频流的音量为当前pcm音频流的音量的强度与叠加强度的和。

比如,音频流当前音量为56db,终端接收到5个音量调节指令,且相邻两个音量调节指令的接收时间之间的差值小于预设差值2s时,如果每个音量调节指令中携带的音量强度为+1db时,则终端基于最后一次接收到的音量调节指令,将该拷贝pcm音频流pcm幅度进行调节后,使该拷贝pcm音频流的音量56db调节为61db。

第二种方式,当终端接收到多个音量调节指令时,终端无需确定相邻两个音量调节指令的接收时间之间的差值,而是每接收到一个音量调节指令,就对拷贝pcm音频流的pcm幅度进行一次调节。

比如,终端音频流当前音量为56db,终端接收到5个音量调节指令,且每个音量调节指令中携带的音量强度为+1db时,当终端接收到第一个音量调节指令时,对拷贝pcm音频流的pcm幅度进行一次调节,使拷贝pcm音频流的音量调节为57db,当终端接收到第二个音量调节指令时,对拷贝pcm音频流的pcm幅度进行一次调节,使拷贝pcm音频流的音量调节为58db,当终端接收到第三个音量调节指令时,对拷贝pcm音频流的pcm幅度进行一次调节,使拷贝pcm音频流的音量调节为59db,当终端接收到第四个音量调节指令时,对拷贝pcm音频流的pcm幅度进行一次调节,使拷贝pcm音频流的音量调节为60db,当终端接收到第五个音量调节指令时,对拷贝pcm音频流的pcm幅度进行一次调节,使拷贝pcm音频流的音量调节为51db。

需要说明的是,终端可以通过上述图1b所示的音调节模块对拷贝pcm音频流的pcm幅度进行调节。

再者,终端可以通过音量调节指令被动对拷贝pcm音频流的pcm幅度进行调节,也可以主动对拷贝pcm音频流的pcm幅度进行调节,且终端主动对拷贝pcm音频流的pcm幅度进行调节的操作可以为:终端在播放音频数据时,可以检测当前所处环境的环境噪声,当当前所处环境噪声的音量大于或等于当前播放的音频数据的音量时,为了使用户能够听清楚当前播放的音频数据的内容,终端可以主动对拷贝pcm音频流的幅度进行调节,以调节播放的音频数据的音量,并当当前播放的音频数据的音量与环境噪声的音量之间相差预设音量阈值时,停止对拷贝pcm音频流的pcm幅度进行调节。

需要说明的是,预设音量阈值可以事先设置,比如,该预设音量阈值可以为5db、6db等等。

另外,终端主动进行音量调节时,具体地音量调节操作可以参考上述终端被动调节音量的具体操作,本发明实施例对此不再进行一一赘述。

步骤203:终端将调节后的一路pcm音频流输入至外接的蓝牙音响。

由上述可知,终端可以只接收到一个音量调节指令,也可以接收到多个音量调节指令,当终端基于一个音量调节指令对pcm音频流的pcm幅度进行调节后,可以直接将调节后的pcm音频流输入至外接的蓝牙音响。

其中,由于蓝牙协议中规定所有蓝牙设备必须支持sbc编码,也即是,终端与蓝牙音响之间传递的信息必须是sbc格式的信息,因此,终端在对pcm音频流的pcm幅度进行调节后,需要将调节后的一路pcm音频流进行sbc协议编码封装;并通过蓝牙信号将封装后的pcm音频流传输至外接的蓝牙音响。

需要说明的是,终端可以通过上述图1b所示的音频流输出模块将该pcm音频流进行sbc协议编码封装,然后将调节后的一路pcm音频流输出至外接的蓝牙音响。

另外,由于终端还可以接收到多个音量调节指令,且终端基于多个音量调节指令对pcm音频流的pcm幅度进行调节的方式可以包括上述两种方式,对于不同的调节方式,终端将调节后的pcm音频流输入至外接的蓝牙音响的情况可以包括下述两种情况。

第一种情况,当终端接收到多个音量调节指令,并按照最后一个音量调节指令对pcm音频流的pcm幅度进行调节时,由于终端只进行一次pcm音频流的pcm幅度调节,为了避免蓝牙音响中断对音频数据的播放,该终端可以将未进行pcm幅度调节的一路pcm音频流发送至蓝牙音响;当完成pcm音频流的pcm幅度调节后,将调节后的pcm音频流发送至蓝牙音响。也即是,在终端接收多个音量调节指令的过程中,蓝牙音响依旧会播放未经过音量调节的拷贝pcm音频流。

比如,当终端接收到5个音量调节指令,并对一路pcm音频流进行一次pcm幅度的调节,使pcm音频流的音量由56db变为61db时,该终端可以将音量变为61db的pcm音频流发送至蓝牙音响,且该终端在接收5个音量调节指令的过程中,可以将音量为56db的pcm音频流发送至蓝牙音响。

值得说明的是,当终端接收到多个音量调节指令,且按照最后一个音量调节指令对一路pcm音频流进行pcm幅度调节时,由于终端只进行一次pcm幅度的调节操作,无需进行多次调节,从而节省了终端的资源消耗。

第二种情况,当终端每接收到一个音量调节指令,就对其中一路pcm音频流进行一次pcm幅度的调节时,由于终端向蓝牙音响发送的pcm音频流是不会中断的,因此,终端在接收到多个音量调节指令,并按照该多个音量调节指令对pcm音频流的pcm幅度进行多次调节时,可以边调节pcm音频流的pcm幅度,边向蓝牙音响发送调节后的一路pcm音频流。

比如,当终端接收到第一个音量调节指令,并将一路pcm音频流的音量由56db调节为57db时,可以将音量为57db的pcm音频流发送至蓝牙音响;当终端接收到第二个音量调节指令,并将该路pcm音频流的音量由57db调节为58db时,可以将音量为58db的pcm音频流发送至蓝牙音响;当终端接收到第三个音量调节指令,并将该路pcm音频流的音量由58db调节为59db时,可以将音量为59db的pcm音频流发送至蓝牙音响。

值得说明的是,由于终端可以在每接收到一个音量调节指令时,对一路pcm音频流进行一次pcm幅度的调节,且每调节一次该路pcm音频流的pcm幅度,就将调节后的pcm音频流发送至蓝牙音响。因此,蓝牙音响后续可以实时播放音量发生变化的一路pcm音频流,且在蓝牙音响播放音量发生变化的一路pcm音频流时,用户可以听到不同的音量,从而用户在听到合适的音量时,停止触发音量调节指令,保证了蓝牙音响最终播放的音频数据的音量为用户希望听到的音量,从而提高了用户粘度。

进一步地,由于终端对一路pcm音频流的音量调节程度较大,使得蓝牙音响播放音频数据时,播放的音量较大,很可能会损伤用户听力造成损伤,同时较大的音量将会打扰到其他人,从而带来不必要的麻烦。因此,为了避免发生上述问题,终端可以检测调节后的一路pcm音频流的音量是否大于安全音量阈值;当调节后的pcm音频流的音量大于该安全音量阈值时,可以显示提示信息,该提示信息用于提示是否继续对该路pcm音频流的音量进行调节;当接收到确定调节指令时,将调节后的pcm音频流输入至外接的蓝牙音响。

需要说明的是,安全音量阈值可以事先设置,比如,该安全音量阈值可以为50db、60db、70db等等。该确定调节指令用于确定继续调节该路pcm音频流的音量,且该确定调节指令同样可以由用户通过指定操作触发。

比如,当终端将一路pcm音频流的音量调节至61db时,该目标音量61db大于安全音量阈值60db,因此,该终端可以显示提示信息“继续增加音量将损伤听力,是否继续调节”,当接收到确定调节指令时,将调节后的pcm音频流输入至外接的蓝牙音响。

另外,当终端检测到调节后的一路pcm音频流的音量小于或等于安全音量阈值时,该终端可以直接将调节后的pcm音频流输入至外接的蓝牙音响,而不做其他操作。

步骤204:蓝牙音响接收终端发送的pcm音频流,并基于pcm音频流进行声音输出。

其中,当蓝牙音响接收到一路pcm音频流时,由于终端发送至蓝牙音响的pcm音频流经过sbc协议封装,因此,蓝牙音响为了顺利播放音频数据,该蓝牙音响需要将该sbc协议封装的pcm音频流进行解封,然后进行音频数据的播放。

值得说明的是,由于终端发送给蓝牙音响的一路pcm音频流为已调节好音量的pcm音频流,因此,蓝牙音响无需再对该路pcm音频流的音量进行调节,也即是,蓝牙音响无需avrcp协议的支持,从而即使不支持avrcp协议的蓝牙音响也可以远程进行音量调节,扩大了音量调节的适用范围。

本发明实施例提供的技术方案带来的有益效果是:在本发明实施例中,可以对解析待播放的音频数据得到的pcm音频流进行拷贝,得到两路相同的pcm音频流,并在进行音量调节时,如果连接有蓝牙音响,则可以对其中一路pcm音频流的pcm幅度进行调节,并将调节后的pcm音频流发送至蓝牙音响,从而使蓝牙音响直接基于调整后的pcm音频流进行声音输出,无需avrcp协议支持,同时由于音量调节指令只是对其中一路pcm音频流的pcm幅度进行调节,终端自身的音频输出设备如喇叭,会基于另一路pcm音频流进行音量调节,通过两路pcm音频流可以对外接的蓝牙音响和自身的音频输出设备进行区分控制,实现了对蓝牙音响的音量单独处理,方便了用户远程调节蓝牙音响的音量,提高了音量调节的效率和用户粘度。

图3a为本发明实施例提供的一种对终端外接的蓝牙音响的音量控制装置的框图,参见图3a,该音量调节装置可以由软件、硬件或者两者的结合实现。该装置包括拷贝模块301、调节模块302和传输模块303;

拷贝模块301,用于将待播放的音频数据解析得到的初始脉冲编码调制pcm音频流进行拷贝,得到两路相同的pcm音频流;

调节模块302,用于若检测到蓝牙音响已连接,则根据音量调节指令,调节其中一路pcm音频流的pcm幅度,其中,终端自身的音频输出设备基于另一路pcm音频流进行音量调节;

传输模块303,用于将调节后的所述一路pcm音频流传输至外接的蓝牙音响,以使得所述外接的蓝牙音响基于调节后的所述一路pcm音频流进行声音输出。

可选地,参见图3b,该拷贝模块301包括:

创建子模块3011,用于创建第一音频流缓冲区,该第一音频流缓冲区用于缓冲输入至该外接的智能无线音响的pcm音频流;

拷贝子模块3012,用于将第二音频流缓冲区中的pcm音频流拷贝至该第一音频流缓冲区中,该第二音频流缓冲区用于缓冲对待播放的音频数据解析得到的脉冲编码调制pcm音频流。

可选地,该调节模块302用于:

基于接收到的音量调节指令,调节第一音频流缓冲区中的pcm音频流的pcm幅度。

可选地,参见图3c,该装置还包括:

显示模块304,用于当接收到模式选择指令时,显示模式选择界面,该模式选择界面用于提示对音量调节方式进行选择;

触发模块305,用于当基于该模式选择界面接收到由终端进行音量调节的指令时,触发该拷贝模块将待播放的音频数据解析得到的脉冲编码调制pcm音频流进行拷贝。

可选地,参见图3d,该传输模块303包括:

封装子模块3031,用于将该调节后的所述一路pcm音频流进行sbc协议编码封装;

传输子模块3032,用于通过蓝牙信号将该封装后的pcm音频流传输至该外接的蓝牙音响。

综上所述,在本发明实施例中,可以对解析待播放的音频数据得到的pcm音频流进行拷贝,得到两路相同的pcm音频流,并在进行音量调节时,如果连接有蓝牙音响,则可以对其中一路pcm音频流的pcm幅度进行调节,并将调节后的pcm音频流发送至蓝牙音响,从而使蓝牙音响直接基于调整后的pcm音频流进行声音输出,无需avrcp协议支持,同时由于音量调节指令只是对其中一路pcm音频流的pcm幅度进行调节,终端自身的音频输出设备如喇叭,会基于另一路pcm音频流进行音量调节,通过两路pcm音频流可以对外接的蓝牙音响和自身的音频输出设备进行区分控制,实现了对蓝牙音响的音量单独处理,方便了用户远程调节蓝牙音响的音量,提高了音量调节的效率和用户粘度。

图4是根据一示例性实施例示出的一种终端400的框图。例如,终端400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图4,终端400可以包括以下一个或多个组件:处理组件402,存储器404,电源组件406,多媒体组件408,音频组件410,输入/输出(i/o)的接口412,传感器组件414,以及通信组件416。

处理组件402通常控制终端400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。

存储器404被配置为存储各种类型的数据以支持在终端400的操作。这些数据的示例包括用于在终端400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件406为终端400的各种组件提供电源。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为终端400生成、管理和分配电源相关联的组件。

多媒体组件408包括在所述终端400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当终端400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(mic),当终端400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。

i/o接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件414包括一个或多个传感器,用于为终端400提供各个方面的状态评估。例如,传感器组件414可以检测到终端400的打开/关闭状态,组件的相对定位,例如所述组件为终端400的显示器和小键盘,传感器组件414还可以检测终端400或终端400一个组件的位置改变,用户与终端400接触的存在或不存在,终端400方位或加速/减速和终端400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件416被配置为便于终端400和其他设备之间有线或无线方式的通信。终端400可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,终端400可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述图2b所示实施例提供的方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由终端400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得移动终端能够执行上述图2b所示实施例提供的方法。

需要说明的是:上述实施例提供的音量调节装置在调节音量时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的音量调节装置与音量调节方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1