本发明涉及电子设备技术领域,具体涉及一种播放控制方法、装置及终端。
背景技术:
随着生活水平的提高,影音设备在人们的生活中扮演着重要的角色。当前,将多个音乐播放设备(例如,音箱、播放器、手机等)以及控制设备通过有线或无线网络互相连接,组成一个播放系统,同步播放相同的音乐,已经得到广泛的应用。
上述播放系统中,每个设备都具有独立的系统时钟。各个播放设备根据其自身的系统时钟来播放音乐。然而,各个播放设备以及控制设备的系统时钟并不总是同步的。各个播放设备以及控制设备彼此之间可能存在细微的时差。当多个播放设备播放相同的音乐时,上述细微的时差导致各个播放设备的播放进度不一致,由此造成多个播放设备之间的同步性低。
技术实现要素:
本发明实施例提供一种播放控制方法、装置及终端,可以提高多个播放设备之间的同步性。
本发明实施例提供一种播放控制方法,包括:
向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;
接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;
根据该反馈信息获取该播放设备的时钟误差;
根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
相应的,本发明实施例还提供一种播放控制装置,包括:
数据发送模块,用于向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;
接收模块,用于接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;
获取模块,用于根据该反馈信息获取该播放设备的时钟误差;
命令发送模块,用于根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
相应的,本发明实施例还提供一种终端,包括:
触摸屏,用于接收用户的触摸操作;
存储有可执行程序代码的存储器;
与该存储器耦合的处理器;
该处理器调用该存储器中存储的该可执行程序代码,执行上述播放控制方法。
本发明实施例采用向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;根据该反馈信息获取该播放设备的时钟误差;根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。该方案根据播放设备播放完预设音频数据包后反馈的信息来获取该播放设备的时钟误差,然后向该播放设备发送延时命令,指示该播放设备根据该延时命令播放音频数据包,使得该播放设备实际播放音频数据包的时间与该播放控制装置的系统时钟所确定的播放时间相同。当存在多个播放设备时,该多个播放设备实际播放相同的音频数据包的时间都能够与该播放控制装置的系统时钟所确定的播放时间相同,也即该多个播放设备之间能够保持同步播放,相对于现有技术而言,可以提高多个播放设备之间的同步性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的播放控制方法的流程示意图。
图2是本发明实施例二中的播放系统的组成示意图。
图3是本发明实施例二提供的播放控制方法的流程示意图。
图4是本发明实施例三提供的第一种播放控制装置的结构示意图。
图5是本发明实施例三提供的第二种播放控制装置的结构示意图。
图6是本发明实施例四提供的第一种终端的结构示意图。
图7是本发明实施例四提供的第二种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书以及上述附图中的术语“第一”、“第二”、“第三”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应当理解,这样描述的对象在适当情况下可以互换。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤的过程、方法或包含了一系列模块或单元的装置、终端、系统不必限于清楚地列出的那些步骤或模块或单元,还可以包括没有清楚地列出的步骤或模块或单元,也可以包括对于这些过程、方法、装置、终端或系统固有的其它步骤或模块或单元。
本发明实施例提供一种播放控制方法、装置及终端,以下将分别进行详细说明。
实施例一
本实施例将从播放控制装置的角度进行描述,该装置具体可以集成在终端中,该终端可以是智能手机、平板电脑等设备。
一种播放控制方法,包括:向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该音频数据包后反馈的信息;根据该反馈信息获取该播放设备的时钟误差;根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
如图1所示,该播放控制方法,具体流程可以包括:
S101,向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳。
具体应用中,该播放设备可以是音箱、音乐播放器等具有音频播放功能的设备。该播放控制装置可以是集成在终端中的电子装置,也可以是具有数据处理功能的播放设备。该预设音频数据包可以是预先存储在播放控制装置的存储器中的一段音频数据。该播放控制装置向该播放设备发送该预设音频数据包时,从该播放控制装置的存储器中调取该预设音频数据包,然后向该预设音频数据包中添加第一时间戳。该第一时间戳可以是根据该播放控制装置的系统时钟所确定的一个尚未到达的时间点。
S102,接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息。
具体地,播放设备具有独立的系统时钟。实际应用中,该播放设备与该播放控制装置之间可能存在着细微的时差,因此该播放设备的系统时钟与该播放控制装置的系统时钟并不总是相同的。该播放设备接收到该播放控制装置发送的预设音频数据包后,在该播放设备的系统时钟到达该第一时间戳时,播放该预设音频数据包。具体应用中,由于该预设音频数据包是预设的一段音频数据,并非是用户所需要的音频数据,因此该播放设备播放该预设音频数据包时,可以只对该预设音频数据包执行解码、数模转换、信号放大等动作,而不通过输出接口输出放大后的信号,也不通过扬声器输出声音。播放完该预设音频数据包后,该播放设备向该播放控制装置发送反馈信息。该反馈信息表示该播放设备已播放完该预设音频数据包。该播放控制装置接收该播放设备发送的反馈信息。
S103,根据该反馈信息获取该播放设备的时钟误差。
具体地,接收到播放设备发送的反馈信息后,播放控制装置即可根据该反馈信息获取该播放设备与该播放控制装置之间的时钟误差。具体应用中,该预设音频数据包具有预设时间长度。该预设时间长度为播放该预设音频数据包所需要消耗的时长。根据该反馈信息获取该播放设备的时钟误差可以具体包括以下步骤:
根据该第一时间戳和该预设时间长度计算该播放设备播放完该预设音频数据包的理论完成时间;
根据该反馈信息获取该播放设备播放完该预设音频数据包的实际完成时间;
根据该理论完成时间和该实际完成时间获取该播放设备的时钟误差。
具体地,播放控制装置可以根据该第一时间戳和该预设时间长度计算该播放设备播放完该预设音频数据包的理论完成时间。实际应用中,可以将该第一时间戳加上该预设时间长度作为该理论完成时间。例如,第一时间戳标记的时刻为1分10秒,预设时间长度为500毫秒,则该理论完成时间为1分10.5秒。
播放控制装置可以在接收到播放设备的反馈信息时,记录接收到该反馈信息的时间。由于播放控制装置与播放设备之间通过有线网络或无线网络进行通信,反馈信息以电信号(电压或电流)或电磁波的形式进行传递。而电信号和电磁波的传递速度很快,电信号或电磁波在播放控制装置和播放设备之间的传递时间可以忽略不计。因此,可以认为该播放控制装置接收到该反馈信息的时间即为该播放设备播放完该预设音频数据包的实际完成时间。
随后,可以根据该理论完成时间和该实际完成时间获取该播放设备与该播放控制装置之间的时钟误差,即该播放设备的时钟误差。根据该理论完成时间和该实际完成时间获取该播放设备的时钟误差可以具体包括以下步骤:
计算该理论完成时间和该实际完成时间之间的时间差;
以该时间差作为该播放设备的时钟误差。
具体地,可以计算该理论完成时间和该实际完成时间之间的时间差,然后以该时间差作为该播放设备的时钟误差。具体计算方式如下:
t0=t1-t2
其中,t0为需计算的时间差,t1为该理论完成时间,t2为该实际完成时间。计算出时间差t0后,以该时间差t0作为该播放设备的时钟误差。当时钟误差t0为正值,即理论完成时间超前于实际完成时间时,表示播放设备的系统时钟比播放控制装置的系统时钟慢;当时钟误差t0为负值,即理论完成时间延后于实际完成时间时,表示播放设备的系统时钟比播放控制装置的系统时钟快;当时钟误差t0为0时,表示播放设备的系统时钟与播放控制装置的系统时钟相同,即播放设备与播放控制装置之间没有时钟误差。
S104,根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
具体地,播放控制装置获取到播放设备的时钟误差后,向该播放设备发送延时命令。该延时命令中可以携带该时钟误差信息。该延时命令指示该播放设备根据该延时命令播放音频数据包。
在一些实施例中,根据该时钟误差向该播放设备发送延时命令之前,该播放控制方法还可以包括以下步骤:
向该播放设备发送音频数据包;
向该播放设备发送播放命令;
该延时命令具体指示该播放设备根据该播放命令和该延时命令播放该音频数据包。
具体应用中,播放控制装置可以调取存储在该播放控制装置的存储器中的原始音频数据。播放控制装置也可以通过有线或无线网络从服务器或其他终端处获取原始音频数据。播放控制装置还可以从光盘等存储介质中获取原始音频数据。该原始音频数据包括但不限于CD、WAV、MP3(Moving Picture Experts Group Audio Layer III)、WMA(Windows Media Audio)等格式的音频数据。
获取到原始音频数据后,该播放控制装置可以将该原始音频数据拆分成多个音频数据包,然后向该播放设备发送拆分出来的音频数据包。随后,该播放控制装置可以向该播放设备发送播放命令。
该延时命令具体指示该播放设备根据该播放命令和该延时命令播放该音频数据包。
在一些实施例中,该播放控制装置可以在拆分出来的音频数据包中添加第二时间戳。该第二时间戳可以是根据该播放控制装置的系统时钟所确定的一个尚未到达的时间点。该延时命令具体指示该播放设备按照以下步骤播放该音频数据包:
根据该第二时间戳和该延时命令计算该音频数据包的播放时间;
根据该播放时间播放该音频数据包。
具体地,该延时命令指示该播放设备按照以下公式计算该音频数据包的播放时间:
T=t3-t0
其中,T为该播放时间,t3为该第二时间戳所标记的时刻,t0为该播放设备的时钟误差。例如,该第二时间戳标记的时刻t3为1分20秒,该时钟误差t0为1秒,则计算出的播放时间T为1分19秒,表示该播放设备需要提前1秒播放该音频数据包。又例如,该第二时间戳标记的时刻t3为1分20秒,该时钟误差t0为-1秒,则计算出的播放时间T为1分21秒,表示该播放设备需要延后1秒播放该音频数据包。
该延时命令还指示该播放设备计算出该播放时间后,根据该播放时间播放该音频数据包。
该播放设备接收到该播放控制装置发送的音频数据包、播放命令以及延时命令后,根据公式T=t3-t0计算出该音频数据包的播放时间T。然后,在该播放设备的系统时钟到达该播放时间T时,播放该音频数据包。
具体实施时,本发明不受所描述的各个步骤的执行顺序的限制,在不产生冲突的情况下,某些步骤还可以采用其它顺序进行或者同时进行。
由上可知,本发明实施例提供的播放控制方法,采用向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;根据该反馈信息获取该播放设备的时钟误差;根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。该方案根据播放设备播放完预设音频数据包后反馈的信息来获取该播放设备的时钟误差,然后向该播放设备发送延时命令,指示该播放设备根据该延时命令播放音频数据包,使得该播放设备实际播放音频数据包的时间与该播放控制装置的系统时钟所确定的播放时间相同。当存在多个播放设备时,该多个播放设备实际播放相同的音频数据包的时间都能够与该播放控制装置的系统时钟所确定的播放时间相同,也即该多个播放设备之间能够保持同步播放,相对于现有技术而言,可以提高多个播放设备之间的同步性。
实施例二
根据实施例一所描述的播放控制方法,以下将举例作进一步详细说明。
在本实施例中,将以播放控制装置具体集成在智能手机中,基于图2所示的播放系统对本实施例的播放控制方法进行详细描述。
如图2所示,为本实施例中的一种播放系统的组成示意图。播放系统由服务器210、智能手机211以及多个播放设备212组成。服务器210可以是位于网络上的服务器。播放设备212可以是音箱、音乐播放器等具有音频播放功能的设备。智能手机211通过因特网与服务器210进行数据通信,以使得智能手机211可以从服务器210获取音频数据。同时,智能手机211通过无线网络(例如WiFi)与多个播放设备212进行数据通信,以使得智能手机211可以向播放设备212发送音频数据包。
如图3所示,播放控制方法,具体流程可以如下:
S201,智能手机向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳。
具体地,该预设音频数据包可以是预先存储在智能手机的存储器中的一段音频数据。该智能手机向该播放设备发送该预设音频数据包时,从该智能手机的存储器中调取该预设音频数据包,然后向该预设音频数据包中添加第一时间戳。该第一时间戳可以是根据该智能手机的系统时钟所确定的一个尚未到达的时间点。
S202,智能手机接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息。
具体地,播放设备具有独立的系统时钟。实际应用中,该播放设备与该智能手机之间可能存在着细微的时差,因此该播放设备的系统时钟与该智能手机的系统时钟并不总是相同的。该播放设备接收到该智能手机发送的预设音频数据包后,在该播放设备的系统时钟到达该第一时间戳时,播放该预设音频数据包。具体应用中,该播放设备可以只对该预设音频数据包执行解码、数模转换、信号放大等动作,而不通过输出接口输出放大后的信号,也不通过扬声器输出声音。播放完该预设音频数据包后,该播放设备向该智能手机发送反馈信息。该反馈信息表示该播放设备已播放完该预设音频数据包。该智能手机接收该播放设备发送的反馈信息。
S203,智能手机根据该第一时间戳和预设时间长度计算该播放设备播放完该预设音频数据包的理论完成时间。
具体地,该预设音频数据包具有预设时间长度。该预设时间长度为播放该预设音频数据包所需要消耗的时长。智能手机可以将该第一时间戳加上该预设时间长度来计算该播放设备播放完该预设音频数据包的理论完成时间。例如,第一时间戳标记的时刻为1分10秒,预设时间长度为500毫秒,则该理论完成时间为1分10.5秒。
S204,智能手机根据该反馈信息获取该播放设备播放完该预设音频数据包的实际完成时间。
具体地,智能手机可以在接收到播放设备的反馈信息时,记录接收到该反馈信息的时间。由于智能手机与播放设备之间通过WiFi(Wireless Fidelity,无线保真)等无线网络进行通信,反馈信息以电磁波的形式进行传递。而电磁波的传递速度很快,电磁波在播放设备和智能手机之间的传递时间可以忽略不计。因此,可以认为该智能手机接收到该反馈信息的时间即为该播放设备播放完该预设音频数据包的实际完成时间。
S205,智能手机计算该理论完成时间和该实际完成时间之间的时间差。
具体地,智能手机可以通过以下公式计算该理论完成时间和该实际完成时间之间的时间差:
t0=t1-t2
其中,t0为需计算的时间差,t1为该理论完成时间,t2为该实际完成时间。
S206,智能手机以该时间差作为该播放设备的时钟误差。
具体地,智能手机计算出时间差t0后,以该时间差t0作为该播放设备的时钟误差。当时钟误差t0为正值,即理论完成时间超前于实际完成时间时,表示播放设备的系统时钟比智能手机的系统时钟慢;当时钟误差t0为负值,即理论完成时间延后于实际完成时间时,表示播放设备的系统时钟比智能手机的系统时钟快;当时钟误差t0为0时,表示播放设备的系统时钟与智能手机的系统时钟相同,即播放设备与智能手机之间没有时钟误差。
S207,智能手机向该播放设备发送音频数据包。
具体地,智能手机可以通过因特网从服务器获取原始音频数据。该原始音频数据包括但不限于CD、WAV、MP3(Moving Picture Experts Group Audio Layer III)、WMA(Windows Media Audio)等格式的音频数据。
获取到原始音频数据后,该智能手机可以将该原始音频数据拆分成多个音频数据包,然后向该播放设备发送拆分出来的音频数据包。
S208,智能手机向该播放设备发送播放命令。
具体地,向播放设备发送音频数据包后,智能手机向该播放设备发送播放命令。
S209,智能手机根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据第二时间戳和该延时命令计算该音频数据包的播放时间,并根据该播放时间播放该音频数据包。
具体地,智能手机将原始音频数据拆分成多个音频数据包时,可以向拆分出的音频数据包中添加第二时间戳。该第二时间戳可以是根据该智能手机的系统时钟所确定的一个尚未到达的时间点。该延时命令指示该播放设备按照以下步骤播放该音频数据包:
根据该第二时间戳和该延时命令计算该音频数据包的播放时间;
根据该播放时间播放该音频数据包。
实际应用中,该延时命令指示该播放设备按照以下公式计算该音频数据包的播放时间:
T=t3-t0
其中,T为该播放时间,t3为该第二时间戳所标记的时刻,t0为该播放设备的时钟误差。例如,该第二时间戳标记的时刻t3为1分20秒,该时钟误差t0为1秒,则计算出的播放时间T为1分19秒,表示该播放设备需要提前1秒播放该音频数据包。又例如,该第二时间戳标记的时刻t3为1分20秒,该时钟误差t0为-1秒,则计算出的播放时间T为1分21秒,表示该播放设备需要延后1秒播放该音频数据包。
该延时命令还指示该播放设备计算出该播放时间后,根据该播放时间播放该音频数据包。
该播放设备接收到该智能手机发送的音频数据包、播放命令以及延时命令后,根据公式T=t3-t0计算出该音频数据包的播放时间T。然后,在该播放设备的系统时钟到达该播放时间T时,播放该音频数据包。
具体实施时,本发明不受所描述的各个步骤的执行顺序的限制,在不产生冲突的情况下,某些步骤还可以采用其它顺序进行或者同时进行。
由上可知,本发明实施例提供的播放控制方法,采用智能手机向播放设备发送预设音频数据包;接收该播放设备的反馈信息;计算该播放设备播放完该预设音频数据包的理论完成时间;获取该播放设备播放完该预设音频数据包的实际完成时间;计算该理论完成时间和该实际完成时间之间的时间差;以该时间差作为该播放设备的时钟误差;向该播放设备发送音频数据包;向该播放设备发送播放命令;向该播放设备发送延时命令,该延时命令指示该播放设备计算该音频数据包的播放时间,并根据该播放时间播放该音频数据包。该方案首先获取播放设备的时钟误差,然后向该播放设备发送延时命令,使得该播放设备实际播放音频数据包的时间与该智能手机的系统时钟所确定的播放时间相同。当存在多个播放设备时,该多个播放设备实际播放相同的音频数据包的时间都能够与该智能手机的系统时钟所确定的播放时间相同,也即该多个播放设备之间能够保持同步播放,相对于现有技术而言,可以提高多个播放设备之间的同步性。
实施例三
为了更好地实施以上方法,本发明实施例还提供一种播放控制装置,该装置可以集成在终端中,该终端可以是智能手机、平板电脑等设备。
如图4所示,播放控制装置300可以包括:数据发送模块301、接收模块302、获取模块303、命令发送模块304,具体描述如下:
该数据发送模块301,用于向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;
该接收模块302,用于接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;
该获取模块303,用于根据该反馈信息获取该播放设备的时钟误差;
该命令发送模块304,用于根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
优选地,该数据发送模块301还用于:
向该播放设备发送音频数据包;
该命令发送模块304还用于:
向该播放设备发送播放命令;
该延时命令具体指示该播放设备根据该播放命令和该延时命令播放该音频数据包。
优选地,该音频数据包中包括第二时间戳,该延时命令具体指示该播放设备按照以下步骤播放该音频数据包:
根据该第二时间戳和该延时命令计算该音频数据包的播放时间;
根据该播放时间播放该音频数据包。
优选地,该预设音频数据包具有预设时间长度,如图5所示,该获取模块303包括:计算子模块3031、第一获取子模块3032、第二获取子模块3033,具体如下:
该计算子模块3031,用于根据该第一时间戳和该预设时间长度计算该播放设备播放完该预设音频数据包的理论完成时间;
该第一获取子模块3032,用于根据该反馈信息获取该播放设备播放完该预设音频数据包的实际完成时间;
该第二获取子模块3033,用于根据该理论完成时间和该实际完成时间获取该播放设备的时钟误差。
优选地,该第二获取子模块3033具体用于:
计算该理论完成时间和该实际完成时间之间的时间差;
以该时间差作为该播放设备的时钟误差。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现。以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本发明实施例提供的播放控制装置300,通过数据发送模块301向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收模块302接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;获取模块303根据该反馈信息获取该播放设备的时钟误差;命令发送模块304根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。该方案根据播放设备播放完预设音频数据包后反馈的信息来获取该播放设备的时钟误差,然后向该播放设备发送延时命令,指示该播放设备根据该延时命令播放音频数据包,使得该播放设备实际播放音频数据包的时间与该播放控制装置的系统时钟所确定的播放时间相同。当存在多个播放设备时,该多个播放设备实际播放相同的音频数据包的时间都能够与该播放控制装置的系统时钟所确定的播放时间相同,也即该多个播放设备之间能够保持同步播放,相对于现有技术而言,可以提高多个播放设备之间的同步性。
实施例四
本发明实施例还提供一种终端,该终端可以是智能手机、平板电脑等设备。
如图6所示,终端400可以包括:数据发送模块401、接收模块402、获取模块403、命令发送模块404,具体描述如下:
该数据发送模块401,用于向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;
该接收模块402,用于接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;
该获取模块403,用于根据该反馈信息获取该播放设备的时钟误差;
该命令发送模块404,用于根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
优选地,该数据发送模块401还用于:
向该播放设备发送音频数据包;
该命令发送模块404还用于:
向该播放设备发送播放命令;
该延时命令具体指示该播放设备根据该播放命令和该延时命令播放该音频数据包。
优选地,该音频数据包中包括第二时间戳,该延时命令具体指示该播放设备按照以下步骤播放该音频数据包:
根据该第二时间戳和该延时命令计算该音频数据包的播放时间;
根据该播放时间播放该音频数据包。
优选地,该预设音频数据包具有预设时间长度,该获取模块403包括:计算子模块、第一获取子模块、第二获取子模块,具体如下:
该计算子模块,用于根据该第一时间戳和该预设时间长度计算该播放设备播放完该预设音频数据包的理论完成时间;
该第一获取子模块,用于根据该反馈信息获取该播放设备播放完该预设音频数据包的实际完成时间;
该第二获取子模块,用于根据该理论完成时间和该实际完成时间获取该播放设备的时钟误差。
优选地,该第二获取子模块具体用于:
计算该理论完成时间和该实际完成时间之间的时间差;
以该时间差作为该播放设备的时钟误差。
上述操作具体可参见前面的方法实施例,在此不再赘述。
本发明实施例还提供另一种终端,如图7所示,该终端500可以包括射频(RF,Radio Frequency)电路501、包括有一个或一个以上计算机可读存储介质的存储器502、输入单元503、显示单元504、传感器505、音频电路506、无线保真(WiFi,Wireless Fidelity)模块507、包括有一个或者一个以上处理核心的处理器508、以及电源509等部件。本领域技术人员可以理解,图7中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
射频电路501可用于收发信息,或通话过程中信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器508处理;另外,将涉及上行的数据发送给基站。通常,射频电路501包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,射频电路501还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器502可用于存储应用程序和数据。存储器502存储的应用程序中包含有可执行程序代码。应用程序可以组成各种功能模块。处理器508通过运行存储在存储器502的应用程序,从而执行各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器508和输入单元503对存储器502的访问。
输入单元503可用于接收输入的数字、字符信息或用户特征信息(比如指纹),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元503可以包括指纹识别模组。在一些实施例中,输入单元503还可以包括触敏表面。触敏表面,也称为触摸屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器508,并能接收处理器508发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元503还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元504可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元504可包括显示面板。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器508以确定触摸事件的类型,随后处理器508根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图7中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
终端还可包括至少一种传感器505,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路506可通过扬声器、传声器提供用户与终端之间的音频接口。音频电路506可将接收到的音频数据转换成电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路506接收后转换为音频数据,再将音频数据输出处理器508处理后,经射频电路501以发送给比如另一终端,或者将音频数据输出至存储器502以便进一步处理。音频电路506还可能包括耳塞插孔,以提供外设耳机与终端的通信。
无线保真(WiFi)属于短距离无线传输技术,终端通过无线保真模块507可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了无线保真模块507,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器508是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器502内的应用程序,以及调用存储在存储器502内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器508可包括一个或多个处理核心;优选的,处理器508可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器508中。
终端还包括给各个部件供电的电源509(比如电池)。优选的,电源可以通过电源管理系统与处理器508逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源509还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图7中未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。
具体在本实施例中,终端中的处理器508会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行程序代码加载到存储器502中,并由处理器508来运行存储在存储器502中的应用程序,从而实现各种功能:
向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该音频数据包后反馈的信息;根据该反馈信息获取该播放设备的时钟误差;根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
优选地,处理器508具有数据发送模块、接收模块、获取模块、命令发送模块,具体描述如下:
处理器508用于通过数据发送模块向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;
处理器508用于通过接收模块接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该音频数据包后反馈的信息;
处理器508用于通过获取模块根据该反馈信息获取该播放设备的时钟误差;
处理器508用于通过命令发送模块根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。
上述操作具体可参见前面的方法实施例,在此不再赘述。
由上可知,本发明实施例提供了一种终端,通过向播放设备发送预设音频数据包,该预设音频数据包中包括第一时间戳;接收该播放设备的反馈信息,该反馈信息为该播放设备根据该第一时间戳播放完该预设音频数据包后反馈的信息;根据该反馈信息获取该播放设备的时钟误差;根据该时钟误差向该播放设备发送延时命令,该延时命令指示该播放设备根据该延时命令播放音频数据包。该方案根据播放设备播放完预设音频数据包后反馈的信息来获取该播放设备的时钟误差,然后向该播放设备发送延时命令,指示该播放设备根据该延时命令播放音频数据包,使得该播放设备实际播放音频数据包的时间与该终端的系统时钟所确定的播放时间相同。当存在多个播放设备时,该多个播放设备实际播放相同的音频数据包的时间都能够与该终端的系统时钟所确定的播放时间相同,也即该多个播放设备之间能够保持同步播放,相对于现有技术而言,可以提高多个播放设备之间的同步性。
需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种播放控制方法、装置及终端进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。