CN107959668A - 流媒体传输优化方法及缓存装置 - Google Patents

流媒体传输优化方法及缓存装置 Download PDF

Info

Publication number
CN107959668A
CN107959668A CN201610917206.XA CN201610917206A CN107959668A CN 107959668 A CN107959668 A CN 107959668A CN 201610917206 A CN201610917206 A CN 201610917206A CN 107959668 A CN107959668 A CN 107959668A
Authority
CN
China
Prior art keywords
resolution
medium data
stream medium
data block
client
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.)
Pending
Application number
CN201610917206.XA
Other languages
English (en)
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.)
Nanning Fulian Fugui Precision Industrial Co Ltd
Original Assignee
Nanning Fugui Precision Industrial 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 Nanning Fugui Precision Industrial Co Ltd filed Critical Nanning Fugui Precision Industrial Co Ltd
Publication of CN107959668A publication Critical patent/CN107959668A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2491Mapping quality of service [QoS] requirements between different networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/509Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一种缓存装置,该缓存装置通过第一网络与至少一个客户端连接,及通过第二网络与至少一个内容提供装置连接。该缓存装置根据该客户端的需求从内容提供装置中预取指定分辨率的流媒体数据块提供给该客户端,当该客户端要求更高分辨率的流媒体数据块时,缓存装置会检测和内容提供装置之间的网络状况,当网络状况不支持该需求时,则限制与该客户端之间的传输速度,并继续向客户端发送相应的原分辨率的流媒体数据块。本发明实施例还提供了一种流媒体传输优化方法。相比于现有技术,本发明实施例可以防止了客户端的流媒体播放画面不停在低分辨率与高分辨率切换的问题,以及防止客户端盲目要求提高流媒体分辨率所导致的播放不流畅的问题。

Description

流媒体传输优化方法及缓存装置
技术领域
本发明实施例涉及影音串流数据的传输优化。
背景技术
在信息时代,数字流媒体广泛地分布,且可在诸如例如因特网的多种数字通信网络中获得。流媒体播放器接收流传播内容,并将其呈现在客户端的显示器上。自适应流媒体播放器监视客户端状况及传输装置并据此调整流,以提升或降低流媒体的分辨率。
然,为提升流媒体播放的画面分辨率,流媒体播放器可能要求更高分辨率的流媒体数据块,而当前网络状况又无法满足时,会造成客户端的流媒体播放画面不停在低分辨率与高分辨率切换的问题,及播放不流畅的问题。
发明内容
鉴于此,有必要提供一种流媒体传输优化方法及缓存装置,以解决客户端的流媒体播放画面不停在低分辨率与高分辨率切换的问题,及播放不流畅的问题。
本发明实施例提供了一种流媒体传输优化方法,应用于缓存装置中,该缓存装置通过第一网络与至少一个客户端连接,及通过第二网络与至少一个内容提供装置连接。
接收该客户端需要第一分辨率的一个或多个流媒体数据块所对应的一个或多个请求;响应于该一个或多个请求,生成第一预取进程,以从所述内容提供装置中预取第一分辨率的所述一个或多个流媒体数据块给所述客户端;接收客户端需要第二分辨率的第n个流媒体数据块的第n请求;响应于该第n请求:判断所述缓存装置和所述内容提供装置之间的网络状况,是否支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块;如果判断不支持,则限制与所述客户端之间的传输速度,并继续向所述客户端发送第一分辨率的第n个流媒体数据块。
本发明实施例还提供了一种缓存装置,该缓存装置通过第一网络与至少一个客户端连接,及通过第二网络与至少一个内容提供装置连接。该缓存装置包括接收模块和响应模块。
所述接收模块用于用于接收该客户端需要第一分辨率的一个或多个流媒体数据块所对应的一个或多个请求。所述响应模块响应于该一个或多个请求,生成第一预取进程,以从所述内容提供装置中预取第一分辨率的所述一个或多个流媒体数据块给所述客户端。
所述接收模块还用于接收客户端需要第二分辨率的第n个流媒体数据块的第n请求。所述响应模块还用于响应该第n请求:判断所述缓存装置和所述内容提供装置之间的网络状况,是否支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块;如果判断不支持,则限制与所述客户端之间的传输速度,并继续向所述客户端发送相应的第一分辨率的第n个流媒体数据块。
本发明实施例提供的流媒体传输优化方法及缓存装置,相比于现有技术,可以当客户端要求更高分辨率的流媒体数据块,而当前网络状况又无法满足时,主动限制缓存装置与客户端之间的传输速度,以引导客户端继续播放原分辨率的流媒体数据块。从而防止了客户端的流媒体播放画面不停在低分辨率与高分辨率切换的问题,以及防止客户端盲目要求提高流媒体分辨率所导致的播放不流畅的问题。
附图说明
图1为本发明实施例之缓存装置的运行环境示意图。
图2为本发明实施例之缓存装置的功能模块示意图。
图3为本发明实施例之流媒体传输优化方法的流程示意图。
图4为本发明另一实施例之流媒体传输优化方法的流程示意图。
主要元件符号说明
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
请参考图1,本发明实施例之缓存装置2的环境示意图。缓存装置2通过第一网络连接一个或多个客户端,如客户端4A-4D。同时,缓存装置2还通过第二网络连接一个或多个内容提供方,如内容提供装置6。在本实施例中,第一网络可以为局域网(Local AreaNetwork,LAN),第二网络可以为因特网(Internet)或广域网(Wide Area Network,WAN)。
客户端4A-4D可以是可以是移动电话、平板个人计算机或机顶盒。该些客户端4A-4D可以采用基于自适应比特率流(Adaptive Bit-rate Streaming,ABR)的流媒体传输技术,根据传输情况动态调整流媒体播放的分辨率。
当某个客户端(如,客户端4A)向内容提供装置6请求一个流媒体文件,如文件名为sample的流媒体文件时,内容提供装置6会回复一个sample.m3u8文件列表给该客户端4A,该sample.m3u8文件列表中含有该sample文件所能提供的几种分辨率。该客户端4A会根据自身设置的策略或网络状况决定根据哪一种分辨率开始获取sample文件,如根据第一分辨率开始获取该sample文件。
为表示清晰,该sample文件分为多个流媒体数据块或片段,第一分辨率的第一个流媒体数据块用A1表示,第二分辨率的第一个流媒体数据块用B1表示,第一分辨率的第二个流媒体数据块用A2表示,第二分辨率的第二个流媒体数据块用B2表示,以此类推。
客户端4A透过缓存装置2从内容提供装置6中获取所需的流媒体数据块。
请参考图2,为本发明实施例之缓存装置的功能模块图。缓存装置2包括缓存控制***10、存储器20和处理器30。该缓存控制***10包括接收模块100、响应模块200和预估模块300。所述模块100-300被配置成由一个或多个处理器(本实施例为处理器30)执行,以完成本发明实施例。本发明实施例所称的模块是完成一特定功能的计算机程序段。存储器20用于存储缓存控制***10的程序代码资料及存储从内容提供装置6中获取的流媒体数据块。
接收模块100接收客户端4A需要第一分辨率的一个或多个流媒体数据块所对应的一个或多个请求,如需要第一分辨率的第一个流媒体数据块A1的第一请求。
响应模块200响应该第一请求,生成第一预取进程,以从内容提供装置6中预取第一分辨率的第一个流媒体数据块A1及其后续流媒体数据块A2、A3、…。在本实施例中,接收模块100在接收到客户端4A需要第一分辨率的第一个流媒体数据块A1的第一请求时,响应模块200除了根据该第一请求从内容提供装置6下载该第一分辨率的第一个流媒体数据块A1外,还会预取其后续流媒体数据块A2、A3、…。当接收模块100接收到客户端4A需要第一分辨率的第二个流媒体数据块A2的第二请求时,则响应模块200可以将该预取的第一分辨率的流媒体数据块A2直接发送给客户端4A。
在一实施例中,接收模块100在接收到客户端4A需要第一分辨率的第一个流媒体数据块A1的第一请求时,响应模块200会先判断缓存装置2中是否预存或预取有该第一分辨率的第一个流媒体数据块A1。如果判断预存或预取有该第一分辨率的第一个流媒体数据块A1,则该响应模块200将该预存或预取的第一个流媒体数据块A1送给客户端4A。如果判断没有预存或预取有该第一分辨率的第一个流媒体数据块A1,则该响应模块200生成所述第一预取进程,以从内容提供装置6中预取该第一分辨率的第一个流媒体数据块A1
如果缓存装置2和客户端4A之间的网络状况良好,客户端4A本身的***也比较空闲时,根据ABR传输技术,客户端4A可能会要求提升流媒体播放的分辨率,从而要求更高分辨率的流媒体文件,如从第n个流媒体数据块时开始要求获取第二分辨率的第n个流媒体数据块Bn及其后续流媒体数据块Bn+1、Bn+2、…。
当接收模块100接收到客户端4A需要第二分辨率的第n个流媒体数据块Bn的第n请求时,响应模块200响应该第n请求,以判断缓存装置2和内容提供装置6之间的网络状况是否支持缓存装置2从内容提供装置6获取第二分辨率的第n个流媒体数据块Bn。在本实施例中,网络状况可能受多种因素影响,如缓存装置2和内容提供装置6之间的宽带、缓存装置2的***运行状态以及内容提供装置6的***运行状态。
如果判断缓存装置2和内容提供装置6之间的网络状况不支持缓存装置2从内容提供装置6获取第二分辨率的第n个流媒体数据块Bn,则响应模块200限制缓存装置2与客户端4A之间的传输速度,以引导客户端4A播放流媒体的清晰度维持在第一分辨率,并继续向客户端4A发送第一分辨率的第n个流媒体数据块An。所谓限制缓存装置2与客户端4A之间的传输速度可以采用多种方式,例如对缓存装置2的对应端口进行设置,重新分配缓存装置2和客户端4A的带宽,降低缓存装置2向客户端4A反馈或提供流媒体数据库的速度(即增加向客户端4A流媒体数据库之间的时间间隔)等等。
如果判断缓存装置2和内容提供装置6之间的网络状况支持缓存装置2从内容提供装置6获取第二分辨率的第n个流媒体数据块Bn,则响应模块200将所述第一预取进程切换为第二预取进程,所述第二预取进程用于控制缓存装置2向内容提供装置6预取第二分辨率的第n个流媒体数据块Bn及其后续流媒体数据块Bn+1、Bn+2、…,并将第二分辨率的第n个流媒体数据块Bn转发给客户端4A。
在一个实施例中,响应模块200还判断缓存装置2中是否预存或预取有该第二分辨率的第n个流媒体数据块Bn。如果判断预存或预取有该第二分辨率的第n个流媒体数据块Bn,则响应模块200将该预存或预取的第n个流媒体数据块Bn送给客户端4A。
在一个实施例中,缓存装置2还包括预估模块300。该预估模块300侦测缓存装置2与客户端4A之间的网络状况,并依据该侦测结果预估客户端4A向缓存装置2发送需要第二分辨率的第m个流媒体数据块Bm的第m请求之概率(在本实施例中,第一分辨率大于第二分辨率,故网络状况越好,概率越大)。如果该概率大于一个预设阀值时,则响应模块200判断缓存装置2和内容提供装置6之间的网络状况是否支持缓存装置2从内容提供装置6同时获取第一分辨率的第m个流媒体数据块Am和第二分辨率的第m个流媒体数据块Bm。如果支持,则响应模块200同时运作第一预取进程和第二预取进程,第一预取进程用于控制缓存装置2继续从内容提供装置中预取第一分辨率的第m个流媒体数据块Am及其后续流媒体数据块Am+1、Am+2、…,所述第二预取进程用于控制所述缓存装置2从内容提供装置6中预取第二分辨率的第m个媒体数据块Bm及其后续流媒体数据块Bm+1、Bm+2、…。
当接收模块100接收到客户端4A需要第二分辨率的第m个流媒体数据块Bm或其后续流媒体数据块Bm+1、Bm+2、…的请求时,响应模块200会向客户端4A发送该预取的第二分辨率的第m个流流媒体数据块Bm或其后续流媒体数据块Bm+1、Bm+2、…,并停止运作第一预取进程。
请参考图3,本发明实施例之流媒体传输优化方法的流程图。所述流媒体传输优化方法的执行主体可以是图2所示的各个模块组成的缓存装置2,也可以是支持本方法任意其它装置。需要注意的是,本方法实施例中的执行主体并不能用来限制本发明。另外,本方法实施例中的流程图也不用于对执行步骤的顺序进行限定。
缓存装置2通过LAN连接一个或多个客户端,如客户端4A-4D。本方法实施例以客户端4A、缓存装置2与内容提供装置6之间的通信交互为例进行说明。但是值得注意的是,该通信架构并不用于限制本发明。
步骤102,缓存装置2接收客户端4A需要第一分辨率的一个或多个流媒体数据块所对应的的一个或多个请求,如第一分辨率的第一个流媒体数据块A1的第一请求。
步骤104,响应于该第一请求,生成第一预取进程,通过该第一预取进程控制缓存装置2从内容提供装置6中预取第一分辨率的第一个流媒体数据块A1及其后续流媒体数据块A2、A3、…。将第一分辨率的第一个流媒体数据块A1发送给客户端4A,并等待接收所述第一请求之后的后续请求,以将第一分辨率的第一个流媒体数据块A1的后续流媒体数据块A2、A3、…发送给客户端4A。
在一个实施例中,缓存装置2响应该第一请求,判断缓存装置2中是否预存或预取有该第一分辨率的第一个流媒体数据块A1。如果判断有,则将该预存或预取的第一个流媒体数据块A1直接送给所述客户端。如果判断没有,则生成并执行第一预取进程。
步骤106,接收到客户端4A需要第二分辨率的第n个流媒体数据块Bn的第n请求。
在一个实施例中,缓存装置2在接收到步骤106中的第n请求后,会先判断缓存装置2中是否预存或预取有该第二分辨率的第n个流媒体数据块Bn。如果判断有,则将该预存或预取的该第二分辨率的第n个流媒体数据块Bn直接送给所述客户端。如果判断没有,则执行步骤108。
步骤108,判断所述缓存装置和所述内容提供装置之间的网络状况是否支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块Bn。如果支持,进入步骤112,如果不支持,进入步骤110。
步骤110,限制与客户端4A之间的传输速度,并向客户端4A发送第一分辨率的第n流媒体数据块An
步骤112,将第一预取进程切换为第二预取进程,所述第二预取进程用于控制缓存装置2向内容提供装置6预取第二分辨率的第n流媒体数据块Bn及其后续流媒体数据块Bn+1、Bn+2、…。
步骤114,将第二分辨率的第n流媒体数据块Bn发送给客户端4A,并等待接收第n请求之后的后续请求,以将第二分辨率的第n流媒体数据块Bn的后续流媒体数据块Bn+1、Bn+2、…发送给客户端4A。
请参考图4,本发明另一实施例之流媒体传输优化方法的流程图。本发明实施例为根据缓存装置2和客户端4A之间的网络状况和缓存装置2和内容提供装置6之间的网络状况,在客户端4A发出提升流媒体播放的分辨率的请求之前,预先从内容提供装置6中获取当下环境相匹配的更高分辨率的流媒体数据块。参照本方法实施例,同样可以在客户端4A发出降低流媒体播放的分辨率的请求之前,预先从内容提供装置6中获取当下环境相匹配的更低分辨率的流媒体数据块。
步骤202,缓存装置2接收客户端4A需要第一分辨率的一个或多个流媒体数据块所对应的的一个或多个请求,如第一分辨率的第一个流媒体数据块A1的第一请求。
步骤204,响应于该第一分辨率,生成第一预取进程,通过该第一预取进程控制缓存装置2从内容提供装置6中预取第一分辨率的第一个流媒体数据块A1及其后续流媒体数据块A2、A3、…。将第一分辨率的第一个流媒体数据块A1发送给客户端4A,并等待接收所述第一请求之后的后续请求,以将第一分辨率的第一个流媒体数据块A1的后续流媒体数据块A2、A3、…发送给客户端4A。
步骤206,侦测缓存装置2与客户端4A之间的网络状况。
步骤208,依据该侦测结果预估客户端4A向缓存装置2发送需要第二分辨率的第m个流媒体数据块的第m请求之概率。如果该概率大于一个预设阀值时,进入步骤210,否则继续执行步骤204中的第一预取进程。
步骤210,判断所述缓存装置2和内容提供装置6之间的网络状况是否支持所述缓存装置从所述内容提供装置同时获取第一分辨率的第m个流媒体数据块Am和第二分辨率的第m个流媒体数据块Bm。如果支持,进入步骤212,否则继续执行步骤204中的第一预取进程。
步骤212,同时运作第一预取进程和第二预取进程,所述第一预取进程用于控制所述缓存装置继续从所述内容提供装置中预取第一分辨率的第m个流媒体数据块Am及其后续流媒体数据块Am+1、Am+2、…,所述第二预取进程用于控制缓存装置2从内容提供装置6中预取第二分辨率的第m个媒体数据块Bm及其后续流媒体数据块Bm+1、Bm+2、…。
步骤214,判断是否接收到客户端4A需要第二分辨率的第m个流媒体数据块Bm或其后续流媒体数据块Bm+1、Bm+2、…的请求。如果接收到,则进入步骤216,否则继续继续提供第一分辨率的流媒体数据块,及继续执行第一预取进程和第二预取进程。
步骤216,向客户端4A发送相应的第二分辨率的第m个流媒体数据块Bm或其后续流媒体数据块Bm+1、Bm+2、…,并停止运作所述第一预取进程,继续执行第二预取进程。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种流媒体传输优化方法,应用于缓存装置中,该缓存装置通过第一网络与至少一个客户端连接,及通过第二网络与至少一个内容提供装置连接,其特征在于,该方法包括:
接收该客户端需要第一分辨率的一个或多个流媒体数据块所对应的一个或多个请求;
响应于该一个或多个请求,生成第一预取进程,以从所述内容提供装置中预取第一分辨率的所述一个或多个流媒体数据块给所述客户端;
接收客户端需要第二分辨率的第n个流媒体数据块的第n请求;
响应于该第n请求:
判断所述缓存装置和所述内容提供装置之间的网络状况,是否支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块;及
如果判断不支持,则限制与所述客户端之间的传输速度,并继续向所述客户端发送第一分辨率的第n个流媒体数据块。
2.如权利要求1所述的流媒体传输优化方法,其特征在于,还包括:
如果判断支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块,则将所述第一预取进程切换为第二预取进程,所述第二预取进程用于控制所述缓存装置向所述内容提供装置预取第二分辨率的第n个流媒体数据块及其后续流媒体数据块;及
将第二分辨率的第n个流媒体数据块发送给所述客户端。
3.如权利要求1所述的流媒体传输优化方法,其特征在于,还包括:
侦测所述缓存装置与所述客户端之间的网络状况;
依据该侦测结果预估所述客户端向所述缓存装置发送需要第二分辨率的第m个流媒体数据块的第m请求的概率;
如果该概率大于一个预设阀值时,则判断所述缓存装置和所述内容提供装置之间的网络状况支持所述缓存装置从所述内容提供装置同时获取第一分辨率的第m个流媒体数据块和第二分辨率的第m个流媒体数据块;
同时运作第一预取进程和第二预取进程,所述第一预取进程用于控制所述缓存装置继续从所述内容提供装置中预取所述第一分辨率的第m个流媒体数据块及其后续流媒体数据块,所述第二预取进程用于控制所述缓存装置从所述内容提供装置中预取第二分辨率的第m个媒体数据块及其后续流媒体数据块;及
当接收到所述客户端需要第二分辨率的第m个流媒体数据块或其后续流媒体数据块的请求时,向所述客户端发送相应的第二分辨率的第m个流媒体数据块或其后续流媒体数据块,并停止运作所述第一预取进程。
4.如权利要求1所述的流媒体传输优化方法,其特征在于,所述响应于该一个或多个请求的步骤,还包括:
判断所述缓存装置中是否预存或预取有该第一分辨率的一个或多个流媒体数据块;及
如果判断预存或预取有该第一分辨率的一个或多个流媒体数据块,则将该预存或预取的一个或多个流媒体数据块送给所述客户端。
5.如权利要求1所述的流媒体传输优化方法,其特征在于,所述响应于该第n请求的步骤,还包括:
判断所述缓存装置中是否预存或预取有该第二分辨率的第n个流媒体数据块;
如果判断预存或预取有该第二分辨率的第n个流媒体数据块,则将该预存或预取的第n个流媒体数据块送给所述客户端。
6.一种缓存装置,该缓存装置通过第一网络与至少一个客户端连接,及通过第二网络与至少一个内容提供装置连接,其特征在于,该缓存装置包括:
接收模块,用于接收该客户端需要第一分辨率的一个或多个流媒体数据块所对应的一个或多个请求;
响应模块,响应于该一个或多个请求,生成第一预取进程,以从所述内容提供装置中预取第一分辨率的所述一个或多个流媒体数据块给所述客户端;
所述接收模块,还用于接收客户端需要第二分辨率的第n个流媒体数据块的第n请求;
所述响应模块,还用于响应该第n请求:
判断所述缓存装置和所述内容提供装置之间的网络状况,是否支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块;及
如果判断不支持,则限制与所述客户端之间的传输速度,并继续向所述客户端发送第一分辨率的第n个流媒体数据块。
7.如权利要求6所述的缓存装置,其特征在于,所述响应模块,还用于:
如果判断支持所述缓存装置从所述内容提供装置获取第二分辨率的第n个流媒体数据块,则将所述第一预取进程切换为第二预取进程,所述第二预取进程用于控制所述缓存装置向所述内容提供装置预取第二分辨率的第n个流媒体数据块及其后续流媒体数据块;及
将第二分辨率的第n个流媒体数据块发送给所述客户端。
8.如权利要求6所述的缓存装置,其特征在于,还包括:
预估模块,用于侦测所述缓存装置与所述客户端之间的网络状况;依据该侦测结果预估所述客户端向所述缓存装置发送需要第二分辨率的第m个流媒体数据块的第m请求的概率;如果该概率大于一个预设阀值时,则判断所述缓存装置和所述内容提供装置之间的网络状况是否支持所述缓存装置从所述内容提供装置同时获取第一分辨率的第m个流媒体数据块和第二分辨率的第m个流媒体数据块;及同时运作所述第一预取进程和第二预取进程,所述第一预取进程用于控制所述缓存装置继续从所述内容提供装置中预取所述第一分辨率的第m个流媒体数据块及其后续流媒体数据块,所述第二预取进程用于控制所述缓存装置从所述内容提供装置中预取第二分辨率的第m个媒体数据块及其后续流媒体数据块;及
当所述接收模块接收到所述客户端需要第二分辨率的第m个流媒体数据块或其后续流媒体数据块的请求时,所述响应模块向所述客户端发送相应的第二分辨率的第m个流媒体数据块或其后续流媒体数据块,并停止运作所述第一预取进程。
9.如权利要求6所述的缓存装置,其特征在于,所述响应模块,还用于:
判断所述缓存装置中是否预存或预取有该第一分辨率的一个或多个流媒体数据块;及
如果判断预存或预取有该第一分辨率的一个或多个流媒体数据块,则将该预存或预取的一个或多个流媒体数据块送给所述客户端。
10.如权利要求6所述的缓存装置,其特征在于,所述响应模块,还用于:
判断所述缓存装置中是否预存或预取有该第二分辨率的第n个流媒体数据块;及
如果判断预存或预取有该第二分辨率的第n个流媒体数据块,则将该预存或预取的第n个流媒体数据块送给所述客户端。
CN201610917206.XA 2016-10-14 2016-10-20 流媒体传输优化方法及缓存装置 Pending CN107959668A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/293,287 US20180109462A1 (en) 2016-10-14 2016-10-14 Method for optimizing streaming media transmission and cache apparatus using the same
US15/293287 2016-10-14

Publications (1)

Publication Number Publication Date
CN107959668A true CN107959668A (zh) 2018-04-24

Family

ID=61904788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610917206.XA Pending CN107959668A (zh) 2016-10-14 2016-10-20 流媒体传输优化方法及缓存装置

Country Status (3)

Country Link
US (1) US20180109462A1 (zh)
CN (1) CN107959668A (zh)
TW (1) TWI640192B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108650544A (zh) * 2018-05-17 2018-10-12 上海七牛信息技术有限公司 一种媒体播放方法、装置以及媒体播放***
CN110545482A (zh) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 一种分辨率切换时的接续播放方法、装置及存储介质
CN112153465A (zh) * 2019-06-28 2020-12-29 北京京东尚科信息技术有限公司 图像加载方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201931866A (zh) * 2017-12-29 2019-08-01 圓剛科技股份有限公司 影音串流控制裝置及其控制方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8180920B2 (en) * 2006-10-13 2012-05-15 Rgb Networks, Inc. System and method for processing content
US9009337B2 (en) * 2008-12-22 2015-04-14 Netflix, Inc. On-device multiplexing of streaming media content
CN102447723B (zh) * 2010-10-12 2015-09-09 运软网络科技(上海)有限公司 客户端虚拟化架构
US9280540B2 (en) * 2012-10-01 2016-03-08 Verizon Patent And Licensing Inc. Content-driven download speed

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108650544A (zh) * 2018-05-17 2018-10-12 上海七牛信息技术有限公司 一种媒体播放方法、装置以及媒体播放***
CN108650544B (zh) * 2018-05-17 2020-09-29 上海七牛信息技术有限公司 一种媒体播放方法、装置以及媒体播放***
CN110545482A (zh) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 一种分辨率切换时的接续播放方法、装置及存储介质
CN110545482B (zh) * 2018-05-29 2022-01-07 北京字节跳动网络技术有限公司 一种分辨率切换时的接续播放方法、装置及存储介质
CN112153465A (zh) * 2019-06-28 2020-12-29 北京京东尚科信息技术有限公司 图像加载方法及装置
CN112153465B (zh) * 2019-06-28 2024-01-16 北京京东尚科信息技术有限公司 图像加载方法及装置

Also Published As

Publication number Publication date
TW201817244A (zh) 2018-05-01
TWI640192B (zh) 2018-11-01
US20180109462A1 (en) 2018-04-19

Similar Documents

Publication Publication Date Title
US10785275B2 (en) Presentation of media in an application
US20170257408A1 (en) Enhanced streaming media playback
US8041830B2 (en) Media download method and system based on connection speed
US20140052846A1 (en) Adaptive video streaming over a content delivery network
US8725947B2 (en) Cache control for adaptive stream player
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
CN107959668A (zh) 流媒体传输优化方法及缓存装置
US20080120389A1 (en) Hybrid buffer management
WO2019128800A1 (zh) 一种内容服务的实现方法、装置及内容分发网络节点
US10178431B2 (en) Hybrid stream delivery
US20090172752A1 (en) Streaming multiple videos in a playlist
CN114040245B (zh) 视频播放方法、装置、计算机存储介质和电子设备
US10375444B2 (en) Partial video pre-fetch
CN106416198A (zh) 用于使用http流的dash流的方法和装置
KR20180033667A (ko) 스트리밍 서비스를 제공하는 방법 및 장치
US11082474B2 (en) Data buffering method and apparatus in adaptive streaming service
CN105474649B (zh) 代理服务器装置、信息处理方法、程序、终端装置和内容供应***
KR102532645B1 (ko) 적응적 스트리밍 서비스에서 스트리밍 어플리케이케이션으로 데이터를 제공하는 방법 및 장치
TW201528806A (zh) 提供多媒體內容之內容部分至用戶端之方法及對應之快取
TW201501526A (zh) 提供多媒體內容之內容部分至用戶端之方法及對應之快取
CN105359485B (zh) 由客户终端获得多媒体内容的内容部分的方法
JP2001101060A (ja) 通信データ先読み装置及び記録媒体
JP7318123B2 (ja) 適応的バッファを使用してビデオコンテンツをストリーミングするための方法、システム、および媒体
US10938939B2 (en) Client-side quality-of-service (QOS) for viewing of adaptive bitrate (ABR) streams
US20110307625A1 (en) Index-based video play apparatus and method using double buffering

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180424