CN114265573B - 一种音效控制方法、系统及中控车机 - Google Patents
一种音效控制方法、系统及中控车机 Download PDFInfo
- Publication number
- CN114265573B CN114265573B CN202111603428.1A CN202111603428A CN114265573B CN 114265573 B CN114265573 B CN 114265573B CN 202111603428 A CN202111603428 A CN 202111603428A CN 114265573 B CN114265573 B CN 114265573B
- Authority
- CN
- China
- Prior art keywords
- audio
- interface
- sound effect
- dsp
- library
- 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.)
- Active
Links
Landscapes
- Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种音效控制方法、系统及中控车机,所述方法包括:基于应用程序调用安卓框架中的音频接口;基于所述音频接口调用音频硬件抽象层;在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。本发明基于Android原有音效API不变情况下,实现外部DSP低开发成本接入,方便快速迭代升级,使音效控制app具有普适性和统一性,方便移植。
Description
技术领域
本发明涉及音效控制技术领域,尤其涉及一种音效控制方法、系统、中控车机及计算机可读存储介质。
背景技术
现有Android车机普遍都会外加DSP(Digital Signal Process,数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法),用来处理车载上多媒体音频。在DSP接口控制上,一般采用app直接控制直接调用I2C控制器实现(直接打开i2c设备文件,通过ioctl来读写文件),这样在更换DSP芯片后app通常需要反复修改调试效果(在dsp更换后,每个芯片的音效参数是不一样的,这些参数影响音频的听觉效果,相关的参数通常要试验多次不同参数才到达满意的效果),兼容性不好。
因此,现有技术还有待于改进和发展。
发明内容
本发明的主要目的在于提供一种音效控制方法、系统、中控车机及计算机可读存储介质,旨在解决现有技术中中控车机更换DSP芯片后app通常需要反复修改调试效果,兼容性不好的问题。
为实现上述目的,本发明提供一种音效控制方法,所述音效控制方法包括如下步骤:
基于应用程序调用安卓框架中的音频接口;
基于所述音频接口调用音频硬件抽象层;
在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;
加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;
在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
所述的音效控制方法,其中,所述音频接口包括低音增强接口、均衡器接口和虚拟化接口。
所述的音效控制方法,其中,所述自定义的音效库用于实现对上层应用提供音效设置接口,实现多个DSP型号参数逻辑统一封装处理,并实现对底层DSP驱动的统一接口调用。
所述的音效控制方法,其中,所述配置文件包括不同型号DSP参数配置。
所述的音效控制方法,其中,所述DSP控制接口为DSP ALSA接口。
此外,为实现上述目的,本发明还提供一种音效控制系统,其中,所述音效控制系统包括:
接口调用模块,用于基于应用程序调用安卓框架中的音频接口;
硬件调用模块,用于基于所述音频接口调用音频硬件抽象层;
文件处理模块,用于在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;
接口封装模块,用于加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;
接口统一模块,用于在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
此外,为实现上述目的,本发明还提供一种中控车机,其中,所述中控车机包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的音效控制程序,所述音效控制程序被所述处理器执行时实现如上所述的音效控制方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有音效控制程序,所述音效控制程序被处理器执行时实现如上所述的音效控制方法的步骤。
本发明中,基于应用程序调用安卓框架中的音频接口;基于所述音频接口调用音频硬件抽象层;在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。本发明基于Android原有音效API不变情况下,实现外部DSP低开发成本接入,方便快速迭代升级,使音效控制app具有普适性和统一性,方便移植。
附图说明
图1是本发明音效控制方法的较佳实施例的流程图;
图2是本发明音效控制方法的较佳实施例中整体工作流程图;
图3是本发明音效控制系统的较佳实施例的原理示意图;
图4为本发明中控车机的较佳实施例的运行环境示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明较佳实施例所述的音效控制方法,如图1和图2所示,所述音效控制方法包括以下步骤:
步骤S10、基于应用程序调用安卓框架中的音频接口。
具体地,所述音频接口包括低音增强接口、均衡器接口和虚拟化接口。由应用程序调用Android框架中的音频接口(低音增强接口、均衡器接口、虚拟化接口)。
步骤S20、基于所述音频接口调用音频硬件抽象层。
具体地,通过低音增强接口、均衡器接口或者虚拟化接口调用③硬件抽象层(音频硬件抽象层)。
步骤S30、在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件。
具体地,硬件抽象层(音频硬件抽象层)中,通过修改音频库配置文件(audio_effects.conf),让系统加载自定义的音效库文件(custom dsp library)。
步骤S40、加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件。
具体地,上面加载自定义的音效库(custom dsp library)后,在这个库里面实现统一音频接口封装,然后加载配置文件(dsp_params.xml,不同型号DSP参数配置,上面列举为型号:罗姆bd37033和罗姆bu32107)。
步骤S50、在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
具体地,通过上述过程后,在上述自定义的音效库中调用linux声卡驱动接口(目前linux声卡控制默认为alsa接口),在这里实现DSP ALSA接口统一,最后控制DSP芯片。
本发明中,利用Android中audiofx(音效增强)现有接口,在不做修改相关接口代码的前提下,app在调用音效接口时,利用传入参数的每一个bit位用于区分是外部DSP参数还是Android原有音效参数,达到和原有框架不冲突,app在调用接口时就不用再自定义私有接口。利用Android中音效配置audio_effects.conf(音频动态库配置文件),将里面的音效处理配置成自己实现的库(实现对上层应用提供音效设置接口,实现多个DSP型号参数逻辑统一封装处理,最终实现对底层DSP驱动的统一接口调用),实现同Android一样的接口,让系统能调到自定义DSP库文件,最终实现app->android api->dsp音效控制(上层app到底层的一个调用流程)。在自定义DSP音效库中实现对应多个型号DSP接口逻辑封装,调用标准alsa接口。在kernel中实现对DSP控制的标准ALSA接口。
其中,在音频处理库中针对不同型号DSP处理器,做对应的控制逻辑,对外屏蔽接口差异,对底下ALSA驱动接口统一,不同DSP参数配置通过xml文件进行配置,调试时修改xml文件即可,如bd37033和bu32107。
本发明的设计兼容Android api,自定义音效控制与第三方app调用api相同,普适性好,在控制DSP对应音频效果时,控制传入Android api参数对应的bit即可设置DSP音频效果控制,同时又不需要修改Android framework对应代码。在实现自定义音效控制库中,通过配置文件的方式,修改对应DSP型号的配置即可在调试时快速适配不同DSP音频效果。这样设计,可以在更换DSP chip时快速接入Android车机,软件上以最小修改代价减少开发周期,提高程序的普适性和移植性。
进一步地,基于上述音效控制方法,如图3所示,本发明还提供一种音效控制系统,其中,所述音效控制系统包括:
接口调用模块51,用于基于应用程序调用安卓框架中的音频接口;
硬件调用模块52,用于基于所述音频接口调用音频硬件抽象层;
文件处理模块53,用于在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;
接口封装模块54,用于加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;
接口统一模块55,用于在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
进一步地,如图4所示,基于上述音效控制方法,本发明还相应提供了一种中控车机,所述中控车机包括处理器10、存储器20及显示器30。图4仅示出了中控车机的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
所述存储器20在一些实施例中可以是所述中控车机的内部存储单元,例如中控车机的硬盘或内存。所述存储器20在另一些实施例中也可以是所述中控车机的外部存储设备,例如所述中控车机上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器20还可以既包括所述中控车机的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述中控车机的应用软件及各类数据,例如所述安装中控车机的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有音效控制程序40,该音效控制程序40可被处理器10所执行,从而实现本申请中音效控制方法。
所述处理器10在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述音效控制方法等。
所述显示器30在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。所述显示器30用于显示在所述中控车机的信息以及用于显示可视化的用户界面。所述中控车机的部件10-30通过系统总线相互通信。
在一实施例中,当处理器10执行所述存储器20中音效控制程序40时实现以下步骤:
基于应用程序调用安卓框架中的音频接口;
基于所述音频接口调用音频硬件抽象层;
在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;
加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;
在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
其中,所述音频接口包括低音增强接口、均衡器接口和虚拟化接口。
其中,所述自定义的音效库用于实现对上层应用提供音效设置接口,实现多个DSP型号参数逻辑统一封装处理,并实现对底层DSP驱动的统一接口调用。
其中,所述配置文件包括不同型号DSP参数配置。
其中,所述DSP控制接口为DSP ALSA接口。
本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有音效控制程序,所述音效控制程序被处理器执行时实现如上所述的音效控制方法的步骤。
综上所述,本发明提供一种音效控制方法、系统及中控车机,所述方法包括:基于应用程序调用安卓框架中的音频接口;基于所述音频接口调用音频硬件抽象层;在所述音频硬件抽象层中,修改音频库配置文件,控制系统加载自定义的音效库文件;加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件;在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。本发明基于Android原有音效API不变情况下,实现外部DSP低开发成本接入,方便快速迭代升级,使音效控制app具有普适性和统一性,方便移植。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的计算机可读存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的计算机可读存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (7)
1.一种音效控制方法,其特征在于,所述音效控制方法包括:
基于应用程序调用安卓框架中的音频接口,所述音频接口包括低音增强接口、均衡器接口和虚拟化接口;
基于所述音频接口调用音频硬件抽象层;
在所述音频硬件抽象层中,修改音频库配置文件audio_effects.conf,控制系统加载自定义的音效库文件;
加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件dsp_params.xml;
在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
2.根据权利要求1所述的音效控制方法,其特征在于,所述自定义的音效库用于实现对上层应用提供音效设置接口,实现多个DSP型号参数逻辑统一封装处理,并实现对底层DSP驱动的统一接口调用。
3.根据权利要求1所述的音效控制方法,其特征在于,所述配置文件dsp_params.xml包括不同型号DSP参数配置。
4.根据权利要求1所述的音效控制方法,其特征在于,所述DSP控制接口为DSP ALSA接口。
5.一种音效控制系统,其特征在于,所述音效控制系统包括:
接口调用模块,用于基于应用程序调用安卓框架中的音频接口,所述音频接口包括低音增强接口、均衡器接口和虚拟化接口;
硬件调用模块,用于基于所述音频接口调用音频硬件抽象层;
文件处理模块,用于在所述音频硬件抽象层中,修改音频库配置文件audio_effects.conf,控制系统加载自定义的音效库文件;
接口封装模块,用于加载自定义的音效库,在自定义的音效库中进行统一音频接口封装,并加载配置文件dsp_params.xml;
接口统一模块,用于在自定义的音效库中调用内核声卡驱动接口统一DSP控制接口。
6.一种中控车机,其特征在于,所述中控车机包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的音效控制程序,所述音效控制程序被所述处理器执行时实现如权利要求1-4任一项所述的音效控制方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有音效控制程序,所述音效控制程序被处理器执行时实现如权利要求1-4任一项所述的音效控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111603428.1A CN114265573B (zh) | 2021-12-24 | 2021-12-24 | 一种音效控制方法、系统及中控车机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111603428.1A CN114265573B (zh) | 2021-12-24 | 2021-12-24 | 一种音效控制方法、系统及中控车机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114265573A CN114265573A (zh) | 2022-04-01 |
CN114265573B true CN114265573B (zh) | 2023-08-29 |
Family
ID=80830084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111603428.1A Active CN114265573B (zh) | 2021-12-24 | 2021-12-24 | 一种音效控制方法、系统及中控车机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114265573B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106210285A (zh) * | 2016-06-29 | 2016-12-07 | 北京奇虎科技有限公司 | 一种录音安全控制方法、装置和设备 |
CN107015805A (zh) * | 2017-03-29 | 2017-08-04 | 深圳市创成微电子有限公司 | 用以配置外置声卡的方法及装置 |
CN111459455A (zh) * | 2020-04-02 | 2020-07-28 | 北京四维智联科技有限公司 | 车载音频控制方法、装置及车载系统 |
CN111930340A (zh) * | 2020-09-21 | 2020-11-13 | 北京技德系统技术有限公司 | 一种基于Linux与Android兼容技术的虚拟音频装置与方法 |
CN112579038A (zh) * | 2020-12-24 | 2021-03-30 | 上海商米科技集团股份有限公司 | 一种内置录音方法、装置、电子设备和存储介质 |
CN112799631A (zh) * | 2021-01-22 | 2021-05-14 | 中汽创智科技有限公司 | 一种用于安卓系统上控制dsp的优化系统及其优化方法 |
CN112883220A (zh) * | 2021-01-22 | 2021-06-01 | 北京雷石天地电子技术有限公司 | 音频处理方法、音频处理装置及可读存储介质 |
CN113641329A (zh) * | 2021-08-10 | 2021-11-12 | 广州艾美网络科技有限公司 | 音效配置方法和装置、智能音箱、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108052312B (zh) * | 2017-12-06 | 2021-04-27 | 晶晨半导体(上海)股份有限公司 | 一种基于安卓系统实现多声道录音的方法及音频系统 |
-
2021
- 2021-12-24 CN CN202111603428.1A patent/CN114265573B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106210285A (zh) * | 2016-06-29 | 2016-12-07 | 北京奇虎科技有限公司 | 一种录音安全控制方法、装置和设备 |
CN107015805A (zh) * | 2017-03-29 | 2017-08-04 | 深圳市创成微电子有限公司 | 用以配置外置声卡的方法及装置 |
CN111459455A (zh) * | 2020-04-02 | 2020-07-28 | 北京四维智联科技有限公司 | 车载音频控制方法、装置及车载系统 |
CN111930340A (zh) * | 2020-09-21 | 2020-11-13 | 北京技德系统技术有限公司 | 一种基于Linux与Android兼容技术的虚拟音频装置与方法 |
CN112579038A (zh) * | 2020-12-24 | 2021-03-30 | 上海商米科技集团股份有限公司 | 一种内置录音方法、装置、电子设备和存储介质 |
CN112799631A (zh) * | 2021-01-22 | 2021-05-14 | 中汽创智科技有限公司 | 一种用于安卓系统上控制dsp的优化系统及其优化方法 |
CN112883220A (zh) * | 2021-01-22 | 2021-06-01 | 北京雷石天地电子技术有限公司 | 音频处理方法、音频处理装置及可读存储介质 |
CN113641329A (zh) * | 2021-08-10 | 2021-11-12 | 广州艾美网络科技有限公司 | 音效配置方法和装置、智能音箱、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114265573A (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9928038B2 (en) | Dynamically building locale objects or subsections of locale objects based on historical data | |
US11853820B2 (en) | Cross-process communication method, apparatus, and device | |
US10019298B2 (en) | Middleware interface and middleware interface generator | |
US9058193B2 (en) | Methods and systems for providing compatibility of applications with multiple versions of an operating system | |
US9678767B2 (en) | Unified extensible firmware interface (UEFI) driver and protocol | |
CN108762833A (zh) | 安卓系统中的应用启动方法和装置 | |
US9519600B2 (en) | Driver shimming | |
WO2023124968A1 (zh) | 软件操作系统调用Android动态库HAL接口的方法、设备及介质 | |
CN103617058B (zh) | 基于qnx的应用软件安装、卸载系统及方法 | |
CN104699503A (zh) | 一种替换安卓系统中函数的执行逻辑的方法及装置 | |
CN106919391B (zh) | 面向智能手机的可定制操作系统组件的嵌入式系统 | |
CN112631536B (zh) | 一种能源控制器lcd液晶显示控制系统及方法 | |
CN103530165A (zh) | 一种应用于物联网行业的java解决方案 | |
CN114265573B (zh) | 一种音效控制方法、系统及中控车机 | |
CN113032248A (zh) | 安卓系统的应用调试方法、装置、存储介质及电子设备 | |
CN111752623B (zh) | 显示配置方法、装置、电子设备及可读存储介质 | |
CN115509531A (zh) | 基于前端技术的微前端实现方法、装置、终端及存储介质 | |
CN102799451B (zh) | Wince系统镜像构建方法和系统、wince系统镜像 | |
CN113050962B (zh) | 移动服务升级方法、装置和终端 | |
WO2016026449A1 (zh) | 一种操作系统中控制硬件设备的方法和模块 | |
CN115237458A (zh) | 一种调用推理硬件执行ai应用的方法及相关产品 | |
US20040216140A1 (en) | Method and system for accessing system operations through an interface layer | |
CN112379911B (zh) | 固件模块注册信息处理方法、系统、存储介质、智能手机 | |
KR101077832B1 (ko) | 보조 프로세서의 내장 ui 구현 방법 | |
CN113076725B (zh) | 一种基于ppt推广第三方软件的方法及终端 |
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 |