数据同步方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:23349231 阅读:37 留言:0更新日期:2020-02-15 05:54
本发明专利技术公开了一种数据同步方法、装置、设备及计算机可读存储介质。其中,方法包括:在声卡缓存中的数据量首次大于第一阈值的情况下,执行声卡播放声音信号的操作;在声卡播放声音信号期间,获取缓存中的当前数据量;在当前数据量小于第二阈值或大于第三阈值的情况下,根据当前数据量与历史数据量的差值、及获取当前数据量与获取历史数据量间的时间间隔,确定声卡的播放速率调整量;其中,历史数据量为上一次调整声卡的播放速率时缓存中的数据量,第一阈值大于二阈值,且小于第三阈值;根据播放速率调整量,调整声卡的当前播放速率。

Data synchronization method, device, equipment and computer readable storage medium

【技术实现步骤摘要】
数据同步方法、装置、设备及计算机可读存储介质
本专利技术涉及声学
,更具体地,涉及一种数据同步方法、一种数据同步装置、一种音频播放设备以及一种计算机可读存储介质。
技术介绍
目前,用户在通过例如电脑等设备收听声音信号(例如音乐)时,设备首先将音频文件解码为音频数据流,然后将音频数据流发送至声卡(该声卡可以为设备的声卡,也可以为与设备连接的音频设备的声卡)。声卡将设备发送的音频数据流先存储在自身缓存中,然后将缓存中的音频数据流转换为声音信号。基于此以实现声音信号的收听。但是,由于设备和声卡分别独立地工作在自己的时钟下,以及设备运行的操作系统通常为一个非实时的操作系统,因此,设备和声卡之间时钟通常并不同步。而这导致设备将音频文件解码为音频数据流的速率,与声卡将音频数据流转换为声音信号的速率并不相同,这将影响到声卡所播放的声音信号的质量。具体的,当设备将音频文件解码为音频数据流的速率大于声卡将音频数据流转换为声音信号的速率时,声卡缓存中的音频数据流将会溢出,导致部分音频数据流丢失,进一步导致声卡播放的声音信号有杂音、播放不连续等情况。而当设备将音频文件解码为音频数据流的速率小于声卡将音频数据流转换为声音信号的速率时,存在声卡将缓存中的音频数据流转换完,缓存为空的情况。这时,声卡将暂时停止播放声音信号,直到缓存中新存入音频数据流。
技术实现思路
本专利技术的一个目的是提供一种用于数据同步的新技术方案。根据本专利技术的第一方面,提供了一种数据同步方法,包括:在声卡缓存中的数据量首次大于第一阈值的情况下,执行声卡播放声音信号的操作;在声卡播放声音信号期间,获取所述缓存中的当前数据量;在所述当前数据量小于第二阈值或大于第三阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量;其中,所述历史数据量为上一次调整所述声卡的播放速率时所述缓存中的数据量,所述第一阈值大于所述二阈值,且小于所述第三阈值;根据所述播放速率调整量,调整所述声卡的当前播放速率。可选的,所述在声卡播放声音信号期间,获取所述声卡缓存中的当前数据量,包括:在所述声卡播放声音信号期间,按照设定时间间隔,定期获取所述声卡缓存中的当前数据量。可选的,所述在所述当前数据量小于第二阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量,包括:在所述当前数据量小于所述第二阈值,且所述缓存中有写入新数据的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量。可选的,所述方法还包括确定所述缓存中是否有写入新数据的步骤,所述确定所述缓存中是否有写入新数据,包括:根据是否接收到上位机发送的表征音频数据流传输完毕的指令,确定所述缓存中是否有写入新数据。可选的,所述根据所述播放速率调整量,调整所述声卡的当前播放速率,包括:根据所述播放速率调整量,确定所述声卡的锁相环的时钟频率调整量;根据所述时钟调整量,通过调整所述锁相环输出的时钟频率以调整所述声卡的当前播放速率。可选的,所述声卡中设置有主锁相环和备用锁相环;所述主锁相环用于通过所述主锁相环输出的时钟频率控制所述声卡的播放速率;所述根据所述播放速率调整量,调整所述声卡的当前播放速率,包括:根据所述速率调整量,确定所述备用锁相环的时钟频率调整量;根据所述时钟频率调整量,调整所述备用锁相环的时钟频率;将调整后的所述备用锁相环切换为新主锁相环,以通过所述新主锁相环输出的时钟频率调整所述声卡的当前播放速率。可选的,所述声卡为基于USBAudio协议的声卡。根据本专利技术的第二方面,提供了一种数据同步装置,包括:执行模块,用于在声卡缓存中的数据量首次大于第一阈值的情况下,执行声卡播放声音信号的操作;获取模块,用于在声卡播放声音信号期间,获取所述缓存中的当前数据量;确定模块,用于在所述当前数据量小于第二阈值或大于第三阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量;其中,所述历史数据量为上一次调整所述声卡的播放速率时所述缓存中的数据量,所述第一阈值大于所述二阈值,且小于所述第三阈值;调整模块,用于根据所述播放速率调整量,调整所述声卡的当前播放速率。根据本专利技术的第三方面,提供了一种音频播放设备,包括:如上述第二方面所述的装置,或者,包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用所述计算机指令,以执行如第一方面任一项所述的数据同步方法。根据本专利技术的第四方面,提供了一种计算机可读存储介质,包括:所述存储介质存储有计算机指令,当所述存储介质中的计算机指令由处理器执行时,实现如第一方面任一项所述的数据同步方法。在本专利技术实施例中,在当前数据量小于第二阈值或大于第三阈值的情况下,说明上位机将音频文件解码为音频数据流的速率,与声卡播放的声音信号的播放速率不同,且即将影响声卡所播放声音信号的质量。此时,根据当前数据量与历史数据量的差值、及获取当前数据量与获取历史数据量间的时间间隔,确定声卡的播放速率调整量;根据播放速率调整量,调整声卡的当前播放速率。这样,通过调整声卡的当前播放速率,可使得缓存中的数据量在后续将大于或等于第二阈值,且小于或等于第三阈值。即使得缓存中的数据量靠近第一阈值。此时,说明上位机将音频文件解码为音频数据流的速率,与声卡播放的声音信号的播放速率将趋近相同。这样声卡所播放的声音信号的质量将不会被影响,从而避免了声卡播放的声音信号有杂音、播放不连续等情况,以及避免了声卡将暂时停止播放声音信号的情况。通过以下参照附图对本专利技术的示例性实施例的详细描述,本专利技术的其它特征及其优点将会变得清楚。附图说明被结合在说明书中并构成说明书的一部分的附图示出了本专利技术的实施例,并且连同其说明一起用于解释本专利技术的原理。图1是本专利技术实施例提供的一种数据同步方法的流程示意图;图2是本专利技术实施例提供的一种数据同步装置的结构示意图;图3是本专利技术实施例提供的一种音频播放设备的结构示意图。具体实施方式现在将参照附图来详细描述本专利技术的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本专利技术的范围。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本专利技术及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。在这里示出和讨论的所有例子中,任何本文档来自技高网...

【技术保护点】
1.一种数据同步方法,其特征在于,包括:/n在声卡缓存中的数据量首次大于第一阈值的情况下,执行声卡播放声音信号的操作;/n在声卡播放声音信号期间,获取所述缓存中的当前数据量;/n在所述当前数据量小于第二阈值或大于第三阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量;其中,所述历史数据量为上一次调整所述声卡的播放速率时所述缓存中的数据量,所述第一阈值大于所述二阈值,且小于所述第三阈值;/n根据所述播放速率调整量,调整所述声卡的当前播放速率。/n

【技术特征摘要】
1.一种数据同步方法,其特征在于,包括:
在声卡缓存中的数据量首次大于第一阈值的情况下,执行声卡播放声音信号的操作;
在声卡播放声音信号期间,获取所述缓存中的当前数据量;
在所述当前数据量小于第二阈值或大于第三阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量;其中,所述历史数据量为上一次调整所述声卡的播放速率时所述缓存中的数据量,所述第一阈值大于所述二阈值,且小于所述第三阈值;
根据所述播放速率调整量,调整所述声卡的当前播放速率。


2.根据权利要求1所述的方法,其特征在于,所述在声卡播放声音信号期间,获取所述声卡缓存中的当前数据量,包括:
在所述声卡播放声音信号期间,按照设定时间间隔,定期获取所述声卡缓存中的当前数据量。


3.根据权利要求1所述的方法,其特征在于,所述在所述当前数据量小于第二阈值的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量,包括:
在所述当前数据量小于所述第二阈值,且所述缓存中有写入新数据的情况下,根据所述当前数据量与历史数据量的差值、及获取所述当前数据量与获取所述历史数据量间的时间间隔,确定所述声卡的播放速率调整量。


4.根据权利要求3所述的方法,其特征在于,所述方法还包括确定所述缓存中是否有写入新数据的步骤,所述确定所述缓存中是否有写入新数据,包括:
根据是否接收到上位机发送的表征音频数据流传输完毕的指令,确定所述缓存中是否有写入新数据。


5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述播放速率调整量,调整所述声卡的当前播放速率,包括:
根据所述播放速率调整量,确定所述声卡的锁相环的时钟频率调整量;
根据所述时钟调整量,通过调整...

【专利技术属性】
技术研发人员:李光英
申请(专利权)人:歌尔股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1