CN104066015A - 移动终端的流媒体播放方法及装置 - Google Patents
移动终端的流媒体播放方法及装置 Download PDFInfo
- Publication number
- CN104066015A CN104066015A CN201410318672.7A CN201410318672A CN104066015A CN 104066015 A CN104066015 A CN 104066015A CN 201410318672 A CN201410318672 A CN 201410318672A CN 104066015 A CN104066015 A CN 104066015A
- Authority
- CN
- China
- Prior art keywords
- streaming media
- terminal
- mobile terminal
- files
- media fragment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种移动终端的流媒体播放方法及装置,其中,该方法包括:当作为从终端时,向主终端获取本次要下载的流媒体片段在流媒体文件中对应的起始结束位置信息,根据起始结束位置信息从流媒体服务器中下载流媒体片段,其中,主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成流媒体文件;在播放流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则向主终端获取当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所指示的移动终端获取到当前要播放的流媒体片段进行播放。本申请避免了数据网络的拥塞,提高了网络下载速度,同时也节约了各个移动终端的数据下载流量。
Description
技术领域
本申请涉及移动通信技术领域,特别涉及一种移动终端的流媒体播放方法及装置。
背景技术
随着移动通信技术的不断发展,新的移动终端层出不穷,手机、PDA(Personal Digital Assistant,个人数字助理)和平板电脑等移动终端由于具有移动性和便于携带等优点而日趋普及,已经成为了人们随身携带的必不可少的通讯工具。
为了满足人们日趋多样化的需求,现有的移动终端越来越智能化,功能也越来越丰富,人们不仅可以使用移动终端拨打/接听电话、收/发短信等,还可以上网、使用办公软件处理各种文件、以及观看流媒体等。
目前,如果多人想要通过移动终端观看同一流媒体文件,如视频文件或音频文件,则每一个人需要使用各自的移动终端从3G(第三代移动通信技术)或4G(***移动通信技术)等数据网络中的流媒体服务器中下载该流媒体文件到本地进行播放,这样,同一流媒体文件需要被下载多次,不仅会导致数据网络拥塞,降低网络下载速度,浪费各个移动终端的数据下载流量。
发明内容
本申请提供了一种移动终端的流媒体播放方法及装置,旨在解决现有技术中存在的以上问题至少之一。
本申请的技术方案如下:
一方面,提供了一种移动终端的流媒体播放方法,欲播放同一流媒体文件的至少两个移动终端中包括:主终端和从终端,该方法包括:
当作为从终端时,向主终端获取本次要下载的流媒体片段在流媒体文件中对应的起始结束位置信息,根据起始结束位置信息从流媒体服务器中下载流媒体片段,其中,主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成流媒体文件;
在播放流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则向主终端获取当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所指示的移动终端获取到当前要播放的流媒体片段进行播放。
另一方面,还提供了一种移动终端的流媒体播放装置,欲播放同一流媒体文件的至少两个移动终端中包括:主终端和从终端,该装置中包括:信息获取模块、下载模块、流媒体获取模块和播放模块,其中:
信息获取模块,用于当本移动终端作为从终端时,向主终端获取本次要下载的流媒体片段在流媒体文件中对应的起始结束位置信息,其中,主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成流媒体文件;还用于当本移动终端作为从终端时,在播放模块播放流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则向主终端获取当前要播放的流媒体片段所在的移动终端的终端信息;
下载模块,用于根据信息获取模块获取到的起始结束位置信息,从流媒体服务器中下载流媒体片段;
流媒体获取模块,用于向信息获取模块获取到的终端信息所指示的移动终端获取当前要播放的流媒体片段;
播放模块,用于播放流媒体获取模块获取到的流媒体片段。
本申请的以上技术方案中,当多个移动终端要播放同一流媒体文件时,这多个移动终端中的主终端将该流媒体文件分成多个流媒体片段分配给多个移动终端分别进行下载,在播放该流媒体文件时,任一移动终端若发现本移动终端上没有当前要播放的流媒体片段,则向主终端获取该当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所在的移动终端获取到该当前要播放的流媒体片段进行播放,实现了多个移动终端合作下载并播放同一流媒体文件。由于多个移动终端联合下载同一流媒体文件中的各个流媒体片段,即,对于这多个移动终端来说,该流媒体文件只需下载一次,而无需下载多次,避免了数据网络的拥塞,提高了网络下载速度,同时也节约了各个移动终端的数据下载流量。移动终端数量越多,播放的效果也就越好。
附图说明
图1是本申请实施例中主终端在配置准备过程中的操作流程图;
图2是本申请实施例中从终端在配置准备过程中的操作流程图;
图3是本申请实施例中主终端在多媒体文件下载过程中需要执行的一方面的操作流程图;
图4是本申请实施例中主终端在多媒体文件下载过程中的需要执行的另一方面的操作流程图;
图5是本申请实施例中从终端在多媒体文件下载过程中的操作流程图;
图6是本申请实施例中主终端在多媒体文件播放过程中的操作流程图;
图7是本申请实施例中从终端在多媒体文件播放过程中的操作流程图;
图8是本申请实施例中移动终端的流媒体播放装置的一种结构示意图;
图9是本申请实施例中移动终端的流媒体播放装置的另一种结构示意图。
具体实施方式
为了解决现有技术中存在的数据网络拥塞,网络下载速度较低,浪费各个移动终端的数据下载流量中的至少一个问题,本申请以下实施例中提供了一种移动终端的流媒体播放方法,以及一种可以应用该方法的装置。以下实施例中的流媒体文件具体可以是视频文件、音频文件等,本申请对此不做限定。
以下实施例中,当至少两个移动终端(假设数量为N,N不小于2)要播放同一流媒体文件(为了方便描述,称为流媒体文件1)时,这N个移动终端可以构成局域网,通过局域网进行移动终端之间的通信,其中,可以通过WIFI(无线保真)、蓝牙或WLAN(无线局域网)等方式构成局域网。另外,在这N个移动终端中,将其中一个设置为主终端,其它移动终端均设置为从终端。在实际实施过程中,可以将性能相对较好的一个移动终端设置为主终端。
具体的,本申请实施例中的移动终端的流媒体播放方法包括以下步骤:
1、配置准备过程
如图1所示,对于主终端来说,在该阶段中需要执行以下步骤:
步骤S102,根据用户的配置信息,将本移动终端设置为主终端;
步骤S104,根据用户的选择,判断是否在分配流媒体片段时采用均等(即后面的Δ相等)的方式,若是,则进入步骤S106,否则,进入步骤108;
采用均等的方式是指,主终端分配的不同流媒体片段在流媒体文件1中的起始位置信息[x,y]的大小Δ=y-x均相等。例如,分配的不同流媒体片段在流媒体文件1中的起始位置信息[x,y]的大小Δ均为10分钟,即,分配的每一个流媒体片段的时长均为10分钟。
一般情况下,Δ越小,后续这N个移动终端播放流媒体文件1时播放越顺畅,但是,并不是Δ越小越好。因为Δ越小,后续局域网内移动终端之间的数据通信越频繁,而移动终端之间的数据通信需要消耗CPU(中央处理器)资源,因此,需要合理设置Δ值的大小。总体来说,Δ值的确定与以下几个条件中的一个或多个的组合有关:N个移动终端中性能最差的移动终端的性能,N个移动终端中网速最差的移动终端的网速,参与下载的移动终端的数量,用户对等待的容忍度等。其中,当参与下载的移动终端的数量较多的情况下,可以将适当增大Δ值,这样不仅可以充分利用各个移动终端的数据网络,而且还可以减少移动终端之间的数据通信频率。
步骤S106,获取Δ值;
具体的,主终端获取Δ值的方式可以有多种,例如:
(1)根据用户的输入值得到Δ的实际值;可以由用户输入一个值作为Δ的实际值;
(2)根据用户从***自带的至少两个选项中的选择结果得到;预先在***中设定多个Δ值的选择,用户可以从这些值中选择一个作为本次采用的Δ的实际值;
(3)使用***自带的默认值;预先在***中设定Δ值的默认值,在步骤S106中直接使用该值即可;
(4)使用测速的方式得到;
具体的,主终端向各个从终端发送测速命令,该测速命令中携带有用于测速的流媒体文件(为了描述方便,称为流媒体文件2)的网络链接地址以及测速方式等,各个从终端接收到该测速命令后,采用同一测速方式从数据网络中下载流媒体文件2,将本设备下载流媒体文件2所需的时间反馈给主终端;若主终端参与下载,则主终端也需要同一测速方式从数据网络中下载流媒体文件2,记录本设备下载流媒体文件2所需的时间,从而,主终端可以获得所有参与下载的移动终端采用同一测速方式时下载同一流媒体文件所需的时间Y1,Y2,...,Yi,...,Yn。之后,主终端就可以按照以下公式(1)计算得到Δ值:
Δ=A*T/max{Y1,Y2,...,Yi,...,Yn} (1)
其中,A表示预设的播放流媒体文件所需的缓冲时间,在实际实施过程中,A的取值范围可以是[60秒,120秒];T表示流媒体文件2的播放时长;Yi表示N个移动终端中参与下载的移动终端i下载流媒体文件2所需的实际时长;n表示N个移动终端中参与下载的移动终端的总数,1<n≤N;max{}表示取最大值运算符。
步骤S108,获取各个从终端的终端信息,例如,IP地址、设备名称等,建立通信服务以便后续与从终端建立连接获取数据,开启本设备的控制服务以便后续为从终端分配并发送流媒体片段、以及将不同流媒体片段对应的终端信息发送给从终端;
步骤S110,向数据网络中的流媒体服务器获取流媒体文件1的文件信息,其中,文件信息可以是播放时长或大小;
例如,当文件信息是播放时长时,在步骤S302中获取到的流媒体文件1的播放时长是120分钟;当文件信息是大小时,在步骤S302中获取到的流媒体文件1的大小是1000M。
在实际实施过程中,上述步骤S104、步骤S108和步骤S110没有特定的先后顺序。
如图2所示,对于从终端来说,需要执行以下步骤:
步骤S202,根据用户的配置信息,将本移动终端设置为从终端;
步骤S204,建立通信服务以便后续与其它从终端和主终端建立连接获取数据。
2、流媒体文件下载过程
对于主终端来说,可以同时执行以下两个方面的操作,即,以下两个方面的操作没有特定的先后顺序:
一方面的操作包括以下步骤,如图3所示:
步骤S302,判断是否接收到从终端发来的用于获取该从终端本次要下载的流媒体片段在流媒体文件1中的起始结束位置信息[x,y]的请求,若是,则执行步骤S304,否则,返回步骤S302;
其中,当文件信息是播放时长时,起始结束位置信息[x,y]用于指示要下载的流媒体片段是流媒体文件1中时间点从x到y的流媒体片段;当文件信息是大小时,起始结束位置信息[x,y]用于指示要下载的流媒体片段是流媒体文件1中大小从x到y的流媒体片段。
步骤S304,判断流媒体文件1是否已经分配完毕,若是,则退出本流程,否则,执行步骤S306;
或者,在判断出流媒体文件1已经分配完毕时,可以向该从终端返回用于指示流媒体文件1已经分配完毕的应答,以便该从终端可以获知流媒体文件1已经分配完毕,并不再发送获取请求。
步骤S306,根据在步骤S110中获取到的流媒体文件1的文件信息,从流媒体文件1当前未被分配的部分中选择一部分,将选中部分作为该从终端本次要下载的流媒体片段分配给该从终端;之后执行步骤S308;
例如,当文件信息是播放时长时,在步骤S110中获取到的流媒体文件1的播放时长是120分钟,主终端已经分配了流媒体文件1的前60分钟,当前未被分配的部分是[61分钟,120分钟],则在步骤S306中,主终端从当前未被分配的部分[61分钟,120分钟]中选择[61分钟,70分钟]的部分作为该从终端本次要下载的流媒体片段分配给该从终端,并将[61分钟,70分钟]发送给该从终端。
若步骤S104选择了采用均等的方式,则主终端每次执行步骤S306时,都按照相同的Δ值从当前未被分配的部分进行选择,否则,按照随机的Δ值从当前未被分配的部分进行选择。
步骤S308,将本次分配给该从终端的流媒体片段在流媒体文件1中的起始结束位置信息返回给该从终端,记录该从终端的终端信息与本次分配给该从终端的流媒体片段的起始结束位置信息之间的对应关系,之后返回步骤S302。
另一方面的操作包括以下步骤,如图4所示:
步骤S402,判断本移动终端是否参与下载,若是,则执行步骤S404,否则,退出本流程;
步骤S404,判断流媒体文件1是否已经分配完毕,若是,则退出本流程,否则,执行步骤S406;
步骤S406,根据在步骤S110中获取到的流媒体文件1的文件信息,从流媒体文件1当前未被分配的部分中选择一部分,将选中部分作为本移动终端本次要下载的流媒体片段分配给本移动终端,根据本次分配给本移动终端的流媒体片段在流媒体文件1中的起始结束位置信息;之后执行步骤S408;
例如,当文件信息是播放时长时,在步骤S110中获取到的流媒体文件1的播放时长是120分钟,主终端已经分配了流媒体文件1的前80分钟,当前未被分配的部分是[81分钟,120分钟],则在步骤S406中,主终端从当前未被分配的部分[81分钟,120分钟]中选择[81分钟,90分钟]的部分作为本移动终端本次要下载的流媒体片段分配给本移动终端,从数据网络中的流媒体服务器中下载流媒体文件1中的第81分钟至第90分钟之间的流媒体片段。
步骤S408,从流媒体服务器中下载该流媒体片段,记录本移动终端的终端信息与本次分配给本移动终端的流媒体片段在流媒体文件1中的起始结束位置信息之间的对应关系;
步骤S410,判断该流媒体片段是否已经下载完毕,若是,则返回步骤S404,否则,返回步骤S410。
通过执行上述两个方面的操作,主终端可以将流媒体文件1分成多个流媒体片段分配给参与下载的不同移动终端进行下载。
如图5所示,对于从终端来说,需要执行的步骤包括:
步骤S502,向主终端发送用于获取本次要下载的流媒体片段在流媒体文件1中对应的起始结束位置信息的请求;
步骤S504,接收到主终端返回的本次分配给该从终端的流媒体片段在流媒体文件1中的起始结束位置信息;
步骤S506,根据接收到的起始结束位置信息,从流媒体服务器中下载该流媒体片段。
在实际实施过程中,移动终端可以利用RTP(Real-time TransportProtocol,实时传输协议)或RTCP(Realtime Transport Control Protocol)实时传输控制协议)从流媒体服务器中下载流媒体片段。
具体的,在网络上传输音/视频(Audio/Video,A/V)等流媒体数据,目前主要有下载和流式传输两种方案。A/V文件一般都较大,所以需要的存储容量也较大;同时由于网络带宽的限制,采用下载这种方案常常需要花费数分钟甚至数小时,所以这种处理方法延迟也很大。采用流式传输方案时,声音、影像或动画等时基媒体(Time based Media)由流媒体服务器向用户终端进行连续、实时传送,用户不必等到整个文件全部下载完毕,而只需经过几秒或十数秒的启动延时即可进行观看。
实现流式传输主要有两种方法:实时流式传输(Real time streaming)和顺序流式传输(progressive streaming)。由于顺序流式传输不支持随机访问,因此,不适合本申请实施例中使用,因此,本申请实施例中可以使用实时流式传输方式。实时流式传输是指保证媒体信号带宽与网络连接匹配,使媒体可被实时观看到。实时流与HTTP(HyperText Transfer Protocol,超文本传输协议)流式传输不同,它需要专用的流媒体服务器与传输协议。实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。
实时流式传输需要特定服务器,如:QuickTime、Streaming Server、RealServer、以及Windows Media Server。这些服务器允许对媒体发送进行更多级别的控制,因而***设置、管理比标准HTTP服务器更复杂。实时流式传输还需要特殊网络协议,如:RTSP(Realtime Streaming Protocol,实时流传输协议)或MMS(Microsoft Media Server,微软媒体服务器)。这些协议已经比较成熟,也有很多流媒体框架已经支持随机访问,例如quick time就是一个比较好的,功能强大的框架。
3、流媒体文件播放过程
流媒体文件播放过程和上述的流媒体文件下载过程并没有特定的先后顺序,一般情况下,只要有一个移动终端将主终端分配给自身的第一个流媒体片段下载完毕之后,各个移动终端即可播放流媒体文件1,而无需等到所有参与下载的移动终端将所有分配给自身的流媒体片段均下载完毕之后才播放。
如图对于主终端来说,需要执行以下步骤:
步骤S602,在播放流媒体文件1时,若当前要播放的流媒体片段不在本移动终端中,则根据该当前要播放的流媒体片段的起始位置信息查找到对应的终端信息,向查找到的终端信息所指示的移动终端获取到该当前要播放的流媒体片段进行播放;
例如,当文件信息是播放时长时,最开始从第0分钟开始播放,主终端发现本移动终端中没有以第0分钟开始的流媒体片段,则查找以第0分钟为起始的起始结束位置信息[0分钟,10分钟]所对应的终端信息,向该终端信息所指示的移动终端获取到流媒体文件1中[0分钟,10分钟]对应的流媒体片段1进行播放,当该流媒体片段1播放完毕,要播放第11分钟时,又发现本移动终端中没有从第11分钟开始的流媒体片段,则再次执行类似的查找步骤,以获得流媒体文件1中[11分钟,20分钟]对应的流媒体片段2进行播放;以此类推,直至流媒体文件1播放完毕。
步骤S604,在接收到从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求之后,根据该当前要播放的流媒体片段的起始位置信息查找到对应的终端信息,将查找到的终端信息返回给该从终端。
在实际实施过程中,上述步骤S602和步骤S604没有特定的先后顺序。
如图7所示,对于从终端来说,需要执行以下步骤:
步骤S702,在播放流媒体文件1时,若当前要播放的流媒体片段不在本移动终端中,则向主终端发送用于获取该当前要播放的流媒体片段所在的移动终端的终端信息的请求;
步骤S704,接收到主终端通过执行步骤S604返回的终端信息;
步骤S706,向接收到的终端信息所指示的移动终端获取到当前要播放的流媒体片段进行播放。
例如,当文件信息是播放时长时,最开始从第0分钟开始播放,从终端发现本移动终端中没有以第0分钟开始的流媒体片段,则向主终端发送用于获取以第0分钟为起始的起始结束位置信息所对应的终端信息,主终端查找到[0分钟,10分钟]的流媒体片段1对应的移动终端是终端4,则将终端4的终端信息返回给该从终端,该从终端向终端4获取到流媒体片段1进行播放,当该流媒体片段1播放完毕,要播放第11分钟时,又发现本移动终端中没有从第11分钟开始的流媒体片段,则再次执行类似的获取步骤,以获得流媒体文件1中[11分钟,20分钟]的流媒体片段2进行播放;以此类推,直至流媒体文件1播放完毕。
其中,在步骤S602和步骤S706中进行播放时,可以使用现有的媒体播放器进行播放即可,例如quick time,real player等,本申请对此不做限定。
另外,如果移动终端的性能较差,为了不影响性能,则主终端或从终端可以在播放完一个流媒体片段后,及时地删除该已播放过的流媒体片段;或者,如果移动终端的性能较高,则主终端或从终端还可以在流媒体文件1播放完毕之后,将已播放过的所有流媒体片段组合得到流媒体文件1,保存流媒体文件1,例如,保存到移动存储卡中,以便用户日后回顾观看。但是,对于暂存在内存中的流媒体片段,在播放完毕后必须进行释放清除,以保存新的流媒体片段。
本申请上述实施例的方法中,当多个移动终端要播放同一流媒体文件时,这多个移动终端中的主终端将该流媒体文件分成多个流媒体片段分配给多个移动终端分别进行下载,在播放该流媒体文件时,任一移动终端若发现本移动终端上没有当前要播放的流媒体片段,则向主终端获取该当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所在的移动终端获取到该当前要播放的流媒体片段进行播放,实现了多个移动终端合作下载并播放同一流媒体文件。由于多个移动终端联合下载同一流媒体文件中的各个流媒体片段,即,对于这多个移动终端来说,该流媒体文件只需下载一次,而无需下载多次,避免了数据网络的拥塞,提高了网络下载速度,同时也节约了各个移动终端的数据下载流量。移动终端数量越多,播放的效果也就越好。
针对上述实施例中的方法,本申请实施例中还提供了一种移动终端的流媒体播放装置。该装置可以设置于欲播放同一流媒体文件(为了描述方便,称为流媒体文件1)的至少两个移动终端中的主终端或从终端中。
如图8所示,本申请实施例的移动终端的流媒体播放装置中包括以下模块:信息获取模块801、下载模块802、流媒体获取模块803和播放模块804,其中:
信息获取模块801,用于当本移动终端作为从终端时,向主终端获取本次要下载的流媒体片段在流媒体文件1中对应的起始结束位置信息,其中,主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成流媒体文件;还用于当本移动终端作为从终端时,在播放模块804播放流媒体文件1时,若当前要播放的流媒体片段不在本移动终端中,则向主终端获取当前要播放的流媒体片段所在的移动终端的终端信息;
下载模块802,用于根据信息获取模块801获取到的起始结束位置信息,从流媒体服务器中下载流媒体片段;
流媒体获取模块803,用于向信息获取模块801获取到的终端信息所指示的移动终端获取当前要播放的流媒体片段;
播放模块804,用于播放流媒体获取模块803获取到的流媒体片段。
其中,这至少两个移动终端构成局域网,通过局域网进行移动终端之间的通信,其中,构成局域网的方式包括:WIFI、蓝牙、WLAN等。
另外,该装置中还可以包括:接收模块805、分配模块806、发送模块807和保存模块808,其中:
接收模块805,用于当本移动终端作为主终端时,接收从终端发来的用于获取本次要下载的流媒体片段在流媒体文件1中的起始结束位置信息的请求,以及,接收从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求;
分配模块806,用于在接收模块805接收到从终端发来的用于获取本次要下载的流媒体片段在流媒体文件1中的起始结束位置信息的请求之后,根据流媒体文件1的文件信息,从流媒体文件1当前未被分配的部分中选择一部分,将选中部分作为该从终端本次要下载的流媒体片段分配给该从终端;其中,文件信息为以下之一:播放时长、大小;
发送模块807,用于将分配模块806本次分配给从终端的流媒体片段在流媒体文件中的起始结束位置信息返回给该从终端;还用于在接收模块接收到从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求之后,根据该当前要播放的流媒体片段的起始位置信息在保存模块中查找到对应的终端信息,将查找到的终端信息返回给该从终端;
保存模块808,用于记录从终端的终端信息与分配模块806本次分配给该从终端的流媒体片段在流媒体文件1中的起始结束位置信息之间的对应关系;
流媒体获取模块803,还用于当本移动终端作为主终端时,在播放模块804播放流媒体文件1时,若当前要播放的流媒体片段不在本移动终端中,则根据该当前要播放的流媒体片段的起始位置信息,在保存模块808中查找到对应的终端信息,向查找到的终端信息所指示的移动终端获取到该当前要播放的流媒体片段。
其中,分配模块,还用于当本移动终端作为主终端时,若本移动终端参与下载,则根据流媒体文件的文件信息,从流媒体文件当前未被分配的部分中选择一部分,将选中部分作为本移动终端本次要下载的流媒体片段分配给本移动终端;
下载模块,还用于根据分配模块本次分配给本移动终端的流媒体片段在流媒体文件中的起始结束位置信息,从流媒体服务器中下载该流媒体片段;
保存模块,还用于当本移动终端作为主终端时,若本移动终端参与下载,则记录本移动终端的终端信息与分配模块本次分配给本移动终端的流媒体片段在流媒体文件中的起始结束位置信息之间的对应关系。
其中,流媒体片段在流媒体文件中的起始结束位置信息用[x,y]表示;
当文件信息是播放时长时,起始结束位置信息[x,y]用于指示要下载的流媒体片段是流媒体文件中时间点从x到y的流媒体片段;
当文件信息是大小时,起始结束位置信息[x,y]用于指示要下载的流媒体片段是流媒体文件中大小从x到y的流媒体片段。
其中,当Δ=y-x,且分配的不同流媒体片段的起始结束位置信息[x,y]对应的Δ均相等时,得到Δ的值的方式包括:
根据用户的输入值得到;
或,根据用户从***自带的至少两个选项中的选择结果得到;
或,使用***自带的默认值;
或,根据以下公式得到:Δ=A*T/max{Y1,Y2,...,Yi,...,Yn},其中,A表示预设的播放流媒体文件所需的缓冲时间,T表示用于测速的流媒体文件的播放时长,Yi表示至少两个移动终端中参与下载的移动终端i下载该用于测速的流媒体文件所需的实际时长,n表示参与下载的移动终端的总数,max{}表示取最大值运算符。
其中,该装置中还可以包括:
处理模块,用于当本移动终端作为主终端或从终端时,删除播放模块已播放过的流媒体片段,或者,在播放模块播放完流媒体文件之后,将已播放过的所有流媒体片段组合得到流媒体文件,保存流媒体文件。
综上,本申请以上实施例可以达到以下技术效果:
当多个移动终端要播放同一流媒体文件时,这多个移动终端中的主终端将该流媒体文件分成多个流媒体片段分配给多个移动终端分别进行下载,在播放该流媒体文件时,任一移动终端若发现本移动终端上没有当前要播放的流媒体片段,则向主终端获取该当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所在的移动终端获取到该当前要播放的流媒体片段进行播放,实现了多个移动终端合作下载并播放同一流媒体文件。由于多个移动终端联合下载同一流媒体文件中的各个流媒体片段,即,对于这多个移动终端来说,该流媒体文件只需下载一次,而无需下载多次,避免了数据网络的拥塞,提高了网络下载速度,同时也节约了各个移动终端的数据下载流量。移动终端数量越多,播放的效果也就越好。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (14)
1.一种移动终端的流媒体播放方法,欲播放同一流媒体文件的至少两个移动终端中包括:主终端和从终端,其特征在于,所述方法包括:
当作为从终端时,向主终端获取本次要下载的流媒体片段在所述流媒体文件中对应的起始结束位置信息,根据所述起始结束位置信息从流媒体服务器中下载所述流媒体片段,其中,所述主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成所述流媒体文件;
在播放所述流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则向所述主终端获取所述当前要播放的流媒体片段所在的移动终端的终端信息,向该终端信息所指示的移动终端获取到所述当前要播放的流媒体片段进行播放。
2.根据权利要求1所述的方法,其特征在于,所述至少两个移动终端构成局域网,通过所述局域网进行移动终端之间的通信,其中,构成所述局域网的方式包括:无线保真WIFI、蓝牙、无线局域网WLAN。
3.根据权利要求1所述的方法,其特征在于,还包括:
当作为主终端时,在接收到从终端发来的用于获取本次要下载的流媒体片段在所述流媒体文件中的起始结束位置信息的请求之后,根据所述流媒体文件的文件信息,从所述流媒体文件当前未被分配的部分中选择一部分,将选中部分作为该从终端本次要下载的流媒体片段分配给该从终端;其中,所述文件信息为以下之一:播放时长、大小;
将本次分配给该从终端的流媒体片段在所述流媒体文件中的起始结束位置信息返回给该从终端,记录该从终端的终端信息与本次分配给该从终端的流媒体片段在所述流媒体文件中的起始结束位置信息之间的对应关系;
在接收到从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求之后,根据该当前要播放的流媒体片段的起始位置信息查找到对应的终端信息,将查找到的终端信息返回给该从终端;
在播放所述流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则根据该当前要播放的流媒体片段的起始位置信息查找到对应的终端信息,向查找到的终端信息所指示的移动终端获取到该当前要播放的流媒体片段进行播放。
4.根据权利要求3所述的方法,其特征在于,还包括:
当作为主终端时,若本移动终端参与下载,则根据所述流媒体文件的文件信息,从所述流媒体文件当前未被分配的部分中选择一部分,将选中部分作为本移动终端本次要下载的流媒体片段分配给本移动终端;
根据本次分配给本移动终端的流媒体片段在所述流媒体文件中的起始结束位置信息从所述流媒体服务器中下载该流媒体片段,记录本移动终端的终端信息与本次分配给本移动终端的流媒体片段在所述流媒体文件中的起始结束位置信息之间的对应关系。
5.根据权利要求3或4所述的方法,其特征在于,流媒体片段在所述流媒体文件中的起始结束位置信息用[x,y]表示;
当所述文件信息是播放时长时,所述起始结束位置信息[x,y]用于指示要下载的流媒体片段是所述流媒体文件中时间点从x到y的流媒体片段;
当所述文件信息是大小时,所述起始结束位置信息[x,y]用于指示要下载的流媒体片段是所述流媒体文件中大小从x到y的流媒体片段。
6.根据权利要求5所述的方法,其特征在于,当Δ=y-x,且主终端分配的不同流媒体片段的起始结束位置信息[x,y]对应的Δ均相等时,主终端得到Δ的值的方式包括:
根据用户的输入值得到;
或,根据用户从***自带的至少两个选项中的选择结果得到;
或,使用***自带的默认值;
或,根据以下公式得到:Δ=A*T/max{Y1,Y2,...,Yi,...,Yn},其中,A表示预设的播放流媒体文件所需的缓冲时间,T表示用于测速的流媒体文件的播放时长,Yi表示所述至少两个移动终端中参与下载的移动终端i下载该用于测速的流媒体文件所需的实际时长,n表示参与下载的移动终端的总数,max{}表示取最大值运算符。
7.根据权利要求1所述的方法,其特征在于,还包括:
当作为主终端或从终端时,删除已播放过的流媒体片段,或者,在所述流媒体文件播放完毕之后,将已播放过的所有流媒体片段组合得到所述流媒体文件,保存所述流媒体文件。
8.一种移动终端的流媒体播放装置,欲播放同一流媒体文件的至少两个移动终端中包括:主终端和从终端,其特征在于,所述装置包括:信息获取模块、下载模块、流媒体获取模块和播放模块,其中:
所述信息获取模块,用于当本移动终端作为从终端时,向主终端获取本次要下载的流媒体片段在所述流媒体文件中对应的起始结束位置信息,其中,所述主终端分配的不同流媒体片段之间没有交叠,且分配的所有流媒体片段组成所述流媒体文件;还用于当本移动终端作为从终端时,在所述播放模块播放所述流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则向所述主终端获取所述当前要播放的流媒体片段所在的移动终端的终端信息;
所述下载模块,用于根据所述信息获取模块获取到的起始结束位置信息,从流媒体服务器中下载所述流媒体片段;
所述流媒体获取模块,用于向所述信息获取模块获取到的终端信息所指示的移动终端获取所述当前要播放的流媒体片段;
所述播放模块,用于播放所述流媒体获取模块获取到的流媒体片段。
9.根据权利要求8所述的装置,其特征在于,所述至少两个移动终端构成局域网,通过所述局域网进行移动终端之间的通信,其中,构成所述局域网的方式包括:无线保真WIFI、蓝牙、无线局域网WLAN。
10.根据权利要求8所述的装置,其特征在于,还包括:接收模块、分配模块、发送模块和保存模块,其中:
所述接收模块,用于当本移动终端作为主终端时,接收从终端发来的用于获取本次要下载的流媒体片段在所述流媒体文件中的起始结束位置信息的请求,以及,接收从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求;
所述分配模块,用于在所述接收模块接收到从终端发来的用于获取本次要下载的流媒体片段在所述流媒体文件中的起始结束位置信息的请求之后,根据所述流媒体文件的文件信息,从所述流媒体文件当前未被分配的部分中选择一部分,将选中部分作为该从终端本次要下载的流媒体片段分配给该从终端;其中,所述文件信息为以下之一:播放时长、大小;
所述发送模块,用于将所述分配模块本次分配给从终端的流媒体片段在所述流媒体文件中的起始结束位置信息返回给该从终端;还用于在所述接收模块接收到从终端发来的用于获取当前要播放的流媒体片段所在的移动终端的终端信息的请求之后,根据该当前要播放的流媒体片段的起始位置信息在所述保存模块中查找到对应的终端信息,将查找到的终端信息返回给该从终端;
所述保存模块,用于记录从终端的终端信息与所述分配模块本次分配给该从终端的流媒体片段在所述流媒体文件中的起始结束位置信息之间的对应关系;
所述流媒体获取模块,还用于当本移动终端作为主终端时,在所述播放模块播放所述流媒体文件时,若当前要播放的流媒体片段不在本移动终端中,则根据该当前要播放的流媒体片段的起始位置信息,在所述保存模块中查找到对应的终端信息,向查找到的终端信息所指示的移动终端获取到该当前要播放的流媒体片段。
11.根据权利要求10所述的装置,其特征在于,
所述分配模块,还用于当本移动终端作为主终端时,若本移动终端参与下载,则根据所述流媒体文件的文件信息,从所述流媒体文件当前未被分配的部分中选择一部分,将选中部分作为本移动终端本次要下载的流媒体片段分配给本移动终端;
所述下载模块,还用于根据所述分配模块本次分配给本移动终端的流媒体片段在所述流媒体文件中的起始结束位置信息,从所述流媒体服务器中下载该流媒体片段;
所述保存模块,还用于当本移动终端作为主终端时,若本移动终端参与下载,则记录本移动终端的终端信息与所述分配模块本次分配给本移动终端的流媒体片段在所述流媒体文件中的起始结束位置信息之间的对应关系。
12.根据权利要求10或11所述的装置,其特征在于,流媒体片段在所述流媒体文件中的起始结束位置信息用[x,y]表示;
当所述文件信息是播放时长时,所述起始结束位置信息[x,y]用于指示要下载的流媒体片段是所述流媒体文件中时间点从x到y的流媒体片段;
当所述文件信息是大小时,所述起始结束位置信息[x,y]用于指示要下载的流媒体片段是所述流媒体文件中大小从x到y的流媒体片段。
13.根据权利要求12所述的装置,其特征在于,当Δ=y-x,且分配的不同流媒体片段的起始结束位置信息[x,y]对应的Δ均相等时,得到Δ的值的方式包括:
根据用户的输入值得到;
或,根据用户从***自带的至少两个选项中的选择结果得到;
或,使用***自带的默认值;
或,根据以下公式得到:Δ=A*T/max{Y1,Y2,...,Yi,...,Yn},其中,A表示预设的播放流媒体文件所需的缓冲时间,T表示用于测速的流媒体文件的播放时长,Yi表示所述至少两个移动终端中参与下载的移动终端i下载该用于测速的流媒体文件所需的实际时长,n表示参与下载的移动终端的总数,max{}表示取最大值运算符。
14.根据权利要求8所述的装置,其特征在于,还包括:
处理模块,用于当本移动终端作为主终端或从终端时,删除所述播放模块已播放过的流媒体片段,或者,在所述播放模块播放完所述流媒体文件之后,将已播放过的所有流媒体片段组合得到所述流媒体文件,保存所述流媒体文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410318672.7A CN104066015B (zh) | 2014-07-04 | 2014-07-04 | 移动终端的流媒体播放方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410318672.7A CN104066015B (zh) | 2014-07-04 | 2014-07-04 | 移动终端的流媒体播放方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104066015A true CN104066015A (zh) | 2014-09-24 |
CN104066015B CN104066015B (zh) | 2017-06-23 |
Family
ID=51553509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410318672.7A Active CN104066015B (zh) | 2014-07-04 | 2014-07-04 | 移动终端的流媒体播放方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104066015B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106028125A (zh) * | 2016-05-17 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种多媒体分享方法和装置 |
CN107040399A (zh) * | 2016-02-04 | 2017-08-11 | 京东方科技集团股份有限公司 | 一种升级文件下载方法、设备及*** |
CN115802097A (zh) * | 2023-01-18 | 2023-03-14 | 中传互动(湖北)信息技术有限公司 | 一种低延时直播流媒体方法和*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330613A (zh) * | 2007-06-18 | 2008-12-24 | 天津三星电子有限公司 | 电视广播节目的在线收看方法 |
US20090172179A1 (en) * | 2007-12-31 | 2009-07-02 | Yu-Ben Miao | Networked Transmission System And Method For Stream Data |
CN101997889A (zh) * | 2009-08-28 | 2011-03-30 | ***通信集团公司 | 一种wlan网络中优化p2p传输的方法、***及装置 |
CN101997890A (zh) * | 2009-08-28 | 2011-03-30 | ***通信集团公司 | 一种p2p流媒体下载方法、***及装置 |
CN102404608A (zh) * | 2011-11-30 | 2012-04-04 | 苏州奇可思信息科技有限公司 | 基于局域网点到点传输的视频点播方法 |
CN103873926A (zh) * | 2012-12-13 | 2014-06-18 | 腾讯科技(深圳)有限公司 | 下载并播放媒体文件的方法及*** |
-
2014
- 2014-07-04 CN CN201410318672.7A patent/CN104066015B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330613A (zh) * | 2007-06-18 | 2008-12-24 | 天津三星电子有限公司 | 电视广播节目的在线收看方法 |
US20090172179A1 (en) * | 2007-12-31 | 2009-07-02 | Yu-Ben Miao | Networked Transmission System And Method For Stream Data |
CN101997889A (zh) * | 2009-08-28 | 2011-03-30 | ***通信集团公司 | 一种wlan网络中优化p2p传输的方法、***及装置 |
CN101997890A (zh) * | 2009-08-28 | 2011-03-30 | ***通信集团公司 | 一种p2p流媒体下载方法、***及装置 |
CN102404608A (zh) * | 2011-11-30 | 2012-04-04 | 苏州奇可思信息科技有限公司 | 基于局域网点到点传输的视频点播方法 |
CN103873926A (zh) * | 2012-12-13 | 2014-06-18 | 腾讯科技(深圳)有限公司 | 下载并播放媒体文件的方法及*** |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107040399A (zh) * | 2016-02-04 | 2017-08-11 | 京东方科技集团股份有限公司 | 一种升级文件下载方法、设备及*** |
CN107040399B (zh) * | 2016-02-04 | 2022-03-15 | 京东方科技集团股份有限公司 | 一种升级文件下载方法、设备及*** |
CN106028125A (zh) * | 2016-05-17 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种多媒体分享方法和装置 |
CN115802097A (zh) * | 2023-01-18 | 2023-03-14 | 中传互动(湖北)信息技术有限公司 | 一种低延时直播流媒体方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN104066015B (zh) | 2017-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102946637B (zh) | 用于创建和传输多媒体内容流的方法和装置 | |
KR100567157B1 (ko) | 모바일 환경에서의 플레이리스트를 통한 다수 파일의 스트리밍 방법 및 그 시스템 | |
CN105451087B (zh) | 弹幕信息的推送方法、终端、历史数据服务器及*** | |
EP2805471B1 (en) | Method and apparatus for enabling pre-fetching of media | |
US7996538B2 (en) | Information processing apparatus and content information processing method for transmitting content and event information to a client | |
US20090177759A1 (en) | Base station apparatus for distributing contents and terminal apparatus for receiving the contents | |
CN103248962A (zh) | 获取流媒体数据的方法、设备及*** | |
CN102025759B (zh) | 实时提供ugc分享业务的方法和*** | |
CN1972468B (zh) | 一种信息推送装置和方法 | |
CN100534171C (zh) | 固定移动融合网络流媒体同源视频流的切换方法及*** | |
EP3879801B1 (en) | Content sending method and device, and content receiving method and device | |
CN110933517A (zh) | 码率切换方法、客户端和计算机可读存储介质 | |
CN102137160A (zh) | 一种用于调整p2p下载任务的下载速率的方法与设备 | |
CN103986945A (zh) | 一种混合网络***、频道内容回看方法与混合机顶盒 | |
CN101179480B (zh) | 一种转发流媒体的方法 | |
JP2008277961A (ja) | オンデマンドデータ配信システム | |
EP2264955A1 (en) | Method and system for achieving faster device operation by logical separation of control information | |
CN103826139A (zh) | Cdn***、观看服务器以及流媒体数据传输方法 | |
CN102821325B (zh) | 一种基于社区无线节点的信息交互***与方法 | |
US20130031580A1 (en) | Apparatus and method for inserting advertisement in a broadcasting system | |
CN104066015A (zh) | 移动终端的流媒体播放方法及装置 | |
JP2011024220A (ja) | エラーが起こりやすい無線ブロードキャストチャネルで多重化する方法 | |
CN100444546C (zh) | 一种移动终端及在移动终端上实现流媒体下载的方法 | |
CN1992937B (zh) | 具有流媒体终端适配功能的移动终端设备 | |
CN106604085A (zh) | 一种视频分享方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |