CN111736795A - 音频处理方法、装置、设备和存储介质 - Google Patents

音频处理方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN111736795A
CN111736795A CN201910549610.XA CN201910549610A CN111736795A CN 111736795 A CN111736795 A CN 111736795A CN 201910549610 A CN201910549610 A CN 201910549610A CN 111736795 A CN111736795 A CN 111736795A
Authority
CN
China
Prior art keywords
parameter
audio
target
function
audio processing
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
Application number
CN201910549610.XA
Other languages
English (en)
Inventor
赵宇
李廷昌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201910549610.XA priority Critical patent/CN111736795A/zh
Publication of CN111736795A publication Critical patent/CN111736795A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本发明实施例公开了一种音频处理方法、装置、设备和存储介质。该方法包括:依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;依据当前设备的硬件参数和/或软件参数确定所述调用参数对应的预设参数参照范围,并依据所述预设参数参照范围调整所述调用参数生成目标参数,所述目标参数位于所述预设参数参照范围内;依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理。通过上述技术方案,实现了更加高效地进行音频处理。

Description

音频处理方法、装置、设备和存储介质
技术领域
本发明实施例涉及计算机技术,尤其涉及一种音频处理方法、装置、设备和存储介质。
背景技术
目前,大多数智能终端都具备音频处理功能,例如音频录制、音频播放、音频与文字转换及音频识别等。这些音频数据处理功能通常是基于智能终端搭载的开发平台(如Android平台或IOS平台)所提供的基础的应用程序编程接口(Application ProgrammingInterface,API)来实现的,这里基础API是指音频录制和音频播放两种基本的音频处理功能对应的API。例如开发人员通过音频录制的录制相关API的调用来实现音频录制环节的各个录制功能,又如开发人员通过音频播放的播放相关API的调用来实现音频播放环节的各个播放功能。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:现有的基础API种类较多,例如开发平台官方提供的不同版本的基础API及第三方开发者提供的多种基础API等,且各种基础API之间的API调用参数多有不同。另外,不同厂商推出的终端设备所适配的基础API不一致。这就使得在实现音频数据处理功能时,极可能出现基础API调用不恰当或调用错误,从而导致音频数据处理功能的运行效率低,运行结果出错,甚至部分功能无法实现等问题。
发明内容
本发明实施例提供一种音频处理方法、装置、设备和存储介质,以实现更加高效地进行音频处理。
第一方面,本发明实施例提供了一种音频处理方法,包括:
依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
依据当前设备的硬件参数和/或软件参数确定所述调用参数对应的预设参数参照范围,并依据所述预设参数参照范围调整所述调用参数生成目标参数,所述目标参数位于所述预设参数参照范围内;
依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理。
第二方面,本发明实施例还提供了一种音频处理装置,该装置包括:
调用参数确定模块,用于依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
目标参数生成模块,用于依据当前目标设备的设备型号硬件参数和/或软件参数系统版本号确定所述调用参数对应的预设参数参照范围,并依据所述预设参数参照范围调整所述调用参数生成目标参数,所述目标参数位于所述预设参数参照范围内;
音频处理模块,用于依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理。
第三方面,本发明实施例还提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的音频处理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的音频处理方法。
本发明实施例通过当前设备的硬件参数和/或软件参数,确定用户触发的音频处理功能对应的音频处理系统函数的调用参数对应的预设参数参照范围,实现了最适合于当前设备的音频处理功能对应的调用参数的参数参照范围的确定,为后续调用参数的调整和音频处理功能的正常运行提供基础。通过依据预设参数参照范围调整调用参数生成目标参数,以使目标参数位于预设参数参照范围内,实现了音频处理过程中函数调用参数的兼容性调整,使得音频处理系统函数能够以最适合于当前设备的状态运行,从而提高音频处理功能的参数兼容性及运行效率。
附图说明
图1是本发明实施例一中的一种音频处理方法的流程图;
图2a是本发明实施例二中的一种音频处理方法的流程图;
图2b是本发明实施例二中的一种音频处理方法的逻辑框架图;
图3是本发明实施例三中的一种音频处理方法的流程图;
图4a是本发明实施例四中的一种音频处理方法的整体逻辑框架图;
图4b是本发明实施例四中的一种含音频处理扩展功能的音频录制功能的实现流程图;
图4c是本发明实施例四中的一种含音频处理扩展功能的音频播放功能的实现流程图;
图5是本发明实施例五中的一种音频处理装置的结构示意图;
图6是本发明实施例六中的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
本实施例提供的音频处理方法可适用于录制音频、播放音频和音频识别等音频处理场景。该方法可以由音频处理装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在具有音频处理功能的设备中,例如手机、平板电脑、台式电脑或智能家电等。参见图1,本实施例的方法具体包括如下步骤:
S110、依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数。
其中,功能标识是指音频处理装置中对于音频处理的各个功能的标识,例如可以是承载功能触发的控件名称、控件编码或功能编码等。目标功能标识是用户触发的音频处理功能的功能标识,例如用户在设备界面上点击了“开始录音”按钮,那么“开始录音”便为用户触发的音频处理功能,称为目标功能,那么音频处理装置内部对“开始录音”功能设置的功能标识便为目标功能标识。音频处理系统函数是设备所搭载的运行系统提供的音频处理相关函数,其对应于音频数据的原生处理功能(系统自带的音频处理功能),例如可以是音频录制系统函数和音频播放系统函数等。
由于现有的基础API种类繁多,而不同设备适配的基础API不一致,所以开发人员在开发相关音频处理应用程序时,便需要花费大量的精力和时间去挑选或者修改现有的基础API,例如开发人员需要从各个基础API中确定出API的调用参数与当前设备的硬软件信息均兼容的基础API。这个过程繁琐且耗时,极容易导致基础API调用不恰当或调用错误。因此,本发明实施例提供了API调用过程中的调用参数兼容性调整操作,以便将确定的调用参数调整至与当前设备的硬软件信息兼容。
具体实施时,音频处理装置在监测到用户的触发操作时,确定用户触发的目标功能,并确定该目标功能的目标功能标识。进而可以根据该目标功能标识来确定执行目标功能的音频处理系统函数的函数输入参数(即调用参数),例如麦克风、采样率、声道、分贝和编码制式等。
上述调用参数可以是由开发人员预先设置,如开发人员开发基础API时直接设定的函数输入参数;也可以是系统默认值。具体实施时,在确定了音频处理系统函数时,便检测是否存在预先设置的函数输入参数。若存在,则将检测到的函数输入参数确定为调用参数;若不存在,则将系统默认参数作为调用参数。
S120、依据当前设备的硬件参数和/或软件参数确定调用参数对应的预设参数参照范围,并依据预设参数参照范围调整调用参数生成目标参数。
其中,硬件参数是指设备的硬件信息,例如设备型号、以及设备配置的麦克风和播放器等配置硬件的信息。软件信息是指设备所搭载的运行系统的信息,如系统类型和系统版本号等。预设参数参照范围是指预先设定的各个调用参数的参数值的参照范围,其是当前设备执行音频处理功能所依赖的各个参数的最佳参数范围。目标参数是与当前设备兼容的各个参数的参数值,其位于预设参数参照范围内。
不同的终端设备因其硬件设计和/或搭载的运行系统的差异,使得不同终端设备对音频处理的参数设置多有不同,例如搭载Android系统的各种终端设备中,大多数的采样率设置在常用的44100hz,但是三星品牌对应的终端设备的采样率设置在8000hz;又如有些终端设备的分贝数据范围为0-100,而有些终端设备的分贝数据范围设置为0-1等。所以,音频处理装置可以根据当前设备的硬件参数和/或软件参数来确定出最适合于该当前设备的音频处理功能的预设参数参照范围。该预设参数参照范围可以是以参数变量的形式固化在程序中,这样便可根据硬件参数和/或软件参数从程序中查找调用参数对应的变量值,从而获得调用参数的预设参数参照范围;也可以是以列表或键值对数据结构等形式存储在存储空间中,这样便可以硬件参数和/或软件参数为查找关键词来访问相应的存储空间,从而获得调用参数的预设参数参照范围。
之后,可以通过对比调用参数与预设参数参照范围,便可确定出需要调整的调用参数,并进一步根据预设参数调整规则将相应调用参数的参数值调整至预设参数参照范围内,生成与当前设备的硬软件信息兼容的目标参数。应当理解的是,如果调用参数不需调整,即调用参数处于预设参数参照范围内,那么可直接将调用参数确定为目标参数。这里预设参数调整规则是预先设定的参数调整规则,只要能够将参数值调整至预设参数参照范围即可。
S130、依据目标参数,调用音频处理系统函数,以实现对音频的处理。
音频处理系统函数的参数进行上述兼容性调整之后,音频处理装置便可以目标参数为函数输入参数,调用相应的音频处理系统函数来实现相应的音频处理功能。在音频处理过程中,需要设置一个回调函数,以便返回音频处理结果(如录制好的音频)或者音频处理过程中的各种状态信息(如音频处理功能因其他功能的启动而导致的中断或暂停等异常信息),以呈现至用户界面。
本实施例的技术方案,通过当前设备的硬件参数和/或软件参数,确定用户触发的音频处理功能对应的音频处理系统函数的调用参数对应的预设参数参照范围,实现了最适合于当前设备的音频处理功能对应的调用参数的参数参照范围的确定,为后续调用参数的调整和音频处理功能的正常运行提供基础。通过依据预设参数参照范围调整调用参数生成目标参数,以使目标参数位于预设参数参照范围内,实现了音频处理过程中函数调用参数的兼容性调整,使得音频处理系统函数能够以最适合于当前设备的状态运行,从而提高音频处理功能的参数兼容性及运行效率。
以上述技术方案为基础,在确定目标功能对应的音频处理系统函数的调用参数之后,还包括:依据目标功能标识确定目标功能对应的调用接口;以调用参数为输入参数,调用上述调用接口,以触发调用参数的调整。
上述调用参数的兼容处理可以与现有的基础API调用融合处理,例如调用现有的基础API之前调整参数,也可以将其添加至现有的基础API执行过程中。不过,为了进一步提高音频处理功能的实现效率及进一步减少开发人员在音频处理开发中的工作量,本发明实施例中进一步提供了新的基础API(简称为改进音频API)供开发人员调用,该改进音频API将上述参数兼容处理及现有的基础API调用进行封装,开发人员仅需要面向改进音频API即可,不需要进行API内部逻辑的筛选及处理,很大程度上提高开发人员的开发效率。当新增硬件参数和/或软件参数不同的终端设备或新增基础API(如现有基础API的升级)时,只需要修改改进音频API中参数兼容处理部分的相关内容,面向开发人员的改进音频API不变。
具体实施时,在确定调用参数之后,音频处理装置便根据目标功能标识来确定目标功能对应的调用接口,即改进音频API中与目标功能对应的API,并以调用参数为输入参数,调用该调用接口,以触发执行调用接口的内部操作,即触发执行调用接口中封装的调用参数兼容性调整操作。
实施例二
本实施例在上述实施例一的基础上,对“依据当前设备的硬件参数和/或软件参数确定调用参数对应的预设参数参照范围”进行了进一步优化。在此基础上,还可以进一步对“依据预设参数参照范围调整调用参数生成目标参数”进行优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。参见图2a,本实施例提供的音频处理方法包括:
S210、依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数。
S220、依据当前设备的设备型号和系统版本号从预先建立的预设参数参照表中确定调整参数对应的预设参数参照范围。
本实施例中将预设参数参照范围以列表的形式存储在存储空间中,这样便于后续快速修改已有的预设参数参照范围及增加新的设备信息及其对应的预设参数参照范围,且程序的可维护性高。另外,列表的访问速度快,一定程度上能够提高预设参数参照范围的获取效率。预设参数参照表中包含设备型号、系统版本号和至少一个参数的参照范围。
具体实施时,音频处理装置根据获得的当前设备的设备型号和系统版本号,从预设参数参照表中查找相应的表记录,并从该表记录中获取与调用参数对应的预设参数参照范围。
S230、分别判断调用参数中的每个参数的参数值是否与预设参数参照范围中的相应参数范围一致。
音频处理装置将调用参数中的每个参数的参数值与预设参数参照范围中相应参数的参数范围进行比较,以判断该参数是否为需要调整的调用参数。如果参数值比较结果一致,那么该参数的参数值处于预设参数参照范围内,其不需要调整,执行S240;如果参数比较结果不一致,则该参数的参数值与当前设备的硬软件信息不兼容,不适合直接用于音频处理,则执行S250。
S240、将参数值作为参数对应的目标参数。
如果参数值不需要调整,那么可直接将该参数值确定为其对应参数的目标参数。
S250、依据预设参数调整规则和预设参数参照范围调整参数值,生成参数对应的目标参数。
在进行参数调整时,是基于预设参数调整规则将参数值调整至预设参数参照范围内。该预设参数调整规则可以为默认值设定规则,当参数需要调整时,将该参数的参数值直接设定为预设参数参照范围内的一个默认值,该默认值可以根据不同终端设备中的硬软件信息统计来确定,这样可以很大程度上提高参数兼容性调整效率。预设参数调整规则也可以是基于参数类型的动态调整规则,其可以根据调用参数的参数类型(如连续数值型或离散数值型)、参数值及预设参数参照范围来确定一个合适的数值。
示例性地,依据预设参数调整规则和预设参数参照范围调整参数,生成参数对应的目标参数包括:若参数为数值类型,则依据参数值与相应参数范围的两个边界值,生成参数值对应的调整值,作为参数对应的目标参数;若参数为枚举类型,则将预设参数参照范围中与参数对应的参照值作为参数对应的目标参数。
为了避免各个参数间的冲突,本实施例中将离散数值型的参数设计为枚举类型,那么连续数值型便可简称为数值类型。对于数值类型的参数,如采样率和分贝等,可以直接按照预设参数参照范围中相应参数的数据类型(整型或浮点型)、参照范围的两个边界值和调用参数中的参数值,进行按比例的数值调整,以生成该参数的调整值,作为该参数的目标参数。例如,对于声音分贝,如果参数值为整型123,而参照范围为浮点型0-1,那么就需要按123与0和100之间的比例确定出初步的调整值之后,再将其转换为浮点型数据,方可生成该声音分贝的最终调整值,即确定声音分贝的目标参数。对于枚举类型的参数,如声道、麦克风和编码制式等,则将参照范围中当前设备常用的枚举数值作为该参数的目标参数,例如麦克风参数的参数值为前置麦克风的枚举值,而参照范围中为当前设备常用的后置麦克风的枚举值,那么就直接将参照范围中的枚举值设置为该参数的目标参数。这样设置的好处在于,可以以动态方式确定目标参数,从而获得与当前设备的硬软件信息兼容性更好的目标参数。
S260、依据目标参数,调用音频处理系统函数,以实现对音频的处理。
参见图2b,以当前设备搭载Android系统为例,上述整个流程的逻辑框架为:首先,确定音频处理系统函数的调用参数作为参数兼容性调整的参数输入;然后,获取当前设备的设备型号和系统版本号,以进行机型与版本的判断,例如判断当前设备为华为、小米、三星、OPPO、魅族或默认机型;再然后,对输入的参数中的麦克风、采样率、编码制式、声音分贝和声道等进行参数兼容性调整,即麦克风的音频源处理、采样率处理、编码制式调整、声音分贝处理和声道设置等,进而获得目标参数(也可称为规范化参数);之后,可以目标参数为输入参数,通过调用相关基础API来调用Android底层的音频处理函数来实现音频的处理。
本实施例的技术方案,通过将预设参数参照范围以列表的形式存储在存储空间中,并依据当前设备的设备型号和系统版本号从预设参数参照表中确定调整参数对应的预设参数参照范围,能够一定程度上提高预设参数参照范围的获取效率,且提高后续修改已有的预设参数参照范围及增加新的设备信息及其对应的预设参数参照范围的效率,提高程序的可维护性。通过依据预设参数调整规则,尤其是区分参数类型的动态调整规则,以及预设参数参照范围调整参数值,生成参数对应的目标参数,能够获得数值更加精确、更加适合于当前设备的目标参数,进一步提高音频处理参数兼容性。
实施例三
本实施例在上述实施例一的基础上,对“依据目标参数,调用音频处理系统函数,以实现对音频的处理”进行了进一步优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。参见图3,本实施例提供的音频处理方法包括:
S310、依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数。
S320、依据当前设备的硬件参数和/或软件参数确定调用参数对应的预设参数参照范围,并依据预设参数参照范围调整调用参数生成目标参数。
S330、依据目标参数,调用目标功能对应的音频处理扩展函数和音频处理系统函数,以实现对音频的扩展处理和原生功能处理。
其中,音频处理扩展函数与音频处理系统函数对应,其不是系统提供的底层音频处理函数,而是开发人员自行增加的音频扩展功能的处理函数,例如音频格式转换的函数和音频加解密的函数等,这些函数可以是向开发人员提供扩展函数接口,以供开发人员自行进行具体的函数实现。并且音频处理扩展函数基于设计模式生成,以进一步提高其可扩展性。
随着业务的发展需求,可能需要在音频处理过程中增加新的处理功能,例如不同音频格式的转换、为了确保音频数据的安全性和私密性而设置音频加解密功能、或者音频识别和音频转文字等高级音频处理功能等。以音频格式为例,由于现有系统自带的音频处理系统函数所支持的音频编码制式有限,如脉冲编码调制(Pulse Code Modulation,PCM),故音频处理过程中的音频格式一般为PCM格式,其是一种无损音频格式,导致音频文件的数据量较大。但是随着技术的发展,用户需求不断变化,例如用户需要通过网络来传输音频,这时PCM格式的音频就显得有些臃肿,便需要在音频处理过程中增加新的音频格式的支持,例如增加wav压缩格式、spx数据格式或opus数据格式等具有数据量小的特点的音频格式。这时通常需要更改现有的音频处理代码结构,在更改过程中,容易造成代码层级结构混乱、代码臃肿及难以维护等问题。所以,本实施例中提供了扩展功能接口,以便开发人员在不更改原有代码结构的前提下,快速开发相应的扩展功能,进一步提高代码的可维护性。由于音频格式转换的扩展需求性更高,故本实施例所提供的语音库中以音频格式转换的扩展功能为例进行说明。
具体实施时,音频处理装置便以目标参数为输入参数,调用目标功能对应的音频处理扩展函数和音频处理系统函数,以便实现音频的原生功能处理及扩展功能处理。
由于诸如音频识别、音频转文字、实时音频文件流获取、音频转换、音频加解密等高级音频处理功能均是以音频录制和音频播放这2个基础服务为支撑,故本实施例中以音频录制、音频播放及音频格式转换为例进行音频处理的说明。示例性地,依据目标参数,调用目标功能对应的音频处理扩展函数和音频处理系统函数,以实现对音频的扩展处理和原生功能处理包括:
A、若目标功能为音频录制功能,则依据目标参数中的音频录制参数,调用音频处理系统函数中的音频录制系统函数,生成初始录制音频。
如果目标功能为音频录制功能,那么音频处理装置以目标参数中的音频录制参数为输入参数,调用音频处理系统函数中的音频录制系统函数,以生成音频录制文件,称为初始录制音频。这里的音频录制参数是指进行音频录制时必须的调用参数,例如采样率、声音分贝、麦克风和基础编码制式(系统原生支持的编码制式)等。
B、依据目标参数中的存储格式标识和初始录制音频,调用音频处理扩展函数中的录制格式转换函数,以在初始录制音频的录制格式标识与存储格式标识不一致时,将初始录制音频由录制格式转换为存储格式,生成目标录制音频。
其中,存储格式标识是指表征音频存储格式的标识,其是调用参数中的一个参数。存储格式标识是预先根据每个格式的特点及主要应用场景而确定的。
音频处理装置在生成初始录制音频之后,便以存储格式标识和初始录制音频为输入参数,调用音频处理扩展函数中的录制格式转换函数。该录制格式转换函数的内部实现逻辑为:先确定初始录制音频的录制格式标识,再判断存储格式标识和录制格式标识是否一致。如果一致,那么无需进行格式转化,直接将初始录制音频作为目标录制音频。如果不一致,那么将初始录制音频由录制格式标识对应的录制格式转换为存储格式标识对应的存储格式,生成目标录制音频。C、若目标功能为音频播放功能,则依据目标参数中的音频文件路径,调用音频处理扩展函数中的播放格式转换函数,以获取待播放音频,并在待播放音频的存储格式标识和当前设备对应的播放格式标识不一致时,将待播放音频由存储格式转化为播放格式生成目标播放音频;
如果目标功能为音频播放功能,那么音频处理装置需要先获取待播放的音频文件(即待播放音频),之后在播放之前判断是否需要进行格式转换,最后再进行音频播放。
具体实施时,音频处理装置以调用参数中的音频文件路径为输入参数,调用音频处理扩展函数中的播放格式转换函数。该播放格式转换函数的内部实现为:先根据音频文件路径获取待播放音频,之后判断该待播放音频的存储格式标识和当前设备支持的播放格式标识是否一致。如果一致,则将待播放音频作为目标播放音频。如果不一致,则需要将待播放音频由存储格式标识对应的存储格式转换为播放格式标识对应的播放格式,生成目标播放音频。这里的存储格式标识是通过读取待播放音频的信息而获得,而播放格式标识是通过读取当前设备的相关信息获得。上述音频文件路径可以根据用户触发的目标功能而自动定位,例如用户点击某个录音文件进行播放,则可自动获得该录音文件的音频文件路径。
D、依据目标播放音频,调用音频处理系统函数中的音频播放系统函数,以播放目标播放音频。
在生成目标播放音频后,音频处理装置便可以该目标播放音频为输入参数,调用音频处理系统函数中的音频播放系统函数来播放该目标播放音频。
本实施例的技术方案,通过音频处理扩展函数的设置,能够方便且快速地支持新增的音频处理功能的接入,且不影响原有音频处理体系,一定程度上提高音频处理程序的可维护性。同时,能够为诸如音频识别、音频转文字、实时音频文件流获取、音频转换、音频加解密等高级音频处理功能提供有力的基础服务支撑。通过在音频录制功能和音频播放功能的执行过程中增加音频格式转换的扩展功能,能够丰富现有的音频处理流程,提高音频处理的智能化,从而提升用户体验。
实施例四
本实施例在上述各实施例的基础上,从音频处理逻辑架构层面对音频处理整体架构、含音频处理扩展功能的音频录制功能和含音频处理扩展功能的音频播放功能进行进一步说明。
参见图4a,以当前设备搭载Android系统为例,本实施例中的音频处理方法的逻辑架构分为三层,第一层包含API开放服务模块、参数配置模块、录播模块和扩展模块,第二层为兼容层,第三层为Android底层音频服务,包含音频录制和音频播放的音频处理系统功能。
其中,API开放服务模块用于为开发人员提供语音库的对外接口,即改进音频API。参数配置模块也称为参数兼容模块或参数兼容性调整模块,用于获取调用参数,并与兼容层进行通信,以便兼容层对调用参数进行参数兼容性调整获得目标参数。录播模块用于响应API开放服务模块中被调用的改进音频API,并接收参数配置模块发送的目标参数,以及将被调用的改进音频API和目标参数传输至Android底层音频服务以触发相应音频处理功能。如果改进音频API触发的命令中需要调用基础API,那么其也需要与兼容层通信,以便处理不同厂商和系统版本对基础API的差异兼容性。扩展模块用于为开发人员提供扩展接口,同时其包含已实现的音频格式转换的相关扩展函数及其接口。
上述兼容层中封装了参数兼容性调整和基础API调用调整的底层实现细节,当Android系统升级造成部分参数变动或者基础API变动时,仅需要相应更改兼容层中的相关代码即可,面向开发人员的改进音频API保持不变,在提高开发人员开发效率的同时,避免代码结构调整,提高程序的可维护性。当需要增加新的音频处理扩展功能时,也只需要增加扩展模块中提供的扩展接口的函数实现即可,同样无需调整现有语音库中音频处理的逻辑架构和代码结构,进一步提高程序的可扩展性和可维护性。
参见图4b,含音频处理扩展功能的音频录制功能的实现流程可以为:
首先,通过目标功能对应的语音库中的改进音频API发起音频录制的相关命令,如:开始录音、结束录音、取消录音、判断当前录音状态等,经调用的改进音频API找到其对应的接口实现类。这样开发人员只需关注几个改进音频API即可。然后,进行录制参数处理子流程,该子流程中先判断改进音频API调用时是否携带调用参数(如:采样率、麦克风和编码制式等),如果没有,则为其配置默认调用参数;如果有,则通过兼容层将参数适配于满足当前设备;更详细的兼容层中参数兼容性调整的说明见实施例二。再然后,根据上述调整后的目标参数进行Android底层录音,如调用音频录制系统函数,以实现真正录音,此流程只管录音,不参与其他逻辑。之后,进入音频流处理策略来判断是否需要进行音频格式转换等音频扩展处理,判断操作可参见实施例三的说明。例如,在音频录制过程中,会产生音频流数据,此数据伴随着整个音频录制过程,默认原始的音频流是无损PCM格式,体积较大。如果判断需要进行音频格式转换,那么就调用扩展模块中的音频处理扩展函数,如录制格式转换函数,生成目标录制音频。如果不需要音频格式转换,那么就直接获得初始录制音频作为目标录制音频。最后,通过回调接口将消息回给改进音频API的调用处。
参见图4c,含音频处理扩展功能的音频播放功能的实现流程可以为:
含音频处理扩展功能的音频播放功能的实现流程与含音频处理扩展功能的音频录制功能的实现流程大体详细,不同之处在于调用Android底层播放前,判断是否需要音频转换等扩展处理。
首先,调用目标功能对应的改进音频API,并携带音频文件路径,发起音频播放相关命令(如:播放,暂停),经调用的改进音频API找到播放具体实现类。然后,进行播放参数处理子流程,在该子流程中将调用兼容层将参数适配于满足当前设备;更详细的兼容层中参数兼容性调整的说明见实施例二。再然后,进入音频流处理策略来判断是否需要进行音频格式转换等音频扩展处理,判断操作可参见实施例三的说明。因Android底层只识别特定的音频流格式,例如mp3,故通过此策略判断根据音频文件路径确定的音频文件是否需要格式转换。如果是原始音频流,则直接交给底层来播放;否则调用扩展模块,进行音频流的格式转换货解密等操作,之后交由Android底层播放。同样地,在音频播放过程中,也有可能由于某些原因(如:电话来了等)而出现播放异常,由此产生的异常信息,通过消息回调回给改进音频API调用处。
实施例五
本实施例提供一种音频处理装置,参见图5,该装置具体包括:
调用参数确定模块510,用于依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
目标参数生成模块520,用于依据当前目标设备的设备型号硬件参数和/或软件参数系统版本号确定调用参数对应的预设参数参照范围,并依据预设参数参照范围调整调用参数生成目标参数,目标参数位于预设参数参照范围内;
音频处理模块530,用于依据目标参数,调用音频处理系统函数,以实现对音频的处理。
可选地,目标参数生成模块520具体用于:
依据当前设备的设备型号和系统版本号从预先建立的预设参数参照表中确定调整参数对应的预设参数参照范围。
可选地,目标参数生成模块520包括:
参数判断子模块,用于分别判断调用参数中的每个参数的参数值是否与预设参数参照范围中的相应参数范围一致;
第一目标参数确定子模块,用于若是,则将参数值作为参数对应的目标参数;
第二目标参数确定子模块,用于若否,则依据预设参数调整规则和预设参数参照范围调整参数值,生成参数对应的目标参数。
进一步地,第二目标参数确定子模块具体用于:
若参数为数值类型,则依据参数值与相应参数范围的两个边界值,生成参数值对应的调整值,作为参数对应的目标参数;
若参数为枚举类型,则将预设参数参照范围中与参数对应的参照值作为参数对应的目标参数。
可选地,在上述装置的基础上,该装置还包括调用接口确定模块,用于:
在确定目标功能对应的音频处理系统函数的调用参数之后,依据目标功能标识确定目标功能对应的调用接口;
以调用参数为输入参数,调用上述调用接口,以触发调用参数的调整。
可选地,音频处理模块530具体用于:
依据目标参数,调用目标功能对应的音频处理扩展函数和音频处理系统函数,以实现对音频的扩展处理和原生功能处理。
进一步地,音频处理模块530具体用于:
若目标功能为音频录制功能,则依据目标参数中的音频录制参数,调用音频处理系统函数中的音频录制系统函数,生成初始录制音频;
依据目标参数中的存储格式标识和初始录制音频,调用音频处理扩展函数中的录制格式转换函数,以在初始录制音频的录制格式标识与存储格式标识不一致时,将初始录制音频由录制格式转换为存储格式,生成目标录制音频;
若目标功能为音频播放功能,则依据目标参数中的音频文件路径,调用音频处理扩展函数中的播放格式转换函数,以获取待播放音频,并在待播放音频的存储格式标识和当前设备对应的播放格式标识不一致时,将待播放音频由存储格式转化为播放格式生成目标播放音频;
依据目标播放音频,调用音频处理系统函数中的音频播放系统函数,以播放目标播放音频。
通过本发明实施例五的一种音频处理装置,通过当前设备的硬件参数和/或软件参数,确定用户触发的音频处理功能对应的音频处理系统函数的调用参数对应的预设参数参照范围,实现了最适合于当前设备的音频处理功能对应的调用参数的参数参照范围的确定,为后续调用参数的调整和音频处理功能的正常运行提供基础。通过依据预设参数参照范围调整调用参数生成目标参数,以使目标参数位于预设参数参照范围内,实现了音频处理过程中函数调用参数的兼容性调整,使得音频处理系统函数能够以最适合于当前设备的状态运行,从而提高音频处理功能的参数兼容性及运行效率。
本发明实施例所提供的音频处理装置可执行本发明任意实施例所提供的音频处理方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述音频处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例六
参见图6,本实施例提供了一种设备,其包括:一个或多个处理器620;存储装置610,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器620执行,使得一个或多个处理器620实现本发明实施例所提供的音频处理方法,包括:
依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
依据当前设备的硬件参数和/或软件参数确定调用参数对应的预设参数参照范围,并依据预设参数参照范围调整调用参数生成目标参数,目标参数位于预设参数参照范围内;
依据目标参数,调用音频处理系统函数,以实现对音频的处理。
当然,本领域技术人员可以理解,处理器620还可以实现本发明任意实施例所提供的音频处理方法的技术方案。
图6显示的设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图6所示,该设备包括处理器620、存储装置610、输入装置630和输出装置640;设备中处理器620的数量可以是一个或多个,图6中以一个处理器620为例;设备中的处理器620、存储装置610、输入装置630和输出装置640可以通过总线或其他方式连接,图6中以通过总线650连接为例。
存储装置610作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的音频处理方法对应的程序指令/模块(例如,音频处理装置中的调用参数确定模块、目标参数生成模块和音频处理模块)。
存储装置610可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置610可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置610可进一步包括相对于处理器620远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置630可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。
实施例七
本实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种音频处理方法,该方法包括:
依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
依据当前设备的硬件参数和/或软件参数确定调用参数对应的预设参数参照范围,并依据预设参数参照范围调整调用参数生成目标参数,目标参数位于预设参数参照范围内;
依据目标参数,调用音频处理系统函数,以实现对音频的处理。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的音频处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台设备(可以是手机、掌上电脑、或个人计算机等)执行本发明各个实施例所提供的音频处理方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种音频处理方法,其特征在于,包括:
依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
依据当前设备的硬件参数和/或软件参数确定所述调用参数对应的预设参数参照范围,并依据所述预设参数参照范围调整所述调用参数生成目标参数,所述目标参数位于所述预设参数参照范围内;
依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理。
2.根据权利要求1所述的方法,其特征在于,所述依据当前设备的硬件参数和/或软件参数确定所述调用参数对应的预设参数参照范围包括:
依据当前设备的设备型号和系统版本号从预先建立的预设参数参照表中确定所述调整参数对应的预设参数参照范围。
3.根据权利要求1所述的方法,其特征在于,所述依据所述预设参数参照范围调整所述调用参数生成目标参数包括:
分别判断所述调用参数中的每个参数的参数值是否与所述预设参数参照范围中的相应参数范围一致;
若是,则将所述参数值作为所述参数对应的目标参数;
若否,则依据预设参数调整规则和所述预设参数参照范围调整所述参数值,生成所述参数对应的目标参数。
4.根据权利要求3所述的方法,其特征在于,依据预设参数调整规则和所述预设参数参照范围调整所述参数,生成所述参数对应的目标参数包括:
若所述参数为数值类型,则依据所述参数值与相应参数范围的两个边界值,生成所述参数值对应的调整值,作为所述参数对应的目标参数;
若所述参数为枚举类型,则将所述预设参数参照范围中与所述参数对应的参照值作为所述参数对应的目标参数。
5.根据权利要求1所述的方法,其特征在于,在所述确定目标功能对应的音频处理系统函数的调用参数之后,还包括:
依据所述目标功能标识确定所述目标功能对应的调用接口;
以所述调用参数为输入参数,调用所述调用接口,以触发所述调用参数的调整。
6.根据权利要求1所述的方法,其特征在于,所述依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理包括:
依据所述目标参数,调用所述目标功能对应的音频处理扩展函数和所述音频处理系统函数,以实现对音频的扩展处理和原生功能处理。
7.根据权利要求6所述的方法,其特征在于,所述依据所述目标参数,调用所述目标功能对应的音频处理扩展函数和所述音频处理系统函数,以实现对音频的扩展处理和原生功能处理包括:
若所述目标功能为音频录制功能,则依据所述目标参数中的音频录制参数,调用所述音频处理系统函数中的音频录制系统函数,生成初始录制音频;
依据所述目标参数中的存储格式标识和所述初始录制音频,调用所述音频处理扩展函数中的录制格式转换函数,以在所述初始录制音频的录制格式标识与所述存储格式标识不一致时,将所述初始录制音频由录制格式转换为存储格式,生成目标录制音频;
若所述目标功能为音频播放功能,则依据所述目标参数中的音频文件路径,调用所述音频处理扩展函数中的播放格式转换函数,以获取待播放音频,并在所述待播放音频的存储格式标识和所述当前设备对应的播放格式标识不一致时,将所述待播放音频由存储格式转化为播放格式生成目标播放音频;
依据所述目标播放音频,调用所述音频处理系统函数中的音频播放系统函数,以播放所述目标播放音频。
8.一种音频处理装置,其特征在于,包括:
调用参数确定模块,用于依据用户触发的音频处理功能的目标功能标识,确定目标功能对应的音频处理系统函数的调用参数;
目标参数生成模块,用于依据当前目标设备的设备型号硬件参数和/或软件参数系统版本号确定所述调用参数对应的预设参数参照范围,并依据所述预设参数参照范围调整所述调用参数生成目标参数,所述目标参数位于所述预设参数参照范围内;
音频处理模块,用于依据所述目标参数,调用所述音频处理系统函数,以实现对音频的处理。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的音频处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述的音频处理方法。
CN201910549610.XA 2019-06-24 2019-06-24 音频处理方法、装置、设备和存储介质 Pending CN111736795A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910549610.XA CN111736795A (zh) 2019-06-24 2019-06-24 音频处理方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910549610.XA CN111736795A (zh) 2019-06-24 2019-06-24 音频处理方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN111736795A true CN111736795A (zh) 2020-10-02

Family

ID=72646073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910549610.XA Pending CN111736795A (zh) 2019-06-24 2019-06-24 音频处理方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN111736795A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112581957A (zh) * 2020-12-04 2021-03-30 浪潮电子信息产业股份有限公司 一种计算机语音控制方法、系统及相关装置
CN114374912A (zh) * 2021-12-10 2022-04-19 北京百度网讯科技有限公司 语音输入的方法、装置、电子设备和介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6618703B1 (en) * 1999-10-26 2003-09-09 Persay Inc. Interface to a speech processing system
JP2004212533A (ja) * 2002-12-27 2004-07-29 Ricoh Co Ltd 音声コマンド対応機器操作装置、音声コマンド対応機器、プログラム、及び記録媒体
WO2007045293A1 (en) * 2005-10-20 2007-04-26 France Telecom System and method for capturing audio/video material
CN104317548A (zh) * 2014-09-15 2015-01-28 联想(北京)有限公司 一种信息处理方法及电子设备
CN104602105A (zh) * 2014-12-31 2015-05-06 腾讯科技(北京)有限公司 视频文件的播放方法及用户设备
WO2016029448A1 (zh) * 2014-08-29 2016-03-03 华为技术有限公司 提高扬声器性能的方法和终端设备
CN105657154A (zh) * 2015-10-30 2016-06-08 东莞酷派软件技术有限公司 选择音频通道的方法、装置及终端
CN105898570A (zh) * 2016-04-13 2016-08-24 乐视控股(北京)有限公司 一种调用媒体播放器的方法、装置及设备
CN207166750U (zh) * 2017-08-11 2018-03-30 上海魅声电子科技有限公司 一种自动识别多手机操作系统的音频设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6618703B1 (en) * 1999-10-26 2003-09-09 Persay Inc. Interface to a speech processing system
JP2004212533A (ja) * 2002-12-27 2004-07-29 Ricoh Co Ltd 音声コマンド対応機器操作装置、音声コマンド対応機器、プログラム、及び記録媒体
WO2007045293A1 (en) * 2005-10-20 2007-04-26 France Telecom System and method for capturing audio/video material
WO2016029448A1 (zh) * 2014-08-29 2016-03-03 华为技术有限公司 提高扬声器性能的方法和终端设备
CN106664479A (zh) * 2014-08-29 2017-05-10 华为技术有限公司 提高扬声器性能的方法和终端设备
CN104317548A (zh) * 2014-09-15 2015-01-28 联想(北京)有限公司 一种信息处理方法及电子设备
CN104602105A (zh) * 2014-12-31 2015-05-06 腾讯科技(北京)有限公司 视频文件的播放方法及用户设备
CN105657154A (zh) * 2015-10-30 2016-06-08 东莞酷派软件技术有限公司 选择音频通道的方法、装置及终端
CN105898570A (zh) * 2016-04-13 2016-08-24 乐视控股(北京)有限公司 一种调用媒体播放器的方法、装置及设备
CN207166750U (zh) * 2017-08-11 2018-03-30 上海魅声电子科技有限公司 一种自动识别多手机操作系统的音频设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112581957A (zh) * 2020-12-04 2021-03-30 浪潮电子信息产业股份有限公司 一种计算机语音控制方法、系统及相关装置
CN114374912A (zh) * 2021-12-10 2022-04-19 北京百度网讯科技有限公司 语音输入的方法、装置、电子设备和介质

Similar Documents

Publication Publication Date Title
CN105825851B (zh) 一种基于Android系统的语音控制方法及系统
CN107909998B (zh) 语音指令处理方法、装置、计算机设备和存储介质
TW201440037A (zh) 語音操控方法、行動終端裝置及語音操控系統
CN110060656B (zh) 模型管理和语音合成方法、装置和系统及存储介质
WO2023185166A1 (zh) 服务调用方法、装置、设备及存储介质
CN110297616B (zh) 话术的生成方法、装置、设备以及存储介质
CN113093596A (zh) 一种控制指令的处理方法和装置
CN112331202B (zh) 一种语音投屏方法及装置、电子设备和计算机可读存储介质
JP6934076B2 (ja) スマートサービス方法、装置及び機器
CN111736795A (zh) 音频处理方法、装置、设备和存储介质
US10755707B2 (en) Selectively blacklisting audio to improve digital assistant behavior
WO2018028239A1 (zh) 一种控制终端的方法及装置、计算机存储介质
US8768494B1 (en) System and method for generating policy-based audio
KR102421397B1 (ko) 프로그래밍 코드 자동생성을 통한 백엔드 구축 방법
JP7375089B2 (ja) 音声応答速度確定方法、装置、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
CN110418181B (zh) 对智能电视的业务处理方法、装置、智能设备及存储介质
CN111833857B (zh) 语音处理方法、装置和分布式系统
WO2020248873A1 (zh) 电视机频道预置方法、装置、计算机设备及可读存储介质
CN113741954A (zh) 系统软件生成方法、装置、电子设备及存储介质
US8781613B1 (en) Audio apparatus for portable devices
CN112084210A (zh) 数据处理方法、装置、电子设备及存储介质
CN113949739B (zh) 跨设备播放方法、装置、电子设备及存储介质
CN110111779B (zh) 语法模型生成方法及装置、语音识别方法及装置
CN113918246A (zh) 功能控制方法、功能控制装置、存储介质与电子设备
CN115407981A (zh) 一种基于中间件适配的前端数据mock方法及系统

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