一种应用程序内音频的处理方法和装置与流程

文档序号:19925299发布日期:2020-02-14 16:50阅读:136来源:国知局
一种应用程序内音频的处理方法和装置与流程

本发明涉及计算机领域,特别涉及一种应用程序内音频的处理方法和装置。



背景技术:

随着互联网的发展,现在人们已越来越频繁地使用音乐播放软件来听音乐。音乐播放软件的功能也日益强大和完善。

但是,人们在用音乐播放软件收听音乐的过程中,常常会需要对音乐播放软件进行功能切换,例如,从音乐播放软件的歌曲功能模块切换到音乐播放软件的fm电台功能模块。在进行功能模块切换的情况下,往往会出现音乐播放软件内不同功能模块之间的声音混叠。例如,音乐播放软件内前一功能模块的声音可能并未结束,并与后一功能模块发出的声音重叠在一起,导致人们听不清想要收听的功能模块发出的声音,从而影响人们收听的质量。



技术实现要素:

本发明实施例提供了一种应用程序内音频的处理方法和装置,以避免同一应用程序内出现多个同等强度的声音,便于用户清楚地收听声音。

一方面,提供一种应用程序内音频的处理方法,所述方法包括:

应用程序内的多个播放器中的每个播放器向控制中心发送音频焦点请求消息;

所述控制中心根据各个播放器发送的音频焦点请求消息,控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证;

其中,所述音频焦点请求消息为以下任一种消息:获得长时间播放的音频焦点、获取短暂时间播放的音频焦点和获取降低音量的焦点。

可选地,在一个实施例中,所述控制中心根据各个播放器发送的音频焦点请求消息,控制各个播放器的播放操作包括:

所述控制中心在接收到后一个播放器的音频焦点请求消息时,根据所述后一个播放器的音频焦点请求消息,控制前一个播放器的播放操作,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

可选地,在另一个实施例中,所述播放操作包括:开始播放、停止播放、降低音量播放;

所述根据所述后一个播放器的音频焦点请求消息,控制前一个播放器的播放操作,使得所述前一播放器播出的声音不干扰所述后一个播放器播出的声音包括:

根据所述后一个播放器的音频焦点请求消息,控制所述后一个播放器开始播放,并且控制前一个播放器的停止播放或降低音量播放,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

可选地,在另一个实施例中,所述应用程序内的多个播放器中的每个播放器向控制中心进行注册包括:

所述应用程序内的多个播放器中的每个播放器将自己的唯一标识告知所述控制中心;

所述控制中心记录各个播放器的唯一标识。

可选地,在本发明实施例中,所述应用程序为音乐播放应用程序,每个播放器对应于所述音乐播放应用程序中的一个功能模块,所述功能模块包括:歌曲模块、铃声模块、fm电台模块、ktv模块、mv模块、直播模块。

另一方面,提供一种音频播放器播放控制装置,所述装置包括接收模块和控制模块,其中:

所述接收模块,用于接收各个播放器发送的音频焦点请求消息;

所述控制模块,用于根据各个播放器发送的音频焦点请求消息,控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证;

其中,所述音频焦点请求消息包括以下任一种消息:获得长时间播放的音频焦点、获取短暂时间播放的音频焦点和获取降低音量的焦点。

可选地,在一个实施例中,所述控制模块具体用于:

在接收到后一个播放器的音频焦点请求消息时,根据所述后一个播放器的音频焦点请求消息,控制前一个播放器的播放操作,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

可选地,在另一个实施例中,所述播放操作包括:开始播放、停止播放、降低音量播放;

所述控制模块具体用于:

根据所述后一个播放器的音频焦点请求消息,控制所述后一个播放器开始播放,并且控制前一个播放器的停止播放或降低音量播放,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

另一方面,提供一种音频装置,所述音频装置包括上文提到的任一种音频播放器播放控制装置和多个音频播放器,所述播放器用于:向所述音频播放器播放控制装置发送音频焦点请求消息。

可选地,在另一个实施例中,所述播放器还用于:将自己的唯一标识告知所述控制中心;

所述音频播放器播放控制装置,还用于记录各个播放器模块的所述唯一标识。

在本发明实施例中,每个播放器可对应于音乐播放应用程序中的一个功能模块,所述功能模块包括:歌曲模块、铃声模块、fm电台模块、ktv模块、mv模块、直播模块。

另一方面,提供一种终端设备,所述终端设备包括存储器和处理器,所述存储器上存储有计算机程序,当所述处理器执行所述计算机程序时执行本发明实施例中的任一种应用程序内音频的处理方法。

其中,所述终端设备可以为手机、平板电脑、台式电脑等。

另一方面,提供一种非临时性存储介质,所述非临时性存储介质上存储有计算机程序,当所述计算机程序被处理器执行时运行本发明实施例中的任一种应用程序内音频的处理方法。

本发明实施例提供的技术方案带来的有益效果是:

本发明实施例提供的应用程序内音频的处理方法和音频的处理装置,引入控制中心来控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证,以避免同一应用程序内出现多个同等强度的声音,便于用户清楚地收听声音。

附图说明

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

图1是本发明实施例提供的应用程序内音频的处理方法的流程图;

图2是本发明实施例提供的控制应用程序内各个播放器的过程的示意图;

图3是本发明实施例提供的一种音频播放器播放控制装置的结构框图;

图4是本发明实施例提供的一种音频装置的结构框图。

具体实施方式

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

图1是本发明实施例提供的应用程序内音频的处理方法的流程图。参照图1,本发明实施例提供的应用程序内音频的处理方法可包括:

11、应用程序内的多个播放器中的每个播放器向控制中心发送音频焦点请求消息。

其中,“应用程序”是指含有音频或视频播放功能的应用程序,举例而言诸如酷狗音乐等音乐播放软件。

在本发明实施例中,应用程序在开始播放任何音频之前,首先应该持有流的音频焦点。只有获得了音频焦点的应用程序才可以播放音乐。

而本发明实施例中存在多个播放器,获得音频焦点的播放器才能播放音乐,故而各个播放器在需要播放音乐时,会向控制中心发出音频焦点请求消息。

在本发明实施例中,播放器在向控制中心发出音频焦点请求消息之前,可首先向控制中心进行注册,以便让控制中心知晓该播放器的信息。

具体地,在本发明实施例中,播放器向控制中心进行注册的过程可以为:所述应用程序内的多个播放器中的每个播放器将自己的唯一标识告知所述控制中心;所述控制中心记录各个播放器的唯一标识。更具体而言,播放器可在向控制中心发送的音频焦点请求消息中携带该播放器的唯一标识,从而控制中心在接收到所述音频焦点请求消息之后,即可根据不同播放器的唯一标识来区分不同播放器发出的音频焦点请求。当然,在控制中心已预先存储有各个播放器的标识的情况下,各个播放器也可以不向控制中心进行注册,而是直接向控制中心发送音频焦点请求消息。

在本发明实施例中,当所述应用程序为音乐播放应用程序时,每个播放器可对应于所述音乐播放应用程序中的一个功能模块,所述功能模块包括:歌曲模块、铃声模块、fm电台模块、ktv模块、mv模块、直播模块、酷群模块等。也就是说,举例而言,音乐播放应用程序中的一个播放器可对应于歌曲模块,音乐播放应用程序中的另一个播放器可对应于铃声模块,音乐播放应用程序中的另一个播放器可对应于fm电台模块等。

其中,所述音频焦点请求消息包括以下任一种消息:获得长时间播放的音频焦点、获取短暂时间播放的音频焦点和获取降低音量的焦点。下面对这几种音频焦点类型进行进一步说明。

本发明实施例中,获得长时间播放的音频焦点(insideaudiofocus_gain)可以为针对例如歌曲模块、fm电台模块等需要耗费较长播放时间的播放器所请求的音频焦点类型。一个播放器在向控制中心发送请求获得长时间播放的音频焦点的消息后,即可长时间播放音频,直到下一个播放器向控制中心发送音频焦点请求消息,在下一播放器发出音频焦点请求消息之后,该播放器即在控制中心的控制下(例如,控制中心可向该播放器发出丢失长时间播放的音频焦点的消息)不再播放音频。本发明实施例中的丢失长时间播放的音频焦点(insideaudiofocus_loss)可以为针对例如歌曲模块、fm电台模块等需要耗费较长播放时间的播放器在控制中心的控制下丢失的音频焦点类型。

获取短暂时间播放的音频焦点(insideaudiofocus_gain_transient)可以为针对铃声模块等需要耗费较短播放时间的播放器所请求的音频焦点类型。一个播放器在向控制中心发送请求获得短暂时间播放的音频焦点的消息后,即可短暂播放音频,直到下一个播放器向控制中心发送音频焦点请求消息,在下一播放器发出音频焦点请求消息之后,该播放器即在控制中心的控制下(例如,控制中心可向该播放器发出丢失短暂时间播放的音频焦点的消息)不再播放音频。本发明实施例中的丢失短暂时间播放的音频焦点(insideaudiofocus_loss_transient)可以为针对铃声模块等需要耗费较短播放时间的播放器在控制中心的控制下丢失的音频焦点类型。

获取降低音量的焦点(insideaudiofocus_gain_transient_may_duck)可以为针对酷群模块等需要较短播放时间的播放器所请求的音频焦点类型,此种类型的音频焦点应用于存在多个播放器发出声音,且前一播放器发出的声音尚未停止的情况下。一个播放器在向控制中心发送请求获取降低音量的焦点的消息后,即可由控制中心对前一播放器的播放行为进行控制,该前一播放器即可在控制中心的控制下(例如,控制中心可向该播放器发出丢失降低音量的焦点的消息)降低播放音频的音量,甚至停止播放音频。本发明实施例中的丢失降低音量的焦点(insideaudiofocus_gain_transient_can_duck)可以为针对酷群模块等需要较短播放时间的播放器所丢失的音频焦点类型,此种类型的音频焦点应用于存在多个播放器发出声音,且前一播放器发出的声音尚未停止的情况下。

12、所述控制中心根据各个播放器发送的音频焦点请求消息,控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证。

本发明实施例提供的应用程序内音频的处理方法,引入控制中心来控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证,以避免同一应用程序内出现多个同等强度的声音,便于用户清楚地收听声音。

在本发明实施例中,所述控制中心可根据上文中提到的六种音频焦点类型,控制各个播放器的播放操作,保证最后发出音频焦点请求消息的播放器的需求优先得到满足。即,控制中心总是根据后发出的音频焦点请求消息来控制各个播放器的播放操作,使之前仍在播放的播放器发出的声音不影响当前发出音频焦点请求消息的播放器播出的声音。

具体而言,在本发明实施例中,所述控制中心在接收到后一个播放器的音频焦点请求消息时,可根据所述后一个播放器的音频焦点请求消息,控制前一个播放器的播放操作,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。本发明实施例总是根据后一个播放器的音频焦点请求消息来控制之前播放器的播放操作,如此,可以保证后发出音频焦点请求消息的播放器的播放优先级比先发出音频焦点请求消息的播放器的播放优先级更高,进而充分满足后发出音频焦点请求消息的播放器的播放需求,保证之前播放器发出的声音对后一播放器发出的声音不造成干扰。

本发明实施例中的“不干扰”是指,所述前一播放器播出的声音不影响所述后一播放器播出的声音的正常收听。例如,所述前一播放器可通过停止播放声音或者降低播放声音的音量等途径来实现。

本发明实施例中,播放器的播放操作可包括开始播放、停止播放、降低音量播放等。为达到前一播放器播出的声音不干扰后一播放器播出的声音的效果,控制中心可在接收到后一个播放器的音频焦点请求消息之后,控制所述后一个播放器开始播放,并且控制前一个播放器的停止播放或降低音量播放,从而所述前一播放器播出的声音不干扰所述后一播放器播出的声音。本发明实施例通过对先发出音频焦点播放请求的播放器进行降低音量或停止播放的操作,以这种具体的方式来优先满足后发出音频焦点播放请求的播放器的播放需求,使得同一应用程序内只有一个主流声音,便于用户清楚地收听声音。

为更好地理解本发明实施例的实现过程,下面以举例方式对本发明实施例的实现过程进行进一步阐释。本发明实施例提供一种应用程序内音频的处理方法,可以防止同一应用程序内出现多个声音,便于用户清楚地收听声音。该方法可应用于安卓系统,本发明实施例可在安卓系统内部定义一个音频焦点,写一个内部音频管理类(insideaudiomanager)。定义一个音频焦点变化监听的接口(insideaudiofocuschangelistener),里面写有一个方法(oninsideaudiofocuschange(intinsidefocuschange))。同时,定义两个接口(requestinsideaudiofocus和abandoninsideaudiofocus),一个用于开始播放时请求内部音频焦点,一个用于播放完毕时释放内部音频焦点。此外,设置一个音频焦点控制中心(audiofocuscontrolcenter),用以控制和管理音频焦点。

图2是本发明实施例提供的控制应用程序内各个播放器的过程的示意图。图2中以三个播放器为例进行说明,需了解,更多个播放器的情形可类推得到。参照图2,本发明实施例提供的应用程序内各个播放器的控制过程可如下:

假如安卓系统上的一个应用程序(app)内部有3个播放器实例分别为播放器a、播放器b和播放器c,这三个播放器之间相互独立,互不影响。如果使用不当,这样就容易出现2个或以上声音发出,造成不好的用户体验。

当播放器a将要开始播放时,注册一个收听(insideaudiofocuschangelistener)实例到控制中心里面,注册后使用音频焦点请求消息(requestinsideaudiofocus)向控制中心请求一种内部音频焦点(例如,insideaudiofocus_gain),并且这样完成开始播放时的请求工作,之后正常开始播放。

当播放器b想要播放时,使用同样的方法请求注册,这个时候控制中心会通过a注册的接口(insideaudiofocuschangelistener)回调音频焦点变化方法(oninsideaudiofocuschange)给播放器a,并且告诉播放器a是丢失长时间播放的音频焦点(insideaudiofocus_loss)这个焦点,于是播放器a就知道丢失了长时间播放的音频焦点,从而可操作播放器a让其停止。

同样道理,如果播放器a、播放器b都注册到了控制中心,播放器c在注册到控制中心后,可使用音频焦点请求消息(requestinsideaudiofocus)向控制中心请求一种内部音频焦点(例如,获取降低音量的焦点(insideaudiofocus_gain_transient_may_duck))。播放器c开始播放时,控制中心会发送通知给播放器a、播放器b,让他们都有对应的动作去执行,例如让播放器a停止播放,让播放器b停止播放或降低音量播放。这样就协调了应用程序内部的音频焦点,不会造成混乱和坏的用户体验。

以上只是以三个播放器为例来对本发明实施例进行阐释,并不意为限制。

本发明实施例提供的应用程序内音频的处理方法,引入控制中心来控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证,以避免同一应用程序内出现多个声音,便于用户清楚地收听声音。

图3是本发明实施例提供的一种音频播放器播放控制装置的结构框图。参照图3,本发明实施例提供的音频播放器播放控制装置300包括接收模块301和控制模块302。其中:

所述接收模块301,用于接收各个播放器发送的音频焦点请求消息;

所述控制模块302,用于根据各个播放器发送的音频焦点请求消息,控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证;

其中,所述音频焦点请求消息为以下任一种消息:获得长时间播放的音频焦点、获取短暂时间播放的音频焦点和获取降低音量的焦点。

可选地,在一个实施例中,所述控制模块302可具体用于:

在接收到后一个播放器的音频焦点请求消息时,根据所述后一个播放器的音频焦点请求消息,控制前一个播放器的播放操作,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

可选地,在另一个实施例中,所述播放操作包括:开始播放、停止播放、降低音量播放;

所述控制模块302具体用于:

根据所述后一个播放器的音频焦点请求消息,控制所述后一个播放器开始播放,并且控制前一个播放器的停止播放或降低音量播放,使得所述前一播放器播出的声音不干扰所述后一播放器播出的声音。

本发明实施例提供的音频播放器播放控制装置,通过音频播放器播放控制装置来控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证,以避免同一应用程序内出现多个同等强度的声音,便于用户清楚地收听声音。

图4是本发明实施例提供的一种音频装置的结构框图。参照图4,本发明实施例提供的音频的处理装置400包括多个播放器401(例如,播放器401a、401b…401n)和音频播放器播放控制装置300。其中:

所述播放器401用于:向所述音频播放器播放控制装置发送音频焦点请求消息。

可选地,在一个实施例中,所述播放器401还用于在请求音频焦点之前向所述音频播放器播放控制装置300进行注册。具体地,所述播放器401可将自己的唯一标识告知所述控制中心。所述音频播放器播放控制装置300,还用于记录各个播放器模块的所述唯一标识。

在本发明实施例中,每个播放器可对应于音乐播放应用程序中的一个功能模块,所述功能模块包括:歌曲模块、铃声模块、fm电台模块、ktv模块、mv模块、直播模块。

本发明实施例提供的音频装置,通过音频播放器播放控制装置来控制各个播放器的播放操作,使得所述多个播放器中在时间上最晚发出音频焦点请求消息的播放器的播放最先得到保证,以避免同一应用程序内出现多个同等强度的声音,便于用户清楚地收听声音。

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

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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

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

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