CN109858237A - 音频数据采集方法、装置、终端及存储介质 - Google Patents
音频数据采集方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN109858237A CN109858237A CN201910165152.XA CN201910165152A CN109858237A CN 109858237 A CN109858237 A CN 109858237A CN 201910165152 A CN201910165152 A CN 201910165152A CN 109858237 A CN109858237 A CN 109858237A
- Authority
- CN
- China
- Prior art keywords
- application program
- audio data
- audio
- server
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种音频数据采集方法、装置、终端及存储介质,属于软件应用技术领域。方法包括:在操作系统中运行添加有挂钩服务的第一应用程序;第一应用程序运行后,为第二应用程序提供运行环境,在第一应用程序中运行第二应用程序;通过第二应用程序获取音频数据;通过第一应用程序中的挂钩服务采集音频数据,对音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
Description
技术领域
本发明涉及软件应用技术领域,特别涉及一种音频数据采集方法、装置、终端及存储介质。
背景技术
随着软件应用技术的高速发展,终端设备中应用程序越来越丰富。在日常应用中,常需要通过应用程序采集音频数据,例如,录音、录屏或听歌识曲。目前,终端设备由于受到操作系统限制,通常需要通过MIC(microphone,麦克风)采集音频数据。然而,在终端插入耳机后,由于耳机的耳塞到MIC有一定的距离,导致无法录制耳塞中的声音。因此,在插入耳机后,无法采集终端设备的音频数据。
相关技术中,为了解决上述问题,常通过hook服务(挂钩服务)调用目标API(Application Programming Interface,应用程序编程接口)函数,通过目标API函数拦截操作系统中正在播放的音频数据,即从音频数据输出源处来拦截操作系统中的音频数据,进而采集系统内部的音频数据。然而,出于对安全性能的考虑,终端设备的操作系统一般都禁止通过hook服务采集系统内部的音频数据。因此,在使用hook服务前,需要先获取终端设备中操作系统的最大权限,例如,在以安卓系统为操作系统的终端设备中需要先获取root权限(根权限)。
上述相关技术中,开放最大权限后,终端设备不再限制应用程序的运行,无法有效拦截流氓应用,导致终端设备的安全性能降低。
发明内容
本发明实施例提供了一种音频数据采集方法、装置、终端及存储介质,可以解决相关技术中开放最大权限后,终端设备不再限制应用程序的运行,无法有效拦截流氓应用,导致终端设备的安全性能降低的问题。所述技术方案如下:
第一方面,提供了一种音频数据采集方法,所述方法包括:
在操作系统中运行第一应用程序,所述第一应用程序中添加有挂钩服务,所述第一应用程序用于提供应用程序的运行环境;
在所述第一应用程序中运行第二应用程序,所述第二应用程序具有音频功能;
通过所述第二应用程序获取音频数据;
通过所述第一应用程序中的挂钩服务采集所述音频数据,对所述音频数据进行存储。
可选地,所述通过所述挂钩服务采集所述音频数据,包括:
通过所述挂钩服务调用所述第一应用程序中的目标应用程序编程接口API函数,所述目标API函数具有修改所述第二应用程序的输出地址的功能;
通过所述目标API函数修改所述第二应用程序的输出地址,采集所述音频数据。
可选地,所述对所述音频数据进行存储包括下述任一种方式或两种方式的组合:
将所述音频数据存储到所述第一应用程序的存储空间中;
将所述音频数据发送给第一服务器,所述服务器为所述第一应用程序的服务器。
可选地,所述对所述音频数据进行存储之后,所述方法还包括:
在所述操作系统中运行第三应用程序,所述第三应用程序用于音频识别;
通过所述第三应用程序识别所述音频数据,得到识别结果。
可选地,所述通过所述第三应用程序识别所述音频数据,得到识别结果,包括:
通过所述第三应用程序从所述第一应用程序的存储空间中获取所述音频数据;
将所述音频数据发送给第二服务器,所述第二服务器用于识别所述音频数据;
接收所述识别结果。
可选地,所述通过所述第三应用程序识别所述音频数据,获得识别结果,还包括:
通过所述第三应用程序向所述第一服务器发送调用请求,所述调用请求携带所述音频数据的标识和第二服务器的服务器标识,所述第二服务器用于识别所述音频数据;
接收所述识别结果。
可选地,所述通过所述第三应用程序识别所述音频数据,获得识别结果,还包括:
将所述音频数据转换为音频指纹;
通过所述第三应用程序识别所述音频指纹;
获取与所述音频指纹匹配的识别结果。
第二方面,提供了一种音频数据采集装置,所述装置包括:
第一运行模块,用于在操作系统中运行第一应用程序,所述第一应用程序中添加有挂钩服务,所述第一应用程序用于提供应用程序的运行环境;
第二运行模块,用于在所述第一应用程序中运行第二应用程序,所述第二应用程序具有音频功能;
获取模块,用于通过所述第二应用程序获取音频数据;
采集模块,用于通过所述第一应用程序中的挂钩服务采集所述音频数据,对所述音频数据进行存储。
可选地,所述采集模块,包括:
调用单元,用于通过所述挂钩服务调用所述第一应用程序中的目标应用程序编程接口API函数,所述目标API函数具有修改所述第二应用程序的输出地址的功能;
采集单元,用于通过所述目标API函数修改所述第二应用程序的输出地址,采集所述音频数据。
可选地,所述采集模块,用于执行以下至少一项:
将所述音频数据存储到所述第一应用程序的存储空间中;
将所述音频数据发送给第一服务器,所述服务器为所述第一应用程序的服务器。
可选地,所述装置还包括:
第三运行模块,用于在所述操作系统中运行第三应用程序,所述第三应用程序用于音频识别;
识别模块,用于通过所述第三应用程序识别所述音频数据,得到识别结果。
可选地,所述识别模块,包括:
第一获取单元,用于通过所述第三应用程序从所述第一应用程序的存储空间中获取所述音频数据;
第一发送单元,用于将所述音频数据发送给第二服务器,所述第二服务器用于识别所述音频数据;
接收单元,用于接收所述识别结果。
可选地,所述识别模块,还包括:
第二发送单元,用于通过所述第三应用程序向所述第一服务器发送调用请求,所述调用请求携带所述音频数据的标识和第二服务器的服务器标识,所述第二服务器用于识别所述音频数据;
所述接收单元,还用于接收所述识别结果。
可选地,所述识别模块,还包括:
转换单元,用于将所述音频数据转换为音频指纹;
识别单元,用于通过所述第三应用程序识别所述音频指纹;
第二获取单元,用于获取与所述音频指纹匹配的识别结果。
第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如第一方面所述的音频数据采集方法中所执行的操作。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如第一方面所述的音频数据采集方法中所执行的操作。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的方法、装置、终端及存储介质,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种音频数据采集方法的流程图;
图2是本发明实施例提供的一种音频数据采集方法的流程图;
图3是本发明实施例提供的一种音频数据的识别方法的流程图;
图4是本发明实施例提供的一种音频数据的识别方法的流程图;
图5是本发明实施例提供的一种音频数据的识别方法的流程图;
图6是本发明实施例提供的一种音频数据采集装置的结构示意图;
图7是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种音频数据采集方法的流程图。该发明实施例的执行主体为终端,参见图1,该方法包括:
101、在操作系统中运行第一应用程序,第一应用程序中添加有挂钩服务,第一应用程序用于提供应用程序的运行环境。
102、在第一应用程序中运行第二应用程序,第二应用程序具有音频功能。
103、通过第二应用程序获取音频数据。
104、通过第一应用程序中的挂钩服务采集音频数据,对音频数据进行存储。
本发明实施例提供的方法,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
可选地,通过挂钩服务采集音频数据,包括:
通过挂钩服务调用第一应用程序中的目标应用程序编程接口API函数,目标API函数具有修改第二应用程序的输出地址的功能;
通过目标API函数修改第二应用程序的输出地址,采集音频数据。
可选地,对音频数据进行存储包括下述任一种方式或两种方式的组合:
将音频数据存储到第一应用程序的存储空间中;
将音频数据发送给第一服务器,服务器为第一应用程序的服务器。
可选地,对音频数据进行存储之后,方法还包括:
在操作系统中运行第三应用程序,第三应用程序用于音频识别;
通过第三应用程序识别音频数据,得到识别结果。
可选地,通过第三应用程序识别音频数据,得到识别结果,包括:
通过第三应用程序从第一应用程序的存储空间中获取音频数据;
将音频数据发送给第二服务器,第二服务器用于识别音频数据;
接收识别结果。
可选地,通过第三应用程序识别音频数据,获得识别结果,还包括:
通过第三应用程序向第一服务器发送调用请求,调用请求携带音频数据的标识和第二服务器的服务器标识,第二服务器用于识别音频数据;
接收识别结果。
可选地,通过第三应用程序识别音频数据,获得识别结果,还包括:
将音频数据转换为音频指纹;
通过第三应用程序识别音频指纹;
获取与音频指纹匹配的识别结果。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
图2是本发明实施例提供的一种音频数据采集方法的流程图。在本发明实施例中以通过第一应用程序采集音频数据为例进行说明。参见图2,该方法包括:
201、终端在操作系统中运行第一应用程序,该第一应用程序中添加有挂钩服务,该第一应用程序用于提供应用程序的运行环境。
操作系统是指终端所运行的操作系统,用于管理终端硬件与软件资源的程序,终端中的应用程序可以在操作系统中运行。
第一应用程序可以为任一具有沙箱功能的应用程序,在终端的操作系统中运行该第一应用程序,通过该第一应用程序的沙箱功能,生成沙箱环境。沙箱环境是一个虚拟的操作系统,在该沙箱环境中可以运行其他应用程序,并且,在该沙箱环境中运行的其他应用程序对操作系统不造成影响。因此,可以在该第一应用程序中添加用于拦截音频数据的挂钩(hook)服务,当该挂钩服务在第一应用程序提供的沙箱环境中运行时,可以拦截第一应用程序中的音频数据,且不需要破坏操作系统以使用该挂钩服务。上述运行方式,对操作系统没有权限要求,保证了操作系统的安全性。
挂钩服务可以是相关技术人员在开发编写第一应用程序时,向该第一应用程序中添加的程序,通过挂钩服务可以拦截操作系统中指定的消息。在本发明实施例中,该挂钩服务是针对音频数据的挂钩服务。当第一应用程序中出现音频数据时,第一应用程序通知该沙箱环境中的挂钩服务,挂钩服务对该携带音频数据的消息进行拦截,进而采集该音频数据。
当前终端中插入了耳机,或用户使用终端进行屏幕录制时,终端无法通过麦克风录制当前播放的音频。此时,用户可以采集系统内部的音频数据,来得到想要的音频数据。而采集系统内部的音频数据时,需要通过挂钩服务,终端的操作系统一般不开放针对音频数据的挂钩服务的权限。因此,当操作系统未开放最大权限时,可以通过开启第一应用程序,通过第一应用程序提供的沙箱环境运行播放音频数据的应用程序,通过第一应用程序中的挂钩服务来采集系统内部的音频数据。
通过在操作系统中运行第一应用程序来提供沙箱环境,使得挂钩服务可以通过沙箱环境拦截第一应用程序中的音频数据,而不影响操作系统。因此,在操作系统保持不开最大权限时,终端也可以使用用于音频数据拦截的挂钩服务,保证了操作系统的不受挂钩服务的影响,保证了操作系统的安全性。
202、终端在该第一应用程序中运行该第二应用程序,该第二应用程序具有音频功能。
第一应用程序运行后,可以提供沙箱环境,在该沙箱环境中,可以运行第二应用程序。相应的,第一应用程序中还包括第二应用程序的入口标识,该入口标识可以为第二应用程序的图标、名称等,通过对该入口标识的操作,可以在第一应用程序中运行该第二应用程序。其中,该第二应用程序的音频功能可以为音频播放功能、语音传输功能等。
在一种可能的实现方式中,第一应用程序运行后,在所产生的沙箱环境中显示第二应用程序的第一列表。该第一列表中的第二应用程序为预设的可以在该第一应用程序中运行的应用程序。该第一列表中的应用程序可以为已安装在第一应用程序中的应用程序,也可以为未安装在第一应用程序中的应用程序,在本发明实施例中,对此不作具体限定。当该第一列表中的第二应用程序为未安装在第一应用程序中的应用程序时,可以在第一应用程序中下载并安装该第二应用程序。
需要说明的一点是,第一应用程序中也可以运行第一列表中没有的应用程序。当第一列表中没有需要运行的第二应用程序的入口标识时,可以在第一应用程序中下载需要运行的第二应用程序。相应的,第一列表中还可以显示已安装在第一应用程序中的第二应用程序的入口标识。
需要说明的另一点是,当该第二应用程序为通过第一应用程序临时下载的第二应用程序时,第一应用程序可以在用户退出第一应用程序后删除该第二应用程序。相应的,是否在退出第一应用程序时删除第一应用程序中的第二应用程序可以由用户进行设置并更改。或者,在退出第一应用程序前,显示询问消息,根据询问结果,确定是否在退出第一应用程序后删除该第一应用程序下的第二应用程序。例如,该询问消息的内容可以为“是否删除本次下载的应用程序”,当收到反馈消息为“是”时,在退出第一应用程序后自动删除本次第一应用程序运行后安装的第二应用程序;当收到反馈消息为“否”时,在退出第一应用程序后,保留本次第一应用程序运行后安装的第二应用程序。通过自动删除第一应用程序中已安装的第二应用程序,节省了第一应用程序中的存储空间。
在本实现方式中,通过在第一应用程序中显示可以运行的第二应用程序的第一列表,使用户更直观的了解可以在第一应用程序中运行的第二应用程序有哪些。
在另一种可能的实现方式中,第一应用程序运行后,在所产生的沙箱环境中显示第二应用程序的第二列表。该第二列表中的第二应用程序与操作系统的第二应用程序相同。该第二列表中的应用程序可以为已安装在第一应用程序中的应用程序,也可以为未安装在第一应用程序中的应用程序,在本发明实施例中,对此不作具体限定。当该第二列表中的第二应用程序为未安装在第一应用程序中的应用程序时,可以在第一应用程序中下载并安装该第二应用程序。
终端可以周期性检测操作系统中的应用程序,当检测到操作系统的应用程序时,对该第一应用程序中的第二列表进行更新,其中,检测周期可以根据需要进行设置并更改,在本发明实施例中,对检测周期不作具体限定,例如该检测周期可以为1ms、3ms或5ms等。
需要说明的一点是,第一应用程序中,也可以运行操作系统中为安装的第二应用程序。相应的,通过第一应用程序下载操作系统中为安装的应用程序,该在第一应用程序中下载和删除第二应用程序的过程与上一实现方式中在第一应用程序中下载和删除第二应用程序的过程相似,在此不再赘述。
在本实现方式中,根据操作系统中的应用程序自动更新第一应用程序中的第二列表,避免了在运行第一应用程序后在此查询并下载需要运行的第二应用程序,减少了操作流程,提高了运行效率。
另外,在本发明实施例中,对在第一应用程序中运行第二应用程序的时机不作具体限定。第二应用程序可以在用户需要采集音频数据时,由用户在第一应用程序中打开;第二应用程序还可以在操作系统中检测到需要采集音频数据时直接在第一应用程序中打开,例如,第二应用程序为语音通话应用程序,当用户在操作系统中通过该语音通话应用程序进行语音通话,想对本次通话进行录音时,点击该语音通话应用程序的录音选项后,直接打开该第一应用程序,在第一应用程序中重新运行该第二应用程序。
203、终端通过该第二应用程序获取音频数据。
终端在第一应用程序中成功加载第二应用程序后,通过该第二应用程序获取音频数据。该获取音频数据的过程可以为在第一应用程序中通过第二应用程序下载并播放音频文件或视频文件中的音频数据;该获取音频数据的过程还可以为第二应用程序获取语音通话中的通话数据。因此,该第二应用程序可以为音频播放应用程序、视频播放应用程序或语音通话应用程序等任一可以获取音频的应用程序。
该音频数据可以为存储音视频文件的服务器中的音频数据;还可以为音频信号中的音频数据,该音频信号可以为接收到的语音信号中的音频数据和通过终端的MIC输入的音频信号。
204、终端通过该挂钩服务调用该第一应用程序中的目标应用程序编程接口API函数,该目标API函数具有修改第二应用程序的输出地址的功能。
在本步骤中,当第二应用程序在第一应用程序提供的沙箱环境中处理音频数据时,第一应用程序向挂钩服务发送系统消息;挂钩服务接收到该系统消息后,调用该第一应用程序中具有修改输出地址功能的目标API函数;挂钩服务向该目标API函数中输入第二应用程序修改后的输出地址,通过该目标API函数修改第二应用程序的输出地址。该修改后的输出地址可以为第一应用程序的存储空间、第一服务器等。
需要说明的一点是,通过目标API函数对第二应用程序的输出地址进行修改时,可以在第二应用程序原来的输出地址上添加新的输出地址,得到修改后的输出地址;也可以将原来的输出地址替换为新的输出地址,得到修改后的输出地址。在本发明实施例中,对此不作具体限定。
需要说明的一点是,该第一应用程序中可以仅包含该具有修改输出地址功能的目标API函数,也可以还包括其他功能的目标API函数,在本发明实施例中,对此不作具体限定。
205、终端通过该目标API函数修改该第二应用程序的输出地址,采集该音频数据。
目标API函数通过挂钩服务输入的第二应用程序的修改后的输出地址,对第二应用程序原本的输出地址进行修改。目标API函数修改第二应用程序的输出地址后,第二应用程序在处理音频数据时,会按照修改后的输出地址输出该音频数据。
例如,该音频数据为音频文件中的音频数据,则该第二应用程序对应的该音频数据原来的输出地址可以为终端的扬声器或终端的耳机接口。当第二应用程序播放该音频数据时,挂钩服务可以调用第一应用程序中的目标API函数。向该目标API函数中输入第二应用程序的修改后的输出地址,该修改后的输出地址可以为第一应用程序的存储空间,目标API函数将第二应用程序的输出地址修改为第一应用程序的存储空间。第二应用程序在输出音频数据时,直接将该音频数据输出至第一应用程序的存储空间中,再执行步骤206中的存储步骤。
206、终端对该音频数据进行存储。
终端在采集到音频数据后可以将该音频数据存储在本地,也即以下第一种实现方式;也可以将该音频数据存储在第一服务器中,也即以下第二种实现方式;还可以将该音频数据存储在本地后,再向第一服务器发送该音频数据,也即以下第三种实现方式。
在第一种可能的实现方式中,终端将该音频数据存储到该第一应用程序的存储空间中。相应的,终端在运行第一应用程序时,为第一应用程序分配存储空间,终端在采集到音频数据后,将该音频数据通过数据传输接口存储在该第一应用程序中的存储空间中。通过将数据存储在本地,使得用户在调用该音频数据时,可以不通过网络连接调用该音频数据,终端在不连接网络的情况下,也可以调用该音频数据,提高了音频数据的通用性。
在第二种可能的实现方式中,终端将该音频数据发送给第一服务器,该服务器为所述第一应用程序的服务器。第一应用程序拦截到该音频数据后,直接将该音频数据发送给第一服务器,第一服务器接收该音频数据,将该音频数据存储在第一服务器中。通过将该音频数据存储在第一服务器中,在操作系统中的应用程序调用该音频数据时,可以通过第一服务器调用该音频数据,使操作系统与第一应用程序更加独立,防止第一应用程序中的程序对操作系统造成影响,进一步提高了操作系统的安全性。
在第三种可能的实现方式中,终端将该音频数据存储到该第一应用程序的存储空间,向第一服务器发送拦截到的音频数据,第一服务器接收该音频数据,将该音频数据存储在第一服务器中。通过将音频数据存储到本地和第一服务器中,可以有效的防止音频数据丢失。
在本发明实施例中,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
进一步的,由于通过挂钩服务拦截音频数据时,是在系统内部对音频数据进行拦截,因此能够在不获取操作系统的最大权限的同时,实现声音内录。并且采集到的音频数据为系统内部的音频数据,因此降低了采集到的音频数据的外界的噪音,提高了所采集的音频数据的纯净度。
上述实施例内容是终端通过第一应用程序中的挂钩服务采集音频数据的过程,而终端在完成音频数据的采集后,可以对采集到的音频进行进一步地处理和利用,例如,对采集到的音频数据进行识别,得到识别结果。
本发明实施例中,以通过第三应用程序对该音频数据进行识别为例进行说明,参见图3,图3是本发明实施例提供的一种音频数据的识别方法的流程图。该方法包括:
301、终端在该操作系统中运行第三应用程序,该第三应用程序用于音频识别。
其中,第三应用程序为具有音频识别功能的应用程序,该音频识别功能可以为识别该音频数据对应的歌曲、识别说该音频的用户的性别或识别该音频数据对应的文字等功能。该第三应用程序可以与第二应用程序相同,也可以与第二应用程序不同,在本发明实施例中对此不作具体限定。
需要说明的一点是,终端可以在运行第一应用程序的同时运行该第三应用程序,也可以在第一应用程序获得该音频数据之后再运行该第三应用程序,在本发明实施例中对第一应用程序和第三应用程序的运行顺序不作具体限定。相应的,当该第一应用程序与第三应用程序同时运行时,第一应用程序可以将截取到的音频数据发送至第三应用程序的存储空间,由该第三应用程序直接对该音频数据进行识别,或者,当该第三应用程序在第一应用程序截取到音频数据,并对该音频数据进行存储之后才运行时,终端通过该第三应用程序从第一应用程序的存储空间或第一服务器中调用该音频数据,对该音频数据进行识别。
在一种可能的实现方式中,第三应用程序对比采集的音频数据与终端中存储的音频数据库中的音频数据的音调、音色等声音特征,通过该音频数据的声音特征,确定该音频数据对应的识别结果。
在另一种可能的实现方式中,第三应用程序通过对比该音频数据的音频指纹与音频数据库中音频数据的音频指纹对该音频数据进行识别,其中,音频指纹为通过算法提取出来的一段音频数据的独一无二的标识符,通过该音频指纹可以确定该音频数据的识别结果,该过程可以通过以下步骤302-304实现。
302、终端将该音频数据转换为音频指纹。
在本步骤中,终端可以直接将该音频数据转换为音频指纹,也可以将该音频数据发送给第三服务器,由第三服务器将该音频数据转换为音频指纹。其中,该第三服务器可以与第二服务器相同也可以不同,在本发明实施例中对此不作具体限定。
303、终端通过该第三应用程序识别该音频指纹。
在本步骤中,终端可以直接通过第三应用程序对该音频指纹进行识别,也可以将该音频指纹发送给第二服务器进行识别,在本发明实施例中,对此不作具体限定。当终端直接通过该第三应用程序对该音频数据进行识别时,终端中存储音频指纹库与识别结果的对应关系,终端通过该音频指纹与音频指纹库中的音频数据进行对比,得到该音频指纹对应的识别结果。当终端通过第二服务器对该音频指纹进行识别时,第二服务器中存储音频指纹库与识别结果的对应关系,第二服务器通过该音频指纹与音频指纹库中的音频数据进行对比,得到该音频指纹对应的识别结果,将该识别结果发送给终端。
需要说明的一点是,当第三服务器与第二服务器为相同的服务器时,当第三服务器完成对音频数据的转换后,可以直接对该音频数据进行识别。
304、终端获取与该音频指纹匹配的识别结果。
该音频识别功能可以为识别该音频数据对应的歌曲、识别说该音频的用户的性别或识别该音频数据对应的文字等功能。则本步骤中得到的识别结果可以为歌曲名称、歌曲版本、用户的性别或音频数据中的文字内容中的至少一项。例如,对一段音乐数据进行识别时,可以得到歌曲的名称、演唱者姓名、歌词等信息。
需要说明的一点是,终端在接收到该识别结果后,可以将该识别结果进行显示,该显示方式可以为通过图片的形式显示或通过文字的形式显示,在本发明实施例中对该识别结果的显示方式不作具体限定。
本发明实施例,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
在采集到音频数据之后,终端可以通过在操作系统中运行的第三应用程序,对该音频数据进行识别,解决了在插入耳机时终端无法对音频数据进行识别的问题,并且,由于第一应用程序采集到的音频数据为系统内部的音频数据,因此采集的音频数据的噪音较小,提高了音频识别的准确性。
并且,通过将音频数据转换为音频指纹,根据该音频数据的音频指纹对该音频数据进行识别,进一步提高了音频识别的准确性。
通过步骤206可知,终端对采集到的音频数据进行存储时,将该音频数据存储在本地第一应用程序的存储空间中或将该音频数据存储到第一服务器中,因此,第三服务器获取该音频数据的过程可以为在第一应用程序的存储空间中获取该音频数据或通过第一服务器获取该音频。
在本发明实施例中,以通过在第一应用程序的存储空间中获取该音频数据为例进行说明,参见图4,图4是本发明实施例提供的一种音频数据的识别方法的流程图。该方法包括:
401、终端在该操作系统中运行第三应用程序,该第三应用程序用于音频识别。
本步骤与步骤301相同,在此不再赘述。
402、终端通过该第三应用程序从该第一应用程序的存储空间中获取该音频数据。
在一种可能的实现方式中,终端通过该第三应用程序扫描该操作系统中的音频数据,选取扫描到的音频数据中第一应用程序下的待识别的音频数据,通过后台数据传输接口将该音频数据调用至第三应用程序下。通过扫描终端中存储的音频数据,使得第三应用程序可以得到当前存储的所有音频数据。
在另一种可能的方式中,第三应用程序下存储第一应用程序的存储地址,当对音频数据进行识别时,通过该存储地址从第一应用程序的存储空间中获取该音频数据。通过根据第一应用程序的存储地址,直接从第一应用程序的存储空间中调用该音频数据,使得第三应用程序可以快速得到待识别的音频数据。
需要说明的一点是,终端在从第一应用程序的存储空间中获取了该音频数据之后可以直接通过该第三应用程序对该音频数据进行识别。或者,终端可以通过该第三应用程序将该音频数据发送给第二服务器,由第二服务器对该音频数据进行识别,该过程可以通过以下步骤403-404得到识别结果。
403、终端将该音频数据发送给第二服务器,该第二服务器用于识别该音频数据。
在一种可能的实现方式中,终端可以直接将该音频数据发送给第二服务器,相应的,第二服务器中存储音频数据与识别结果的对应关系,第二服务器通过对比音频数据的音调、音色等特性确定该音频数据对应的识别结果。
在另一种可能的实现方式中,终端也可以将该音频数据转换为音频指纹后,将该音频指纹发送给第二服务器,相应的该第二服务器通过该音频指纹对该音频数据进行识别,该过程与步骤302-303中通过第二服务器识别该音频数据的过程相似,在此不再赘述。
404、终端接收该识别结果。
第二服务器将该识别结果发送给终端,终端显示该识别结果,本步骤与步骤304相似,在此不再赘述。
本发明实施例,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
在操作系统中运行第三应用程序,通过该第三应用程序从第一应用程序的存储空间中获取音频数据,通过该第三应用程序对该音频数据进行识别,解决了在插入耳机时终端无法对音频数据进行识别的问题,并且,由于第一应用程序采集到的音频数据为系统内部的音频数据,因此采集的音频数据的噪音较小,提高了音频识别的准确性。
并且,通过将音频数据转换为音频指纹,根据该音频数据的音频指纹对该音频数据进行识别,进一步提高了音频识别的准确性。
通过步骤206可知,终端对采集到的音频数据进行存储时,将该音频数据存储在本地第一应用程序的存储空间中或将该音频数据存储到第一服务器中,因此,第三服务器获取该音频数据的过程可以为在第一应用程序的存储空间中获取该音频数据或通过第一服务器获取该音频。
当第一应用程序将音频数据发送给第一服务器进行存储时,终端可以从该第一服务器中获取该音频数据,该过程可以为:终端向该第一服务器发送获取请求,该获取请求中携带终端的终端标识和音频数据的标识;第一服务器接收该获取请求,通过该第一获取请求确定音频数据,根据该终端标识向该终端发送该音频数据;终端接收服务器发送的音频数据,之后终端对该音频数据进行识别,得到识别结果,相应的终端可以直接对获取的音频数据进行识别,也可以将该音频数据发送给第二服务器,由第二服务器对该音频数据进行识别,其中,该通过第二服务器对该音频数据进行识别过程与上述步骤403-404中,终端通过第二服务器识别音频数据的步骤相似,在此不再赘述。
在另一种可能的实现方式中,终端可以向第一服务器发送调用请求,通过第一服务器向第二服务器发送采集到的音频数据,进而进行音频识别。在本实施例中,以通过第一服务器向第二服务器发送采集到的音频数据,进而进行音频识别为例进行说明,参见图5,图5是本发明实施例提供的一种音频数据的识别方法的流程图。该方法包括:
501、终端在该操作系统中运行第三应用程序,该第三应用程序用于音频识别。
本步骤与步骤301相同,在此不再赘述。
502、终端通过该第三应用程序向该第一服务器发送调用请求,该调用请求携带该音频数据的标识和第二服务器的服务器标识,该第二服务器用于识别该音频数据。
终端向第一服务器发送调用请求,该调用请求中除携带音频数据的标识和第二服务器的服务器标识之外,还携带终端的终端标识。第一服务器接收该调用请求,通过该调用请求中的音频数据的标识确定需要发送的音频数据,根据该第二服务器的标识将该音频数据和终端的终端标识发送给第二服务器,第二服务器接收该音频数据,对该音频数据进行识别。其中,第二服务器对音频数据进行识别的过程与步骤403相同,在此不再赘述。
503、终端接收该识别结果。
本步骤与步骤404相同,在此不再赘述。
本发明实施例,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
在操作系统中运行第三应用程序,通过该第三应用程序从第一服务器中获取音频数据,通过该第三应用程序对该音频数据进行识别,解决了在插入耳机时终端无法对音频数据进行识别的问题,并且,由于第一应用程序采集到的音频数据为系统内部的音频数据,因此采集的音频数据的噪音较小,提高了音频识别的准确性。
并且,通过将音频数据转换为音频指纹,根据该音频数据的音频指纹对该音频数据进行识别,进一步提高了音频识别的准确性。
更进一步的,通过第一服务器与第二服务器进行直接交互,减少终端在识别过程中的作用,进一步提高了终端操作系统的安全性。
图6是本发明实施例提供的一种音频数据采集装置的结构示意图,参见图6,该装置包括:
第一运行模块601,用于在操作系统中运行第一应用程序,第一应用程序中添加有挂钩服务,第一应用程序用于提供应用程序的运行环境;
第二运行模块602,用于在第一应用程序中运行第二应用程序,第二应用程序具有音频功能;
获取模块603,用于通过第二应用程序获取音频数据;
采集模块604,用于通过第一应用程序中的挂钩服务采集音频数据,对音频数据进行存储。
可选地,采集模块604,包括:
调用单元,用于通过挂钩服务调用第一应用程序中的目标应用程序编程接口API函数,目标API函数具有修改第二应用程序的输出地址的功能;
采集单元,用于通过目标API函数修改第二应用程序的输出地址,采集音频数据。
可选地,采集模块604,用于执行以下至少一项:
将音频数据存储到第一应用程序的存储空间中;
将音频数据发送给第一服务器,服务器为第一应用程序的服务器。
可选地,装置还包括:
第三运行模块,用于在操作系统中运行第三应用程序,第三应用程序用于音频识别;
识别模块,用于通过第三应用程序识别音频数据,得到识别结果。
可选地,识别模块,包括:
第一获取单元,用于通过第三应用程序从第一应用程序的存储空间中获取音频数据;
第一发送单元,用于将音频数据发送给第二服务器,第二服务器用于识别音频数据;
接收单元,用于接收识别结果。
可选地,识别模块,还包括:
第二发送单元,用于通过第三应用程序向第一服务器发送调用请求,调用请求携带音频数据的标识和第二服务器的服务器标识,第二服务器用于识别音频数据;
接收单元,还用于接收识别结果。
可选地,识别模块,还包括:
转换单元,用于将音频数据转换为音频指纹;
识别单元,用于通过第三应用程序识别音频指纹;
第二获取单元,用于获取与音频指纹匹配的识别结果。
本发明实施例提供的装置,通过在第一应用程序中添加音频数据的挂钩服务,在第一应用程序中运行第二应用程序,第二应用程序在第一应用程序中传输音频数据,通过第一应用程序中的挂钩服务,拦截音频数据,并对拦截到的音频数据进行存储,使得终端在不获取操作系统的最大权限时也可以使用挂钩服务拦截音频数据,进而提高了系统的安全性。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的音频数据采集装置在对音频数据进行采集时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将分类装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的音频数据采集装置与音频数据采集方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本发明实施例提供的一种终端的结构示意图。该终端700可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts GroupAudio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑、台式电脑、头戴式设备,或其他任意智能终端。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理的交互器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所具有以实现本申请中方法实施例提供的音频数据采集方法。
在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707、定位组件708和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及8G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
定位组件708用于定位终端700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或触摸显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在触摸显示屏705的下层时,由处理器701根据用户对触摸显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户具有相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商标志集成在一起。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本发明实施例还提供了一种终端,该终端包括处理器和存储器,存储器中存储有至少一条指令,该指令由处理器加载并执行以实现上述实施例的音频数据采集方法中所执行的操作。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条指令,该指令由处理器加载并执行以实现上述实施例的音频数据采集方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种音频数据采集方法,其特征在于,所述方法包括:
在操作系统中运行第一应用程序,所述第一应用程序中添加有挂钩服务,所述第一应用程序用于提供应用程序的运行环境;
在所述第一应用程序中运行第二应用程序,所述第二应用程序具有音频功能;
通过所述第二应用程序获取音频数据;
通过所述第一应用程序中的挂钩服务采集所述音频数据,对所述音频数据进行存储。
2.根据权利要求1所述的方法,其特征在于,所述通过所述挂钩服务采集所述音频数据,包括:
通过所述挂钩服务调用所述第一应用程序中的目标应用程序编程接口API函数,所述目标API函数具有修改所述第二应用程序的输出地址的功能;
通过所述目标API函数修改所述第二应用程序的输出地址,采集所述音频数据。
3.根据权利要求1所述的方法,其特征在于,所述对所述音频数据进行存储包括下述任一种方式或两种方式的组合:
将所述音频数据存储到所述第一应用程序的存储空间中;
将所述音频数据发送给第一服务器,所述服务器为所述第一应用程序的服务器。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述对所述音频数据进行存储之后,所述方法还包括:
在所述操作系统中运行第三应用程序,所述第三应用程序用于音频识别;
通过所述第三应用程序识别所述音频数据,得到识别结果。
5.根据权利要求4所述的方法,其特征在于,所述通过所述第三应用程序识别所述音频数据,得到识别结果,包括:
通过所述第三应用程序从所述第一应用程序的存储空间中获取所述音频数据;
将所述音频数据发送给第二服务器,所述第二服务器用于识别所述音频数据;
接收所述识别结果。
6.根据权利要求4所述的方法,其特征在于,所述通过所述第三应用程序识别所述音频数据,获得识别结果,还包括:
通过所述第三应用程序向所述第一服务器发送调用请求,所述调用请求携带所述音频数据的标识和第二服务器的服务器标识,所述第二服务器用于识别所述音频数据;
接收所述识别结果。
7.根据权利要求4所述的方法,其特征在于,所述通过所述第三应用程序识别所述音频数据,获得识别结果,还包括:
将所述音频数据转换为音频指纹;
通过所述第三应用程序识别所述音频指纹;
获取与所述音频指纹匹配的识别结果。
8.一种音频数据采集装置,其特征在于,所述装置包括:
第一运行模块,用于在操作系统中运行第一应用程序,所述第一应用程序中添加有挂钩服务,所述第一应用程序用于提供应用程序的运行环境;
第二运行模块,用于在所述第一应用程序中运行第二应用程序,所述第二应用程序具有音频功能;
获取模块,用于通过所述第二应用程序获取音频数据;
采集模块,用于通过所述第一应用程序中的挂钩服务采集所述音频数据,对所述音频数据进行存储。
9.根据权利要求8所述的装置,其特征在于,所述采集模块,包括:
调用单元,用于通过所述挂钩服务调用所述第一应用程序中的目标应用程序编程接口API函数,所述目标API函数具有修改所述第二应用程序的输出地址的功能;
采集单元,用于通过所述目标API函数修改所述第二应用程序的输出地址,采集所述音频数据。
10.根据权利要求8所述的装置,其特征在于,所述采集模块,用于执行以下至少一项:
将所述音频数据存储到所述第一应用程序的存储空间中;
将所述音频数据发送给第一服务器,所述服务器为所述第一应用程序的服务器。
11.根据权利要求8-10任一项所述的装置,其特征在于,所述装置还包括:
第三运行模块,用于在所述操作系统中运行第三应用程序,所述第三应用程序用于音频识别;
识别模块,用于通过所述第三应用程序识别所述音频数据,得到识别结果。
12.根据权利要求11所述的装置,其特征在于,所述识别模块,包括:
第一获取单元,用于通过所述第三应用程序从所述第一应用程序的存储空间中获取所述音频数据;
第一发送单元,用于将所述音频数据发送给第二服务器,所述第二服务器用于识别所述音频数据;
接收单元,用于接收所述识别结果。
13.根据权利要求11所述的装置,其特征在于,所述识别模块,还包括:
第二发送单元,用于通过所述第三应用程序向所述第一服务器发送调用请求,所述调用请求携带所述音频数据的标识和第二服务器的服务器标识,所述第二服务器用于识别所述音频数据;
所述接收单元,还用于接收所述识别结果。
14.根据权利要求11所述的装置,其特征在于,所述识别模块,还包括:
转换单元,用于将所述音频数据转换为音频指纹;
识别单元,用于通过所述第三应用程序识别所述音频指纹;
第二获取单元,用于获取与所述音频指纹匹配的识别结果。
15.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至7任一权利要求所述的音频数据采集方法中所执行的操作。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至7任一权利要求所述的音频数据采集方法中所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910165152.XA CN109858237A (zh) | 2019-03-05 | 2019-03-05 | 音频数据采集方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910165152.XA CN109858237A (zh) | 2019-03-05 | 2019-03-05 | 音频数据采集方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109858237A true CN109858237A (zh) | 2019-06-07 |
Family
ID=66899727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910165152.XA Pending CN109858237A (zh) | 2019-03-05 | 2019-03-05 | 音频数据采集方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109858237A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110618806A (zh) * | 2019-09-23 | 2019-12-27 | 北京达佳互联信息技术有限公司 | 一种应用程序控制方法、装置、电子设备及存储介质 |
CN111768782A (zh) * | 2020-06-30 | 2020-10-13 | 广州酷狗计算机科技有限公司 | 音频识别方法、装置、终端及存储介质 |
CN114390300A (zh) * | 2020-10-20 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 一种直播控制方法、装置、电子设备及计算机存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103701854A (zh) * | 2013-11-29 | 2014-04-02 | 深圳清华大学研究院 | 基于应用虚拟化的网络实时音频传输方法 |
US20140343704A1 (en) * | 2013-04-28 | 2014-11-20 | Tencent Technology (Shenzhen) Company Limited | Systems and Methods for Program Identification |
CN105430494A (zh) * | 2015-12-02 | 2016-03-23 | 百度在线网络技术(北京)有限公司 | 在播放视频的设备中识别视频中音频的方法和装置 |
CN106331733A (zh) * | 2016-09-28 | 2017-01-11 | 广东科学技术职业学院 | 一种桌面云终端音视频数据实时处理方法及系统 |
CN106776977A (zh) * | 2016-12-06 | 2017-05-31 | 深圳前海勇艺达机器人有限公司 | 搜索音乐的方法及装置 |
CN108008930A (zh) * | 2017-11-30 | 2018-05-08 | 广州酷狗计算机科技有限公司 | 确定k歌分值的方法和装置 |
CN109101166A (zh) * | 2018-08-30 | 2018-12-28 | 广州酷狗计算机科技有限公司 | 音频控制方法、装置及存储介质 |
-
2019
- 2019-03-05 CN CN201910165152.XA patent/CN109858237A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140343704A1 (en) * | 2013-04-28 | 2014-11-20 | Tencent Technology (Shenzhen) Company Limited | Systems and Methods for Program Identification |
CN103701854A (zh) * | 2013-11-29 | 2014-04-02 | 深圳清华大学研究院 | 基于应用虚拟化的网络实时音频传输方法 |
CN105430494A (zh) * | 2015-12-02 | 2016-03-23 | 百度在线网络技术(北京)有限公司 | 在播放视频的设备中识别视频中音频的方法和装置 |
CN106331733A (zh) * | 2016-09-28 | 2017-01-11 | 广东科学技术职业学院 | 一种桌面云终端音视频数据实时处理方法及系统 |
CN106776977A (zh) * | 2016-12-06 | 2017-05-31 | 深圳前海勇艺达机器人有限公司 | 搜索音乐的方法及装置 |
CN108008930A (zh) * | 2017-11-30 | 2018-05-08 | 广州酷狗计算机科技有限公司 | 确定k歌分值的方法和装置 |
CN109101166A (zh) * | 2018-08-30 | 2018-12-28 | 广州酷狗计算机科技有限公司 | 音频控制方法、装置及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110618806A (zh) * | 2019-09-23 | 2019-12-27 | 北京达佳互联信息技术有限公司 | 一种应用程序控制方法、装置、电子设备及存储介质 |
CN110618806B (zh) * | 2019-09-23 | 2024-02-13 | 北京达佳互联信息技术有限公司 | 一种应用程序控制方法、装置、电子设备及存储介质 |
CN111768782A (zh) * | 2020-06-30 | 2020-10-13 | 广州酷狗计算机科技有限公司 | 音频识别方法、装置、终端及存储介质 |
CN114390300A (zh) * | 2020-10-20 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 一种直播控制方法、装置、电子设备及计算机存储介质 |
CN114390300B (zh) * | 2020-10-20 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 一种直播控制方法、装置、电子设备及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502308A (zh) | 页面样式切换方法、装置、计算机设备及存储介质 | |
CN109302385A (zh) | 多媒体资源分享方法、装置及存储介质 | |
CN111340482B (zh) | 冲突检测方法、装置、节点设备及存储介质 | |
CN109618212A (zh) | 信息显示方法、装置、终端及存储介质 | |
CN110166890A (zh) | 音频的播放采集方法、设备及存储介质 | |
CN113542290B (zh) | 数据访问请求的处理方法、装置、设备及可读存储介质 | |
CN111339086A (zh) | 区块处理方法、基于区块链的数据查询方法及装置 | |
CN109858237A (zh) | 音频数据采集方法、装置、终端及存储介质 | |
CN108897597A (zh) | 指导配置直播模板的方法和装置 | |
CN110213153A (zh) | 未读消息的显示方法、获取方法、装置、终端及存储介质 | |
CN109068008A (zh) | 铃声设置方法、装置、终端及存储介质 | |
CN109684278A (zh) | 文件获取方法、装置、终端及存储介质 | |
CN108900925A (zh) | 设置直播模板的方法和装置 | |
CN109522146A (zh) | 对客户端进行异常测试的方法、装置及存储介质 | |
CN108806670B (zh) | 语音识别方法、装置及存储介质 | |
CN110266982A (zh) | 在录制视频时提供歌曲的方法和系统 | |
CN109800003A (zh) | 应用下载方法、装置、终端及存储介质 | |
CN110058935A (zh) | 日志级别调整方法、装置及系统、可读存储介质 | |
CN109828915A (zh) | 一种调试应用程序的方法、装置、设备和存储介质 | |
CN110401898A (zh) | 输出音频数据的方法、装置、设备和存储介质 | |
CN109218751A (zh) | 推荐音频的方法、装置及系统 | |
CN108848492A (zh) | 用户身份识别卡的启用方法、装置、终端及存储介质 | |
CN110752929B (zh) | 应用程序的处理方法及相关产品 | |
CN110099360A (zh) | 语音消息处理方法及装置 | |
CN111132047A (zh) | 网络连接方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190607 |
|
RJ01 | Rejection of invention patent application after publication |