音频同步播放方法、装置及系统的制作方法

文档序号:9688765阅读:1421来源:国知局
音频同步播放方法、装置及系统的制作方法
【技术领域】
[0001] 本发明涉及多媒体领域,尤其涉及音频同步播放方法、装置及系统。
【背景技术】
[0002] 随着多媒体技术的发展,在越来越多的应用场景下需要使用多个设备构成同步播 放系统进行音频同步播放,W实现多个设备同步发出声音,从而实现单个设备难W实现的 功能和效果。例如,多个手机构成的同步播放系统进行音频同步播放,能够实现多声道环绕 声、手机音阵等单个手机无法实现的效果。
[0003] 在现有技术中,同步播放系统通常采用的音频播放方式,就是控制同步播放系统 内各个设备同时播放音频文件。发明人对现有技术研究后发现,同步播放系统在播放音频 文件时,通常将音频文件划分为若干个音频片段,然后逐段对音频片段进行播放。然而,对 每一个音频片段的播放,都需要经过解码、混音、DSP及输出等处理过程,从开始对音频片段 进行播放到实际发出声音会存在一定的时间差,该时间差即为播放时延。播放时延的大小 由设备的硬件配置和软件环境决定,当不同设备之间硬件配置或软件环境不同时,播放时 延的大小也不相同。
[0004] 由于不同设备的播放时延不同,使得不同设备同时播放同一音频片段的时间也不 同。当不同设备的硬件配置或软件环境差别较大时,实际发出声音的时间偏差也会较大。 例如,化awei Matel手机与化awei化nor手机在同时开始对同一音频片段进行解码的情 况下,实际发出声音的时间可能会相差130至168ms。进一步,由于在播放每一个音频片段 时,不同的设备之间都会产生一个时间偏差,随着已播放音频片段数量的增加,不同设备的 实际发出声音的时间偏差会逐渐积累,导致不同设备之间实际发出声音的时间不一致的情 况越来越严重,实现音频同步播放非常困难。

【发明内容】

[0005] 本发明实施例提供了音频同步播放方法、装置及系统,W解决在不同设备的播放 时延不同时,音频同步播放非常困难的问题。
[0006] 第一方面,本发明实施例提供了一种音频同步播放方法,由同步播放系统中的被 控设备执行,所述同步播放系统包括被控设备和一个主控设备,该方法包括;计算播放音频 文件产生的第一播放时延化;获取主控设备播放所述音频文件产生的第二播放时延〇2 ;计 算时延差Offset,其中所述Offset =化-〇2 ;当所述Offset不为0时,计算所述Offset的 绝对值所对应的数据调整量;根据所述Offset的大小在所述音频文件的当前待播放部分 中添加或删除数据量为所述数据调整量的调整数据,得到与所述当前待播放部分对应的替 换部分;对所述替换部分进行播放。
[0007] 结合第一方面,在第一方面第一种可能的实现方式中,所述计算播放音频文件产 生的第一播放时延化包括:当所述音频文件的播放时长达到第一预定时长时,计算播放音 频文件产生的第一播放时延化;或者,当前次对待播放部分进行数据添加或数据删除操作 后到达第二预定时长时,计算播放音频文件产生的第一播放时延化。
[0008] 结合第一方面或第一方面第一种可能的实现方式,在第一方面第二种可能的实现 方式中,所述计算在预定时刻播放音频文件产生的第一播放时延化包括:获取所述音频文 件已播放时间长度T、所述音频文件播放开始后已经累计写入混音与DSP处理硬件的数据 所对应的时间长度E(t)、混音与DSP处理硬件中缓存数据所对应的时间长度F(t)及音频播 放硬件中缓存数据所对应的时间长度G(t);根据所述T、所述E(t)、所述F(t)及所述G(t) 计算 Di,其中 Di = T-E (t) +F (t) +G (t)。
[0009] 结合第一方面、第一方面第一种可能的实现方式或第一方面第二种可能的实现方 式,在第一方面第Η种可能的实现方式中,所述根据所述Offset的大小在所述音频文件的 当前待播放部分中添加或删除数据量为所述数据调整量的调整数据包括:当所述Offset 小于0时,在所述音频文件的当前待播放部分中添加数据量为所述数据调整量的调整数 据;或者,当所述Off set大于0时,在所述音频文件的当前待播放部分中删除数据量为所述 数据调整量的调整数据。
[0010] 结合第一方面、第一方面第一种可能的实现方式或第一方面第二种可能的实现方 式,在第一方面第四种可能的实现方式中,所述根据所述Offset的大小在所述音频文件的 当前待播放部分中添加或删除数据量为所述数据调整量的调整数据包括:对所述当前待播 放部分进行解码生成解码数据;当所述Offset小于0时,在所述解码数据中添加数据量为 所述数据调整量的调整数据;或者,当所述Off set大于0时,从所述解码数据中删除数据量 为所述数据调整量的调整数据。
[0011] 第二方面,本发明实施例提供了一种音频同步播放装置,所述装置包括:计算单 元,用于计算播放音频文件产生的第一播放时延化;获取单元,用于获取主控设备播放所述 音频文件产生的第二播放时延〇2 ;生成单元,用于根据所述计算单元得到的化及所述获取 单元获取到的〇2计算时延差Offset,其中所述Offset =化-〇2 ;确定单元,用于当所述生成 单元生成的Offset不为0时,计算所述Offset的绝对值所对应的数据调整量;调整单元, 用于根据所述Offset的大小在所述音频文件的当前待播放部分中添加或删除数据量为所 述确定单元得出的所述数据调整量的调整数据,得到与所述当前待播放部分对应的替换部 分;播放单元,用于对所述调整单元生成的所述替换部分进行播放。
[0012] 结合第二方面,在第二方面第一种可能的实现方式中,所述计算单元包括;获取子 单元,用于获取所述音频文件已播放时间长度T、所述音频文件播放开始后已经累计写入混 音与DSP处理硬件的数据所对应的时间长度E(t)、所述混音与DSP处理硬件中缓存数据所 对应的时间长度F(t)及音频播放硬件中缓存数据所对应的时间长度G(t);计算子单元,用 于根据所述获取单元获取到的所述T、所述E(t)、所述F(t)及所述G(t)计算化,其中化= T-E (t) +F (t) +G (t) ο
[0013] 结合第二方面或第二方面第一种可能的实现方式,在第二方面第二种可能的实现 方式中,所述调整单元,具体用于当所述Off set小于0时,在所述音频文件的当前待播放部 分中添加数据量为所述数据调整量的调整数据;或者,当所述Off set大于0时,在所述音频 文件的当前待播放部分中删除数据量为所述数据调整量的调整数据。
[0014] 结合第二方面或第二方面第一种可能的实现方式,在第二方面第Η种可能的实现 方式中,所述调整单元包括;解码子单元,用于对所述当前待播放部分进行解码生成解码数 据;调整子单元,用于当所述Off set小于ο时,在所述解码数据中添加数据量为所述数据调 整量的调整数据;当所述Offset大于0时,从所述解码数据中删除数据量为所述数据调整 量的调整数据。
[0015] 第Η方面,本发明实施例提供了一种音频同步播放系统,所述系统包括:主控设备 与被控设备,所述主控设备,用于计算所述主控设备播放所述音频文件产生的第二播放时 延化;所述被控设备,用于在计算播放音频文件产生的第一播放时延化;获取所述〇2 ;计算 时延差Offset,其中所述Offset =化-〇2 ;当所述Offset不为0时,计算所述Offset的绝 对值所对应的数据调整量;根据所述Offset的大小在所述音频文件的当前待播放部分中 添加或删除数据量为所述数据调整量的调整数据,得到与所述当前待播放部分对应的替换 部分;对所述替换部分进行播放。
[0016] 本发明实施例中,计算播放音频文件产生的第一播放时延化;获取主控设备播放 所述音频文件产生的第二播放时延〇2 ;计算时延差Offset,其中所述Offset =化-〇2 ;当所 述Offset不为0时,计算所述Offset的绝对值所对应的数据调整量;根据所述Offset的大 小在所述音频文件的当前待播放部分中添加或删除数据量为所述数据调整量的调整数据, 得到与所述当前待播放部分对应的替换部分;对所述替换部分进行播放。采用本发明技术 方案,被控设备在对当前待播放部分进行播放时,可W通过添加或删除数据的方式对当前 待播放部分的播放时长进行调整,从而消除被控设备与主控设备之间已经产生的出声时间 偏差,实现主控设备与被控设备在播放待播放片段时同时发出声音,实现主控设备与被控 设备对待播放文件的同步播放,实现过程非常简单。
【附图说明】
[0017] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而 言,在不付出创造性劳动性的前提下,还可W根据送些附图获得其他的附图。
[0018] 图1为本发明音频同步播放方法一个实施例的流程图;
[0019] 图2为本发明音频同步播放装置一个实施例的
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1