[发明专利]一种基于数组实现的用于实时读写PCM数据的方法在审
| 申请号: | 201910987627.3 | 申请日: | 2019-10-17 |
| 公开(公告)号: | CN110764703A | 公开(公告)日: | 2020-02-07 |
| 发明(设计)人: | 李和涛;马敬锐;祝清雷;朱蕾;刘建梁 | 申请(专利权)人: | 山东神戎电子股份有限公司 |
| 主分类号: | G06F3/06 | 分类号: | G06F3/06 |
| 代理公司: | 37218 济南泉城专利商标事务所 | 代理人: | 赵玉凤 |
| 地址: | 250101 山东省济南市高新开*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开一种基于数组实现的用于实时读写PCM数据的方法,本方法基于环状数据结构,对音频采集设备回传的PCM数据进行循环写入,实现对PCM数据的实时存储,同时提供缓冲区数据提取的接口,用于PCM数据循环读出,从而实时获取缓冲区的PCM数据。本方法相对于基于链状数据结构实现的读取方法而言,可以减少程序运行时所需的时间与空间复杂度,减少程序开销,提高效率,可应用于轻量级实时音频流的数据缓冲存取。 | ||
| 搜索关键词: | 数据结构 音频采集设备 读取 缓冲区数据 空间复杂度 实时音频流 程序开销 程序运行 实时存储 实时获取 数据缓冲 缓冲区 读写 回传 链状 数组 读出 存取 写入 应用 | ||
【主权项】:
1.一种基于数组实现的用于实时读写PCM数据的方法,其特征在于:包括以下步骤:S01)、根据采集设备精度需要,预先申请一定量大小的连续内存空间作为PCM数据的缓冲区,将连续内存空间的逻辑结构表述为环状结构,然后通知采集设备进行数据采集并回传PCM数据;S02)、根据PCM数据包字节长度对缓冲区进行数据写入,写入过程中需进行缓冲剩余空间判断,如果剩余空间大小大于数据包长度,则直接将数据写入进缓冲区,返回成功,如果剩余空间长度小于数据包长度,返回失败,进行步骤S03;S03)、阻塞数据接收线程,等待T1时间后,重新将数据包进行步骤S02操作,如返回失败,则将当前数据包丢弃,结束线程阻塞,如返回成功,则直接结束线程阻塞;S04)、缓冲区PCM数据实时读取,首先计算缓冲区已存放数据大小,然后与设计阈值进行对比,当缓冲区已存数据大小大于所设置阈值时,对缓冲区进行读操作,返回成功,当缓冲区数据大小小于所设置阈值时,返回失败,进行步骤S05;S05)、PCM数据读取线程进入阻塞,等待T2时间后,重新进行S04步骤,直至可以正常获取PCM数据。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东神戎电子股份有限公司,未经山东神戎电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910987627.3/,转载请声明来源钻瓜专利网。





