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

文档序号:9688765阅读:来源:国知局
删除调整数据。当有多个从设备时,不同的设备中可能有 些超前于主控设备发出声音,有些滞后于主控设备发出声音,为使各个被控设备发出声音 的时间差在可接受范围内,可W在Offset的绝对值大于预定值一半,例如10ms时,在当前 待播放部分中添加或删除调整数据。
[0046] 步骤106,对所述替换部分进行播放。
[0047] 所述播放包括对当前待播放部分进行数据解码、混音与DSP处理及声音播放等播 放步骤。如果对当前待播放部分的调整采用的是对解码数据进行调整的方式,郝么所述播 放可W只包括混音与DSP处理及声音播放等播放步骤。对所述替换部分进行播放的具体过 程在此就不再赏述。
[0048] 从上述实施例可W看出,计算播放音频文件产生的第一播放时延化;获取主控 设备播放所述音频文件产生的第二播放时延〇2 ;计算时延差Offset,其中所述Offset = 化-〇2 ;当所述Offset不为0时,计算所述Offset的绝对值所对应的数据调整量;根据所述 Offset的大小在所述音频文件的当前待播放部分中添加或删除数据量为所述数据调整量 的调整数据,得到与所述当前待播放部分对应的替换部分;对所述替换部分进行播放。采用 本实施例,被控设备在对当前待播放部分进行播放时,可W通过添加或删除数据的方式对 当前待播放部分的播放时长进行调整,从而消除被控设备与主控设备之间已经产生的出声 时间偏差,实现主控设备与被控设备在播放待播放片段时同时发出声音,实现主控设备与 被控设备对待播放文件的同步播放,实现过程非常简单。
[0049] 参见图2,为本发明音频同步播放装置一个实施例的示意图。
[0050] 如图2所示,该装置包括:计算单元201,获取单元202,生成单元203,确定单元 204,调整单元205,播放单元206。
[0051] 其中,所述计算单元201,用于计算播放音频文件产生的第一播放时延化。
[0052] 所述计算单元201可W包括;获取子单元,用于获取所述音频文件已播放时间长 度T、所述音频文件播放开始后已经累计写入混音与DSP处理硬件的数据所对应的时间长 度E(t)、所述混音与DSP处理硬件中缓存数据所对应的时间长度F(t)及音频播放硬件中缓 存数据所对应的时间长度G(t);计算子单元,用于根据所述获取子单元获取到的所述T、所 述 E (t)、所述 F (t)及所述 G (t)计算 〇1,其中 〇1 = T-E (t) +F (t) +G (t)。
[0053] 所述获取单元202,用于获取主控设备播放所述音频文件产生的第二播放时延〇2。
[0054] 所述生成单元203,用于根据所述计算单元201得到的化及所述获取单元202获 取到的〇2计算时延差Offset,其中所述Offset =化-〇2。
[00巧]所述确定单元204,用于当所述生成单元203生成的Offset不为0时,计算所述 Offset的绝对值所对应的数据调整量。
[0056] 所述调整单元205,用于根据所述Offset的大小在所述音频文件的当前待播放部 分中添加或删除数据量为所述确定单元204得出的所述数据调整量的调整数据,得到与所 述当前待播放部分对应的替换部分。
[0057] 具体来说,所述调整单元205可W用于;当所述Off set小于0时,在所述音频文件 的当前待播放部分中添加数据量为所述数据调整量的调整数据;或者,当所述Offset大于 0时,在所述音频文件的当前待播放部分中删除数据量为所述数据调整量的调整数据。
[0058] 或者,所述调整单元205可W包括;解码子单元,用于对所述当前待播放部分进行 解码生成解码数据;调整子单元,用于当所述Off set小于0时,在所述解码数据中添加数据 量为所述数据调整量的调整数据;当所述Offset大于0时,从所述解码数据中删除数据量 为所述数据调整量的调整数据。
[0059] 所述播放单元206,用于对所述调整单元205生成的所述替换部分进行播放。
[0060] 从上述实施例可W看出,被控设备在对当前待播放部分进行播放时,可W通过添 加或删除数据的方式对当前待播放部分的播放时长进行调整,从而消除被控设备与主控设 备之间已经产生的出声时间偏差,实现主控设备与被控设备在播放待播放片段时同时发出 声音,实现主控设备与被控设备对待播放文件的同步播放,实现过程非常简单。
[0061] 与同步播放方法及同步播放装置相对应,本发明实施例还提供了一种同步播放系 统。
[0062] 参见图3,为本发明同步播放系统一个实施例的示意图。
[0063] 该系统包括;主控设备301与被控设备302。
[0064] 其中,所述主控设备301,用于计算所述主控设备播放所述音频文件产生的第二播 放时延〇2。
[0065] 所述被控设备302,用于在计算播放音频文件产生的第一播放时延化;获取所 述〇2 ;计算时延差Offset,其中所述Offset =化-〇2 ;当所述Offset不为0时,计算所述 Offset的绝对值所对应的数据调整量;根据所述Offset的大小在所述音频文件的当前待 播放部分中添加或删除数据量为所述数据调整量的调整数据,得到与所述当前待播放部分 对应的替换部分;对所述替换部分进行播放。
[0066] 所述被控设备302,还用于当所述音频文件的播放时长达到第一预定时长时,计算 播放音频文件产生的第一播放时延化;或者,当前次对待播放部分进行数据添加或数据删 除操作后到达第二预定时长时,计算播放音频文件产生的第一播放时延化。
[0067] 所述被控设备302,还用于获取所述音频文件已播放时间长度T、所述音频文件播 放开始后已经累计写入混音与DSP处理硬件的数据所对应的时间长度E(t)、混音与DSP处 理硬件中缓存数据所对应的时间长度F(t)及音频播放硬件中缓存数据所对应的时间长度 G (t);根据所述T、所述E (t)、所述F (t)及所述G (t)计算Di,其中〇1 = T-E (t) +F (t) +G ω。
[0068] 所述被控设备302,还用于当所述Off set小于0时,在所述音频文件的当前待播放 部分中添加数据量为所述数据调整量的调整数据;或者,当所述Off set大于0时,在所述音 频文件的当前待播放部分中删除数据量为所述数据调整量的调整数据。
[0069] 所述被控设备302,还用于对所述当前待播放部分进行解码生成解码数据;当所 述Offset小于0时,在所述解码数据中添加数据量为所述数据调整量的调整数据;或者,当 所述Offset大于0时,从所述解码数据中删除数据量为所述数据调整量的调整数据。
[0070] 从上述实施例可W看出,被控设备可W对解码数据进行调整,消除被控设备与主 控设备之间已经产生的出声时间偏差,实现主控设备与被控设备在播放待播放片段时同时 发出声音,从而实现主控设备与被控设备对待播放文件的同步播放。在不同的设备的播放 时延不同时,可W非常简单的实现音频同步播放。
[0071] 参见图4,为本发明音频同步播放装置另一个实施例的示意图。
[0072] 如图4所示,所述音频同步播放装置包括处理器401,存储器402,通信接口 403,所 述处理器401、所述存储器402与所述通信接口 403之间通过总线404连接。所述音频同步 播放装置还可W包括混音与DSP处理硬件及音频播放硬件。
[007引其中,所述总线404可W是外设部件互连标准(Peri地eral Component Interconnect,简称PCI)总线或扩展工业标准结构巧xtended IndustiT Standard Architec化re,简称EISA)总线等。所述总线可W分为地址总线、数据总线、控制总线等。为 便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0074] 所述存储器402用于存放程序。具体地,程序可W包括程序代码,所述程序代码 包括计算机操作指令。存储器402可能包含随机存取存储器(Random Access Memo巧,简称 RAM)存储器,也可能还包括非易失性存储器(Non-Volatile Memcxry),例如至少一个磁盘存 储器。
[00巧]所述处理器401执行所述存储器402存放的程序,用于:计算播放音频文件产生 的第一播放时延化;通过通信接口 403获取主控设备播放所述音频文件产生的第二播放时 延〇2 ;计算时延差Offset,其中所述Offset =化-〇2 ;当所述Offset不为0时,计算所述 Offset的绝对值所对应的数据调整量;根据所述Offset的大小在所述音频文件的当前待 播放部分中添加或删除数据量为所述数据调整量的调整数据,得到与所述当前待播放部分 对应的替换部分;对所述替换部分进行播放。
[0076] 所述处理器401,还用于当所述音频文件
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1