一种音频数据处理方法及终端与流程

文档序号:11954735阅读:399来源:国知局
一种音频数据处理方法及终端与流程

本发明涉及终端技术领域,特别是指一种音频数据处理方法及终端。



背景技术:

目前智能移动设备KTV的需求越来越多,用户需要有像在KTV一样的用户体验,又要有比较好的音效效果。

但是,目前android平台实现KTV的如下两种方式各存在不同的缺陷:

第一种,没有耳返功能,只有唱完之后才能听唱的效果;

第二种,APP在应用层实现耳返跟音效处理,由于android分的层数太多,每层都会有比较大的缓存,导致耳返的声音会有比较大的延时,体验效果非常差。



技术实现要素:

本发明的目的在于提供一种音频数据处理方法及终端,解决现有技术中终端实现KTV耳返功能延时长的问题。

为了解决上述技术问题,本发明实施例提供一种音频数据处理方法,包括:

利用与硬件层相邻的层从所述硬件层获取录音的音频数据;

对所述音频数据进行音效处理,并混合到播放数据中进行播放。

本发明还提供了一种终端,包括:

获取模块,用于利用与硬件层相邻的层从所述硬件层获取录音的音频数据;

处理模块,用于对所述音频数据进行音效处理,并混合到播放数据中进行播放。

本发明的上述技术方案的有益效果如下:

上述方案中,所述音频数据处理方法通过利用与硬件层相邻的层从所述硬件层获取录音的音频数据,可以减少经过的缓存,实现低延时耳返,并不增加额外的硬件成本。

附图说明

图1为本发明实施例一的音频数据处理方法流程示意图;

图2为本发明实施例一的音频数据处理方法具体应用流程示意图一;

图3为本发明实施例一的音频数据处理方法具体应用流程示意图二;

图4为本发明实施例二的终端结构示意图;

图5为本发明实施例三的终端结构示意图;

图6为本发明实施例四的终端结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明针对现有的中终端实现KTV耳返功能延时长的问题,提供了多种解决方案,具体如下:

实施例一

如图1所示,本发明实施例一提供的音频数据处理方法,包括:

步骤11:利用与硬件层相邻的层从所述硬件层获取录音的音频数据。

在终端中设有数字音频处理器时,与硬件层相邻的层是指包含数字音频处理器的处理层;在终端中没有设有数字音频处理器时,与硬件层相邻的层是指内核层。

步骤12:对所述音频数据进行音效处理,并混合到播放数据中进行播放。

步骤12可以具体为对音频数据进行音效处理后保存,再从保存处获取处理后的音频数据进行播放。

本发明实施例一提供的音频数据处理方法主要应用于移动终端。

考虑到终端中可能有数字音频处理器,可能没有,所以,本发明实施例针对步骤11和步骤12提供了两种具体实现方式:

第一种,针对具有数字音频处理器的终端,所述利用与硬件层相邻的层从所述硬件层获取录音的音频数据的步骤包括:利用处理层从所述硬件层获取录音的音频数据;

所述对所述音频数据进行音效处理,并混合到播放数据中进行播放的步骤包括:利用处理层对所述音频数据进行音效处理,并混合到播放数据中进行播放;所述处理层包括数字音频处理器。

第二种,针对没有数字音频处理器的终端,所述利用与硬件层相邻的层从所述硬件层获取录音的音频数据的步骤包括:利用内核层从所述硬件层获取录音的音频数据;

所述对所述音频数据进行音效处理,并混合到播放数据中进行播放的步骤包括:利用框架层对所述音频数据进行音效处理,并利用内核层将处理后的音频数据混合到播放数据中进行播放。

利用框架层对所述音频数据进行音效处理可以增强系统的稳定性。

为了防止频繁执行音效处理操作,本发明实施例中,所述利用框架层对所述音频数据进行音效处理的步骤包括:在录音的音频数据的帧数大于或等于预设值时,利用框架层对所述音频数据进行音效处理。

也可以说是,在录音缓存中的数据达到预设值时,发送一个事件给KTV音效处理模块处理。预设值优选240帧。

为了保证播放跟录音同步,也不会出现断音跟啪音,本发明实施例一中,所述利用与硬件层相邻的层从所述硬件层获取录音的音频数据的步骤包括:利用与硬件层相邻的层使用第一采样率从所述硬件层采集录音的音频数据;

所述对所述音频数据进行音效处理,并混合到播放数据中进行播放的步骤包括:对所述音频数据进行音效处理,并混合到播放数据中使用所述第一采样率进行播放。

优选的,所述对所述音频数据进行音效处理的步骤包括:对所述音频数据进行消噪、动态压缩、均衡和混响处理。当然还可以包括其他操作,在此不做限定。

具体的,所述对所述音频数据进行音效处理,并混合到播放数据中进行播放的步骤包括:对所述音频数据进行音效处理,并保存;将处理后的音频数据混合到播放数据中进行播放。

保存音效处理后的音频数据是为了便于将处理后的音频数据混合到播放数据中进行播放。

下面对本发明实施例一提供的音频数据处理方法进行进一步说明,以android系统的终端KTV为例。

概括来说,为了实现低延时耳返,并不增加额外的硬件成本,本申请提出了在android内核层或者在数字音频处理器(ADSP)中实现KTV耳返跟音效处理的方法:

方式一

带有数字音频处理器(ADSP)的平台实现KTV耳返跟音效处理的方法,如图2所示:

建立音频播放通路(audio playback)跟音频录音通路(audio record);在数字音频处理器(ADSP)中保存录音(tx)的数据;对保存的录音(tx)的数据进行音效处理后保存在缓存(buffer)中;在数字音频处理器(ADSP)播放数据中把录音(tx)的数据混合到播放(rx)中;把混合后的数据播放出来。录音跟播放使用同样的采用率。

本方式由于数字音频处理器(ADSP)离硬件比较近,可以直接拿到硬件的数据,经过的缓存(buffer)很少,再加上数字音频处理器(ADSP)对数字信号处理比较快,处理时间特别短,可以做到30ms以内,这样短的延时,人感觉不出来。

另外,在数字音频处理器(ADSP)播放(rx)数据里把录音(tx)经过音效处理后的数据混合到播放(rx)中,加上播放跟录音用相同的采样率,可以保证播放跟录音同步,也不会出现断音跟啪音。

可以说,本申请提供了一种带有数字音频处理器(ADSP)平台实现低延时KTV耳返功能的方法,节省了硬件成本,同时提供了比较好的用户体验。

方式二

不带数字音频处理器(ADSP)芯片,在android内核层实现KTV耳返跟音效处理的方法,如图3所示:

建立音频播放(audio playback)跟音频录音(audio record)通路;在android内核中保录音的数据;当录音缓存中的数据达到240帧(5ms)时,发送一个事件给KTV音效处理模块处理;把录音的数据经过消噪,动态压缩,均衡,混响处理后保存到android内核中;在android内核播放通路的硬件(在android内核播放数据中把经过音效处理的录音数据混合到播放通路中;把混合后的数据播放出来。录音跟播放使用同样的采用率。

本方式由于没有带数字音频处理器(ADSP)平台的android内核离硬件比较近,可以直接拿到硬件的数据,经过的缓存很少,可以减少耳返的延时;把处理放到android系统层中去处理,可以增强系统的稳定性。

另外,在android内核播放通路的硬件中把录音的数据混合到播放数据中,加上播放跟录音用相同的采样率,可以保证播放跟录音同步,也不会出现断音跟啪音。

可以说,本申请提供了一种不带数字音频处理器(ADSP)平台实现低延时KTV耳返功能的方法,既节省了硬件成本,也提供了比较好的用户体验。

本发明实施例一提供的音频数据处理方法除了可以应用于移动终端KTV外,还可以应用到其他需要录到的声音,实时播放出来的情景。

实施例二

如图4所示,本发明实施例二提供的终端,包括:

获取模块41,用于利用与硬件层相邻的层从所述硬件层获取录音的音频数据。

在终端中设有数字音频处理器时,与硬件层相邻的层是指包含数字音频处理器的处理层;在终端中没有设有数字音频处理器时,与硬件层相邻的层是指内核层。

处理模块42,用于对所述音频数据进行音效处理,并混合到播放数据中进行播放。

处理模块42可具体用于对音频数据进行音效处理后保存,再从保存处获取处理后的音频数据进行播放。

本发明实施例二提供的终端主要指移动终端。

考虑到终端中可能有数字音频处理器,可能没有,所以,本发明实施例针对获取模块41和处理模块42提供了两种具体实现方式:

第一种,针对具有数字音频处理器的终端,所述获取模块包括:第一获取子模块,用于利用处理层从所述硬件层获取录音的音频数据;

所述处理模块包括:第一处理子模块,用于利用处理层对所述音频数据进行音效处理,并混合到播放数据中进行播放;所述处理层包括数字音频处理器。

第二种,针对没有数字音频处理器的终端,所述获取模块包括:第二获取子模块,用于利用内核层从所述硬件层获取录音的音频数据;

所述处理模块包括:第二处理子模块,用于利用框架层对所述音频数据进行音效处理,并利用内核层将处理后的音频数据混合到播放数据中进行播放。

利用框架层对所述音频数据进行音效处理可以增强系统的稳定性。

为了防止频繁执行音效处理操作,本发明实施例中,所述处理模块包括:第三处理子模块,用于在录音的音频数据的帧数大于或等于预设值时,利用框架层对所述音频数据进行音效处理。

也可以说是,第三处理子模块在录音缓存中的数据达到预设值时,发送一个事件给KTV音效处理模块处理。预设值优选240帧。

为了保证播放跟录音同步,也不会出现断音跟啪音,本发明实施例二中,所述获取模块包括:采集子模块,用于利用与硬件层相邻的层使用第一采样率从所述硬件层采集录音的音频数据;

所述处理模块包括:第四处理子模块,用于对所述音频数据进行音效处理,并混合到播放数据中使用所述第一采样率进行播放。

优选的,所述处理模块包括:第五处理子模块,用于对所述音频数据进行消噪、动态压缩、均衡和混响处理。当然还可以进行其他操作,在此不做限定。

具体的,所述处理模块包括:第六处理子模块,用于对所述音频数据进行音效处理,并保存;播放子模块,用于将处理后的音频数据混合到播放数据中进行播放。

此处,保存音效处理后的音频数据是为了便于将处理后的音频数据混合到播放数据中进行播放。

其中,上述音频数据处理方法的所述实现实施例均适用于该终端的实施例中,也能达到相同的技术效果。

实施例三

如图5所示,本发明实施例三提供的终端500包括:

至少一个处理器501、存储器502、至少一个网络接口504和其他用户接口503。终端500中的各个组件通过总线系统505耦合在一起。可理解,总线系统505用于实现这些组件之间的连接通信。总线系统505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统505。

其中,用户接口503可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

可以理解,本发明实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本文描述的系统和方法的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器502存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统5021和应用程序5022。

其中,操作系统5021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序5022,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序5022中。

在本发明实施例中,通过调用存储器502存储的程序或指令,具体的,可以是应用程序5022中存储的程序或指令,处理器501用于利用与硬件层相邻的层从所述硬件层获取录音的音频数据;对所述音频数据进行音效处理,并混合到播放数据中进行播放。

上述本发明实施例揭示的方法可以应用于处理器501中,或者由处理器501实现。处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

可选地,处理器501具体用于:利用处理层从所述硬件层获取录音的音频数据;利用处理层对所述音频数据进行音效处理,并混合到播放数据中进行播放;所述处理层包括数字音频处理器。

可选地,处理器501具体还用于:利用内核层从所述硬件层获取录音的音频数据;利用框架层对所述音频数据进行音效处理,并利用内核层将处理后的音频数据混合到播放数据中进行播放。

可选地,处理器501更具体用于:在录音的音频数据的帧数大于或等于预设值时,利用框架层对所述音频数据进行音效处理。

可选地,处理器501具体还用于:利用与硬件层相邻的层使用第一采样率从所述硬件层采集录音的音频数据;对所述音频数据进行音效处理,并混合到播放数据中使用所述第一采样率进行播放。

终端500能够实现前述实施例中终端实现的各个过程,为避免重复,这里不再赘述。

综上,本发明实施例三提供的所述终端通过利用与硬件层相邻的层从所述硬件层获取录音的音频数据,可以减少经过的缓存,实现低延时耳返,并不增加额外的硬件成本。

实施例四

具体地,如图6所示,本发明实施例四中的终端600可以为手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、或车载电脑等。

图6中的终端600包括射频(Radio Frequency,RF)电路610、存储器620、输入单元630、显示单元640、处理器660、音频电路670、WiFi(Wireless Fidelity)模块680和电源690。

其中,输入单元630可用于接收用户输入的数字或字符信息,以及产生与终端600的用户设置以及功能控制有关的信号输入。具体地,本发明实施例中,该输入单元630可以包括触控面板631。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给该处理器660,并能接收处理器660发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

其中,显示单元640可用于显示由用户输入的信息或提供给用户的信息以及终端600的各种菜单界面。显示单元640可包括显示面板641,可选的,可以采用LCD或有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板641。

应注意,触控面板631可以覆盖显示面板641,形成触摸显示屏,当该触摸显示屏检测到在其上或附近的触摸操作后,传送给处理器660以确定触摸事件的类型,随后处理器660根据触摸事件的类型在触摸显示屏上提供相应的视觉输出。

触摸显示屏包括应用程序界面显示区及常用控件显示区。该应用程序界面显示区及该常用控件显示区的排列方式并不限定,可以为上下排列、左右排列等可以区分两个显示区的排列方式。该应用程序界面显示区可以用于显示应用程序的界面。每一个界面可以包含至少一个应用程序的图标和/或widget桌面控件等界面元素。该应用程序界面显示区也可以为不包含任何内容的空界面。该常用控件显示区用于显示使用率较高的控件,例如,设置按钮、界面编号、滚动条、电话本图标等应用程序图标等。

其中处理器660是终端600的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在第一存储器621内的软件程序和/或模块,以及调用存储在第二存储器622内的数据,执行终端600的各种功能和处理数据,从而对终端600进行整体监控。可选的,处理器660可包括一个或多个处理单元。

在本发明实施例中,通过调用存储该第一存储器621内的软件程序和/或模块和/或该第二存储器622内的数据,处理器660利用与硬件层相邻的层从所述硬件层获取录音的音频数据;对所述音频数据进行音效处理,并混合到播放数据中进行播放。

可选地,处理器660具体用于:利用处理层从所述硬件层获取录音的音频数据;利用处理层对所述音频数据进行音效处理,并混合到播放数据中进行播放;所述处理层包括数字音频处理器。

可选地,处理器660具体还用于:利用内核层从所述硬件层获取录音的音频数据;利用框架层对所述音频数据进行音效处理,并利用内核层将处理后的音频数据混合到播放数据中进行播放。

可选地,处理器660更具体用于:在录音的音频数据的帧数大于或等于预设值时,利用框架层对所述音频数据进行音效处理。

可选地,处理器660具体还用于:利用与硬件层相邻的层使用第一采样率从所述硬件层采集录音的音频数据;对所述音频数据进行音效处理,并混合到播放数据中使用所述第一采样率进行播放。

可见,本发明实施例四提供的所述终端通过利用与硬件层相邻的层从所述硬件层获取录音的音频数据,可以减少经过的缓存,实现低延时耳返,并不增加额外的硬件成本。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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