The embodiment of the invention provides an audio data processing method and device, and relates to the technical field of information processing, to solve the terminal Caton phenomenon in the playback of audio data problems. Including the audio data processing method: first buffer audio data to direct memory write WDMA; detecting whether the first buffer write pointer and the read pointer difference satisfies a predetermined condition; if the first buffer the write pointer and the read pointer difference meets a predetermined condition, the trigger threshold interrupt, according to the threshold interrupt read pointer and the write pointer between the audio data and writes audio data to the buffer memory second directly read RDMA RDMA; start when determining threshold interrupt trigger frequency is equal to a first predetermined threshold, and second audio data buffer to read in RDMA, a first predetermined threshold is greater than or equal to 2. The invention is used for processing audio data.
【技术实现步骤摘要】
一种音频数据处理方法及装置
本专利技术涉及信息处理
,尤其涉及一种音频数据处理方法及装置。
技术介绍
随着电子技术的不断发展,现有的电视、电脑、移动终端(如手机、Pad等)都具有播放音频数据的功能,而为了实现对音频数据的实时播放,需要不断地捕获音频数据,并同时进行读取和播放。在现有技术中,终端通过WDMA捕获音频数据,采用第一缓冲区对捕获的音频数据进行存储,该环形缓冲区包括写指针和读指针;终端采用第二缓冲区对捕获的音频数据进行管理,该第二缓冲区也包括写指针和读指针。终端通过RDMA读取第二缓冲区中的音频数据进而实现音频数据的播放。具体的过程参照图1所示,终端通过WDMA中的写指针将捕获的音频数据写入到第一缓冲区,然后读指针从起始位置开始读取数据(图中WDMA对应的数据1),当WDMA中的写指针和读指针之间有阈值时,则触发阈值中断,RDMA的写指针将WDMA的第一缓存区中的数据1对应的起始地址和数据长度写入到第二缓存区的item0(图中虚线箭头所指区域),RDMA的读指针读取item0进而实现音频数据的播放。但是,当WDMA中的写指针和读指针都移动到图中位置(虚线箭头),这时,写指针与读指针之间有阈值但还未产生中断,如果此时有外界中断产生,虽然终端已通过WDMA获取数据2,但由于上述的阈值中断未产生,RDMA的写指针未将该数据对应的地址和数据长度写入到第二缓存区的item1(item1中无数据),因此RDMA的读指针无数据可读,从而造成音频数据播放出现卡顿的现象(例如在播放音乐时,出现的播放滞帧,也就是通常人们所说的“卡”)。
技术实现思路
本专利技术的实 ...
【技术保护点】
一种音频数据处理方法,其特征在于,包括:将音频数据存储至直接内存写入WDMA的第一缓冲区中;检测所述第一缓冲区中的写指针与读指针的差值是否满足预定条件;若所述第一缓冲区中的写指针与读指针的差值满足所述预定条件,则触发阈值中断,根据所述阈值中断读取所述读指针和所述写指针之间的音频数据,将所述音频数据写入直接内存读取RDMA的第二缓冲区;当确定所述阈值中断的触发次数等于第一预定阈值时,启动RDMA,读取所述RDMA的第二缓冲区中的音频数据,所述第一预定阈值大于等于2。
【技术特征摘要】
1.一种音频数据处理方法,其特征在于,包括:将音频数据存储至直接内存写入WDMA的第一缓冲区中;检测所述第一缓冲区中的写指针与读指针的差值是否满足预定条件;若所述第一缓冲区中的写指针与读指针的差值满足所述预定条件,则触发阈值中断,根据所述阈值中断读取所述读指针和所述写指针之间的音频数据,将所述音频数据写入直接内存读取RDMA的第二缓冲区;当确定所述阈值中断的触发次数等于第一预定阈值时,启动RDMA,读取所述RDMA的第二缓冲区中的音频数据,所述第一预定阈值大于等于2。2.根据权利要求1所述的方法,其特征在于,所述若所述第一缓冲区中的写指针与读指针的差值满足所述预定条件,则触发阈值中断,根据所述阈值中断读取所述读指针和所述写指针之间的音频数据,将所述音频数据写入所述RDMA的第二缓冲区之后,所述方法还包括:当确定所述阈值中断的触发次数不等于所述第一预定阈值时,重新检测所述第一缓冲区中的写指针与读指针的差值是否满足预定条件。3.根据权利要求1或2所述的方法,其特征在于,所述检测所述第一缓冲区中的写指针与读指针的差值是否满足预定条件具体包括:检测所述第一缓冲区中的写指针与读指针的差值大于等于第二预定阈值,所述第二预设阈值小于所述第一缓冲区的长度。4.根据权利要求1所述的方法,其特征在于,所述将音频数据存储至直接内存写入WDMA的第一缓冲区中之前,所述方法还包括:初始化所述WDMA,至少包括如下步骤:设定所述WDMA对应的第一缓冲区的起始地址;设定所述第一缓冲区的长度;设定所述WDMA的第二预定阈值;设定所述第一缓冲区的读指针;将所述WDMA的阈值中断次数重置为0;启动所述WDMA。5.根据权利要求1所述的方法,其特征在于,所述将音频数据存储至直接内存写入WDMA的第一缓冲区中之前,所述方法还包括:初始化所述RDMA,至少包括如下步骤:关闭所述RDMA的阈值中断;设定所述RDMA对应的第二缓冲区的起始地址;设定所述RDMA的第二预定阈值...
【专利技术属性】
技术研发人员:黄昉,
申请(专利权)人:青岛海信电器股份有限公司,
类型:发明
国别省市:山东,37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。