CN103327415B - 一种加速网络视频下载的方法和装置 - Google Patents

一种加速网络视频下载的方法和装置 Download PDF

Info

Publication number
CN103327415B
CN103327415B CN201310221839.3A CN201310221839A CN103327415B CN 103327415 B CN103327415 B CN 103327415B CN 201310221839 A CN201310221839 A CN 201310221839A CN 103327415 B CN103327415 B CN 103327415B
Authority
CN
China
Prior art keywords
downloading
point
fragment
download
network video
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.)
Active
Application number
CN201310221839.3A
Other languages
English (en)
Other versions
CN103327415A (zh
Inventor
孙卓
章勋
彭国洲
鲁晓锁
丁振
赵化强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Hongxiang Technical Service Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310221839.3A priority Critical patent/CN103327415B/zh
Publication of CN103327415A publication Critical patent/CN103327415A/zh
Application granted granted Critical
Publication of CN103327415B publication Critical patent/CN103327415B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种加速网络视频下载的方法和装置。该方法包括:将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载。本发明的技术方案能够加速在线视频的下载,缓冲足够的视频数据,保证流畅播放。

Description

一种加速网络视频下载的方法和装置
技术领域
本发明涉及计算机网络技术领域,具体涉及一种加速网络视频下载的方法和装置。
背景技术
互联网的主要应用之一就是资源共享,用户可通过互联网获得需要的信息和数据,这就引出了下载的概念,其是通过网络进行传输文件,把互联网保存到本地电脑上的一种网络活动。
以P2P(点对点,Peer to Peer)模式的下载为例,每个节点的地位都是对等的,同时承担服务器和客户端的角色,也即,在节点作为服务器的时候要占用上传带宽,在节点作为客户端的时候要占用下载带宽。
目前,很多网站提供网络视频供用户在线观看。在线观看视频是边下载边观看的过程,但是很多情况下由于网络条件差导致下载速度小于播放速度,视频播放出现卡住不流畅的问题。
为此,很多视频网站提供了专用于自身网站的视频加速器,如优酷网站的爱酷、土豆网的飞速土豆等软件。
在用户的计算机上,不同应用程序的网络带宽是共享的,如果一个程序对带宽资源无节制的使用,必定会造成其他应用程序的网络行为受到不利的影响。这样,在运行下载程序时,其它网络应用程序(如浏览器、网络游戏、网络视频或视频聊天等)也需要占用网络带宽,这就出现下载程序抢占过多网络带宽,从而影响其它网络应用体验的现象;例如,在执行一个下载任务时,浏览网页就会变得很慢,网络游戏或者是视频播放将会变得很卡,等等。现有的视频加速器采用的加速方法单一,大多是采用多线程从视频服务器下载的方式进行加速,这种方式在本地与视频服务器之间的网络条件有限的情况下其加速效果体验很差。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种加速网络视频下载的方法和装置。
依据本发明的一个方面,提供了一种加速网络视频下载的方法,该方法包括:
将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;
对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载。
可选地,所述对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载包括:
对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成;
或者,对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成。
可选地,所述对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载包括:
对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载;或者,对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;
当点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
可选地,该方法进一步包括:采用多线程的方式对多个分片同时进行下载。
可选地,所述采用多线程的方式对多个分片同时进行下载包括:
在下载过程中增加线程进行下载;
或者,
在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
可选地,在将待下载的视频文件码流进行分片并按照播放顺序从前到后放入下载队列中之前,该方法进一步包括:
分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;
如果存在,则对该网络视频下载请求所对应的待下载网络视频文件执行所述分片及下载的过程,并且根据所支持的网络视频下载协议完成下载。
依据本发明的一个方面,提供了一种加速网络视频下载的装置,该装置包括:
分片单元,适于将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;
下载单元,适于对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载。
可选地,所述下载单元,适于对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成;或者,适于对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成。
可选地,所述下载单元,适于对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,或者,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;当点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
可选地,所述下载单元,进一步适于采用多线程的方式对多个分片同时进行下载。
可选地,所述下载单元,适于在下载过程中增加线程进行下载,或者,在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
可选地,该装置进一步包括:
下载分析单元,适于分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;如果存在,则通知所述分片单元进行分片处理,以及通知所述下载单元根据该支持的网络视频下载协议进行下载。
根据本发明采用的分片方式可以保证的小的分片可以先下载并且能够很快下载完,这样可以保证视频一边播放的同时,去下载队列中的后面的大的视频分片,并且按照预设策略调度点对服务器和点对点的方式进行下载,即使在视频服务器的网络条件较差的情况下,也能由点对点方式进行下载,以达到加速下载的目的。因此本发明的技术方案能够加速在线视频的下载,缓冲足够的视频数据,保证流畅播放。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种加速网络视频下载的方法的流程图;
图2示出了根据本发明一个实施例的按照预设策略调度点对服务器的方式和点对点的方式进行下载的网络环境示意图;
图3示出了根据本发明一个实施例的按照预设策略调度P2S和P2P进行下载的示意图;
图4示出了根据本发明另一个实施例的按照预设策略调度P2S和P2P进行下载的示意图;
图5示出了根据本发明一个实施例的一种加速网络视频下载的装置的结构图;
图6示出了根据本发明一个实施例的一种加速网络视频下载的装置的结构图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络连接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
为了方便理解,先对本申请中涉及的两个技术术语进行说明:
点对服务器方式:P2S(Peer to Server),用户对服务器;
点对点方式:P2P(Peer to Peer),对等网络。
现有采用P2P技术下载文件的方法,通常包括如下步骤:
步骤A1、客户端A开始针对某文件资源的下载任务;
步骤A2、客户端A得到P2P服务器的IP(网络之间互连的协议,Internet Protocol)列表;
步骤A3、依据所述P2P服务器的IP列表,客户端A随机选择其中一台P2P服务器进行登陆;
步骤A4、该客户端A向该台P2P服务器发送携带该文件资源信息的查询请求;
步骤A5、该台P2P服务器向客户端A返回该文件资源的种子节点;
步骤A6、客户端A与所述该文件资源的种子节点连接,进行该文件资源的分享。
现有的视频加速器采用的加速方法单一,采用多线程从视频服务器按照上述的下载方式进行加速下载,这种方式在本地与视频服务器之间的网络条件有限的情况下其加速效果比较差。
图1示出了根据本发明一个实施例的一种加速网络视频下载的方法的流程图。如图1所示,该方法包括:
步骤S110,将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大。
本步骤中,将待下载的网络视频文件码流按照播放顺序从前到后进行分片,在下载队列中靠前的分片较小(例如几十k,依次到上百k,几百k等),靠后的分片较大(1M到2M),这样可以保证的小的分片可以先下载并且能够很快下载完,这样可以保证视频一边播放的同时,去下载队列中的后面的大的视频分片。
具体来说,用一个队列(如采用先进先出FIFO的数据结构)存放分片,然后依次从队列的前端取出分片进行下载。比如一个视频文件被分成如下四块分片:1M、2M、3M和4M,那么用一个队列存放就是先放入1M,再放入2M,再放入3M,最后放入4M,下载的时候则是先放入的先下载,即按照1M、2M、3M和4M的顺序依次进行下载。就分片的大小来说,1M最小,向后依次增大,4M最大。
步骤S120,对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载。在选择了至少一个P2P服务器和P2S服务器后,可获取文件资源的种子信息,例如,该客户端可首先向所选择P2P服务器和P2S服务器发送携带该文件资源信息的种子查询请求,然后,接收所选择P2P服务器和P2S服务器各自返回的文件资源的种子信息。
本步骤中结合点对服务器和点对点的方式进行下载,即使在视频服务器的网络条件较差的情况下,也能由点对点方式进行下载,以达到加速下载的目的。
本发明实施例所示图1所示的方法,能够解决网络条件较差的用户观看在线视频经常缓冲不流畅的问题,加速在线视频的下载,缓冲足够的视频数据,保证流畅播放。
图2示出了根据本发明一个实施例的按照预设策略调度点对服务器的方式和点对点的方式进行下载的网络环境示意图。如图2所示,各个用户的PC形成对等网络,一个PC能以点对点方式从其他PC下载视频资源,且各个PC能够访问视频服务器。
在本发明中,按照预设策略调度P2S和P2P的下载策略进行下载。P2S方式从服务器下载,服务器的数据比较稳定,但是会受限于带宽。P2P是和节点之间交互进行下载,不太稳定,但可以节省带宽,在服务器速度不好的时候,可以作为补充下载,当节点足够多时,速度甚至远超服务器。例如,对于一个大小为100K的分片,使用P2S从第1个字节开始往后下载,使用P2P从100K的最后一个字节开始往前下载,如果两者速度相同,最后会在第50K个字节处相遇,拼成一个完整的100K分片,这样一个分片的下载就完成了。
P2S的下载方式就是用视频请求的url,例如http://1.2.3.4/a.flv这样的链接去向视频服务器请求数据。P2P的具体下载方式如下:本机向P2P资源服务器查询当前视频资源,资源服务器根据在线节点的情况给出一部分节点信息,然后本机一一去连接这些节点请求视频数据。比如,本机向资源服务器查询视频a.flv的资源,资源服务器查到了P1、P2、P3、P4和P5这五个节点都有a.flv的资源,资源服务器随机挑选出P2、P3和P5这三个节点反馈给本机,本机根据反馈分别连接P2、P3和P5这三个节点,请求分片数据。
在接收到客户端的视频请求的url时,可以提供与请求发起客户端处于相同IP地址段和相同网络运营商的资源提供端也即种子节点,该客户端根据自身所属IP地址段,从所述P2P服务器和/或P2S服务器的IP列表中选择网络连接最佳的一个资源服务器。
具体的,从IP地址段信息库中查询客户端所属IP地址段的物理所在地和网络运营商,其中,所述IP地址段信息库包括多个IP地址段以及每个IP地址段对应的物理所在地和网络运营商;
针对所述P2P服务器和/或P2S服务器的IP列表中各P2P服务器和/或P2S服务器的IP地址,该客户端确定相应的所属IP地址段,并从所述IP地址段信息库中查询各所属IP地址段的物理所在地和网络运营商;
依据该客户端所属IP地址段和各P2P服务器和/或P2S服务器和的IP地址的物理所在地和网络运营商,从所述P2P服务器和/或P2S服务器的IP列表中选择物理位置最临近且处于相同网络运营商的一个P2P服务器和/或P2S服务器的IP地址。
在本发明实施例中,在实际下载过程中,P2S的下载速度和P2P的下载速度不可能完全相同,分两种情况:
(a)当检测到网络环境中P2S速度较快,P2P速度较慢的情况下。此时,当下载的视频源较为冷门的时候,P2P的速度不会很好,这样情况下让P2S一直下载,P2P则可以作为次要的下载服务器进行资源下载。
对于一个视频的至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成;或者,对于一个视频的至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成。
仍以100K大小的分片为例,采用P2S方式从起始位置开始下载,采用P2P方式从结尾位置开始下载,则P2S可能会下完前面80K的数据,而后面20K的数据由P2P下载完成,如图3所示。
(b)当检测到在网络环境中P2S速度较慢,P2P速度较快的情况下。当下载的视频源非常热门时,会找到大量的P2P节点,这时P2P的速度会非常好,甚至于超过P2S的速度。当P2P的速度达到一定的阈值时,调整关闭P2S下载,只采用P2P下载,以减少服务器端的压力。
具体地对于一个视频的至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,或者,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;当点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
在本发明的一个实施例中,P2P下载速度的阈值采用视频的码率作为指标,视频的码率一般用于衡量视频的清晰度,根据经验,当视频的下载速度大于2倍的视频的码率值时,可以保证视频流畅播放,因此P2P下载速度的阈值可采用码率的2倍或者3倍。
例如,采用P2S方式从起始位置开始下载,采用P2P方式从结尾位置开始下载,当P2P的下载速度很好已达到预设阈值时,停止P2S,P2P从P2S已完成的地方开始从前往后下载,保证可以节省服务器的资源。还是以100K的分片为例,P2S从前往后下载了10K,P2P从后往前下载到了20K,这时发现P2P速度已经优于P2S,于是停掉P2S下载,让P2P从10K的位置开始,完成剩下部分的下载,如图4所示。
一个分片的起始位置和结尾位置在进行分片的时候就已经确定好的,例如,某一个分片是从视频的第2M开始,长度为1M,那么该分片的起始位置是该视频的2M位置处,该分片的结束位置就是该视频的3M位置处。
在本发明的一个实施例中,采用多线程的方式对视频的多个分片同时进行下载。即采用多线程的方式进行调度,同时可以创建多个线程让多个分片同时下载。
例如采用两个线程(线程11和线程12)用P2S方式从起始位置开始下载,再采用两个线程(线程21和22)用P2P方式从结尾位置开始下载,其中,初始时线程11下载第一个分片,线程12下载第二个分片,先下载完的线程11或线程12再去下载第三个分片,以此类推;同样线程21下载最后一个分片,线程22下载倒数第二个分片,调度先完成下载的线程21或22接着下载倒数地三个分片,以此类推。还可以根据需要增减线程,如果需要增加一个线程,则开启一个新的线程,并调度其参加下载工作,如果需要减少一个线程,则当该线程完成一个分片的下载后就不再调度其进行新分片的下载,就会少一个工作线程。
但是由于视频码流的时序性要求,并不是线程数越多就越好,在发明的一个实施例中采用动态调整线程数的策略:在下载过程中增加线程进行下载;或者,在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。一般根据下载速度与视频码率之间的关系调整线程的数量。视频码率是每秒播放的视频数据量,不同清晰度的视频文件的视频码率不同。
例如,最开始的时候只启动两个线程去下载,让前面的分片能够快速下载完成,当完成多个分片后,开始调整增加线程数,从三线程到四线程甚至到五线程。同时监控了下载速度,当下载速度已经超过视频码率的两三倍之后,再增加线程数就用处不大了,可以维持当前的线程数进行下载。如果下载速度非常好,甚至可以减少线程数,从四线程到三线程到两线程,这样既可以保证视频的流程播放,又不会过多的占用网络资源。
现有的视频网站的视频加速器都是专用的,如爱酷只能加速优酷网站的视频,飞速土豆只能加速土豆网的视频,相互不兼容,因此本申请给出了如下方案:
在本发明的一个实施例中,将待下载的视频文件码流进行分片并按照播放顺序从前到后放入下载队列中之前,该方法进一步包括:分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;如果存在,则对该网络视频下载请求所对应的待下载网络视频文件执行所述分片及下载的过程,并且根据所支持的网络视频下载协议完成下载。即在该实施例中,由于不同的视频网站所采用的视频下载协议不同,为了能够支持下载不同视频网站的视频,预先搜集并在服务器中保存这些视频网站所采用的多个不同的网络视频下载协议。
上述的多个网络视频下载协议包括但不限于如下协议:Http下载协议,UDP下载协议。
图5示出了根据本发明一个实施例的一种加速网络视频下载的装置的结构图。如图5所示,该加速网络视频下载的装置500包括:分片单元510和下载单元520。
分片单元510,适于将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;
下载单元520,适于对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载。
在本发明的一个实施例中,下载单元520,适于对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成;或者,适于对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载,直至将该分片的数据全部下载完成。
在本发明的一个实施例中,下载单元520,适于对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载,或者,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;当点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
在本发明的一个实施例中,下载单元520,进一步适于采用多线程的方式对多个分片同时进行下载。进一步地,下载单元520适于在下载过程中增加线程进行下载,或者,在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
图5所示的装置所采用的分片方式可以保证的小的分片可以先下载并且能够很快下载完,这样可以保证视频一边播放的同时,去下载队列中的后面的大的视频分片,并且按照预设策略调度点对服务器和点对点的方式进行下载,即使在视频服务器的网络条件较差的情况下,也能由点对点方式进行下载,以达到加速下载的目的。
图6示出了根据本发明一个实施例的一种加速网络视频下载的装置的结构图。如图6所示,该加速网络视频下载的装置600包括:分片单元610、下载单元620和下载分析单元630。其中,分片单元610与图5中的分片单元510相同,下载单元620与图5的中下载单元520相同
下载分析单元630,适于分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;如果存在,则通知分片单元610进行分片处理,以及通知下载单元620根据该支持的网络视频下载协议进行下载。
图6所示的装置所采用的分片方式可以保证的小的分片可以先下载并且能够很快下载完,这样可以保证视频一边播放的同时,去下载队列中的后面的大的视频分片,并且按照预设策略调度点对服务器和点对点的方式进行下载,即使在视频服务器的网络条件较差的情况下,也能由点对点方式进行下载,以达到加速下载的目的。并且图6所示的装置能够对采用不同视频下载协议的多个视频网站的视频的下载进行加速。
本发明实施例中,所述下载单元,适于在下载过程中增加线程进行下载,或者,在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
本发明实施例中所述的装置,其中,该装置进一步包括:
下载分析单元,适于分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;如果存在,则通知所述分片单元进行分片处理,以及通知所述下载单元根据该支持的网络视频下载协议进行下载。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的加速网络视频下载的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (10)

1.一种加速网络视频下载的方法,其中,该方法包括:
将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;
对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载,包括:对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载;或者,对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;
其中,采用多线程的方式对多个分片同时进行下载。
2.如权利要求1所述的方法,其中,所述对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载包括:
对于已确定下载方式的一个分片,使用确定的下载方式下载该分片的全部数据。
3.如权利要求1所述的方法,其中,所述对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载包括:
当点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
4.如权利要求1所述的方法,其中,所述采用多线程的方式对多个分片同时进行下载包括:
在下载过程中增加线程进行下载;
或者,
在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
5.如权利要求1至4中任一项所述的方法,其中,在将待下载的视频文件码流进行分片并按照播放顺序从前到后放入下载队列中之前,该方法进一步包括:
分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;
如果存在,则对该网络视频下载请求所对应的待下载网络视频文件执行所述分片及下载的过程,并且根据所支持的网络视频下载协议完成下载。
6.一种加速网络视频下载的装置,其中,该装置包括:
分片单元,适于将待下载网络视频文件码流进行分片并按照播放顺序从前到后放入下载队列中,其中,下载队列中靠前的分片较小,靠后的分片较大;
下载单元,适于对于下载队列中的至少一个分片,按照预设策略调度点对服务器的方式和点对点的方式进行下载,包括:对于所述至少一个分片中的每个分片,采用点对服务器的方式从该分片的起始位置开始向后下载,采用点对点的方式从该分片的结尾位置开始向前下载;或者,适于对于所述至少一个分片中的每个分片,采用点对点的方式从该分片的起始位置开始向后下载,采用点对服务器的方式从该分片的结尾位置开始向前下载;
所述下载单元,进一步适于采用多线程的方式对多个分片同时进行下载。
7.如权利要求6所述的装置,其中,
所述下载单元,适于对于已确定下载方式的一个分片,使用确定的下载方式下载该分片的全部数据。
8.如权利要求6所述的装置,其中,
所述下载单元,适于在点对点下载的速度大于点对服务器下载的速度且点对点下载的速度达到一定的阈值时,关闭点对服务器的方式,并采用点对点的方式完成剩余部分的下载。
9.如权利要求6所述的装置,其中,
所述下载单元,适于在下载过程中增加线程进行下载,或者,在下载过程中,如果下载速度已超过视频码率的预设倍数,则维持线程数量不变或减少线程数量。
10.如权利要求6至9中任一项所述的装置,其中,该装置进一步包括:
下载分析单元,适于分析浏览器的网络视频下载请求,判断预先保存的多个网络视频下载协议中是否存在支持该网络视频下载请求的协议;如果存在,则通知所述分片单元进行分片处理,以及通知所述下载单元根据该支持的网络视频下载协议进行下载。
CN201310221839.3A 2013-06-05 2013-06-05 一种加速网络视频下载的方法和装置 Active CN103327415B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310221839.3A CN103327415B (zh) 2013-06-05 2013-06-05 一种加速网络视频下载的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310221839.3A CN103327415B (zh) 2013-06-05 2013-06-05 一种加速网络视频下载的方法和装置

Publications (2)

Publication Number Publication Date
CN103327415A CN103327415A (zh) 2013-09-25
CN103327415B true CN103327415B (zh) 2017-04-12

Family

ID=49195901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310221839.3A Active CN103327415B (zh) 2013-06-05 2013-06-05 一种加速网络视频下载的方法和装置

Country Status (1)

Country Link
CN (1) CN103327415B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103607634A (zh) * 2013-11-19 2014-02-26 四川长虹电器股份有限公司 一种减少网络视频点播终端用户等待时间的方法
CN103634383B (zh) * 2013-11-21 2016-11-23 北京奇虎科技有限公司 基于移动终端的多链接分段下载方法和移动终端
CN103631569B (zh) * 2013-12-23 2016-07-27 百度在线网络技术(北京)有限公司 下载方法和装置
CN103685302A (zh) * 2013-12-24 2014-03-26 乐视网信息技术(北京)股份有限公司 连接内容传送网络的处理方法与系统
CN105007339A (zh) * 2015-08-25 2015-10-28 广东欧珀移动通信有限公司 资源下载方法、装置以及智能终端
CN105162885B (zh) * 2015-09-25 2019-04-12 宇龙计算机通信科技(深圳)有限公司 资源下载方法、资源下载系统和终端
CN105430425B (zh) * 2015-11-18 2018-11-16 深圳Tcl新技术有限公司 单分片视频播放加速方法及装置
CN105898607A (zh) * 2015-11-20 2016-08-24 乐视云计算有限公司 网络视频播放方法、装置及系统
CN106911656A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 一种数据下载方法和装置
CN105611328B (zh) * 2015-12-25 2019-01-01 深圳Tcl新技术有限公司 基于hls流媒体的视频数据加速下载方法及装置
CN106231440A (zh) * 2016-07-22 2016-12-14 华为技术有限公司 一种流媒体文件分片下载方法、装置及终端
CN106331146A (zh) * 2016-09-08 2017-01-11 四川大学 基于移动云计算的大容量数据下载方法及其系统
CN107301245B (zh) * 2017-07-14 2020-03-06 国网山东省电力公司淄博供电公司 一种电力信息视频搜索系统
CN108260010A (zh) * 2018-02-05 2018-07-06 南通大学 一种基于网络编解码和协作分发的视频点播方法以及系统
CN110545484B (zh) * 2018-05-29 2021-12-14 北京字节跳动网络技术有限公司 一种用于媒体播放的缓冲队列管理方法、装置及存储介质
CN109067916B (zh) * 2018-09-21 2021-05-11 深圳市九洲电器有限公司 一种在线多媒体文件下载方法及装置、电子设备
CN109587580A (zh) * 2018-11-15 2019-04-05 湖南快乐阳光互动娱乐传媒有限公司 基于自适应cdn的视频分段下载方法及系统
CN113286187B (zh) * 2021-05-21 2023-03-03 杭州米络星科技(集团)有限公司 一种视频加载播放方法、装置、设备及存储介质
CN113891170B (zh) * 2021-11-23 2024-05-03 维沃移动通信有限公司 下载方法、装置、电子设备及存储介质
CN115576995B (zh) * 2022-11-09 2023-06-09 广州海量数据库技术有限公司 一种基于OpenGauss数据库的流数据加载方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101159645A (zh) * 2007-11-08 2008-04-09 中国传媒大学 面向p2p应用的互为服务器的设计方法以及网络架构
CN101431663A (zh) * 2008-12-12 2009-05-13 四川长虹电器股份有限公司 视频点播系统双引擎轮换方法
CN102404182A (zh) * 2010-09-07 2012-04-04 中国移动通信集团公司 传输控制方法及装置
CN102647436A (zh) * 2011-02-21 2012-08-22 腾讯科技(深圳)有限公司 一种基于点对点的文件发布方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7324555B1 (en) * 2003-03-20 2008-01-29 Infovalue Computing, Inc. Streaming while fetching broadband video objects using heterogeneous and dynamic optimized segmentation size
CN102656857B (zh) * 2010-12-17 2015-01-07 华为技术有限公司 一种启动阶段的流媒体数据获取、发送方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101159645A (zh) * 2007-11-08 2008-04-09 中国传媒大学 面向p2p应用的互为服务器的设计方法以及网络架构
CN101431663A (zh) * 2008-12-12 2009-05-13 四川长虹电器股份有限公司 视频点播系统双引擎轮换方法
CN102404182A (zh) * 2010-09-07 2012-04-04 中国移动通信集团公司 传输控制方法及装置
CN102647436A (zh) * 2011-02-21 2012-08-22 腾讯科技(深圳)有限公司 一种基于点对点的文件发布方法及系统

Also Published As

Publication number Publication date
CN103327415A (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
CN103327415B (zh) 一种加速网络视频下载的方法和装置
EP3417626B1 (en) Playback synchronization among adaptive bitrate streaming clients
EP2526496B1 (en) Client-server signaling in content distribution networks
US20160028646A1 (en) Push-based transmission of resources and correlated network quality estimation
US9635077B2 (en) Low latency live video streaming
US20170164020A1 (en) Content delivery method for content delivery network platform and scheduling proxy server
EP3200423B1 (en) Media host transmitting media stream with adapted bit rate
EP2957103B1 (en) Cloud-based video delivery
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
CA2888218C (en) Playback stall avoidance in adaptive media streaming
US8589477B2 (en) Content information display device, system, and method used for creating content list information based on a storage state of contents in a cache
WO2019128800A1 (zh) 一种内容服务的实现方法、装置及内容分发网络节点
CN102394880B (zh) 内容分发网络中的跳转响应处理方法和设备
CA2840106A1 (en) Offline download method, multimedia file download method and system thereof
CN103414959B (zh) 一种加快网络视频播放速度的方法和装置
CN111510789B (zh) 视频播放方法、系统、计算机设备及计算机可读存储介质
US20120166627A1 (en) Monitoring and managing a http session independent of client and server configurations
WO2017088394A1 (zh) 在线直播视频播放器及方法
EP3100267B1 (en) Method for improving offline content playback
WO2016018572A1 (en) Systems and methods for selective transport accelerator operation
CN106411778A (zh) 数据转发的方法及装置
WO2023284428A1 (zh) 直播视频的播放方法、装置、电子设备、存储介质及程序产品
US20150026746A1 (en) Method and IPTV Server for Enabling Playout of One or More Media Objects
CN106412630B (zh) 视频列表切换控制方法及装置
CN107959667A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220721

Address after: 300450 No. 9-3-401, No. 39, Gaoxin 6th Road, Binhai Science Park, Binhai New Area, Tianjin

Patentee after: 3600 Technology Group Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230712

Address after: 1765, floor 17, floor 15, building 3, No. 10 Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: Beijing Hongxiang Technical Service Co.,Ltd.

Address before: 300450 No. 9-3-401, No. 39, Gaoxin 6th Road, Binhai Science Park, Binhai New Area, Tianjin

Patentee before: 3600 Technology Group Co.,Ltd.