[发明专利]一种音频文件加载方法有效
申请号: | 201810097286.8 | 申请日: | 2018-01-31 |
公开(公告)号: | CN108415667B | 公开(公告)日: | 2021-06-25 |
发明(设计)人: | 陈浪;惠毛伟;陈勇 | 申请(专利权)人: | 惠州华阳通用电子有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 叶新平 |
地址: | 516005 广东省惠州市东江*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 音频文件 加载 方法 | ||
1.一种音频文件加载方法,其特征在于,包括:
S1、设置音频文件信息缓存单元的总长度;
S2、将所述音频文件信息缓存单元等分为若干个功能缓存区,所述功能缓存区包括最前端的前置缓存区、位于前置缓存区之后的前列表缓存区、最后端的后置缓存区、位于后置缓存区之前的后列表缓存区,以及位于前列表缓存区和后列表缓存区之间的播放缓存区;
S3、扫描存储器中的所有文件,获取音频文件的总数目;
S4、根据单个功能缓存区的容量将音频文件的总数目分割为块,将每块的第一个音频文件作为存储节点,生成存储节点列表;
S5、判断上次是否有播放记录,是则获取该播放记录对应的存储节点,根据所述存储节点刷新各缓存区,否则根据第一个存储节点刷新各缓存区;
S6、接收当前输入的音频文件信息;
S7、判断所述当前输入的音频文件信息是否在播放缓存区里,是则不刷新缓存区,否则进入下一步;
S8、确定本次缓存区的刷新方向,若本次缓存区的刷新方向与上一次缓存区的刷新方向相同,则等待上一次缓存区的刷新完成后才能继续执行本次缓存区的刷新,否则直接执行本次缓存区的刷新。
2.根据权利要求1所述的音频文件加载方法,其特征在于,所述根据所述存储节点刷新各缓存区,包括:
将存储节点n及存储节点n+1之间的音频文件信息存入播放缓存区;
将存储节点n+1及存储节点n+2之间的音频文件信息存入后列表缓存区;
将存储节点n+2及存储节点n+3之间的音频文件信息存入后置缓存区;
若n≥2,则将存储节点n-1及存储节点n之间的音频文件信息存入前列表缓存区,否则前列表缓存区为空;
若n≥3,将存储节点n-2及存储节点n-1之间的音频文件信息存入前置缓存区,否则前列表缓存区为空。
3.根据权利要求1所述的音频文件加载方法,其特征在于,所述根据第一个存储节点刷新各缓存区,包括:
将存储节点1及存储节点2之间的音频文件信息存入播放缓存区;
将存储节点2及存储节点3之间的音频文件信息存入后列表缓存区;
将存储节点3及存储节点4之间的音频文件信息存入后置缓存区;
前置缓存区、前列表缓存区为空。
4.根据权利要求1所述的音频文件加载方法,其特征在于,所述确定本次缓存区的刷新方向,若本次缓存区的刷新方向与上一次缓存区的刷新方向相同,则等待上一次缓存区的刷新完成后才能继续执行本次缓存区的刷新,否则直接执行本次缓存区的刷新,包括:
如果本次缓存区的刷新方向是向前,则判断上次刷新缓存区的方向是否一致,是则等待上一次刷新完成,然后将所有缓存区向前移动一个,并刷新前置缓存区,否则停止上次缓存区刷新,将所有缓存区向前移动一个,并刷新前置缓存区;
如果本次缓存区的刷新方向是向后,则判断上次刷新缓存区的方向是否一致,是则等待上一次刷新完成,然后将所有缓存区向后移动一个,并刷新后置缓存区,否则停止上次缓存区刷新,将所有缓存区向后移动一个,并刷新后置缓存区。
5.根据权利要求1所述的音频文件加载方法,其特征在于,所述刷新缓存区包括:
步骤a、根据当前正在播放的音频文件,找到对应存储节点所在的文件夹;
步骤b、递归遍历后续音频文件和文件夹;
步骤c、将遍历到的音频文件信息存入到各功能缓存区;
步骤d、判断各功能缓存区是否已满,是则结束刷新,否则进入下一步;
步骤e、判断当前目录下所有文件是否已遍历完毕,是则进入下一步,否则返回步骤b;
步骤f、判断当前目录是否为根目录,是则结束刷新,否则进入下一个文件夹,并返回步骤b。
6.根据权利要求1所述的音频文件加载方法,其特征在于,所述前置缓存区、前列表缓存区、播放缓存区、后列表缓存区、后置缓存区的容量相等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于惠州华阳通用电子有限公司,未经惠州华阳通用电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810097286.8/1.html,转载请声明来源钻瓜专利网。