提供多媒体内容的方法、服务器和终端设备的制造方法

文档序号:10516225阅读:390来源:国知局
提供多媒体内容的方法、服务器和终端设备的制造方法
【专利摘要】本公开提供一种提供多媒体内容的方法、服务器和终端设备。该提供多媒体内容的方法包括:从客户端接收多媒体内容的下载请求;根据下载请求生成预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片;将第一个数的下载信息条目发送给客户端。采用此种方法可以提高多媒体内容的起播速度。
【专利说明】
提供多媒体内容的方法、服务器和终端设备
技术领域
[0001]本公开涉及网络多媒体内容加速的技术,尤其涉及一种提供多媒体内容的方法、服务器和终端设备。
【背景技术】
[0002]HLS(HTTP Live Streaming)是一种动态码率自适应技术。其主要应用在流媒体播放领域。在基于HLS的音视频服务中,服务器端提供索引文件(M3U8列表),对媒体内容进行切片和加密。客户端进行流媒体的播放时,其从服务器获得索引文件,并通过对该索引文件的解析获得文件切片,最终进行播放。
[0003]在音视频内容播放的过程中,播放器的响应速度对用户体验有较大影响。尤其是,在启动播放时,起播速度快,用户的体验较好;如果需要等候十几秒钟,才能够看到第一帧,用户的体验不佳。

【发明内容】

[0004]本公开的实施例提供一种提供多媒体内容的方法、服务器和终端设备,可提高多媒体文件播放速度。
[0005]为达到上述目的,本公开的实施例提供了一种提供多媒体内容的方法,方法包括:从客户端接收多媒体内容的下载请求;根据下载请求生成预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片;将第一个数的下载信息条目发送给客户端。
[0006]进一步地,根据下载请求生成预定的第一个数下载信息条目的处理包括:根据下载请求生成第二个数的下载信息条目,第二个数的下载信息条目指示的内容切片构成多媒体内容的全部内容;从第二个数的下载信息条目选取起始的第一个数的下载信息条目。
[0007]进一步地,方法还包括:在预定的第一时长后,将第二个数的下载信息条目当中除去第一个数的下载信息条目后剩余的下载信息条目分一次或多次地发送给客户端。
[0008]进一步地,方法还包括:在预定的第二时长后,根据下载请求生成第三个数的下载信息条目,第三个数和第一个数的和为多媒体内容的内容切片的总个数,并且将第三个数的下载信息条目分一次或多次地发送给客户端。
[0009]进一步地,内容切片是基于HTTP实时流的传输流切片,下载信息条目是M3U8索引中的条目。
[0010]根据本公开的另一方面,提供一种提供多媒体内容的方法,方法包括:向服务器发送多媒体内容的下载请求;接收预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片;根据第一个数的下载信息条目分别下载相应的内容切片;对下载的内容切片进行拼接,并播放拼接的内容切片。
[0011 ]进一步地,方法还包括:接收剩余的下载信息条目,剩余的下载信息条目分别包括多媒体内容的除起始第一个数的内容切片之外的内容切片的下载地址,根据剩余的下载信息条目分别下载相应的内容切片。
[0012]进一步地,内容切片是基于HTTP实时流的传输流切片,下载信息条目是M3U8索引中的条目。
[0013]根据本公开的另一方面,提供一种提供多媒体内容的服务器,服务器包括:请求接收模块,用于接收多媒体内容的下载请求;条目生成模块,用于根据下载请求生成预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片;发送模块,用于将生成的第一个数的下载信息条目发送给客户端。
[0014]进一步地,条目生成模块用于根据下载请求生成第二个数的下载信息条目,第二个数的下载信息条目指示的内容切片构成多媒体内容的全部内容,条目生成模块从第二个数的下载信息条目中截取起始的第一个数的下载信息条目;或条目生成模块用于生成第一个数的下载信息条目后再生成第三个数的下载信息条目,第三个数和第一个数的和为多媒体内容的内容切片的总个数。
[0015]进一步地,条目生成模块生成的下载信息条目为M3U8索引中的条目。
[0016]根据本公开的另一方面,提供一种提供多媒体内容的终端设备,终端设备包括:请求发送模块,用于发送多媒体内容的下载请求;下载条目接收模块,用于接收第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,第一个数的内容切片是多媒体内容起始第一个数的内容切片;下载处理模块,用于根据第一个数的下载信息条目分别下载相应的内容切片,并且对下载的内容切片进行拼接;播放模块,用于播放经过下载处理模块拼接的多媒体内容。
[0017]进一步地,下载条目接收模块还用于接收剩余的下载信息条目,剩余的下载信息条目分别包括多媒体内容的除起始第一个数的内容切片之外的内容切片的下载地址;下载处理模块还用于根据剩余的下载信息条目分别下载相应的内容切片。
[0018]进一步地,内容切片是基于HTTP实时流的传输流切片,下载信息条目是M3U8索引中的条目。
[0019]本公开实施例提供的提供多媒体内容的方法,通过将多媒体内容进行切片,并利用下载信息条目存储内容切片的下载地址,当客户端发出下载请求时,将对应起始第一个数的内容切片的下载信息条目发送给客户端,以提高客户端接收和处理速度,进而实现快速起播的目的。
【附图说明】
[0020]图1为本公开的第一实施例的提供多媒体内容的方法的流程图;
[0021]图2为本公开的第二实施例的提供多媒体内容的方法的流程图;
[0022]图3为本公开的第三实施例的提供多媒体内容的方法的流程图;
[0023]图4为本公开的第四实施例的提供多媒体内容的方法的流程图;
[0024]图5为本公开的第五实施例的提供多媒体内容的方法的流程图;
[0025]图6为本公开的第六实施例的提供多媒体内容的服务器和终端设备的示意图;
[0026]图7为本公开的第六实施例的提供多媒体内容的服务器的示意图;
[0027]图8为本公开的第六实施例的提供多媒体内容的终端设备的示意图。
[0028]附图标记说明:
[0029]300、服务器;310、请求接收模块;320、条目生成模块;330、发送模块;400、客户端;410、请求发送模块;420、下载条目接收模块;430、下载处理模块;440、播放模块。
【具体实施方式】
[0030]本公开的基本公开构思是,提供一种多媒体内容的播放方式,在用户发起多媒体内容的播放请求时,服务器端在收到该播放请求时,仅将请求的多媒体内容的起始部分的内容切片的下载信息条目(而不是全部内容切片的下载信息条目)发送给播放客户端,以使播放客户端尽快开始下载多媒体内容进行播放,降低在起播时用于下载和解析下载信息条目所耗费的时间,以提高客户端接收和处理速度,进而实现快速起播的目的。
[0031 ] 实施例一
[0032]图1为本公开的提供多媒体内容的方法的流程图,该方法的执行主体可以为具有数据处理功能的装置,该装置可以为独立装置,也可以集成在服务器中。
[0033]参照图1,在步骤SI10,从客户端接收多媒体内容的下载请求。
[0034]该多媒体内容可以是视频、音频或音视频等。用户在使用终端设备时,会通过输入设备向客户端下达指令,如播放视频等。客户端接收这些指令后会根据指令的要求进行处理,例如,在本地寻找资源或向服务器发送多媒体内容的下载请求。这一下载请求通过网络传输至服务器被服务器接收。
[0035]在步骤S120,根据下载请求生成预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片。
[0036]当服务器接收到下载请求后,会对这一下载请求进行响应,如根据下载请求寻找多媒体内容等。通常为了保证多媒体内容传输的可靠性,同时提高服务器的负载能力,服务器并不直接将多媒体内容反馈给客户端,而是将多媒体内容的下载地址发送给客户端。
[0037]在本实施例中,服务器与客户端之间的多媒体内容传输是基于HTTP实时流也即HLS协议。在基于此协议进行多媒体内容的传输时,将多媒体内容进行切片处理,使之成为由多个内容切片依据时间顺序组成的多媒体内容。服务器接收到的下载请求后,根据该下载请求生成预定的第一个数的下载信息条目。其中,每个下载信息条目均包括一个内容切片的下载地址,且该第一个数的下载信息条目对应的内容切片是该多媒体内容的起始第一个数的内容切片。例如,第一个数为10个。则这10个下载信息条目对应多媒体内容的前10个内容切片。
[0038]在步骤S130,将第一个数的下载信息条目发送给客户端。
[0039]例如,服务器可在生成第一个数的下载信息条目后,将其发送给客户端。
[0040]在基于HLS协议的情况下,服务器生成一个M3U8的索引,并将该M3U8的索引发送给客户端。该M3U8索引中的条目即为该第一个数的下载信息条目。
[0041]通过将多媒体内容的起始内容切片所对应的下载地址先行发送给客户端可以减少客户端在起播时接收的切片索引的大小,进而提高客户端的接收速度和对索引的处理速度,而且服务端在对下载请求的响应时间间隔也更小,进一步减少了从用户下达指令到客户端响应指令所用的时间。由此,可使得用户等待的时间更少,用户体验更好。
[0042]实施例二
[0043]图2本公开的提供多媒体内容的方法的流程图。实施例二示出在步骤S120中生成第一个数的下载信息条目的示例性处理。
[0044]在步骤S121,根据下载请求生成第二个数的下载信息条目,第二个数的下载信息条目指示的内容切片构成多媒体内容的全部内容。也就是说,在此一次性地生成用于下载构成请求的多媒体内容的全部内容切片的下载信息条目。
[0045]具体地,服务器在接收到下载请求后,为客户端分配下载节点服务器的资源,再根据多媒体内容的时间长度(或文件大小等)对多媒体内容进行切片,并为所有内容切片的下载地址生成下载信息条目,在此,全部下载信息条目的数量为第二个数。
[0046]在步骤S122,从第二个数的下载信息条目选取第一个数的为多媒体内容起始部分生成的下载信息条目。
[0047]例如,在生成第二个数的下载信息条目后,可从该第二个数的下载信息条目中选取起始的第一个数的下载信息条目并生成一个M3U8索引。之后进行步骤S130,以使客户端尽快接收和解析这些下载信息条目,并开始下载起始的内容切片。
[0048]在此基础上,该方法还包括步骤S140:在预定的第一时长后,将第二个数的下载信息条目当中除去第一个数的下载信息条目后剩余的下载信息条目分一次或多次地发送给客户端。
[0049]在多媒体文件起播后,可以利用播放的时间对后续的内容切片进行下载和缓存,这样用户不会感受到等待的时间。使用户感觉多媒体内容的播放是连续的。除第一个数的下载信息条目之外的剩余的下载信息条目可以根据其具体大小和服务器的负载能力分一次(即生成一个M3U8索引)或多次(即生成多个M3U8索引)发送给客户端。由此,可将用于下载多媒体内容的全部下载信息条目发送给客户端,使客户端可以下载和播放完整的多媒体内容。
[0050]实施例三
[0051]图3为本公开的提供多媒体内容的方法的流程图。在本实施例中,在实施例一的基础上,在步骤S120和步骤S130之后,还执行步骤S150的处理。
[0052]具体地,在步骤S150,在预定的第二时长后,根据下载请求生成第三个数的下载信息条目,第三个数和第一个数的和为多媒体内容的内容切片的总个数,并且将第三个数的下载信息条目分一次或多次地发送给客户端。
[0053]以此可以将多媒体内容的剩余的内容切片对应的下载地址生成下载信息条目,以保证客户端可以进行完整的多媒体内容播放。
[0054]第三个数的下载信息条目可以根据其具体大小和服务器的负载能力分一次(即生成一个M3U8索引)或多次(即生成多个M3U8索引)发送给客户端。使客户端可以播放完整的多媒体内容。
[0055]实施例四
[0056]图4为本公开的提供多媒体内容的方法的流程图。在本实施例中,对客户端进行详细说明。
[0057]在步骤S210,向服务器发送多媒体内容的下载请求。
[0058]用户对播放应用下达指令后,播放应用的客户端根据此指令向服务器发送多媒体内容(音频、视频、音视频等)的下载请求。该下载请求可以是播放请求等。
[0059]在步骤S220,接收预定的第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片。
[0060]服务器根据该下载请求返回第一个数的下载信息条目。客户端接收该第一个数的下载信息条目,并从该第一个数的下载信息条目中获取第一个数的内容切片的下载地址。该第一个数的内容切片应为多媒体内容的起始第一个数的内容切片(即为第一个至第一个数个)。若,第一个数为10,则应为第I个内容切片至第10个内容切片。
[0061]在步骤S230,根据第一个数的下载信息条目分别下载相应的内容切片。
[0062]客户端接收到第一个数的下载信息条目后,对第一个数的下载信息条目进行处理,如对其进行解析、解密等。最终实现根据下载信息条目下载内容切片。
[0063]在步骤S240,对下载的内容切片进行拼接,并播放拼接的内容切片。
[0064]下载到内容切片后,对内容切片进行拼接,使之成为可以被播放的文件,并对拼接后的内容切片进行播放。
[0065]实施例五
[0066]图5为本公开的提供多媒体内容的方法的流程图。在本实施例中,客户端下载第一个数的内容切片,并对第一个数的内容切片进行播放后,执行步骤S250和步骤S260的处理。
[0067]具体地,在步骤S250,接收剩余的下载信息条目,剩余的下载信息条目分别包括多媒体内容的除起始第一个数的内容切片之外的内容切片的下载地址。
[0068]为保证多媒体内容可以连续完整的播放,服务器会将剩余的内容切片所对应的下载信息条目分一次或多次发送给客户端。客户端接收剩余的下载信息条目。
[0069]在步骤S260,根据剩余的下载信息条目分别下载相应的内容切片。
[0070]客户端接收剩余的下载信息条目后,对其进行处理,最终获取相应的内容切片。之后可以根据需要对内容切片进行拼接、存储、读取和播放等处理。
[0071]在本实施例中,内容切片是基于HTTP实时流(HLS协议)的传输流切片,下载信息条目是M3U8索引中的条目。客户端在接收时,接收的是M3U8的索引。该M3U8索引中包含有第一个数的下载信息条目、或剩余个数的下载信息条目。
[0072]实施例六
[0073]图6为本公开的提供多媒体内容的服务器和终端设备的示意图。在本实施例中,客户端400为设置在终端设备上的播放应用。服务器300为云端服务器。通常情况下,客户端400的播放应用包括用于进行多媒体内容播放的播放模块和用于与云端进行数据传输和处理的代理控件模块(CDE模块Cloud Data Entry)。服务器300包括多个服务器节点(CDN)和调度服务器。
[0074]客户端400将请求传输至服务器300的其中一个服务器节点上,由该服务器节点传输至调度服务器,调度服务器根据请求通过上述的提供多媒体内容的方法将下载信息条目发送给客户端400,由客户端400进行接收和处理。
[0075]具体地,图7为本公开的提供多媒体内容的服务器的示意图。如图7所示,一种提供多媒体内容的服务器包括请求接收模块310、条目生成模块320和发送模块330。
[0076]其中,请求接收模块310用于接收多媒体内容的下载请求,其可以设置在任一服务器节点上,也可以设置在调度服务器上。
[0077]条目生成模块320用于根据下载请求生成预定第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片。该条目生成模块320在本实施例中设置在调度服务器上,其根据整个云端服务器的各个服务器节点的负载和资源情况进行资源分配,并根据服务器与客户端之间的传输协议生成对应的包括有内容切片的下载地址的下载信息条目。由于本实施例中是基于HLS协议,因此条目生成模块320生成的是包括下载信息条目的M3U8索引。
[0078]当然,在其他实施例中,条目生成模块320可以设置在任一服务器节点上。下载信息条目的形式也不限于M3U8索引。
[0079]发送模块330用于将生成的第一个数的下载信息条目发送给客户端。
[0080]条目生成模块320生成第一个数的下载信息条目的方式可以有多种,例如:其可以根据下载请求生成第二个数的下载信息条目,第二个数的下载信息条目指示的内容切片构成多媒体内容的全部内容,之后条目生成模块从第二个数的下载信息条目中截取起始的第一个数的下载信息条目。
[0081]当然,其也可以先生成第一个数的下载信息条目后再生成第三个数的下载信息条目,并使第三个数和第一个数的和为多媒体内容的内容切片的总个数。
[0082]图8为本公开的提供多媒体内容的终端设备的示意图。如图8所示,一种提供多媒体内容的终端设备,装置包括请求发送模块410、下载条目接收模块420、下载处理模块430和播放模块440。
[0083]其中,请求发送模块410用于发送多媒体内容的下载请求。请求发送模块410设置在客户端的CDE模块中。其根据用户指令发送不同的请求。
[0084]下载条目接收模块420用于接收第一个数的下载信息条目,各下载信息条目分别包括多媒体内容的内容切片的下载地址,预定的第一个数的内容切片是多媒体内容起始第一个数的内容切片。其也设置在客户端的CDE模块中。
[0085]下载处理模块430用于在下载条目接收模块420接收到下载信息条目后,根据第一个数的下载信息条目分别下载相应的内容切片,并且对下载的内容切片进行拼接。例如,下载条目接收模块420接收到M3U8索引之后,由下载处理模块430对其进行处理,并根据M3U8索引中的下载地址下载内容切片,且利用M3U8索引中的时间线说明对各内容切片进行处理。
[0086]播放模块440用于播放经过下载处理模块430拼接的多媒体内容。下载处理模块430将处理后的多媒体内容传输给播放模块440,播放模块440对其进行解码等处理,实现播放。
[0087]由于条目生成模块320将一个多媒体内容进行了切片处理,且将全部内容切片的下载信息条目分为至少两次发送,因此,下载条目接收模块420还用于接收除第一个数的下载信息条目之外剩余的下载信息条目,剩余的下载信息条目分别包括多媒体内容的除起始第一个数的内容切片之外的内容切片的下载地址。
[0088]下载处理模块430还用于根据剩余的下载信息条目分别下载相应的内容切片。若下载处理模块430下载的剩余的内容切片未被播放使用,则先将这些内容切片进行存储。
[0089]由此,在基于HLS协议进行的多媒体传输过程中,通过在服务器端简单地将生成的M3U8索引中的最初若干条目先发送给客户端,而不是一次将全部条目发送给客户端,可显著地提高客户端对多媒体内容的起播速度,提高用户体验。需要说明的是,此方法尤其适用于点播过程。
[0090]以上所述,仅为本公开的【具体实施方式】,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。
【主权项】
1.一种提供多媒体内容的方法,所述方法包括: 从客户端接收多媒体内容的下载请求; 根据所述下载请求生成预定的第一个数的下载信息条目,各所述下载信息条目分别包括所述多媒体内容的内容切片的下载地址,所述预定的第一个数的内容切片是所述多媒体内容起始第一个数的内容切片; 将所述第一个数的下载信息条目发送给所述客户端。2.根据权利要求1所述的方法,其中,所述根据所述下载请求生成预定的第一个数下载信息条目的处理包括: 根据所述下载请求生成第二个数的下载信息条目,所述第二个数的下载信息条目指示的内容切片构成所述多媒体内容的全部内容; 从所述第二个数的下载信息条目选取起始的所述第一个数的下载信息条目。3.根据权利要求2所述的方法,其中,所述方法还包括: 在预定的第一时长后,将所述第二个数的下载信息条目当中除去所述第一个数的下载信息条目后剩余的下载信息条目分一次或多次地发送给所述客户端。4.根据权利要求1所述的方法,其中,所述方法还包括: 在预定的第二时长后,根据所述下载请求生成第三个数的下载信息条目,所述第三个数和第一个数的和为所述多媒体内容的内容切片的总个数,并且将所述第三个数的下载信息条目分一次或多次地发送给所述客户端。5.根据权利要求1?4中任一项所述的方法,其中,所述内容切片是基于HTTP实时流的传输流切片,所述下载信息条目是M3U8索引中的条目。6.一种提供多媒体内容的方法,其中,所述方法包括: 向服务器发送多媒体内容的下载请求; 接收预定的第一个数的下载信息条目,各所述下载信息条目分别包括所述多媒体内容的内容切片的下载地址,所述预定的第一个数的内容切片是所述多媒体内容起始第一个数的内容切片; 根据所述第一个数的下载信息条目分别下载相应的内容切片; 对下载的内容切片进行拼接,并播放拼接的内容切片。7.根据权利要求6所述的方法,其中,所述方法还包括: 接收剩余的下载信息条目,所述剩余的下载信息条目分别包括所述多媒体内容的除所述起始第一个数的内容切片之外的内容切片的下载地址, 根据所述剩余的下载信息条目分别下载相应的内容切片。8.根据权利要求6或7所述的方法,其中,所述内容切片是基于HTTP实时流的传输流切片,所述下载信息条目是M3U8索引中的条目。9.一种提供多媒体内容的服务器,其中,所述服务器包括: 请求接收模块,用于接收多媒体内容的下载请求; 条目生成模块,用于根据所述下载请求生成预定的第一个数的下载信息条目,各下载信息条目分别包括所述多媒体内容的内容切片的下载地址,所述预定的第一个数的内容切片是所述多媒体内容起始第一个数的内容切片; 发送模块,用于将生成的所述第一个数的下载信息条目发送给客户端。10.根据权利要求9所述的服务器,其中,所述条目生成模块用于根据所述下载请求生成第二个数的下载信息条目,所述第二个数的下载信息条目指示的内容切片构成所述多媒体内容的全部内容,所述条目生成模块从所述第二个数的下载信息条目中截取起始的第一个数的下载信息条目;或 所述条目生成模块用于生成所述第一个数的下载信息条目后再生成第三个数的下载信息条目,所述第三个数和第一个数的和为所述多媒体内容的内容切片的总个数。11.根据权利要求9或10所述的服务器,其中,所述条目生成模块生成的下载信息条目为M3U8索引中的条目。12.一种提供多媒体内容的终端设备,其中,所述终端设备包括: 请求发送模块,用于发送多媒体内容的下载请求; 下载条目接收模块,用于接收第一个数的下载信息条目,各所述下载信息条目分别包括所述多媒体内容的内容切片的下载地址,所述第一个数的内容切片是所述多媒体内容起始第一个数的内容切片; 下载处理模块,用于根据所述第一个数的下载信息条目分别下载相应的内容切片,并且对下载的内容切片进行拼接; 播放模块,用于播放经过所述下载处理模块拼接的多媒体内容。13.根据权利要求12所述的终端设备,其中,所述下载条目接收模块还用于接收剩余的下载信息条目,所述剩余的下载信息条目分别包括所述多媒体内容的除起始第一个数的内容切片之外的内容切片的下载地址; 所述下载处理模块还用于根据所述剩余的下载信息条目分别下载相应的内容切片。14.根据权利要求12或13所述的终端设备,其中,所述内容切片是基于HTTP实时流的传输流切片,所述下载信息条目是M3U8索引中的条目。
【文档编号】H04N21/643GK105872607SQ201610201857
【公开日】2016年8月17日
【申请日】2016年3月31日
【发明人】徐晓光
【申请人】乐视控股(北京)有限公司, 乐视云计算有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1