铃声处理方法及装置与流程

文档序号:15923753发布日期:2018-11-14 00:55阅读:242来源:国知局

本发明涉及音频处理技术领域,尤其涉及一种铃声处理方法及装置。

背景技术

众所周知的,如微信、qq等即时通讯类第三方应用的铃声一直是不能修改的,如微信的来电铃声音量较小且没有穿透力,在实际生活中,经常出现拨打微信电话,对方不接听,而拨打电话才有接听的情况(电话铃声一般是可以替换成高音量高穿透力的自定义铃声)。遇到此类第三方应用,用户无法定制铃声,缺乏灵活性。



技术实现要素:

本发明的主要目的在于提供一种铃声处理方法及装置,旨在实现第三方应用铃声的动态替换,提升终端响铃的灵活性。

为实现上述目的,本发明提供一种铃声处理方法,所述铃声处理方法包括:

侦测是否有第三方应用播放铃声;

在有第三方应用播放铃声时,确定对应第三方应用播放的铃声的替换铃声;

终止第三方应用播放的铃声,并播放所确定的所述替换铃声。

可选地,所述侦测是否有第三方应用播放铃声的步骤包括:

侦测音频管理器audioflinger是否接收到第三方应用传输的脉冲编码调制pcm码流,其中,在audioflinger接收到第三方应用传输的第一pcm码流时,确定有第三方应用播放所述第一pcm码流对应的第一铃声。

可选地,所述在有第三方应用播放铃声时,确定对应第三方应用播放的铃声的替换铃声的步骤包括:

在audioflinger接收到第一pcm码流时,根据预设的pcm码流数据库,确定与所述第一pcm码流匹配的第二pcm码流;

将所确定的第二pcm码流预先关联的第二铃声确定为所述替换铃声。

可选地,所述终止第三方应用播放的铃声,并播放所确定的所述替换铃声的步骤包括:

截断所述第一pcm码流到所述audioflinger的传输通道,并将所述第二铃声解码后的pcm码流传输至所述audioflinger进行播放。

可选地,所述侦测是否有第三方应用播放铃声的步骤之前,还包括:

响应接收的铃声采集指令,采集并储存所述铃声采集指令对应的铃声的第三pcm码流;

接收输入的铃声与替换铃声的关联信息,并将存储的所述第三pcm码流与关联信息指定的替换铃声关联。

此外,为实现上述目的,本发明还提供一种铃声处理装置,所述铃声处理装置包括:

侦测模块,用于侦测是否有第三方应用播放铃声;

确定模块,用于在有第三方应用播放铃声时,确定对应第三方应用播放的铃声的替换铃声;

替换模块,用于终止第三方应用播放的铃声,并播放所确定的所述替换铃声。

可选地,所述侦测模块还用于侦测音频管理器audioflinger是否接收到第三方应用传输的脉冲编码调制pcm码流,其中,在audioflinger接收到第三方应用传输的第一pcm码流时,确定所述第三方应用播放所述第一pcm码流对应的第一铃声。

可选地,所述确定模块还用于在audioflinger接收到第一pcm码流时,根据预设的pcm码流数据库,确定与所述第一pcm码流匹配的第二pcm码流;还用于将所确定的第二pcm码流预先关联的第二铃声确定为所述替换铃声。

可选地,所述替换模块还用于截断所述第一pcm码流到所述audioflinger的传输通道,并将所述第二铃声解码后的pcm码流传输至所述audioflinger进行播放。

可选地,所述铃声处理装置还包括:

采集模块,用于响应接收的铃声采集指令,采集并储存所述铃声采集指令对应的铃声的第三pcm码流;

关联模块,用于接收输入的铃声与替换铃声的关联信息,并将存储的所述第三pcm码流与关联信息指定的替换铃声关联。

本发明提出的铃声处理方法及装置,在应用于终端的响铃操作时,通过终止第三方应用播放的原始铃声,转而播放原始铃声所对应的替换铃声,实现了对第三方应用的铃声的动态替换,提升了终端响铃的灵活性。

附图说明

图1为本发明铃声处理装置第一实施例的模块示意图;

图2为本发明铃声处理装置第一实施例中的铃声播放流程示例图;

图3为本发明铃声处理装置第二实施例中确定模块的工作流程示意图;

图4为本发明铃声处理装置第二实施例中pcm码流的采样流程示意图;

图5为本发明铃声处理方法第一实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种铃声处理装置,参照图1,在本发明铃声处理装置的第一实施例中,该铃声处理装置包括:

侦测模块10,用于侦测是否有第三方应用播放铃声;

确定模块20,用于在有第三方应用播放铃声时,确定对应第三方应用播放的铃声的替换铃声;

替换模块30,用于终止第三方应用播放的铃声,并播放所确定的替换铃声。

需要说明的是,本发明提供的铃声处理装置基于终端运行,其中,终端包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端,以及诸如数字tv、台式计算机等等的固定终端,本发明不做具体限制。发明人想要强调的是,本发明的主旨在于,对终端运行的第三方应用的铃声播放操作(如微信接收到新消息而执行的提示音操作,接收到微信电话而执行来电铃声播放操作等)进行侦测,从而在有第三方应用播放铃声时,终止第三方应用播放的铃声,转而播放预先设置的对应前述铃声的替换铃声,实现对第三方应用的铃声的动态替换。

具体的,在本发明实施例中,铃声处理装置通过侦测模块10实时侦测是否有第三方应用在播放铃声。例如,本机运行的微信在接收到对端微信传输的新信息时,本机微信将播放“新信息提示音”,用以提示用户查阅新接收到的信息;又例如,本机运行的微信在接收到对端微信拨打的微信电话时,本机微信将播放“来电铃声”,用以提示用户有微信来电,供用户确认是否接听。

在侦测到有第三方应用在播放铃声时,侦测模块10传输指示有第三方应用在播放铃声的指示信息至确定模块20。

确定模块20在接收到侦测模块10传输的前述指示信息之后,首先判断是否设置有对应前述第三方应用播放的铃声的替换铃声,其中,在判断结果为是时,确定模块20进一步确定对应前述第三方应用播放的铃声所对应的替换铃声;在判断结果为否时,不执行。例如,侦测模块10侦测到有第三方应用在播放铃声a,传输指示信息至确定模块20,确定模块20进一步基于该指示信息识别到设置有对应铃声a的替换铃声,并最终确定铃声a所对应的替换铃声为铃声b。

在确定对应前述第三方应用播放的铃声的替换铃声之后,确定模块20将替换铃声信息传输至替换模块30。

替换模块30在接收到确定模块20传输的替换铃声信息时,识别到需要对第三方应用播放的铃声进行替换,此时终止第三方应用播放的铃声,并播放确定模块20所确定的替换铃声,实现对第三方应用播放铃声的动态替换。

本发明实施例提供的铃声处理装置,在应用于终端的响铃操作时,通过终止第三方应用播放的原始铃声,转而播放原始铃声所对应的替换铃声,实现了对第三方应用的铃声的动态替换,提升了终端响铃的灵活性。

进一步地,基于第一实施例,提出本发明铃声处理装置的第二实施例,在本实施例中,侦测模块10还用于侦测audioflinger(音频管理器)是否接收到第三方应用传输的pcm(脉冲编码调制)码流,其中,在audioflinger接收到第一pcm码流时,确定前述第三方应用播放第一pcm码流对应的第一铃声。

本实施例在前述第一实施例的基础上,进一步对侦测模块10的侦测操作进行描述,其他可参照前述实施例,此处不再赘述。

需要说明的是,基于安卓系统的终端在播放铃声时,可以通过mediaplayer和audiotrack实现,两者都提供了javaapi供应用开发者使用。虽然两者都可以播放铃声,但两者还是有很大的区别的。其中最大的区别就是mediaplayer可以播放多种格式的铃声文件(mediaplayer会在框架层创建对应的铃声解码器),例如mp3,aac,wav,ogg,midi等。而audiotrack则只能播放已经解码的pcm码流,如果是文件的话只支持wav格式的铃声文件(audiotrack不创建解码器,所以只能播放不需要解码的wav文件,因为wav格式的铃声文件大部分都是pcm码流)。以下实施例以基于audiotrack的铃声播放进行说明。

参照图2,当第三方应用播放特定铃声的时候,铃声经过解码后变成pcm码流,统一经由audiotrack发送给audioflinger,然后由后者进行采样和bit位统一后进行mix混音,然后将混音后得到的pcm码流发送给数模转换器和放大器进行数模转换和放大,传输给耳机或喇叭等音频输出设备播放。有鉴于此,在本发明实施例中,侦测模块10通过对audioflinger是否接收到第三方应用传输的pcm码流进行侦测,以确定是否有第三方应用在播放铃声。例如,侦测模块10在侦测到audioflinger接收到第三方应用传输的第一pcm码流时,确定前述第三方应用在播放第一pcm码流对应的第一铃声。

进一步地,基于第二实施例,提出本发明铃声处理装置的第三实施例,在本实施例中,确定模块20还用于在audioflinger接收到第一pcm码流时,根据预设的pcm码流数据库,确定与第一pcm码流匹配的第二pcm码流;还用于将所确定的第二pcm码流预先关联的第二铃声确定为所述替换铃声。

需要说明的是,本实施例在前述第二实施例的基础上进一步对确定模块20的确定操作进行描述,其他可参照前述实施例,此处不再赘述。

具体的,参照图3,确定模块20周期性提取第三方应用播放的第一pcm码流,得到第一pcm码流的采样码流,将采样码流与预设的pcm码流数据库中储存的各pcm码流进行比较,如果存在与采样码流相同的pcm码流,则确定模块20将该相同的pcm码流作为与第一pcm码流匹配的第二pcm码流,将第二pcm码流预先关联的第二铃声确定为替换铃声,指示替换模块30播放;如果不存在与采样码流相同的pcm码流,确定模块20不进行干预,由第三方应用继续播放第一铃声。

进一步地,在本实施例中,替换模块30还用于截断第一pcm码流到audioflinger的传输通道,并将第二铃声解码后的pcm码流传输至audioflinger进行播放。

容易理解的是,由于第一pcm码流到audioflinger的传输通道被截断,第一铃声的播放将被终止,同时,第二铃声解码后的pcm码流被传输至audioflinger,实现播放。例如,微信应用接收到信息时,播放第一铃声“新信息提示音”,替换模块30将“新信息提示音”解码后的pcm码流至audioflinger的传输通道截断,使得“新信息提示音”的播放被终止,同时,替换模块30将“新信息提示音”的替换铃声“用户自定提示音”解码后的pcm码流传输至audioflinger进行播放。

以下进一步对替换铃声的设置操作进行说明,具体的,在本实施例中,铃声处理装置还包括:

采集模块,用于响应接收的铃声采集指令,采集并储存前述铃声采集指令对应的铃声的第三pcm码流;

关联模块,用于接收输入的铃声与替换铃声的关联信息,并将存储的第三pcm码流与关联信息指定的替换铃声关联。

本领域技术人员可以理解的是,在第三方应用播放铃声时,通常只有该第三方应用的铃声播放,此时用户可按照预设触发方式触发铃声采集指令,如按下快捷按键,比如上键+电源长按2秒,或者是在屏幕上的一个多指手势等,本发明对此不做具体限制。在触发铃声采集指令之后,采集模块将响应接收的铃声采集指令,采集并储存前述铃声采集指令对应的铃声的第三pcm码流,也即是采集并储存此时第三方应用正在播放的铃声的第三pcm码流。例如,当用户欲将某种第三方应用发出的铃声替换成自己的定制铃声时,可在欲替换铃声响起后,立即触发铃声采集指令,指示采集模块采集欲替换铃声的pcm码流。

参照图4,采集模块在执行采集操作时,具体基于audioflinger抓取播放的铃声的pcm码流,并开始计算抓取的pcm码流的数据的周期,当pcm码流播放两个周期相等后,确定这是一个周期铃声,将一个周期的pcm码流保存在audiosample_provider数据库中,用于在后续确定播放铃声的替换铃声时,与播放铃声的pcm码流进行比对。同时,并记录播放铃声的第三方应用的包名以方便用户查看的时候能与之建立关联,可以理解的是,在实际使用中,一个包名可以对应多个采集的pcm码流,可缺省按照采集的顺序自动编号,也可由用户命名。

在采集模块将采集的pcm码流保存在数据库中之后,使用轻量级通知机制告诉用户,用户可以继续进行操作。

当用户处理完的操作后,可以通过设置菜单中的预设控件触发终端显示铃声采集和替换管理界面,用户可在该铃声采集和替换管理界面找到采集并保存在数据库中的pcm码流,在显示时,该铃声采集和替换管理界面可以显示按照采集的时间索引的记录,用户点击对应的记录可以进入铃声选择界面,在这个界面用户可以选择操作系统内部预制的铃声作为替换铃声,或者选择已下载的铃声作为替换铃声。在用户确认选择之后,铃声选择界面产生播放的铃声与用户选择铃声的关联信息。

在接收到输入的关联信息时,关联模块将采集存储的pcm码流与关联信息指定的铃声(用户选择铃声)关联,将关联信息指定的铃声作为播放的铃声的替换铃声。

本发明还提供一种铃声处理方法,由图1所示的铃声处理装置执行,参照图5,在本发明铃声处理方法的第一实施例中,对应于前述铃声处理装置的第一实施例,该铃声处理方法包括:

步骤s10,侦测是否有第三方应用播放铃声;

步骤s20,在有第三方应用播放铃声时,确定对应第三方应用播放的铃声的替换铃声;

步骤s30,终止第三方应用播放的铃声,并播放所确定的替换铃声。

在本发明实施例中,前述铃声处理装置基于终端运行,其中,终端包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端,以及诸如数字tv、台式计算机等等的固定终端,本发明不做具体限制。发明人想要强调的是,本发明的主旨在于,对终端运行的第三方应用的铃声播放操作(如微信接收到新消息而执行的提示音操作,接收到微信电话而执行来电铃声播放操作等)进行侦测,从而在有第三方应用播放铃声时,终止第三方应用播放的铃声,转而播放预先设置的对应前述铃声的替换铃声,实现对第三方应用的铃声的动态替换。

具体的,铃声处理装置通过侦测模块10实时侦测是否有第三方应用在播放铃声。例如,本机运行的微信在接收到对端微信传输的新信息时,本机微信将播放“新信息提示音”,用以提示用户查阅新接收到的信息;又例如,本机运行的微信在接收到对端微信拨打的微信电话时,本机微信将播放“来电铃声”,用以提示用户有微信来电,供用户确认是否接听。

在侦测到有第三方应用在播放铃声时,侦测模块10传输指示有第三方应用在播放铃声的指示信息至确定模块20。

确定模块20在接收到侦测模块10传输的前述指示信息之后,首先判断是否设置有对应前述第三方应用播放的铃声的替换铃声,其中,在判断结果为是时,确定模块20进一步确定对应前述第三方应用播放的铃声所对应的替换铃声;在判断结果为否时,不执行。例如,侦测模块10侦测到有第三方应用在播放铃声a,传输指示信息至确定模块20,确定模块20进一步基于该指示信息识别到设置有对应铃声a的替换铃声,并最终确定铃声a所对应的替换铃声为铃声b。

在确定对应前述第三方应用播放的铃声的替换铃声之后,确定模块20将替换铃声信息传输至替换模块30。

替换模块30在接收到确定模块20传输的替换铃声信息时,识别到需要对第三方应用播放的铃声进行替换,此时终止第三方应用播放的铃声,并播放确定模块20所确定的替换铃声,实现对第三方应用播放铃声的动态替换。

本发明实施例提供的铃声处理方法,在应用于终端的响铃操作时,通过终止第三方应用播放的原始铃声,转而播放原始铃声所对应的替换铃声,实现了对第三方应用的铃声的动态替换,提升了终端响铃的灵活性。

进一步地,基于第一实施例,提出本发明铃声处理方法的第二实施例,对应于前述铃声处理装置的第二实施例,在本实施例中,步骤s10包括:

侦测audioflinger(音频管理器)是否接收到第三方应用传输的pcm(脉冲编码调制)码流,其中,在audioflinger接收到第一pcm码流时,确定前述第三方应用播放第一pcm码流对应的第一铃声。

本实施例在前述第一实施例的基础上进一步对侦测第三方应用播放铃声的侦测操作进行描述,其他可参照前述实施例,此处不再赘述。

需要说明的是,基于安卓系统的终端在播放铃声时,可以通过mediaplayer和audiotrack实现,两者都提供了javaapi供应用开发者使用。虽然两者都可以播放铃声,但两者还是有很大的区别的。其中最大的区别就是mediaplayer可以播放多种格式的铃声文件(mediaplayer会在框架层创建对应的铃声解码器),例如mp3,aac,wav,ogg,midi等。而audiotrack则只能播放已经解码的pcm码流,如果是文件的话只支持wav格式的铃声文件(audiotrack不创建解码器,所以只能播放不需要解码的wav文件,因为wav格式的铃声文件大部分都是pcm码流)。以下实施例以基于audiotrack的铃声播放进行说明。

参照图2,当第三方应用播放特定铃声的时候,铃声经过解码后变成pcm码流,统一经由audiotrack发送给audioflinger,然后由后者进行采样和bit位统一后进行mix混音,然后将混音后得到的pcm码流发送给数模转换器和放大器进行数模转换和放大,传输给耳机或喇叭等音频输出设备播放。有鉴于此,在本发明实施例中,侦测模块10通过对audioflinger是否接收到第三方应用传输的pcm码流进行侦测,以确定是否有第三方应用在播放铃声。例如,侦测模块10在侦测到audioflinger接收到第三方应用传输的第一pcm码流时,确定前述第三方应用在播放第一pcm码流对应的第一铃声。

进一步地,基于第二实施例,提出本发明铃声处理方法的第三实施例,对应于前述铃声处理装置的第三实施例,在本实施例中,步骤s20包括:

在audioflinger接收到第一pcm码流时,根据预设的pcm码流数据库,确定与第一pcm码流匹配的第二pcm码流;

将所确定的第二pcm码流预先关联的第二铃声确定为所述替换铃声。

本实施例在前述第二实施例的基础上进一步对替换铃声的确定操作进行描述,其他可参照前述实施例,此处不再赘述。

具体的,参照图3,确定模块20周期性提取第三方应用播放的第一pcm码流,得到第一pcm码流的采样码流,将采样码流与预设的pcm码流数据库中储存的各pcm码流进行比较,如果存在与采样码流相同的pcm码流,则确定模块20将该相同的pcm码流作为与第一pcm码流匹配的第二pcm码流,将第二pcm码流预先关联的第二铃声确定为替换铃声,指示替换模块30播放;如果不存在与采样码流相同的pcm码流,确定模块20不进行干预,由第三方应用继续播放第一铃声。

进一步地,在本实施例中,步骤s30包括:

截断第一pcm码流到audioflinger的传输通道,并将第二铃声解码后的pcm码流传输至audioflinger进行播放。

容易理解的是,由于第一pcm码流到audioflinger的传输通道被截断,第一铃声的播放将被终止,同时,第二铃声解码后的pcm码流被传输至audioflinger,实现播放。例如,微信应用接收到信息时,播放第一铃声“新信息提示音”,替换模块30将“新信息提示音”解码后的pcm码流至audioflinger的传输通道截断,使得“新信息提示音”的播放被终止,同时,替换模块30将“新信息提示音”的替换铃声“用户自定提示音”解码后的pcm码流传输至audioflinger进行播放。

以下进一步对替换铃声的设置操作进行说明,具体的,在本实施例中,步骤s10之前,还包括:

响应接收的铃声采集指令,采集并储存前述铃声采集指令对应的铃声的第三pcm码流;

接收输入的铃声与替换铃声的关联信息,并将存储的第三pcm码流与关联信息指定的替换铃声关联。

在本实施例中,铃声处理装置还包括:

采集模块,用于响应接收的铃声采集指令,采集并储存前述铃声采集指令对应的铃声的第三pcm码流;

关联模块,用于接收输入的铃声与替换铃声的关联信息,并将存储的第三pcm码流与关联信息指定的替换铃声关联。

在第三方应用播放铃声时,通常只有该第三方应用的铃声播放,此时用户可按照预设触发方式触发铃声采集指令,如按下快捷按键,比如上键+电源长按2秒,或者是在屏幕上的一个多指手势等,本发明对此不做具体限制。在触发铃声采集指令之后,采集模块将响应接收的铃声采集指令,采集并储存前述铃声采集指令对应的铃声的第三pcm码流,也即是采集并储存此时第三方应用正在播放的铃声的第三pcm码流。例如,当用户欲将某种第三方应用发出的铃声替换成自己的定制铃声时,可在欲替换铃声响起后,立即触发铃声采集指令,指示采集模块采集欲替换铃声的pcm码流。

参照图4,采集模块在执行采集操作时,具体基于audioflinger抓取播放的铃声的pcm码流,并开始计算抓取的pcm码流的数据的周期,当pcm码流播放两个周期相等后,确定这是一个周期铃声,将一个周期的pcm码流保存在audiosample_provider数据库中,用于在后续确定播放铃声的替换铃声时,与播放铃声的pcm码流进行比对。同时,并记录播放铃声的第三方应用的包名以方便用户查看的时候能与之建立关联,可以理解的是,在实际使用中,一个包名可以对应多个采集的pcm码流,可缺省按照采集的顺序自动编号,也可由用户命名。

在采集模块将采集的pcm码流保存在数据库中之后,使用轻量级通知机制告诉用户,用户可以继续进行操作。

当用户处理完的操作后,可以通过设置菜单中的预设控件触发终端显示铃声采集和替换管理界面,用户可在该铃声采集和替换管理界面找到采集并保存在数据库中的pcm码流,在显示时,该铃声采集和替换管理界面可以显示按照采集的时间索引的记录,用户点击对应的记录可以进入铃声选择界面,在这个界面用户可以选择操作系统内部预制的铃声作为替换铃声,或者选择已下载的铃声作为替换铃声。在用户确认选择之后,铃声选择界面产生播放的铃声与用户选择铃声的关联信息。

在接收到输入的关联信息时,关联模块将采集存储的pcm码流与关联信息指定的铃声(用户选择铃声)关联,将关联信息指定的铃声作为播放的铃声的替换铃声。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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