CN117389507A - 音频数据处理方法、电子设备及存储介质 - Google Patents
音频数据处理方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117389507A CN117389507A CN202311694470.8A CN202311694470A CN117389507A CN 117389507 A CN117389507 A CN 117389507A CN 202311694470 A CN202311694470 A CN 202311694470A CN 117389507 A CN117389507 A CN 117389507A
- Authority
- CN
- China
- Prior art keywords
- application
- audio
- recording
- global variable
- audio data
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims description 69
- 238000012545 processing Methods 0.000 claims description 40
- 230000004044 response Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 11
- 230000037361 pathway Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 description 134
- 230000008569 process Effects 0.000 description 44
- 239000010410 layer Substances 0.000 description 30
- 230000006870 function Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 20
- 230000000694 effects Effects 0.000 description 17
- 238000007726 management method Methods 0.000 description 17
- 230000009467 reduction Effects 0.000 description 14
- 238000010295 mobile communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 5
- 238000007667 floating Methods 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/165—Management of the audio stream, e.g. setting of volume, audio stream path
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/162—Interface 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
技术领域
本申请涉及智能终端技术领域,尤其涉及一种音频数据处理方法、电子设备及存储介质。
背景技术
随着终端技术的发展,用户对于电子设备的功能需求越发多样化,为了满足用户对于声音的记录需求,大多数的电子设备支持音频采集功能,比如录音、录像、或直播等功能。
目前,用户使用具有数字音频变焦技术Audiozoom功能的手机,先启动录音应用进行录音,再将录音应用切换到手机后台保持运行,手机前台运行某应用的录像或直播。在录像或直播结束后,将在后台运行中的录音应用切换到前台运行,直到录音应用结束录音,这一过程可能存在录制无声的问题。
发明内容
为了解决上述技术问题,本申请提供一种音频数据处理方法、电子设备及存储介质,在录像或直播结束后,将录音应用从后台切换回前台运行时,调用与录音应用的应用标识对应的全局变量处理录音mic通路采集的音频数据,从而解决背景技术中录制无声的问题。
第一方面,本申请实施例提供一种音频数据处理方法,应用于电子设备。该方法包括:响应于对第一应用的第一操作,通过第一mic通路采集第一音频数据;确定与第一应用对应的第一全局变量,并根据第一全局变量中的参数对第一音频数据进行处理,得到与第一应用对应的第一目标音频;在将第一应用切换到后台运行之后,响应于对第二应用的第二操作,通过第二mic通路采集第二音频数据;确定与第二应用对应的第二全局变量,并根据第二全局变量中的参数对第二音频数据进行处理,得到与第二应用对应的第二目标音频;响应于第三操作将第一应用切换回前台运行,继续通过第一mic通路采集第三音频数据,并根据第一全局变量中的参数对第三音频数据进行处理,得到与第一应用对应的第三目标音频。
其中,第一操作为用于启动第一应用进行采集音频的操作,第二操作为用于启动第二应用进行音频采集的操作,进行音频采集的操作如录音类应用进行录音、录像类应用进行录像、直播类应用进行直播。第一mic通路与第二mic通路不同,第一mic通路包括第一mic、第二mic,第二mic通路包括第一mic、第二mic和第三mic,例如,第一mic为顶部麦克风,第二mic为底部麦克风,第三mic为背部麦克风。第一应用为录音类应用,第二应用为录像类应用或直播类应用。
这样,在多个应用的音频采集任务并发运行的场景下,可以为每一应用创建其应用标识对应的全局变量,并将与其音频类型关联的音频参数添加至对应的全局变量中,避免了多个应用共用一个全局变量导致参数被覆盖的问题。在将某一应用从后台切换至前台运行时,可以根据切换后应用的应用标识调用对应的全局变量,进而,根据该全局变量中的参数,处理音频驱动传输过来的音频数据,以解决现有技术中存在录制无声的问题,保证不同应用下音频数据的处理效果,提升用户的使用体验。
根据第一方面,确定与第一应用对应的第一全局变量,包括:创建与第一应用的应用标识对应的第一全局变量;将与第一应用的音频类型关联的音频参数添加至第一全局变量中。
其中,音频类型为与录音算法相关的参数。同一应用的不同音频类型对应的音频参数不同,或者同一应用的不同音频类型对应的音频参数的数值不同。
这样,为每一应用创建其应用标识对应的全局变量,并将与其音频类型关联的音频参数添加至相应全局变量中,便于后续应用从后台切换到前台时,根据切换后应用的应用标识直接调用相应全局变量处理音频数据,从而提高音频数据的处理效率和效果。
根据第一方面,或者以上第一方面的任意一种实现方式,在根据第一全局变量中的参数对第三音频数据进行处理,得到与第一应用对应的第三目标音频之后,方法还包括:响应于对第一应用的第四操作,关闭第一应用和第一mic通路,并删除第一全局变量。
这样,在应用结束音频采集任务后,通过删除相应全局变量,以释放全局变量的内存,增加电子设备的可用内存空间,进而,提高电子设备运行的流畅度,和提高电子设备的续航能力。
根据第一方面,或者以上第一方面的任意一种实现方式,在将第一应用切换到后台运行之后,且在响应于对第二应用的第二操作之前,方法还包括:通过第一mic通路采集第四音频数据;根据第一全局变量中的参数对第四音频数据进行处理,得到与第一应用对应的第四目标音频。
这样,可以保证后台运行应用的音频采集任务连续执行。
根据第一方面,或者以上第一方面的任意一种实现方式,在根据第二全局变量中的参数对第二音频数据进行处理,得到与第二应用对应的第二目标音频之后,方法还包括:响应于对第二应用的第五操作,关闭第二应用和第二mic通路,并删除第二全局变量。
根据第一方面,或者以上第一方面的任意一种实现方式,确定与第二应用对应的第二全局变量,包括:创建与第二应用的应用标识对应的第二全局变量;将与第二应用的音频类型关联的音频参数添加至第二全局变量中。
第二方面,本申请实施例提供一种电子设备。该电子设备包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中一个或多个计算机程序存储在存储器上,当计算机程序被一个或多个处理器执行时,使得电子设备执行第一方面以及第一方面中任意一项的音频数据处理方法。
第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,本申请实施例提供一种计算机可读存储介质。该计算机可读存储介质包括计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行第一方面以及第一方面中任意一项的音频数据处理方法。
第三方面以及第三方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第三方面以及第三方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第四方面,本申请实施例提供一种计算机程序产品,包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面或第一方面中任意一项的音频数据处理方法。
第四方面以及第四方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第四方面以及第四方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第五方面,本申请提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚和该处理电路通过内部连接通路互相通信,该处理电路执行如第一方面或第一方面中任意一项的音频数据处理方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第五方面以及第五方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第五方面以及第五方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1a-图1d为示例性示出的应用场景示意图;
图1e为示例性示出的目前方案的流程图;
图1f为示例性示出的目前方案下录音应用获取的音频数据的示意图;
图1g为示例性示出的目前方案的示意图;
图2为示例性示出的电子设备的硬件结构示意图;
图3为示例性示出的电子设备的软件结构示意图;
图4为示例性示出的模块交互示意图;
图5为示例性示出的录音应用开始录音至结束录音的流程图;
图6a-图6b为示例性示出的录音应用和录像应用并发运行场景的流程图;
图7a为示例性示出的本方案的示意图;
图7b为示例性示出的本方案下录音应用获取的音频数据的示意图;
图8为示例性示出的音频数据处理方法的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个***是指两个或两个以上的***。
图1a-图1d为本申请实施例提供的一种应用场景示意图。在介绍本申请实施例之前,首先基于图1a-图1d对本申请实施例的应用场景进行说明。参照图1a中(1),以手机作为电子设备的示例,界面为手机桌面。图1a中(1)示出了手机的主显示界面101,该主显示界面101包括多个应用程序图标,例如,时钟应用图标、日历应用图标、图库应用图标、备忘录应用图标、文件管理图标、电子邮件应用图标、音乐应用图标、计算器应用图标、视频应用图标、运动健康应用图标、天气应用图标、浏览器应用图标、设置图标、录音机应用图标1011、录像机应用图标1012、相机图标、通讯录图标、呼叫应用图标、信息应用图标等。
用户可以通过点击应用图标,来启动想要使用的应用。参见图1a中(1),用户通过点击录音机应用图标1011,手机响应用户的该操作启动录音应用,进入录音应用的录音界面102,参见图1a中(2),手机启动录音应用后,随即开始录音的音频采集任务。在此界面,用户可以通过点击返回控件1021,返回手机的主显示界面101;用户还可以通过点击界面左下角的标记控件1022对某一时刻的录音进行标记;用户还可以通过点击界面中间的结束控件1023,结束录音的音频采集任务;用户还可以通过点击界面右下角的暂停控件1024,暂停录音的音频采集任务。用户可以通过指尖从界面底端向上方滑动的方式,回到手机的主显示界面101,以将录音应用切换到后台运行。参见图1b中(1),用户可以在手机的主显示界面101继续选择想要使用的应用,此时,录音应用仍在手机的后台保持运行。
参见图1b中(1),录音应用仍在后台保持录音,用户再通过点击主显示界面101中的录像机应用图标1012,手机响应用户的该操作启动录像机应用,手机进入录像机应用界面。如图1b中(2)所示,此时,录像界面103中显示的画面为通过手机的后置摄像头采集到的,手机还通过自身配置的相关麦克风采集周围的声音。在录像界面103中,用户可以通过点击翻转镜头控件1031,使录像界面103显示手机的前置摄像头采集的画面;用户还可以通过点击录像界面103中的结束控件1032,结束录像机应用的录像任务。
参见图1c中(1),用户在点击结束控件1032后,界面103中弹出保存录像窗口1033,用户可以点击保存日期控件1034进行保存时间的修改;用户还可以点击删除控件1035,删除该录像数据;用户还可以点击确定控件1036,保存该录像数据。若用户想要返回录音应用的录音界面102,需要进入手机的主显示界面101或者后台显示界面104。参见图1c中(2),在手机的后台显示界面104中,用户可以通过左右滑动的方式浏览在手机后台挂载的应用程序;用户还可以通过点击应用程序的后台界面进入到该应用程序的显示界面,以使用该应用程序的功能;用户还可以通过上下滑动应用程序的后台界面结束手机挂载该应用程序。继续参见图1c中(2)所示的后台显示界面104,悬浮窗1041为其他后台应用的后台界面,悬浮窗1042为录音机的录音后台界面,悬浮窗1043为录像机应用的后台界面,用户可以点击清空后台控件1044来清空手机所有后台挂载的应用程序。用户,可以通过点击悬浮窗1042,在后台显示界面104中进入录音程序的录音界面102,以将录音应用从手机后台切换回手机前台使用。
参见图1d中(1),用户通过点击悬浮窗1042进入到录音界面102后,若想要结束录音任务,需要点击录音界面102中的结束控件1023。当用户点击结束控件1023后,录音界面102会出现一个弹窗1025,参见图1d中(2),用户可以通过点击保存日期控件1026中的时间,来修改该段录音数据的保存时间;用户还可以通过点击删除控件1027,将该段录音数据删除;用户还可以通过点击确定控件1028,确定保存该段录音数据。
用户使用具有Audiozoom降噪功能的手机场景下,目前仅在应用程序启动时应用程序框架层中的音频服务下发应用程序的相关参数到算法模块,算法模块会根据该参数处理应用程序运行时采集的音频数据。图1a至图1d所示的应用场景中,用户如果在手机后台保持录音应用录音的情况下,使用手机进行录像一段时间后结束录像,再将录音应用切换回前台,此时,音频服务不会再重新下发录音应用的相关参数到算法模块,算法模块只能继续使用录像应用的相关参数处理录音应用切回前台后采集到的音频数据。然而,录像应用的相关参数可能涉及到音频降噪算法,如录像应用聚焦获取远处声源发出的声音时Audiozoom降噪算法会将近处声源发出的声音当做噪音处理掉,以突显远处声源发出的声音。而录音往往应用于采集近处人声,如此,该音频降噪算法可能会将录音应用切回前台后采集的音频数据误认为是噪音处理掉,从而导致录音应用切回前台后采集的音频数据没有声音。
具体地,参见图1e,现有方案,录音应用开始录音,至录音应用切换到后台运行,前台运行录像应用录像,再到录像应用结束录像,将录音应用切换至前台运行这一过程,包括以下步骤:
S101,响应于用户的开始录音操作,录音应用向音频服务发送开始录音请求。
S102,音频服务向音频HAL发送录音应用的音频类型1。
S103,音频HAL通过音频驱动打开录音mic通路。
S104,音频HAL向算法模块发送音频类型1。
S105,算法模块将与音频类型1关联的参数1添加至全局变量中。
S106,算法模块接收音频驱动通过录音mic通路采集的音频数据。
S107,算法模块根据全局变量中的参数1,处理录音mic通路采集的音频数据。
S108,响应于用户的切换至后台操作,录音应用向音频服务发送切换至后台运行消息。
S109,算法模块接收音频驱动通过录音mic通路采集的音频数据。
S110,算法模块根据全局变量中的参数1,处理录音mic通路采集的音频数据。
S111,响应于用户的开始录像操作,录像应用向音频服务发送开始录像请求。
S112,音频服务向音频HAL发送录像应用的音频类型2。
S113,音频HAL通过音频驱动打开录像mic通路。
示例性的,由于录音应用后台保持运行时,录音mic通路处于打开的状态。录音mic通路包括顶部麦克风和底部麦克风,录像mic通路包括顶部麦克风、底部麦克风和背部麦克风。所以,这里只需要在录音mic通路打开的基础上,再打开背部麦克风,即可打开录像mic通路。
S114,音频HAL向算法模块发送音频类型2。
S115,算法模块利用与音频类型2关联的参数2更新全局变量。
这里,更新的结果是参数2将参数1覆盖,从而导致参数1被抹除,全局变量中仅剩参数2。
S116,算法模块接收音频驱动通过录像mic通路采集的音频数据。
S117,算法模块根据全局变量中的参数2,处理录像mic通路采集的音频数据。
需要说明的是,前台和后台运行两个应用进行采集音频过程中,算法模块仅处理前台运行应用对应的mic通路采集的音频数据,并将处理后的音频数据存储至前台运行应用指定的文件中。由于算法模块不会将后台应用所需的音频数据存储至后台应用指定的文件中,导致在此期间后台应用无法获取相应的音频数据。因此,在后台运行录音应用的录音,前台运行录像应用的录像这一过程中,录音应用会存在录制无声的问题。
S118,响应于用户的结束录像操作,录像应用向音频服务发送结束录像请求。
S119,音频服务向音频HAL发送结束录像标识。
S120,音频HAL通过音频驱动关闭录像mic通路。
示例性的,关闭录像mic通路时,会将顶部麦克风、底部麦克风和背部麦克风全部关闭,所以,此时关闭录像mic通路,也会导致录音mic通路被一并关闭。
S121,响应于用户的切换至前台操作,录音应用向音频服务发送切换至前台运行消息。
S122,音频服务向音频HAL发送继续录音标识。
S123,音频HAL通过音频驱动打开录音mic通路。
S124,算法模块接收音频驱动通过录音mic通路采集的音频数据。
S125,算法模块根据全局变量中的参数2,处理录音mic通路采集的音频数据。
需要说明的是,针对图1e所示的方案仅代表本申请的申请人所使用过的方案,不能代表现有技术已公开的方案。
如图1e所示,在录音应用切换到前台运行后,由于音频服务不会再重新下发录音应用的音频类型1,算法模块会使用全局变量中的参数2处理录音mic(Microphone,麦克风)通路采集的音频数据。然而,与录像应用采集音频数据对应的参数2会涉及降噪功能,例如,录像应用聚焦采集远处声源发出的声音时Audiozoom降噪算法会将近处声源发出的声音当做噪音处理掉。将录音应用切换回前台运行后,若录音应用采集的是近处人声,也会被Audiozoom降噪算法当做噪音处理掉,从而导致录音应用切回前台后采集的音频数据没有声音。如图1f所示,录音应用播放其获取的音频数据时,由音频条的内容格式可以得知,目前方案只有录音应用在前台录音的阶段和录音应用切换到后台阶段有声音,而录音应用保持后台运行,前台运行录像应用录像的阶段,以及录像结束,将录音应用切换回前台运行至录音结束阶段均没有声音。
简单来说,如图1g所示,在应用并发的场景下,每打开一个App,会将该App下发的参数加载到全局变量中,从而覆盖上一个App的参数。切换App至前台运行时,由于设备的级别原因,不会再重新下发切换后App的参数,导致切换后App仍使用最后加载到全局变量中的参数。由此,会导致录音应用切回前台后采集的音频数据没有声音,用户体验较差。
基于此,本申请提供了一种音频数据处理方法、电子设备及存储介质,在多个应用的音频采集任务并发运行的场景下,可以为每一应用创建其应用标识对应的全局变量,并将与其音频类型关联的音频参数添加至对应的全局变量中,避免了多个应用共用一个全局变量导致参数被覆盖的问题。在将某一应用从后台切换至前台运行时,可以根据切换后应用的应用标识调用对应的全局变量,进而,根据该全局变量中的参数,处理音频驱动传输过来的音频数据,以实现按照切换后应用的音频参数处理采集的音频数据,保证音频数据的处理效果,提升用户的使用体验。
图2示出了电子设备100的结构示意图。应该理解的是,图2所示电子设备100仅是电子设备的一个范例,并且电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图2中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与***设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。如图2所示,在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器201的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星***(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯***(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位***(global positioning system,GPS),全球导航卫星***(global navigation satellite system,GLONASS),北斗卫星导航***(beidounavigation satellite system,BDS),准天顶卫星***(quasi-zenith satellitesystem,QZSS)和/或星基增强***(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP 用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频率选择时,数字信号处理器用于对频率能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network ,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。其中,麦克风170C包括但不限于电子设备正面的顶部麦克风和底部麦克风,以及电子设备背面的背部麦克风。不同麦克风相互可以组合成不同的mic通路,例如,顶部麦克风和底部麦克风组合成录音mic通路,顶部麦克风、底部麦克风和背部麦克风组合成录像mic通路。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
压力传感器用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器可以设置于显示屏194。当有触摸操作作用于显示屏194,电子设备100根据压力传感器检测所述触摸操作强度。电子设备100也可以根据压力传感器的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
触摸传感器,也称“触控面板”。触摸传感器可以设置于显示屏194,由触摸传感器与显示屏194组成触摸屏,也称“触控屏”。触摸传感器用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
电子设备100的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备100的软件结构。
图3是本申请实施例的电子设备100的软件结构框图。
电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,硬件抽象层(hardware abstraction layer,HAL)以及内核层。可以理解的是,图3的软件结构中的层以及各层中包含的部件,并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本申请不做限定。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括录音、录像、备忘录、相机、图库、WLAN、蓝牙等应用程序。应用程序包还可以包括通话、日历、地图、导航、音乐、视频、短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,音频服务,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
音频服务可以用户提供与音频相关的服务,例如在应用程序的调用下触发音频采集及处理操作等。例如,音频服务接收到录音应用发送的开始录音请求后,音频服务向HAL层中音频HAL下发录音应用的音频类型和应用标识;音频服务接收到录音应用发送的结束录音请求后,音频服务向HAL层中音频HAL下发结束录音标识。其中,应用标识可以为应用程序的序列号,手机可以在下载安装应用程序后,自动为安装完成的应用程序分配一个序列号,即应用标识。例如,以key值表示应用标识,手机下载安装录音应用和录像应用后,为录音应用分配的key值为1,为录像应用分配的key值为2。音频类型为应用的使用场景或模式,每一应用可以具有一个或多个音频类型,例如,录音应用的会议录音、采访录音、人声模式、3D录音或音乐模式等,录像应用的前置录像、后置录像或双景录像等。结束录音标识用于指示音频HAL关闭录音mic通路,和指示算法模块释放录音应用的应用标识对应全局变量的内存。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
HAL为位于操作***内核与硬件电路之间的接口层。HAL包括但不限于:音频HAL和算法模块。其中,音频HAL是电子设备的操作***中负责音频硬件抽象层的一部分,用于提供了应用程序和音频硬件之间的接口,应用程序可以通过使用音频HAL访问和控制音频硬件的功能,例如音频输入、输出、编码、解码和混合等。在本申请中,音频HAL还可用于接收应用程序框架层中音频服务下发的某个应用程序的音频类型和应用标识,根据音频类型或应用标识通过音频驱动打开相应的mic通路;音频HAL还用于启动算法模块,将应用程序的音频类型和应用标识发送至算法模块。算法模块用于判断是否存在与应用标识对应的全局变量,若存在,则直接调用该全局变量;若不存在,则创建应用标识对应的全局变量,并将与音频类型关联的音频参数添加至该全局变量中,从而在接收到音频驱动发送的音频数据后,根据全局变量中的参数处理该音频数据。其中,音频参数可以是增益控制(automatic gaincontrol,AGC)算法、降噪(active noise control,ANC)算法、回声消除(acoustic echocancellation,AEC)算法、声反馈消除(acoustic feed back cancellation,AFC)算法、混响去除(dereverberation)算法等算法的相关参数。每一音频类型所关联的音频参数或音频参数的数值不同。
算法模块还配置有录音算法,可以利用录音算法对音频数据进行增益与降噪。录音算法是指对于音频数据进行数据处理以实现对于音频数据的增益、降噪、回声消除等效果的算法,也称音频算法。录音算法可以对于音频数据流的某一方面进行处理,例如增益控制算法、降噪算法、回声消除算法、声反馈消除算法、混响去除算法等。
需要说明的是,图3将音频HAL和算法模块作为两个独立的模块进行描述,可以理解为算法模块独立于音频HAL,音频HAL通过调用算法模块,以对音频数据进行处理,进而传输处理后的音频数据至应用层。在一些实施例中,也可以将算法模块看作是音频HAL的子模块,音频HAL通过调用该子模块,获取处理后的音频数据,进而传输处理后的音频数据至应用层。对此本申请实施例不作任何限定。
内核层是硬件和上述软件层之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。其中,该硬件可以包括摄像头、显示屏,麦克风,处理器,以及存储器等器件。音频驱动用于驱动麦克风工作,以采集周围环境中各个音源发出的声音,音源可以是人、动物或者具有声音输出功能的各种电子设备等。
可以理解的是,图3示出的软件结构中的层以及各层中包含的部件,并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本申请不做限定。
可以理解的是,电子设备为了实现本申请实施例中的音频数据处理方法,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在一个示例中,以录音应用开始录音为例。如图4所示,响应于用户的开始录音操作,录音应用向音频服务发送开始录音请求。音频服务响应于开始录音请求,向音频HAL下发录音应用的音频类型和应用标识。音频HAL在接收到录音应用的音频类型和应用标识后,会根据录音应用的音频类型打开录音mic通路,同时启动算法模块,将录音应用的音频类型和应用标识发送到算法模块。算法模块判断是否存在与应用标识对应的全局变量,若果存在则直接调用该全局变量,如果不存在则创建与应用标识对应的全局变量,并将与音频类型关联的音频参数添加至创建好的全局变量中。算法模块在接收到音频驱动通过录音mic通路采集音频数据之后,根据全局变量中的音频参数处理该音频数据。算法模块可以将处理后的音频数据保存在录音应用指定的文件中,以供录音应用播放使用;或者,当录音应用播放采集的音频数据时,算法模块将处理后的音频数据发送至音频服务,由音频服务传到录音应用。其中,算法模块可以边处理音频数据边将处理后的音频数据保存到指定文件中,也可以在将音频数据全部处理完后,将处理后的全部音频数据保存到指定文件中。
基于上述实施例,下面通过两个具体应用场景,对上述实施例的音频数据处理方法进行说明。
在一个应用场景中,仍以录音应用开始录音至结束录音为例,参照图5,录音应用开始录音至结束录音的流程,包括:
S501,响应于用户的开始录音操作,录音应用向音频服务发送开始录音请求。
示例性的,响应于用户的开始录音操作,例如图1a中(1)点击录音机应用图标1011进入录音应用的录音界面102,并开始录音的操作,录音应用向音频服务发送开始录音请求。
S502,音频服务向音频HAL发送录音应用的第一音频类型和第一应用标识。
示例性的,音频服务在接收到开始录音请求后,向音频HAL发送录音应用的第一音频类型和第一应用标识。例如,音频服务向音频HAL发送第一启动输入会话start inputsession1,启动输入会话中包含第一音频类型algo_set_parameter1和第一应用标识algo_scene_id=1。其中,第一音频类型可以是会议录音、采访录音、人声模式、3D录音或音乐模式中的一种,第一应用标识为录音应用的序列号,例如,当使用key值表示应用标识时,第一应用标识也就是key值等于1。
S503,音频HAL根据第一音频类型,通过音频驱动打开录音mic通路。
示例性的,录音mic通路用于采集录音应用所需要的音频数据,录音mic通路可以包括手机正面的顶部麦克风和底部麦克风。音频HAL可以通过录音mic通路打开手机正面的顶部麦克风和底部麦克风,以打开录音mic通路。
S504,音频HAL向算法模块发送第一音频类型和第一应用标识。
S505,算法模块创建与第一应用标识对应的第一全局变量,并将与第一音频类型关联的音频参数添加至第一全局变量中。
示例性的,算法模块在接收到第一应用标识后,首先判断是否存在与第一应用标识对应的第一全局变量,若存在则可直接调用第一全局变量;若不存在则需要创建与第一应用标识对应的第一全局变量。算法模块配置有音频类型与音频参数的关联关系,可根据音频类型与音频参数的关联关系,确定与第一音频类型关联的音频参数,并将与第一音频类型关联的音频参数添加至创建好的第一全局变量中。音频类型与音频参数的关联关系,例如,录音应用的会议录音、采访录音、人声模式、3D录音和音乐模式,均关联均衡器的参数,包括:频带、增益、品质因数Q值以及滤波器类型等。其中,频带指频率的范围,如低、中低、中高和高频等;增益是指信号的放大或衰减程度;品质因数Q值用于描述频带宽度;滤波器类型通常有高通滤波器、低通滤波器等不同选项。同一应用的不同音频类型所关联的音频参数的数值不同,一个音频类型可以关联一个或多个录音算法的音频参数。
S506,算法模块获取音频驱动发送的通过录音mic通路采集的音频数据。
示例性的,音频驱动可通过录音mic通路采集周围环境的音频数据,如音频驱动分别获取手机正面的顶部麦克风和底部麦克风的第一输入音频数据,将该第一输入音频数据作为通过录音mic通路采集的音频数据发送至算法模块。
S507,算法模块根据第一全局变量中的参数,处理录音mic通路采集的音频数据。
示例性的,算法模块可以根据第一全局变量中的参数,配置所使用的录音算法,利用配置好的录音算法,处理录音mic通路采集的音频数据。例如,根据第一全局变量中的比例系数参数、积分时间参数和微分时间参数,配置增益控制算法,利用配置好的增益控制算法处理录音mic通路采集的音频数据。再如,根据第一全局变量中的权重预测误差(Weighted Prediction Error)、多通道线性预测(multichannel linear prediction,MCLP)和逆滤波,配置混响去除算法,利用配置好的混响去除算法处理录音mic通路采集的音频数据。
这里,算法模块可以边处理音频数据边将处理后的音频数据保存到录音应用指定的文件中,或者,算法模块将开始录音至结束录音的所有音频数据都处理完后,一并将所有处理后的音频数据保存到录音应用指定的文件中。
S508,录音应用向音频服务发送结束录音请求。
其中,结束录音请求用于将录音应用结束录音的消息通知给音频服务。
示例性的,响应于用户的结束录音操作,例如图1d中(1)点击结束控件1023的操作,录音应用向音频服务发送结束录音请求。
S509,音频服务向音频HAL发送结束录音标识。
示例性的,音频服务在接收到结束录音请求后,向音频HAL发送结束录音标识。其中,结束录音标识用于指示音频HAL关闭录音mic通路,和指示算法模块释放第一全局变量的内存。
S510,音频HAL根据结束录音标识,通过音频驱动关闭录音mic通路。
示例性地,音频HAL接收到结束录音标识后,通过音频驱动关闭手机正面的底部麦克风和顶部麦克风,以关闭录音mic通路。
S511,音频HAL向算法模块发送结束录音标识。
S512,算法模块根据结束录音标识,删除第一全局变量。
示例性地,在录音应用结束录音后,算法模块可通过删除第一全局变量,以释放第一全局变量的内存,降低手机的内存占有率,进而提升手机的运行速度。
需要说明的是,在一些其他应用场景下,如用户使用某些应用进行录像或直播的场景,流程与上述录音场景的流程类似,仅涉及到的应用、应用标识和音频类型有区别,此处不再一一具体描述了。
本实施例中,算法模块可以为每一应用创建其应用标识对应的全局变量,并将与其音频类型关联的音频参数添加至该全局变量中,避免了多个应用共用一个全局变量导致参数被覆盖的问题。
上述示例出了一个应用的音频采集任务从开始至结束的过程,下面将介绍两个应用的音频采集任务并发运行至结束的场景,至于三个应用或三个以上应用的并发场景,与两个应用的并发场景类似,本申请不再一一详细介绍了。
在另一个应用场景中,在录音应用和录像应用的音频采集任务并发运行至结束的场景下,如图6a所示,录音应用开始录音,至录音应用切换到后台运行,前台运行录像应用录像的过程,包括:
S601,录音应用向音频服务发送开始录音请求。
S602,音频服务向音频HAL发送录音应用的第一音频类型和第一应用标识。
S603,音频HAL根据第一音频类型,通过音频驱动打开录音mic通路。
S604,音频HAL向算法模块发送第一音频类型和第一应用标识。
S605,算法模块创建与第一应用标识对应的第一全局变量,并将与第一音频类型关联的音频参数添加至第一全局变量中。
S606,算法模块获取音频驱动发送的通过录音mic通路采集的音频数据。
S607,算法模块根据第一全局变量中的参数,处理录音mic通路采集的音频数据。
其中,针对S601至S607的实现方式,可以参考上述对S501至S507的详细描述。
S608,录音应用向音频服务发送切换至后台运行消息。
示例性的,响应于用户的切换至后台操作,录音应用向音频服务发送切换至后台运行消息,以将录音应用切换至后台运行的消息通知给音频服务。
S609,算法模块获取音频驱动发送的通过录音mic通路采集的音频数据。
S610,算法模块根据第一全局变量中的参数,处理录音mic通路采集的音频数据。
需要说明的是,录音应用在保持后台运行录音,且前台未运行其他具有音频采集功能的应用的过程中,算法模块会持续获取录音mic通路采集的音频数据,并根据第一全局变量中的参数,处理录音mic通路采集的音频数据。其中,具有音频采集功能的应用如录音类应用、录像类应用和直播类应用等。
S611,录像应用向音频服务发送开始录像请求。
示例性的,响应于用户开始录像的操作,录像应用向音频服务发送开始录像请求。
需要说明的是,录音应用在保持后台运行录音,且前台运行录像应用的录像过程中,算法模块仅处理在此期间录像应用对应的mic通路采集的音频数据,导致录音应用无法获取相应的音频数据,即录音应用在此期间会录制无声。
S612,音频服务向音频HAL发送录像应用的第二音频类型和第二应用标识。
示例性的,音频服务在接收到开始录像请求后,向音频HAL发送录像应用的第二音频类型和第二应用标识。音频服务向音频HAL发送第二启动输入会话start inputsession2,启动输入会话中包含第二音频类型algo_set_parameter2和第二应用标识algo_scene_id=2。其中,第二音频类型可以是前置录像、后置录像或双景录像中的一种,第二应用标识为录像应用的序列号,例如,当使用key值表示应用标识时,第二应用标识也就是key值等于2。
S613,音频HAL根据第二音频类型,通过音频驱动打开录像mic通路。
示例性的,录像mic通路用于采集录像应用所需要的音频数据,录像mic通路包括手机正面的顶部麦克风和底部麦克风,以及手机背面的背部麦克风。音频HAL可以通过音频驱动打开手机正面的顶部麦克风和底部麦克风,以及手机背面的背部麦克风,以打开录像mic通路。此时,由于录音应用在后台保持运行,录音mic通路对应的顶部麦克风和底部麦克风处于打开状态。当通过音频驱动打开录像mic通路时,仅需要再录音mic通路打开的基础上,再打开手机背面的背部麦克风即可,可以理解为由录音mic通路和背部麦克风可组合成录像mic通路。
S614,音频HAL向算法模块发送第二音频类型和第二应用标识。
S615,算法模块创建与第二应用标识对应的第二全局变量,并将与第二音频类型关联的音频参数添加至第二全局变量中。
示例性的,算法模块在接收到第二应用标识后,首先需要判断是否存在与第二应用标识对应的第二全局变量,若存在则可直接调用第二全局变量;若不存在则需要创建与第二应用标识对应的第二全局变量。算法模块配置有音频类型与音频参数的关联关系,可根据音频类型与音频参数的关联关系,确定与第二音频类型关联的音频参数,并将与第二音频类型关联的音频参数添加至创建好的第二全局变量中。例如,录像应用的前置录像、后置录像或双景录像,均关联降噪算法的参数,包括:滤波器类型、滤波器阶数、滤波器系数、采样频率和帧长等。
S616,算法模块获取音频驱动发送的通过录像mic通路采集的音频数据。
示例性的,音频驱动可通过录像mic通路采集周围环境的音频数据,如音频驱动分别获取手机正面的顶部麦克风和底部麦克风,以及手机背面的背部麦克风的第二输入音频数据,将该第二输入音频数据作为通过录像mic通路采集的音频数据发送至算法模块。
S617,算法模块根据第二全局变量中的参数,处理录像mic通路采集的音频数据。
示例性的,算法模块可以根据第二全局变量中的参数,配置所使用录音算法,利用配置好的录音算法,处理录像mic通路采集的音频数据。例如,根据第二全局变量中的滤波器类型、滤波器阶数、滤波器系数、采样频率和帧长等参数,配置降噪算法,并利用配置好的降噪算法处理录像mic通路采集的音频数据。
继续参见图6b所示的流程,录像应用结束录像,再将录音应用切换至前台运行,直到录音结束的流程,包括:
S618,录像应用向音频服务发送结束录像请求。
示例性的,响应于用户的结束录像操作,或者响应于用户将录像应用切换到后台运行操作,录像应用向音频服务发送结束录像请求。其中,结束录像请求用于将录像应用结束录像的消息通知给音频服务。这里,在录像应用进行录像的过程中,若将录像应用切换到后台运行,则手机会自动判定结束录像。所以,若检测到用户将录像应用切换到后台,则录像应用向音频服务发送结束录像请求。
S619,音频服务向音频HAL发送结束录像标识。
示例性的,音频服务在接收到结束录像请求后,向音频HAL发送结束录像标识。其中,结束录像标识用于指示音频HAL关闭录像mic通路,和指示算法模块释放第二全局变量的内存。
S620,音频HAL根据结束录像标识,通过音频驱动关闭录像mic通路。
示例性的,音频HAL接收到结束录像标识后,通过音频驱动关闭手机正面的底部麦克风和顶部麦克风,以及手机背面的背部麦克风,以关闭录音mic通路。需要注意的是,录音mic通路包括手机正面的底部麦克风和顶部麦克风,此时关闭录像mic通路,录音mic通路也会一并被关闭。
S621,音频HAL向算法模块发送结束录像标识。
S622,算法模块根据结束录像标识,删除第二全局变量。
示例性的,算法模块可通过删除第二全局变量,以释放第二全局变量的内存,增加手机的可用空间内存,进而,提升手机的运行流畅度。
S623,录音应用向音频服务发送切换至前台运行消息。
示例性的,响应于用户切换至前台操作,录音应用向音频服务发送切换至前台运行消息,以将录音应用从后台切换至前台运行的消息通知给音频服务。
S624,音频服务向音频HAL发送第一应用标识。
示例性的,音频服务在接收到录音应用发送的切换至前台运行消息后,向音频HAL发送录音应用的第一应用标识。
S625,音频HAL根据第一应用标识,通过音频驱动打开录音mic通路。
示例性的,由于在关闭录像mic通路时,录音mic通路也被一并关闭,所以需要音频HAL根据第一应用标识通过音频驱动重新打开录音mic通路。音频HAL可根据第一应用标识,查找与录音应用相关的通路打开记录,从通路打开记录中确定录音应用上一次所使用的录音mic通路,进而,音频HAL通过音频驱动打开录音mic通路。
S626,音频HAL向算法模块发送第一应用标识。
S627,音频驱动向算法模块发送通过录音mic通路采集的音频数据。
S628,算法模块调用第一应用标识对应的第一全局变量;根据第一全局变量中的参数,处理录音mic通路采集的音频数据。
这里,由于在第一应用刚开始录音时,已创建好第一应用标识对应的第一全局变量,第一应用从后台切换回前台运行时,就不需要再重新创建,可以直接根据第一应用的标识,调用第一全局变量。
S629,录音应用向音频服务发送结束录音请求。
示例性的,响应于用户的结束录音操作,录音应用向音频服务发送结束录音请求。
S630,音频服务向音频HAL发送结束录音标识。
S631,音频HAL根据结束录音标识,通过音频驱动关闭录音mic通路。
S632,音频HAL向算法模块发送结束录音标识。
S633,算法模块根据结束录音标识,删除第一全局变量。
其中,对于S629至S633,参见上述对S508至S512的详细描述。
简单来讲,如图7a所示,本申请的方案中,每打开一个App(Application,应用程序)时,音频服务通过音频HAL将该App的音频类型和应用标识传输至算法模块。算法模块判断是否存在应用标识对应的全局变量,若存在可以直接调用并使用该全局变量;若不存在则需要创建与该应用标识对应的全局变量,并将与音频类型关联的音频参数添加至创建好的全局变量中。在多个应用的并发场景下,如图7a所示的App1至App4这四个应用并发运行的场景,将某个后台App切换至前台运行时,音频服务通过音频HAL将切换后App的应用标识传输至算法模块。算法模块可根据切换后App的应用标识,直接调用与该应用标识对应的全局变量,进而,根据该全局变量中的参数,处理音频驱动传输过来的音频数据。避免了多个应用并发场景下,全局变量中参数被覆盖的问题,可实现按照切换后应用的音频参数处理采集的音频数据,保证音频数据的处理效果,提升用户的使用体验。
图1a至图1d所示的应用场景中,使用本申请的方案录音应用播放获取的音频数据时,音频条的内容格式如图7b所示,相较于目前方案播放音频数据时的音频条(如图1f),本申请可保证录像结束后,将录音应用切回前台运行至录音结束阶段具有声音。
下面结合附图具体说明电子设备执行音频数据处理方法的过程。图8为示例性示出的一种音频数据处理的方法的流程图,本示例中,电子设备以手机为例进行说明。
S801,音频HAL获取第一应用的第一音频类型和第一应用标识。
其中,第一应用为具有音频采集功能的应用,如具有录音功能、录像功能或直播功能的应用。当第一应用为录音应用时,第一音频类型为会议录音、采访录音、人声模式、3D录音和音乐模式中的一种;当第一应用为录像应用时,第一音频类型为前置录像、后置录像或双景录像中的一种。其中,可以用一些指令或参数标识音频类型,例如,IMEDIA_RECORD_3D_REC标识为3D录音、IMEDIA_RECORD_VR_FRONT标识为前置录像、IMEDIA_RECORD_DOUBLE_VR标识为双景录像、IMEDIA_RECORD_VR_BACK标识为后置录像、IMEDIA_RECORD_LIVE_TELECAST标识为直播、IMEDIA_RECORD_MULMIC_EAR标识为多麦耳机模式、IMEDIA_RECORD_KARAOKE标识为卡拉OK等。
示例性的,响应于用户启动第一应用的音频采集任务操作,第一应用向音频服务发送第一音频采集请求。音频服务响应于第一音频采集请求,向音频HAL下发第一应用的第一音频类型和第一应用标识,以使音频HAL获取第一音频类型和第一应用标识。其中,音频采集任务可以是录音、录像或直播。
S802,音频HAL打开第一音频类型对应的第一mic通路,算法模块创建第一应用标识对应的第一全局变量,并将与第一音频类型关联的音频参数添加至第一全局变量中。
例如,当第一应用为录音应用时,第一音频类型对应的第一mic通路为录音mic通路;当第一应用为录像应用时,第一音频类型对应的第一mic通路为录像mic通路。
在一个可实现方式中,音频HAL根据第一音频类型打开第一mic通路后,向算法模块发送第一音频类型和第一应用标识。算法模块判断是否存在与第一应用标识对应的全局变量,若存在,则直接调用与第一应用标识对应的全局变量;若不存在,则创建与第一应用标识对应的第一全局变量,并将与第一音频类型关联的音频参数添加至第一全局变量中。
S803,算法模块根据第一全局变量中的参数,处理第一mic通路采集的音频数据。
示例性的,算法模块接收音频驱动发送的通过第一mic通路采集的音频数据,根据第一全局变量中的参数,处理第一mic通路采集的音频数据。当第一应用为录音应用时,本步骤的实现方式可参考针对S507的描述;当第一应用为录像应用时,本步骤的实现方式可参考针对S617的描述。
S804,音频服务判断第一应用的音频采集任务是否结束,若是,执行S805;若否,则执行S806。
S805,音频HAL关闭第一mic通路,算法模块删除第一全局变量,之后结束。
示例性的,响应于用户的结束第一应用的音频采集任务操作,第一应用向音频服务发送第一结束采集请求。音频服务接收到第一结束采集请求后,音频服务向音频HAL发送第一结束采集标识。音频HAL根据第一结束采集标识,关闭第一mic通路,并将第一结束采集标识发送至算法模块。算法模块根据第一结束采集标识,删除第一全局变量。
S806,音频服务判断是否将第一应用切换到后台运行,前台运行第二应用的音频采集任务,若是,执行S807;若否,则返回执行S803。
其中,第二应用为具有音频采集功能的应用,第二应用与第一应用为两个不同应用。
S807,音频HAL获取第二应用的第二音频类型及第二应用标识。
示例性的,响应于用户前台运行第二应用的音频采集任务操作,第二应用向音频服务发送第二音频采集请求。音频服务响应于第二音频采集请求,向音频HAL发送第二应用的第二音频类型和第二应用标识,以使音频HAL获取第二音频类型和第二应用标识。
S808,音频HAL打开第二音频类型对应的第二mic通路,算法模块创建第二应用标识对应的第二全局变量,并将与第二音频类型关联的音频参数添加至第二全局变量中。
示例性的,音频HAL根据第二音频类型打开第二mic通路后,将第二音频类型和第二应用标识发送至算法模块。算法模块判断是否存在与第二应用标识对应的全局变量,若存在,则直接调用与第二应用标识对应的全局变量;若不存在,则创建与第二应用标识对应的第二全局变量,并将与第二音频类型关联的音频参数添加至第二全局变量中。
S809,算法模块根据第二全局变量中的参数,处理第二mic通路采集的音频数据。
示例性的,算法模块根据第二全局变量中的参数,配置相应的录音算法,利用配置好的录音算法,处理第二mic通路采集的音频数据。例如,当第一应用为录音应用时,本步骤的实现方式可参考针对S507的描述;当第一应用为录像应用时,本步骤的实现方式可参考针对S617的描述。
S810,音频服务判断第二应用的音频采集任务是否结束,若是,执行S811;若否,则返回执行S809。
S811,音频HAL关闭第二mic通路,算法模块删除第二全局变量。
S812,音频服务判断是否将第一应用的音频采集任务切换到前台运行,若是,则执行S813;若否,则结束。
S813,音频HAL根据第一应用标识,打开第一mic通路;算法模块调用第一全局变量,之后执行S803。
示例性的,音频HAL根据第一应用标识,查找与第一应用相关的通路打开记录,从与第一应用相关的通路打开记录中确定第一应用上一次所使用的第一mic通路,进而,音频HAL通过音频驱动打开第一mic通路。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的音频数据处理方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的音频数据处理方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的音频数据处理方法。
其中,本实施例提供的电子设备(如手机等)、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (11)
1.一种音频数据处理方法,其特征在于,应用于电子设备,所述方法包括:
响应于对第一应用的第一操作,通过第一mic通路采集第一音频数据;
确定与所述第一应用对应的第一全局变量,并根据所述第一全局变量中的参数对所述第一音频数据进行处理,得到与所述第一应用对应的第一目标音频;
在将所述第一应用切换到后台运行之后,响应于对第二应用的第二操作,通过第二mic通路采集第二音频数据;
确定与所述第二应用对应的第二全局变量,并根据所述第二全局变量中的参数对所述第二音频数据进行处理,得到与所述第二应用对应的第二目标音频;
响应于第三操作将所述第一应用切换回前台运行,继续通过所述第一mic通路采集第三音频数据,并根据所述第一全局变量中的参数对所述第三音频数据进行处理,得到与所述第一应用对应的第三目标音频。
2.根据权利要求1所述的方法,其特征在于,确定与所述第一应用对应的第一全局变量,包括:
创建与所述第一应用的应用标识对应的第一全局变量;
将与所述第一应用的音频类型关联的音频参数添加至所述第一全局变量中。
3.根据权利要求1所述的方法,其特征在于,在根据所述第一全局变量中的参数对所述第三音频数据进行处理,得到与所述第一应用对应的第三目标音频之后,所述方法还包括:
响应于对所述第一应用的第四操作,关闭所述第一应用和第一mic通路,并删除所述第一全局变量。
4.根据权利要求1所述的方法,其特征在于,在将所述第一应用切换到后台运行之后,且在响应于对第二应用的第二操作之前,所述方法还包括:
通过所述第一mic通路采集第四音频数据;
根据所述第一全局变量中的参数对所述第四音频数据进行处理,得到与所述第一应用对应的第四目标音频。
5.根据权利要求1所述的方法,其特征在于,确定与所述第二应用对应的第二全局变量,包括:
创建与所述第二应用的应用标识对应的第二全局变量;
将与所述第二应用的音频类型关联的音频参数添加至所述第二全局变量中。
6.根据权利要求1所述的方法,其特征在于,所述第一mic通路与所述第二mic通路不同。
7.根据权利要求6所述的方法,其特征在于,所述第一mic通路包括第一mic、第二mic,所述第二mic通路包括所述第一mic、所述第二mic和第三mic。
8.根据权利要求1所述的方法,其特征在于,在根据所述第二全局变量中的参数对所述第二音频数据进行处理,得到与所述第二应用对应的第二目标音频之后,所述方法还包括:
响应于对所述第二应用的第五操作,关闭所述第二应用和第二mic通路,并删除所述第二全局变量。
9.根据权利要求1至7任意一项所述的方法,其特征在于,所述第一应用为录音类应用,所述第二应用为录像类应用或直播类应用。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述存储器上,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-9中任一项所述的音频数据处理方法。
11.一种计算机可读存储介质,包括计算机程序,其特征在于,当所述计算机程序在电子设备上运行时,使得所述电子设备执行如权利要求1-9中任一项所述的音频数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311694470.8A CN117389507B (zh) | 2023-12-12 | 2023-12-12 | 音频数据处理方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311694470.8A CN117389507B (zh) | 2023-12-12 | 2023-12-12 | 音频数据处理方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117389507A true CN117389507A (zh) | 2024-01-12 |
CN117389507B CN117389507B (zh) | 2024-05-10 |
Family
ID=89467060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311694470.8A Active CN117389507B (zh) | 2023-12-12 | 2023-12-12 | 音频数据处理方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117389507B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180373489A1 (en) * | 2016-06-16 | 2018-12-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Audio stream processing method, mobile terminal and storage medium |
US20190042179A1 (en) * | 2016-06-16 | 2019-02-07 | Guangdong Oppo Mobile Telecommunications Corp. Ltd. | Sound effect processing method and mobile terminal |
CN109388367A (zh) * | 2018-09-04 | 2019-02-26 | Oppo广东移动通信有限公司 | 音效调整方法、装置、电子设备以及存储介质 |
CN111583941A (zh) * | 2020-05-07 | 2020-08-25 | 珠海格力电器股份有限公司 | 家电设备录音方法、装置、存储介质和家电设备 |
CN112579038A (zh) * | 2020-12-24 | 2021-03-30 | 上海商米科技集团股份有限公司 | 一种内置录音方法、装置、电子设备和存储介质 |
CN112750462A (zh) * | 2020-08-07 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 一种音频处理方法、装置及设备 |
CN113395531A (zh) * | 2021-05-14 | 2021-09-14 | 广州虎牙科技有限公司 | 播放切换方法、装置、电子设备及计算机可读存储介质 |
CN113870912A (zh) * | 2021-09-02 | 2021-12-31 | 中科创达软件股份有限公司 | 一种录音方法、装置、设备及存储介质 |
CN114496007A (zh) * | 2022-01-26 | 2022-05-13 | 深圳市有方科技股份有限公司 | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
CN114697742A (zh) * | 2020-12-25 | 2022-07-01 | 华为技术有限公司 | 一种视频录制方法及电子设备 |
CN115550559A (zh) * | 2022-04-13 | 2022-12-30 | 荣耀终端有限公司 | 视频画面显示方法、装置、设备和存储介质 |
CN115576518A (zh) * | 2022-09-30 | 2023-01-06 | 上海移远通信科技有限公司 | 音频数据的获取方法、装置、终端及存储介质 |
CN115966203A (zh) * | 2021-10-08 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 一种音频采集方法及装置 |
-
2023
- 2023-12-12 CN CN202311694470.8A patent/CN117389507B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180373489A1 (en) * | 2016-06-16 | 2018-12-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Audio stream processing method, mobile terminal and storage medium |
US20190042179A1 (en) * | 2016-06-16 | 2019-02-07 | Guangdong Oppo Mobile Telecommunications Corp. Ltd. | Sound effect processing method and mobile terminal |
CN109388367A (zh) * | 2018-09-04 | 2019-02-26 | Oppo广东移动通信有限公司 | 音效调整方法、装置、电子设备以及存储介质 |
CN111583941A (zh) * | 2020-05-07 | 2020-08-25 | 珠海格力电器股份有限公司 | 家电设备录音方法、装置、存储介质和家电设备 |
CN112750462A (zh) * | 2020-08-07 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 一种音频处理方法、装置及设备 |
CN112579038A (zh) * | 2020-12-24 | 2021-03-30 | 上海商米科技集团股份有限公司 | 一种内置录音方法、装置、电子设备和存储介质 |
CN114697742A (zh) * | 2020-12-25 | 2022-07-01 | 华为技术有限公司 | 一种视频录制方法及电子设备 |
CN113395531A (zh) * | 2021-05-14 | 2021-09-14 | 广州虎牙科技有限公司 | 播放切换方法、装置、电子设备及计算机可读存储介质 |
CN113870912A (zh) * | 2021-09-02 | 2021-12-31 | 中科创达软件股份有限公司 | 一种录音方法、装置、设备及存储介质 |
CN115966203A (zh) * | 2021-10-08 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 一种音频采集方法及装置 |
CN114496007A (zh) * | 2022-01-26 | 2022-05-13 | 深圳市有方科技股份有限公司 | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
CN115550559A (zh) * | 2022-04-13 | 2022-12-30 | 荣耀终端有限公司 | 视频画面显示方法、装置、设备和存储介质 |
CN115576518A (zh) * | 2022-09-30 | 2023-01-06 | 上海移远通信科技有限公司 | 音频数据的获取方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117389507B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4030276B1 (en) | Content continuation method and electronic device | |
CN113542839B (zh) | 电子设备的投屏方法和电子设备 | |
CN113272745B (zh) | 智能家居设备分享***、方法及电子设备 | |
CN112492193B (zh) | 一种回调流的处理方法及设备 | |
WO2021036898A1 (zh) | 折叠屏设备中应用打开方法及相关装置 | |
CN114185503B (zh) | 多屏交互的***、方法、装置和介质 | |
CN112351156A (zh) | 一种镜头切换方法及装置 | |
CN114727101B (zh) | 一种天线功率调节方法及电子设备 | |
CN114466107A (zh) | 音效控制方法、装置、电子设备及计算机可读存储介质 | |
CN113141483B (zh) | 基于视频通话的共享屏幕方法及移动设备 | |
CN113472477B (zh) | 无线通信***及方法 | |
CN114258671A (zh) | 通话方法及装置 | |
CN114063951B (zh) | 投屏异常处理方法及电子设备 | |
CN115705241B (zh) | 应用的调度方法及电子设备 | |
WO2021052388A1 (zh) | 一种视频通信方法及视频通信装置 | |
CN117389507B (zh) | 音频数据处理方法、电子设备及存储介质 | |
CN113672404A (zh) | 一种显示方法和电子终端设备 | |
CN115243236A (zh) | 一种音频数据无缝切换方法 | |
CN115185441A (zh) | 控制方法、装置、电子设备及可读存储介质 | |
CN114079809A (zh) | 终端及其输入方法与装置 | |
CN116723384B (zh) | 进程的控制方法、电子设备及可读存储介质 | |
US20230247085A1 (en) | Terminal device interaction method and apparatus | |
CN114338891B (zh) | 一种通信方法及装置 | |
WO2024067432A1 (zh) | 一种音频传输方法、***以及相关装置 | |
WO2023216922A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |