CN104137564A - 分块内容的受控流送 - Google Patents
分块内容的受控流送 Download PDFInfo
- Publication number
- CN104137564A CN104137564A CN201280070941.1A CN201280070941A CN104137564A CN 104137564 A CN104137564 A CN 104137564A CN 201280070941 A CN201280070941 A CN 201280070941A CN 104137564 A CN104137564 A CN 104137564A
- Authority
- CN
- China
- Prior art keywords
- piecemeal
- finger url
- request
- message
- cdn
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling 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/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
描述用于使能分块内容的客户机控制的流送的方法及系统,其中所述客户机控制的流送以清单文件为基础,所述清单文件包括一个或多个分块标识符以及一个或多个关联的分块定位符,所述分块定位符优选为一个或多个URL,用于定位配置成向所述客户机传递一个或多个分块的一个或多个传递节点,所述分块由所述分块标识符识别,并且其中所述方法包括:以从所述清单文件中选出的至少一个分块标识符为基础请求至少一个分块的传递;以所述所请求的分块为基础,从所述清单文件中选择至少一个另外的分块标识符,所述另外的分块标识符与期望的未来分块请求关联;以及,预解析与所述所选的另外的分块标识符关联的第一分块定位符以获得与所述第一分块定位符关联的网络信息。
Description
技术领域
本发明涉及分块内容的受控流送以及,更具体地,但不排他地,涉及一种用于使能分块内容的受控流送的方法,一种用于控制分块内容的流送的客户机,用于与客户机一起使用的网络节点和数据结构以及使用此种方法的计算机程序产品。
背景技术
当前越来越多的视频流技术使用所谓的分块。例如,HTTP自适应流送(HAS)、可伸缩视频编码(SVC)和空间分块的视频(例如平铺(tiled)视频)分别使用以时间、品质和空间为基础的分块。在分块过程期间,将会产生所谓的清单文件,其描述不同分块文件和/或流与分块可被检索到的位置之间的关系。分块文件可涉及包括分块数据的文件,分块数据可通过文件检索协议(例如HTTP或FTP)检索到。类似地,分块流可涉及包括可由流送协议(例如RTSP/RTP或HAS)检索到的分块数据的流。分块文件或流此后将被称为分块。此外,视频,或更一般地,由分块方案所表现的内容可被称为分块内容。
分块内容可用于动态地适应变化的带宽要求,例如通过从高品质向低品质视频流切换。而且,分块内容也为在受欢迎与较不受欢迎视频分块之间的辨别留出空间。例如,典型地与视频的开头关联的内容与末尾处的内容相比将更经常地(更受欢迎)被观看(下载/访问/检索)。类似地,低比特率的较低品质视频内容(例如最低分辨率HAS分块或SVC基层)与高品质内容(例如较高分辨率HAS分块或SVC增强层)相比会更频繁地被观看(下载/访问/检索)。
因此,在对内容进行分块时,某些分块相比于其他分块会更经常地(经常得多地)被消费者所请求。这一属性可有利地被内容传递网络(CDN)所利用,内容传递网络配置为向消费者传递内容。其可例如将与更受欢迎的内容关联的分块存储在CDN中的多个节点以使得可减少带宽问题(因为从太远的远程服务器获取许多受欢迎分块可阻碍网络带宽)以及保证有效的传递。CDN内容位置管理员可在中心管理在其中CDN内分块可被检索到的位置。
为了使客户机能够访问存储在CDN中的分块,客户机被提供有所谓的清单文件,该清单文件识别指向在网络中位置的分块定位符以及分块标识符的列表,分块定位符以及分块标识符的列表使得客户机能够检索分块。典型地,客户机配置为检索分块以使得与客户机(装置)关联的分块缓冲器在播放开始前被装载以预定量的分块。此外,在播放期间,客户机持续地基于清单文件检索分块以使得在缓冲中保持足够的分块。通过这种方式,与分块检索关联的等待时间不会妨碍分块的无缝播放。
然而在一些情况下,客户机可允许用户与内容的播放进行交互(例如快进、平移、缩放和/或倾斜)。此外,用户可指导客户机切换到另一速率或视频品质。在所有以上情况中,可能要求在缓冲中不可用的分块的播放,使得客户机将开始匆忙地(从CDN或其他网络)检索该分块。但由于分块需要使用解析(resolving)过程(其可能涉及DNS查表和HTTP重定向)来被定位及检索,这一过程可能花费相当多时间。此外,在一些情况下与内容项(例如视频/电影)关联的(内容)分块可存储在属于两个或更多不同CDN的(CDN/其他网络)节点。在那情况下,没有中央位置管理员能够定位处于不同CDN域中的分块。所以,由于第一CDN不知道分块在第二CDN中的位置,与第一CDN关联的清单文件可仅提及在另外的CDN中的路由功能。每次来自另一(第二)CDN的分块被请求时,需要至该另一(第二)CDN的路由请求。另外,在另一(第二)CDN中可能生成一个或多个另外的路由请求(和响应)。这类请求可产生请求-路由延迟以使得客户机花费高达数秒的较长时间来接收所请求的分块。
因此,从以上可得出结论:在没有任何用户交互的情况下,由于客户机将典型地具有一些缓冲的分块(允许一些富余部分),与DNS请求、重定向和/或交互CDN(CDN-I)请求路由关联的延迟将会对(视频)流的品质的用户感知几乎不施加影响。然而如果允许用户与(分块的)内容交互,在缓冲中不可用的分块的播放由于该分块需要使用解析过程来被定位而会花费相当多时间。在复杂的或互连的CDN的情况下这一过程可花费高达数秒,使得分块(视频)内容的无缝播放不再可能并且用户体验严重降级。
因此,在本领域存在对有效流送分块内容至客户机的需求。特别地,存在对即使在用户与分块内容交互的情况下提供分块内容的无缝播放的方法及系统的需求。
发明内容
本发明的目的在于减少或消除现有技术中已知缺陷的至少一个并且在本发明的第一方面提供用于以(用于定位一个或多个传递节点的)清单文件为基础使能分块内容的流送(优选为客户机控制的流送)的方法,其中所述方法可包括下列步骤的至少一个:以所述清单文件为基础请求至少一个分块的传递;以与所述分块请求关联的分块标识符为基础,从所述清单文件选择至少一个另外的分块标识符,所述另外的分块标识符与所期望的未来的分块请求关联;以及,预解析与所述所选的另外的分块标识符关联的第一分块定位符的至少一部分以获得与所述第一分块定位符关联的网络信息。在一个实施例中,清单文件可包括一个或多个分块标识符和/或一个或多个关联的分块定位符。在另一实施例中,传递节点可配置成将所述分块标识符识别的一个或多个分块传递至所述客户机。在又一实施例中,分块定位符可为指向网络节点的URL的预定义部分。
因此,本方法允许客户机选择在清单文件中列出并且预期在未来会被请求的分块,以及允许客户机以客户机所请求的一个或多个分块为基础至少一部分地预解析与这些所选的分块关联的一个或多个分块定位符。通过这种方式,消除或至少大量减少与请求路由、DNS请求和/或重定向关联的延迟,使得可实现在用户交互期间分块的无缝的或至少大体无缝的播放。
在一个实施例中,网络信息可包括:关于网络地址的至少一部分(该网络地址与所述第一分块定位符的至少一部分关联)的信息;和/或,与所述所选的另外的分块标识符关联的第一分块定位符是指向传递节点(该传递节点用于与所述所期望的未来分块请求关联的分块的传递)还是指向网络节点(该网络节点用于所述所期望的未来分块请求的重定向)的信息;和/或,与所述所选的另外的分块定位符关联的第二分块定位符的至少一部分。在另一实施例中,所述方法可包括:如果所述第一分块定位符指向用于重定向的网络节点,将所述第一分块定位符的至少一部分预解析为与所述所选的未来的分块标识符关联的第二分块定位符。在又一实施例中,包括:以所述网络信息为基础修改所述清单文件。因此,存储在清单高速缓冲存储器中的清单文件可以所检索的网络信息为基础而被更新。通过这种方式,客户机,特别是与客户机关联的预解析功能元件,可持续地和动态地以完全地和/或部分地预解析的分块定位符来更新清单文件。
在一个实施例中,所述方法可包括:以所述第二分块定位符的所述至少一部分为基础修改所述清单文件,优选地所述修改包括以所述第二分块定位符的所述至少一部分来替换所述第一分块定位符的至少一部分的步骤。预解析步骤的结果可用于将原始分块定位符重放和/或修改为另外的部分预解析的分块定位符以使得当与部分预解析的分块定位符关联的分块被请求时,与解析该分块定位符关联的延迟大量减少。
在又一实施例中,所述方法可包括:如果所述第二分块定位符与传递节点(该传递节点用于与所述所期望的未来分块请求关联的分块的传递)的网络地址关联,以所述第二分块定位符为基础修改所述清单文件。预解析步骤的结果可用于将原始分块定位符重放和/或修改为完全预解析的分块定位符以使得在请求分块时不需要分块请求的解析。
在又一实施例中,所述方法可包括下列步骤的至少一个:发送针对网络信息的请求至与所述第一分块定位符关联的网络节点;接收响应消息;以所述响应消息为基础确定与所述所选的另外的分块标识符关联的所述第一分块定位符是指向传递节点(该传递节点用于与所述所期望的未来分块请求关联的分块的传递)还是指向网络节点(该网络节点用于所述所期望的未来分块请求的重定向)。
在又一实施例中,所述针对网络信息的请求可包括HTTP、RTSP和/或DNS协议消息,优选为HTTP HEAD消息或RTSP DESCRIBE消息,和/或其中所述响应消息为HTTP或RTSP响应消息。
在一个实施例中,所述预解析可在所述至少一个分块的传递的至少一部分期间作为后台过程被执行。
在一个实施例中,所述方法可包括:以下列至少一部分为基础选择所述至少一个另外的分块标识符:用户资料、用户浏览历史、用户与分块内容的交互和/或用户的地理位置。因此,与所期望的未来的分块请求关联的分块的选择可基于用户相关信息。
在一个实施例中,所述清单文件可包括一个或多个标记,该标记用于将一个或多个另外的分块标识符标记用于未来的分块请求,优选地所述标记包括评分值。通过这种方式,用于预解析的分块的选择可基于清单文件中的信息。这信息可被CDN或被内容提供商插入清单文件中。
在一种变形中,所述预解析可包括下列步骤的至少一个:传送针对网络信息的请求,优选为HTTP HEAD消息或RTSP DESCRIBE消息,至第一内容传递网络(CDN1),所述请求包括至少所述所选的另外的分块标识符;所述第一内容传递网络CDN1传送包括所述所选的另外的分块标识符的交互CDN请求消息(优选地为DELIVERYREQUEST消息)至第二内容传递网络(CDN2)以供协商所述所选的另外的分块标识符识别的所述分块的未来的传递;和/或,所述第一内容传递网络CDN1接收交互CDN响应消息(优选为DELIVERYRESPONSE消息),该交互CDN响应消息包括优选为与所述第二内容传递网络CDN2中一个或多个传递节点关联的网络地址或分块定位符的位置信息,所述一个或多个传递节点配置成向客户机传递由所述所选的另外的分块标识符识别的分块。因此,在预解析过程期间,第一CDN的网络节点可认出与预解析分块定位符关联的针对网络信息的请求并且将该请求转发到第二CDN的网络节点,从而改善预解析过程的效率。
在一个实施例中,所述交互CDN请求消息可包括允许所述第二内容传递网络CDN2确定交互CDN请求消息与分块定位符的预解析关联的标志。
在另一实施例中,所述交互CDN请求消息可以HTTP HEAD消息或RTSP DESCRIBE消息为基础来实现,从而允许所述第二内容传递网络CDN2确定交互CDN消息与分块定位符的预解析相关。
在又一实施例中,所述清单文件可包括与第一内容传递网络(CDN1)中一个或多个传递节点关联的第一位置信息(该第一位置信息优选为网络地址)和与第二内容传递网络(CDN2)中一个或多个传递节点关联的第二位置信息(该第二位置信息优选为网络地址)。
在另一实施例中,其中所述分块内容为时间上分块的内容并且其中所述客户机使用限定时间距离的时间接近参数以使得识别多个时间分块(该多个时间分块布置在离客户机当前处理的时间分块该时间接近距离内)的一个或多个分块标识符可被标记和/或被选择用于预解析它们的一个或多个关联的分块定位符;或,
其中所述分块内容为空间上分块的内容并且其中所述客户机使用限定空间距离的空间接近参数以使得识别多个空间分块(该多个空间分块布置在离客户机当前处理的空间分块该空间接近距离内)的一个或多个分块标识符可被标记和/或被选择用于预解析它们的一个或多个关联的分块定位符;或,
其中所述分块内容为按品质分块的内容并且其中所述客户机使用限定品质距离的品质接近参数以使得识别多个品质分块(该多个品质分块布置在离客户机当前处理的品质分块该品质接近距离内)的一个或多个分块标识符可被标记和/或被选择用于预解析它们的一个或多个关联的分块定位符。
在另一方面,本发明可涉及一种客户机,其用于在网络中一个或多个传递节点上托管的分块内容的客户机控制的流送,所述客户机包括:清单高速缓冲存储器,用于存储清单文件的至少一部分,所述清单文件包括一个或多个分块标识符和一个或多个关联的分块定位符(优选为一个或多个URL),该分块定位符用于定位一个或多个传递节点(该传递节点配置成向所述客户机传递由所述分块标识符识别的一个或多个分块);分块检索功能元件,用于以所述清单文件中至少一个分块标识符为基础请求至少一个分块的传递;分块选择器,配置用于以所述至少一个分块标识符为基础选择与至少一个所期望的未来分块请求相关联的至少一个另外的分块标识符;以及,预解析功能元件,用于预解析与所述至少一个所选的另外的分块标识符相关联的第一分块定位符的至少一部分以用于获得与所述第一分块定位符相关联的网络信息。
在另一方面,本发明可涉及一种网络节点,其用于与按照上面描述的客户机一起使用,所述网络节点与第一内容传递网络(CDN1)关联并且配置用于:从客户机接收针对与分块定位符关联的网络信息的请求,优选地所述请求以HTTP HEAD消息或RTSP DESCRIBE消息为基础,所述分块定位符与识别分块的分块标识符关联;向第二内容传递网络(CDN2)传送交互CDN请求消息以用于协商所述分块的未来的传递,该交互CDN请求消息(优选为DELIVERY REQUEST消息)包括所述分块定位符和/或分块识别符的至少一部分;其中所述交互CDN请求消息包括标志或其中所述交互CDN请求消息基于HTTP HEAD消息或RTSP DESCRIBE消息,所述标志或HTTP HEAD消息或RTSP DESCRIBE消息允许所述第二内容传递网络CDN2确定所述交互CDN消息与所述客户机所请求的分块定位符的预解析关联。
在又一方面,本发明可涉及一种数据结构,其优选为清单文件,用于在上面描述的客户机中使用,所述数据结构包括一个或多个分块标识符和一个或多个关联的分块定位符(优选为URL),该分块定位符用于定位一个或多个配置成向所述客户机传递所述分块标识符识别的一个或多个分块的传递节点;所述数据结构还包括一个或多个与所述分块标识符的一个或多个关联的标记,所述一个或多个标记允许所述客户机中的预解析功能元件选择用于未来的分块请求的另外的分块标识符,优选地所述一个或多个标记与评分值(优选为受欢迎分值)关联。
本发明还涉及一种包括软件代码部分的计算机程序产品,该软件代码部分配置成,当其在计算机的存储器中运行时,执行上面描述的方法步骤的至少一个。
本发明将参考附图进一步地例示,附图将示意性地示出根据本发明的实施例。应理解本发明绝对不会限定到这些特定实施例。
附图说明
图1A和1B描绘传统的自适应流送客户机以及用于在这种客户机中使用的清单文件。
图2描绘传统的AS客户机的分块检索和播放过程的流程图。
图3描绘根据本发明一个实施例的客户机。
图4A和4B根据本发明一个实施例描绘基于CDN的内容传递系统以及与用于在基于CDN的内容传递系统中解析位置的预解析过程关联的流程图。
图5根据本发明一个实施例描绘预解析的分块的检索。
图6根据本发明一个实施例描绘与客户机执行的分块预解析和检索过程关联的流程图。
图7根据本发明一个实施例描绘预解析存储在客户机的清单高速缓冲存储器中的清单文件的至少一部分的示例。
图8描绘用于清单文件的请求及播放的过程的流程图,其中清单文件中未解析的分块URL被预解析。
图9根据本发明的一个实施例提供描绘客户机中预解析功能元件执行的过程的详细的流程图。
图10根据本发明一个实施例描绘用于预解析的合适分块的选择。
图11根据本发明另一实施例描绘用于预解析的合适分块的选择。
图12根据本发明又一实施例描绘用于预解析的合适分块的选择。
图13根据本发明一个实施例描绘清单文件的至少一部分,该清单文件包括被标记用于预解析的分块。
具体实施方式
图1A和1B分别描绘传统的自适应流送(AS)客户机以及用于与这种AS客户机一起使用的清单文件。客户机102可托管在终端(未示出)上,该终端配置成与网络中一个或多个媒体服务器通信并且以自适应流送协议为基础使能内容的流送,自适应流送协议例如(诸如)为苹果HTTP直播流送协议[http://tools.ietf.org/html/draft-pantos-http-live-streaming-07]、微软平滑流送协议[http://www.iis.net/download/SmoothStreaming]、Adobe HTTP动态流送协议[http://www.adobe.com/products/httpdynamicstreaming]、3GPP-DASH[TS 26.247透明端对端分组交换流送服务(PSS);基于HTTP的渐进式下载和动态自适应流送协议]以及基于HTTP的MPEG动态自适应流送协议[MPEG DASH ISO/IEC 23001-6]。
终端可一般涉及内容处理装置,例如,诸如电子平板、智能电话、笔记本、媒体播放器等的(移动)内容播放装置。在某个实施例中,终端可为配置用于处理并临时存储内容以供内容播放装置未来消耗的机顶盒或内容存储装置。
用户可将终端连接到例如因特网的网络,浏览包括视频标题链接的内容提供商的网站并且选择一个。在选择例如URL的链接时,所谓的清单文件可被发送到客户机。这里,术语“清单文件”可一般指专用数据结构,其包括识别构成视频标题的分块的分块标识符(描述符),(一组)网络节点的位置信息,网络节点例如为媒体服务器,其可配置成要么向客户机传递分块要么向客户机提供分块在哪里可被检索到的信息并且,可选地,提供确定分块间关系的分块控制信息,分块间关系可被客户机用来正确地确定用于播放的分块的顺序。对于清单文件而言,不同的协议可使用不同的名称。例如,在DASH流送协议中,清单文件可被称为媒体演示描述(MPD)。
图1B描绘清单文件的示意图,该清单文件包括用于识别构成内容项的分块的分块标识符和包括对一个或多个网络节点的引用的位置信息,其中网络节点配置成向客户机传递识别的分块或配置成向客户机提供分块在哪里可被检索到的信息。因此,这个引用,其在下文中可被称为分块定位符,可指向配置成传递识别的分块的网络节点;或者,备选地,指向能够确定一个或多个网络节点(其能够传递识别的分块)的网络节点。在又一实施例中,分块定位符也可指向网络节点上的位置。例如,不同的分块定位符可指向在一个传递节点中定义的不同文件夹。
图1B描绘清单文件的示意图,该清单文件由客户机用来定位配置成向客户机传递在清单文件中识别的分块的传递节点。为此,清单文件可包括至少一个用于识别分块的分块标识符(例如分块文件名),和采用至少一个与分块标识符关联的分块定位符形式的位置信息。分块定位符可被定义为指向一个或多个网络节点(或一个或多个网络节点上的文件夹)的指针,该网络节点配置成托管识别的分块并且向客户机传递分块,或配置成确定一个或多个另外的能够向客户机传递识别的分块的网络节点。
在一些实施例中,分块标识符和分块定位符可为诸如URL的预定数据结构的一部分。例如URL central.cdnA.com/segment1-1.avi包括分块定位符central.cdnA.com(即指向CDN A的网络节点的指针(或索引))以及分块标识符(即分块文件名segment1-1.avi),其中与分块定位符central.cdnA.com关联的网络节点可配置成向客户机传递分块或可配置成传递一个或多个另外的、指向一个或多个能够传递分块segment1-1.avi的网络节点的分块定位符。尽管下文中示例使用URL来描述,应提出的是,本发明并不限定于此。在另一实施例中,分块标识符和分块定位符可采用适合在网络中识别和定位分块的任何适合的形式。在一些实施例中,从或是分块标识符或是分块定位符可用于在网络中识别和定位分块的意义上讲,分块标识符和分块定位符可重合。
在图1B的示例中,清单文件包括与两个不同分块组关联的分块标识符和分块定位符,即,第一组低比特率分块和第二组高比特率分块,其中每一组包含视频标题。在这里,与低比特率分块关联的URL的分块定位符部分指向第一内容传递网络CDN A的网络节点以及高比特率分块指向第二CDN B的网络节点。客户机可以以分块URL为基础在清单文件中检索分块。该方案在下文中更详细地描述。
如图1A所例示,清单文件可存储在清单高速缓冲存储器104中并且被解析和构造成分块列表,即逻辑数据结构,分块列表包括用于检索分块的信息,例如分块标识符(例如分块文件名)和用于确定这些分块可在哪里被检索到的分块定位符(例如URL的预定部分),并且分块列表还包括用于控制分块的播放的播放控制信息,即分块之间的关系(例如时间关系、品质关系和/或空间关系)。
分块检索功能元件106可使用清单高速缓冲存储器中的位置信息以便从媒体服务器或与内容传递网络(CDN)关联的一个或多个传递节点检索分块。分块可使用(分块)传输协议(典型地这会是HTTP,但RTSP/RTP、FTP和其他协议也可被使用)来检索并临时地存入分块缓冲器108中。此外,视频播放功能元件110(其也可被称为媒体引擎)可以以清单高速缓冲存储器中的信息为基础来播放存储在分块缓冲器中的分块。
分块检索功能元件可配置成检索分块以使得在播放开始前分块缓冲器被装载以预定数量的分块。而且,在播放期间,分块检索功能元件持续地以清单文件为基础检索分块使得充足的分块被存储在分块缓冲器中。通过这种方式,与分块检索关联的持续时间不会妨碍分块的无缝播放。分块检索功能元件可接受并处理来自用户浏览功能元件112的分块检索指令使得用户能够浏览清单文件所定义的分块的内容。在这里,来自用户浏览功能元件的分块检索指令可涉及时间浏览(例如快进)或空间浏览(例如平移-缩放-倾斜)。
与图1A描绘的传统的AS客户机相关的一个问题涉及如下事实,即:如果用户浏览功能元件需要在分块缓冲器中不可用的分块的播放,分块检索功能元件将开始匆忙地检索所需的分块。但是这过程可能花费相当多时间,因为分块需要使用解析过程被定位,在解析过程中清单文件中(未解析的)分块定位符被解析成与托管分块的网络节点关联的网络地址。这解析过程可能涉及DNS查表,HTTP重定向和/或交互CDN(CDN-I)请求路由。这过程可能在复杂或互连CDN的情况下花费多达数秒。下载分块的过程也可能花费相当时间。但是,由于播放过程在整个分块已被下载之前可能已经开始,用户在浏览内容时感知的体验的品质主要由分块解析过程决定。
图2更详细地描绘图1A中描绘的传统客户机的分块检索和播放过程。该过程可在t=0时开始,这时客户机可以开始播放缓冲的分块,在这情况下即为第一分块“segment1-1.avi”(步骤200),缓冲的分块先前以参照图1A和1B所说明的清单文件为基础通过分块检索功能元件从CDN检索得到。一旦第一分块的播放完成,随后的分块在t=1(segment1-2.avi)和t=2(segment1-3.avi)时被处理和播放。
随后,在t=2时,在具有分块文件名segment1-3.avi的分块的播放期间,用户可使用客户机中的用户浏览功能元件与内容交互(例如通过选择一个按钮来进入低比特率播放模式)。交互的结果可能为在终端的分块缓冲器中不可用的一个新的分块,即低比特率segment2-4.avi,被需求(步骤202)。
当客户机确定分块在缓冲器中不可用时,其可能触发分块检索功能元件在清单文件中检索低比特率分块segment2-4.avi的位置信息(例如分块定位符),并且通过向DNS系统发送包括与CDN A的请求路由功能元件关联的分块定位符central.cdnA.com的DNS请求消息来解析分块定位符central.cdnA.com,DNS系统可向客户机发送回包括解析的IP地址的DNS响应消息(步骤204、206)。作为响应,客户机可发送针对分块segment2-4.avi的HTTP GET请求至CDN A的请求路由节点的DNS解析的IP地址123.45.67.89(步骤208)。作为对该请求的响应,CDN A(即上游CDN)可与CDN B(即下游CDN)协商有关所请求的分块的传递(步骤210,212)。
在这里,CDN A和CDN B之间的通信可基于draft-ietf-cdni-problem-statement-01中描述的CDNI请求路由(RR)接口。这接口允许互连CDN中的请求路由节点进行通信以确保用户请求可从上游CDN(在这情况中为CDN B)(重)定向到下游CDN中的代理。CDNI RR接口可允许下游CDN向上游CDN提供信息(例如资源、覆盖区、负载)以促进由上游CDN请求路由系统在处理内容请求时所进行的下游CDN的选择。
在交互CDN协商之后,CDN A的请求路由节点可确定对于这特定用户的分块的传递最好由CDN B提供。CDN A的请求路由功能元件可因此将包含CDN B的请求路由节点的位置信息(central.cdnB.com/segment2-4.avi)的HTTP重定向响应发送回客户机(步骤214)。一旦接收到HTTP重定向,客户机执行另一DNS询问并且发送新的HTTP GET至CDN B的请求路由节点的解析的IP地址98.65.45.201(步骤216-220)。
此后,CDN B的请求节点,特别是CDN B的CDN控制功能元件(CDNCF),可就最适合向客户机传递特定分块的传递节点(DN)作出决定(步骤222,224)并且将包含分块定位符(在这情况中为node3.cdnB.com)的HTTP重定向发送回客户机。为了检索传递节点的IP地址24.67.13.57,客户机此后可执行另一DNS询问。客户机随后发送包括URL 24.67.13.57/segment2-4.avi的HTTP GET至传递节点的由此解析的IP地址(步骤228-232),该传递节点发送所请求的分块(segment2-4.avi)至客户机作为响应(步骤234)。随后在t=9时,客户机可接收segment2-4.avi并且开始播放。
因此,正如从图2中可见,在没有用户交互的情况下,由于客户机将典型地在开始播放前缓冲一些分块,重定向和请求路由延迟对用户感知几乎没有影响。然而,当用户与客户机的交互被允许时,客户机不知道用户将选择哪一个分块。如图2所例示,时间的(快进)、空间的(平移/缩放)或切换至多速率方案中的另一速率需要特定的分块检索,这可能花费相当多持续时间。例如,在图2中在t=2时的用户交互和在t=9时与该用户动作关联的分块的接收之间,为了执行全部协议交换(DNS,HTTP重定向和交互CDN信号传输)高达数秒的持续时间是可能的。这持续时间将中断分块的无缝播放进而损害用户体验。
图3描绘根据本发明一个实施例的客户机。特别地,图3描绘包括预解析功能元件314的AS客户机,预解析功能元件314配置为预解析期望由客户机选择以供在不远的未来播放的分块的分块定位符(例如URL的至少一部分)。
为了预测这种分块,分块选择器313可使用来自用户浏览功能元件312的用户浏览信息以便从存储在清单高速缓冲存储器304中的分块列表中选择至少一个分块。这过程将在下文中更详细地描述。客户机还可包括分块检索功能元件306、分块缓冲器308和视频播放功能元件310(媒体引擎),类似于参照图1所描述的那些。
以播放的分块为基础并且以用户浏览功能元件所提供的用户浏览信息为基础,分块选择器可预测哪一(哪些)分块最有可能在不远的未来被客户机所选择。用户浏览信息从而提供上下文信息,即用户-特定的信息(例如用户资料、用户浏览历史、用户(地理)位置等),上下文信息被分块选择器用来预测未来的分块播放。
预解析功能元件也可使用与所播放的分块内容关联的一般浏览信息,例如有关与特定内容项关联的经常请求的分块的信息。为了预测未来的分块播放,这一般浏览信息可与用户浏览信息一起使用。在一个实施例中,CDN中的控制功能元件或内容提供商可在一般内容浏览信息被传递给客户机时将其插入清单文件(例如,被标记为受欢迎的分块)中。这实施例参照图13更详细地描述。在另一实施例中,预解析功能元件可经由另一通信信道从内容提供商、CDN或第三方接收一般浏览信息。
如果所预测的分块不在分块高速缓冲存储器中,预解析功能元件可开始预解析过程,其中所预测分块的分块定位符被全部地或至少部分地预解析,而没有实际上检索所预测的分块。在这里,术语“预解析”指获得与所预测分块的分块定位符关联的网络信息的过程。网络信息可包括IP地址、另外的分块定位符(的一部分)和/或分块定位符是否指向网络节点(其配置成向客户机传递分块(即传递节点)或重定向对网络信息的请求)的信息。预解析所预测分块的分块定位符的这个过程可与分块的播放并行地(或作为后台过程)执行,并且可使用诸如DNS查表、重定向和/或交互CDN请求路由的技术,而没有实际检索分块。
与分块定位符关联的网络信息可用于修改客户机中的清单文件。例如,在一个实施例中,如果预解析所预测分块的分块定位符的过程产生完全预解析的分块定位符,即,指向配置成向客户机传递分块的传递节点的网络地址的分块定位符,预解析功能元件可接收预解析的网络地址并且使用这网络地址来修改或重写存储在清单高速缓冲存储器304中的分块列表中的条目。备选地,预解析功能元件可将预解析的网络地址增加到分块列表中。此外,如果所预测分块的分块定位符的预解析过程产生部分预解析的分块定位符,即另外的、第二分块定位符(其需要一个或多个另外的预解析步骤以将其解析成完全预解析的分块定位符),预解析功能元件可使用这部分预解析的分块定位符来更新,例如修改或重写,存储在清单高速缓冲存储器304中的分块列表中的条目。
通过这种方式,当全部或部分预解析的分块被用户经由用户浏览功能元件选择时,客户机可略过全部或至少部分的参照图2描述的解析步骤,从而相当程度上减少所预测分块的检索时间。尤其是,当分块定位符为完全预解析的,客户机可以存储于清单高速缓冲存储器中的预解析的网络地址为基础、以最小请求路由延迟来检索分块,该预解析的网络地址由预解析功能元件在早先确定。
图4A描绘根据本发明一个实施例的内容流送系统。特别地,图4A例示包括第一CDN 402(也被称为上游CDN)的基于CDN的内容传递系统,第一CDN 402经由CDN互连接口464互连到至少第二CDN 404(也被称为下游CDN)。
该内容传递系统还进一步包括内容源406,其经由输送网络407连接至一个或多个托管客户机的终端408。该内容源可涉及内容提供商系统CPS、内容准备系统或另一CDN。CPS可配置成向客户提供内容,例如视频标题,客户可使用参照图3描述的AS客户机来购买并且接收内容以供视频播放。
CDN可包括传递节点410、413、414和至少一个中心CDN节点416、418。每一传递节点可包括控制器420、422、424和用于存储并缓冲内容的高速缓冲存储器440、442、444,或者与它们关联。每一中心CDN节点可包括摄取节点(或内容起源功能元件,COF)425、427、内容位置数据库434、436和CDN控制功能元件(CDNCF)426、428或可与其关联,摄取节点用于控制来自外部源的内容的摄取,外部源例如为内容提供商或另一CDN,内容位置数据库用于维持关于内容存储在CDN内何处的信息,CDN控制功能元件用于控制内容的一份或多份副本向传递节点的分发以及用于将客户机重定向到合适的传递节点(该过程也被称为请求路由)。在一个实施例中,托管CDNCF的节点可被称为请求路由(RR)节点。客户可通过将请求发送到门户网站(WP)432从CPS 430购买内容,例如视频标题,门户网站配置成提供识别可购买的内容项的标题索引。CDNCF可使用内容位置数据库434、436管理分块可被检索到的位置。
在图4A的内容传递系统中,上游CDN可将至客户机的分块传递的一部分外包给下游CDN。例如,在一个实施例中,低品质分块可由第一CDN A(配置例如用于内容至移动装置的传递)定位并由其传递,而高品质分块可由第二CDN B(配置例如用于高品质分块至支持HDTV技术的家庭媒体装置的传递)定位并由其传递。
图4B根据本发明一个实施例描绘与预解析过程关联的流程图。特别地,图4B描绘基于HTTP的预解析过程的流程图,其中使用HTTPHEAD消息。
在t=2时,在客户机执行的分块的缓冲和播放期间,用户可使用客户机中的用户浏览功能元件(例如通过按压按钮来执行平移操作)与内容交互。在交互期间,分块选择器可确定(预测)很有可能清单文件中的特定分块(segment2-4.avi)可能在不远的未来被播放功能元件所请求,并且与这种请求关联的分块当前在终端的分块缓冲器中不可用。这种分块请求可被称为预期的未来分块请求。
当确定这个所预测分块在分块缓冲器中不可用时,客户机可决定通过请求与来自网络的分块定位符关联的网络信息来部分地或是完全地预解析所预测分块的(未解析的)分块定位符(步骤452)。
在这网络信息的基础上,预解析功能元件可例如修改分块定位符(在这个例子中,为指向请求路由节点的URL的一部分central.cdnA.com)形成另外的分块定位符。这种另外的分块定位符可涉及包括网络地址(例如IP地址)的部分预解析的分块定位符或完全预解析的分块定位符,网络地址与配置成向客户机传递这分块的至少一个传递节点关联。预解析分块定位符的这过程将在下文中更详细地描述。
预解析过程可通过发送包括与网络节点(例如包括CDN A的请求路由功能元件的网络节点)关联的URL的一部分(central.cdnA.com)的DNS请求消息到网络中的解析功能元件(例如DNS系统)而开始,并且接收包括网络节点(在这个例子中为包括与CDN A关联的请求路由功能元件的网络节点)的IP地址的响应消息(步骤454、456)。此外,客户机可检查这个网络节点是否能够传递所预测分块。为此,其可发送针对分块segment2-4.avi的HTTP HEAD请求至DNS解析的IP地址123.45.67.89(步骤458)。如果这网络节点能够传递所请求的分块,其可以HTTP 200 OK消息来响应该请求。如果其不能够传递所请求的分块,其可以包括另外的分块定位符的HTTP REDIRECT消息来响应,该另外的分块定位符还需要进一步被预解析以便获得配置成向客户机传递所请求分块的网络节点的网络地址。如早先已提到的,这种另外的分块定位符可在下文中被称为部分预解析的分块定位符。
因此,在接收HTTP HEAD请求消息时,CDN A中的请求路由功能元件可通过CDNI请求路由(RR)接口与CDN B就所请求分块的传递进行协商(步骤460、462)。
在一个实施例中,在将客户机重定向到CDN B之前,CDN A的RR节点可请求关于CDN B能够并且愿意向客户机传递特定分块的确认。在那种情况下,其可向CDN B的RR节点发送交互CDN消息,例如DELIVERY REQUEST消息,其中请求可包括识别所请求分块和位置信息的参数,例如客户机的IP地址。DELIVERY REQUEST可以HTTP GET消息来实现。
在另一实施例中,由CDN A的RR节点发送至CDN B的RR节点的交互CDN消息,例如HTTP GET DELIVERY REQUEST消息可包括指示特定交互CDN消息不涉及由客户机进行的实际内容请求(例如HTTP GET消息)而是涉及由客户机执行的预解析步骤(例如以HTTP HEAD消息为基础)的标志。该标志可用于通知CDN B的RR节点该请求的性质,这允许RR节点选择适当的后续动作(为了计费、统计等目的)。
在另一实施例中,如果交互CDN消息,例如DELIVERYREQUEST,与预解析步骤相关,而不是与内容请求相关,交互CDN消息可以HTTP HEAD消息而不是HTTP GET消息来实现,使得CDNB的RR节点知道请求的性质,这允许其选择适当的后续动作(为了计费、统计等目的)。在这个实施例中,响应HTTP HEAD消息,HTTP200 OK响应消息可在其报头(因为对HTTP HEAD请求的响应消息不具有正文)包括所请求分块和位置信息,例如客户机的IP地址。
在与CDN B协商之后,CDN A的请求路由节点可确定这特定分块向此特定用户的传递最好由CDN B来服务。其因此可将HTTP 302REDIRECT响应发送回客户机(步骤464),该HTTP 302 REDIRECT响应包括部分预解析的分块定位符,即指向CDN B的请求路由节点的URL的一部分(central.cdnB.com)。响应HTTP HEAD消息而发送的消息不包括正文,所以HTTP 302 REDIRECT消息也不包括正文。但这不是一个问题,因为包括部分预解析的分块定位符的重定向信息可能包含在其报头中使得不需要消息正文。
在接收包括部分解析的分块定位符的HTTP REDIRECT消息时,客户机可确定请求中的分块定位符没有被完全预解析成网络地址。预解析功能元件可随后决定停止预解析过程并且通过以部分预解析的分块定位符central.cdnB.com替换原始分块定位符central.cdnA.com来重写清单高速存储缓冲器中的清单文件的一部分(在图4B中未示出)。
备选地,在接收到HTTP重定向时,AS客户机可决定通过执行另一DNS询问继续预解析过程(步骤466、468)并且发送新的HTTPHEAD至CDN B的请求路由节点的解析的IP地址98.65.45.210(步骤470)。
此后,CDN B的请求节点,特别是CDN B的CDN控制功能元件(CDNCF),可对最适于传递特定分块至客户机的传递节点(DN)作出决定(步骤472,474)并且将包含所选择传递节点的位置(在这个例子中为分块定位符node3.cdnB.com)的HTTP重定向发送回客户机(步骤476)。在接收到HTTP REDIRECT消息时,客户机可再次确定是停止预解析过程并通过以部分预解析的分块定位符node3.cdnB.com替换原始分块定位符central.cdnA.com(产生修正的URL node3.cdnB.com/segment2-4.avi)(未在图4B中示出)来重写清单高速存储缓冲器中的清单文件的一部分,还是继续预解析过程。
客户机可通过执行另一DNS询问来继续预解析过程(步骤478,480),以便将URL解析为配置成向客户机传递这分块的传递节点的网络地址(在这个例子中为IP地址24.67.13.57)。同样,在这点上,预解析功能元件可决定停止预解析过程并且将结果(即分块定位符24.67.13.57)存储在清单高速缓冲存储器(未示出)中。
如果预解析功能元件继续预解析过程,预解析功能元件可再次检查与预解析分块定位符关联的网络节点是否能够传递所预测分块。为此,其可发送HTTP HEAD至传递节点的网络地址(步骤482),传递节点作为响应发送HTTP 200 OK消息,该消息向预解析功能元件确认预解析过程完全解析了早先的分块定位符(即用在预解析过程开始阶段或中间阶段的分块定位符)。通过这种方式,能够确定分块可以URL 24.67.13.57/segment2-4.avi为基础来检索(步骤484)。
随后,在t=9时,预解析功能元件可通过以完全预解析的分块定位符24.67.13.57替换原始分块定位符central.cdnA.com来重写清单高速缓冲存储器中清单文件的一部分(产生完全解析的URL24.67.13.57/segment2-4.avi)(步骤486)。与分块定位符关联的标志或指示符可指示分块定位符是完全预解析的还是部分预解析的。上述过程可针对其他分块被重复,其中用户浏览信息确定哪些后续分块可被部分或完全预解析。
因此,从上述内容能够导出,预解析功能元件以与分块定位符关联的网络信息为基础部分或完全预解析AS客户机的清单高速缓冲存储器中的清单文件中预定的分块定位符。为了获得这种网络信息,预解析功能元件可使用预定的协议消息,诸如在RFC2616中标准化的DNS请求或HTTP HEAD请求。HEAD请求与HTTP GET请求相同,除了网络节点仅返回响应的消息报头。通过发送HEAD请求到存在于清单文件中的URL,AS客户机可以响应消息为基础检查该URL是否托管实际分块。如果HTTP HEAD请求返回HTTP OK响应,AS客户机知道URL是最终目的地并且不需要预期另外的请求路由延迟。如果服务器的响应是HTTP REDIRECT消息,其可在那时停止预解析过程并且以部分解析的分块URL来替换未解析的分块URL。备选地,客户机可确定通过发送另一HTTP HEAD请求到重定向消息中列出的URL来继续预解析过程。这过程可被重复直到最终完全预解析的URL被接收。其可随后以通过预解析过程获得的URL来替换存储在清单高速缓冲存储器中的URL。
尽管图4B中描绘的过程参考HTTP协议来描述,其不应被限定于此。例如,如果清单文件包括一个或多个RTSP分块定位符(例如RTSP URL),客户机可使用RTSP DESCRIBE请求来执行分块定位符的预解析。此外,在RTSP中重定向可通过在响应中使用3xx响应代码以与HTTP相同的方式来处理。因此,当客户机响应于RTSPDESCRIBE接收3xx响应时,客户机知道其不得不发送另一RTSPDESCRIBE请求到3xx响应中的URL。
图5根据本发明的一个实施例描绘预解析的分块定位符为基础的分块的检索。在这特定示例中,该过程可以与参照图2所描述的过程相同的方式开始,即所缓冲分块的播放,其中分块缓冲器通过分块检索功能元件持续地以另外的分块来填充,这过程可与分块播放过程并行地执行。同时,图4描绘的预解析过程作为后台过程在客户机中执行使得清单文件中的分块定位符(包括分块定位符central.cdnA.com)用户浏览信息为基础来预解析,如参照图3所解释。
因此,如图5所示,在t=0时,客户机可开始播放分块(在这个例子中为segment1-1.avi;为简便起见分块检索过程在这图中未示出)(步骤500)。一旦完成第一分块的播放,在t=1时(segment1-2.avi)和t=2时(segment1-3.avi)的后续分块可被处理并播放。于是,在t=2时,在客户机播放segment1-3.avi时,用户可与内容交互(例如通过按压按钮来执行平移操作),其中交互的结果是新的分块segment2-4.avi被需要。
由于与这分块关联的分块定位符已被在后台运行的预解析功能元件完全预解析,客户机可向传递节点的地址传输HTTP GET,其中HTTP GET消息包括分块识别符segment2-4.avi(步骤532)。CDN B处的传递节点可通过在HTTP 200 OK响应消息中发送所请求的分块segment2-4.avi至客户机来响应(步骤534)。随后,在t=4时,客户机开始接收并且播放segment2-4.avi(步骤536)。
从图5中可见,客户机中的预解析功能元件明显地减少由分块检索过程在用户与内容互动时引入的延迟。如果分块仅部分预解析,预解析过程的未完成部分需要在分块能够被检索之前完成。然而,同样在那种情况下(尤其是大量分块需要被预解析)可实现在减少请求路由延迟中相当可观的改进。通过这种方式,用户在浏览内容时感知的体验品质可被相当可观地改善。此外,预解析功能元件可与仅需要客户机软件中更新的现有网络技术一起使用。
图6根据本发明一个实施例描绘与客户机执行的预解析和分块检索过程关联的流程图。在某一时刻,在浏览网站时,用户选择链接到网页视频的链接。在选择时,用户的客户机可发送HTTP GET请求至包含在链接中的URL。在这情况下链接指向CDN A的请求路由节点上的命名为manifest.mf的清单文件(步骤600)。在接收客户机对清单文件的请求时,请求路由节点可确定哪一个传递节点最适合向客户机传递清单文件。其可随后发送HTTP REDIRECT消息至客户机,该消息包含所选传递节点的URL(步骤601)。一旦客户机接收HTTPREDIRECT消息,其可发送新的HTTP GET至包含在REDIRECT消息中的URL(在这个例子中为URL node1.cdnA.com/manifest.mf)(步骤602)。CDN A传递节点可通过向客户机发送所请求的清单文件来响应(步骤603)。
在接收清单文件时,客户机可分析清单文件以了解其描述的内容的结构(步骤604)。在分析清单文件之后,客户机过程分裂成(至少)两个独立过程(线程):第一过程(第一过程607),其用于请求及播放分块,参照图5所描述;以及第二(后台)过程(第二过程606),其用于预解析与分块选择器所选的分块关联的分块定位符,参照图3-4所描述。
这些消息流清晰地例示一旦分块定位符被预解析,由于客户机能够以清单高速缓冲存储器中预解析的网络地址为基础立刻联系托管分块的服务器,另外的重定向是不必要的。其也示出即使不同分块位于不同节点以及甚至位于不同CDN中,也可实现分块的有效检索。
图7根据本发明的一个实施例描绘预解析清单文件的至少一部分的分块定位符的示例。特别地,图7描绘客户机为了替换分块定位符(例如存储在终端的清单高速缓冲存储器中的URL的预定部分)如何使用预解析过程的示例,其中将被预解析的分块定位符由分块选择器以用户浏览信息和内容浏览信息为基础来选择(参照图3所描述)。
第一清单文件700可由客户机从CDN接收,参照图6所描述。在这情况下,清单文件指许多所谓的空间分块文件,它们可用于将空间上分块的内容流送到客户机。
空间上分块的内容或平铺的内容用于所谓的平铺视频系统,其中可产生视频内容文件的多个分辨率层。平铺视频系统的示例在ICIP2010年会刊4437页至4440页的Mavlankar等人的“用于在线演讲观看的交互感兴趣区域视频流送系统”中描述。
空间上分块的内容可通过在空间上将视频文件中的视频帧分成所谓的分片(tile)而产生,其中每一分片包括与原始视频帧的空间区域(分片从其中产生)关联的内容。以视频帧的序列为基础,与一个空间区域关联的分片的序列可产生并被格式化为独立的流,例如MPEG流。这种流可被称为空间分块流或简称为空间流。
因此,空间流彼此独立地编码并分发(即被流送)。终端的视频客户机可请求特定的空间区域(感兴趣区域(ROI)),而服务器可随后将ROI请求映射到一个或多个空间分块并且将所选的空间分块组传送到客户机,其中客户机配置成将空间分块流组合成一个无缝的视频。分块的内容参照图10-12更详细地描述。
图7中清单文件指示空间上分块的内容以内容源文件Movie_4为基础来产生以及由分块标识符(文件名)Movie-4-1.seg、Movie-4-2.seg、Movie-4-3.seg和Movie-4-4.seg定义的四个独立空间分块流存储在CND A的域中,其中URL central.cdn_A.com(701a-701d)的预定部分指向CDN A内的一般请求路由节点。因此,这些分块定位符在不包括分块可被检索处的节点的网络地址的意义上讲是未解析的。当这清单文件在流送过程中被客户机使用时,可使用预解析过程,如参照图4所详细描述。
在那过程期间,与四个分块关联的URL 701a-701d中未解析的分块定位符central.cdn_A.com的至少一部分可由网络地址来替换。通过这种方式可形成4个解析的URL 703a-703d,其各自包含这些分块可被检索处的传递节点的网络地址。解析的URL可指向例如一个或多个传递节点,其中传递节点的一些可位于例如另外的CDN B中。如图7中可见,分块可全部从网络地址24.67.13.57识别的一个传递节点中检索。
图8描绘用于清单文件的请求及播放的过程的流程图,其中未解析的分块定位符被至少部分地预解析。该过程可以客户机请求与期望内容关联的清单文件来开始(步骤800)。作为对请求的响应。客户机可从服务器接收清单文件(步骤801)并且通过请求在清单文件列出的第一分块而开始视频的播放(步骤802)。
在播放期间,由分块选择器分析用户交互以预测用户可能会在不远的未来需要哪些分块和关联的分块定位符(步骤803)。这些预测的分块定位符随后被分块选择器标记用于(部分)预解析。预解析功能元件可随后部分地或完全地预解析标记用于预解析的分块定位符(步骤804)。如果最后的分块定位符被处理(步骤805),则该过程被停止。如果没有,新一轮的预解析开始。
图9根据本发明一个实施例描绘预解析过程的详细流程图。特别地,图9描绘预解析过程的流程图,其中清单文件中分块定位符以与这些分块定位符关联的网络信息为基础来预解析。
在第一步骤900,预解析功能元件可接收需要被部分或完全预解析的分块定位符(例如URL)的列表,其中与分块定位符关联的每一分块由特定的分块标识符(例如分块文件名)来识别。这列表可在参照图8描述的过程的步骤803期间产生。
预解析功能元件可从需要被解析的分块定位符的列表取得第一分块定位符(例如指向网络节点的URL的预定部分)(步骤901),并且开始获得与分块定位符关联的网络信息(步骤902)。网络信息可使用针对网络信息的一个或多个请求消息来获得(参照例如图4B所描述)。这些消息可包括:一个或多个DNS消息(例如DNS询问);和/或,一个或多个请求消息,用于确定分块定位符是指向用于分块的传递的网络节点还是指向用于请求的重定向的网络节点(例如HTTPHEAD或RTSP DESCRIBE消息);和/或一个或多个响应消息,其指示分块定位符是指向用于分块的传递的网络节点(传递节点)还是指向用于请求的重定向的网络节点(例如HTTP 200 OK消息或3xx RTSP错误消息)。
以这些消息为基础,预解析功能元件可使用网络信息来更新分块定位符(步骤903)。如果以网络信息为基础,确定更新的分块定位符指向用于传递与分块定位符关联的分块的传递节点(步骤904)(因为例如HTTP 200 OK消息被接收),预解析功能元件可确定更新的分块定位符是完全预解析的分块定位符(步骤905)。预解析功能元件还可通过以完全预解析的分块定位符替换清单列表中的初始分块定位符来更新分块列表(步骤906)。可选地,标志或指示符可用于用信号通知客户机这样修改的分块定位符涉及完全预解析的分块定位符。
如果以网络信息为基础,确定更新的分块定位符不指向传递节点,而是例如指向用于重定向的节点(由于例如HTTP REDIRECTION被接收),预解析功能元件可确定是否停止预解析过程(步骤907)。如果预解析功能元件决定继续预解析过程(步骤908),获得网络信息的过程开始(见步骤902)。如果其决定停止预解析过程,预解析功能元件可确定更新的分块定位符是部分解析的分块定位符(步骤909)。预解析功能元件可进一步通过以部分预解析的分块定位符的至少一部分替换清单列表中的初始分块定位符来更新分块列表(步骤910)。可选地,标志或指示符可用于指示客户机这样修改的分块定位符涉及完全预解析的分块定位符。
在分块列表的更新之后,预解析功能元件可确定另外的分块定位符是否需要被预解析(步骤911)。如果情况确是这样,预解析功能元件可以下一分块定位符为基础开始预解析过程(步骤912)。
这预解析过程可在分块从网络检索期间在后台执行。通过这种方式,分块列表以完全和/或部分预解析的分块定位符来持续地且动态地更新,其中将被预解析的分块定位符被分块选择器以预定信息为基础来选择,预定信息例如为诸如用户资料、用户浏览历史和/或用户的地理位置的用户相关信息;或例如为诸如分块标记的清单文件中信息,分块标记用于标记在清单文件中识别的特定分块定位符以使得预解析功能元件能够选择标记的分块定位符用于预解析。
图10根据本发明一个实施例的描绘用于预解析的合适分块定位符的选择。特别地,图10描绘供分块选择器确定与时间上分块的视频(例如基于HAS的视频流)关联的清单文件中哪些分块定位符适合预解析的简单算法。在这情况下,时间上接近于当前正被观看的分块1000的分块1001适合预解析。在时间上更远离当前正被观看的分块定位的时间分块(1002)(仍)不适合预解析。在一个实施例中,客户机可使用限定时间距离的时间接近参数。时间接近参数可被用于确定清单文件中识别的哪些分块在时间上极接近于当前正被客户机播放的分块。落入该时间距离内的、在清单文件中标识的分块可被标记用于预解析。
图11根据本发明另一实施例描绘用于预解析的合适分块定位符的选择。特别地,图11描绘供分块选择器确定与品质上分块的视频关联的清单文件中哪些分块定位符适合预解析的简单算法。在这情况下,与品质层1101(其品质(在品质级别上)接近当前正被观看的品质(1100))关联的分块定位符适合预解析。与品质层1102(其具有与当前正被观看的品质远离的品质)关联的分块定位符不适合预解析。在一个实施例中,客户机可使用限定品质距离的品质接近参数。品质接近参数可用于确定清单文件中识别的哪些分块在品质上极接近于当前正被客户机播放的分块。落入离当前观看的分段该品质接近距离内的、在清单文件中识别的分块可被标记用于预解析。
图12根据本发明又一实施例描绘用于预解析的合适分块定位符的选择。特别地,图12描绘供分块选择器确定与空间上分块的视频关联的清单文件中哪些分块定位符适合预解析的简单算法。该算法确定空间分块的矩阵,其中每一空间分块与被空间分块的矩阵所覆盖的总区域内特定区域(由虚线形成)的内容关联。用户可选择并且观看一个特定空间分块1201。因此,当用户开始与显示在终端上的内容交互时(例如经由平移操作),很有可能与正被观看的分块直接接壤的一个或多个分块将要被用户选择用于播放。在这场合下,适合预解析的空间分块定位符直接定位于被观看的分块周围。因此,如果用户浏览信息指示与特定区域x,y关联的空间分块被播放,分块选择器可选择一组另外的分块定位符,例如与位置(x-1,y)(x-1,y-1)(x-1,y+1)(x,y+1)(x,y-1)(Sx+1,y)(x+1,y-1)(x+1,y+1)处的区域关联的空间分块定位符,作为适合预解析的分块定位符。以用户浏览信息为基础,分块选择器可确定其他空间分块(仍)不适合预解析。在一个实施例中,客户机可使用限定空间距离的空间接近参数。与位于离当前观看的空间分块该空间接近距离内的区域关联的空间分块可被标记用于预解析。
图13根据本发明一个实施例描绘清单文件的至少一部分,其包括被标记用于预解析的未解析分块定位符1302(作为URL的一部分)。在这特定实施例中,内容提供商或CDN提供商可插入标记1301a、1301b用于标记清单文件1300内的特定分块定位符。这些标记可以分块浏览统计为基础来插入,使得受欢迎的分块(例如被经常请求的分块)能够被客户机以清单文件中标记为基础来识别。这种标记将分块定位符识别为适合预解析。在一个实施例中,标记可与评分值(例如受欢迎分值)关联,使得未解析的分块定位符可依照评分来分级。这些标记可从而提供评分方案供分块选择器选择一个或多个另外的分块定位符用于未来的分块请求。通过这种方式,与高受欢迎分值关联的未解析的分块定位符可比具有较低受欢迎分值的那些被更早地预解析。在一个实施例中,内容提供商或CDN可将这些标记插入清单文件中。在另一实施例中,内容提供商或CDN可产生新标记的清单文件。
应理解,针对任何一个实施例描述的任何特征可被单独使用,或与所描述的其他特征结合使用,并且也可与任何其他实施例或任何其他实施例的组合的一个或多个特征结合使用。
本发明一个实施例可实现为用于与计算机系统一起使用的程序产品。程序产品的程序限定实施例的功能(包括本文所描述的方法)并且能够包含在多种计算机可读的存储介质上。例示性的计算机可读存储介质包括,但不限于:(i)信息永久存储于其上的不可写存储介质(例如计算机内只读存储装置,诸如可由CD-ROM驱动读取的CD-ROM碟、闪存存储器、ROM芯片或任何类型的固态非易失性半导体存储器);以及(ii)可改变的信息存储于其上的可写存储介质(例如磁盘驱动器内的软盘、硬盘驱动、或任何类型的固态随机存取半导体存储器)。本发明并不限定于上面描述的实施例,而可以在附随权利要求的范围内被改变。
Claims (15)
1.一种用于以清单文件为基础使能分块内容的流送的方法,所述清单文件包括一个或多个分块标识符以及一个或多个关联的分块定位符,所述分块定位符用于定位一个或多个配置成向所述客户机传递一个或多个分块的传递节点,所述分块由所述分块标识符识别,所述方法包括:
以所述清单文件中至少一个分块标识符为基础请求至少一个分块的传递;
以所述至少一个分块标识符为基础,从所述清单文件中选择至少一个另外的分块标识符,所述另外的分块标识符与至少一个期望的未来分块请求关联;以及,
预解析与所述所选的另外的分块标识符关联的第一分块定位符的至少一部分以获得与所述第一分块定位符关联的网络信息。
2.根据权利要求1所述的方法,其中所述网络信息包括:
关于与所述第一分块定位符的至少一部分关联的网络地址的至少一部分的信息;和/或,与所述所选的另外的分块标识符关联的第一分块定位符是指向用于与所述期望的未来分块请求关联的分块的传递的传递节点,还是指向用于所述期望的未来分块请求的重定向的网络节点的信息;和/或,与所述所选的另外的分块标识符关联的第二分块定位符的至少一部分。
3.根据权利要求1或2所述的方法,还包括:
如果所述第一分块定位符指向用于重定向的网络节点,将所述第一分块定位符的至少一部分预解析为与所述所选的另外的分块标识符关联的第二分块定位符的至少一部分。
4.根据权利要求1至3中任一项所述的方法,包括:
以所述网络信息为基础修改所述清单文件。
5.根据权利要求2或3所述的方法,包括:
以所述第二分块定位符的所述至少一部分为基础修改所述清单文件,优选地所述修改包括以所述第二分块定位符的所述至少一部分替换所述第一分块定位符的至少一部分的步骤。
6.根据权利要求1至5中任一项所述的方法,其中所述预解析包括:
发送针对网络信息的请求至与所述第一分块定位符关联的网络节点;
接收响应消息;
以所述响应消息为基础确定与所述所选的另外的分块标识符关联的所述第一分块定位符是指向用于与所述期望的未来分块请求关联的分块的传递的传递节点还是指向用于所述期望的未来分块请求的重定向的网络节点。
7.根据权利要求6所述的方法,其中所述针对网络信息的请求包括下列项的至少一个:优选为HTTP HEAD消息或RTSP DESCRIBE消息的HTTP、RTSP和/或DNS协议消息;和/或,其中所述响应消息为HTTP或RTSP响应消息。
8.根据权利要求1至7中任一项所述的方法,其中所述预解析在所述至少一个分块的传递的至少一部分期间作为后台过程执行。
9.根据权利要求1至8中任一项所述的方法,包括:
以如下项的至少一部分为基础选择所述至少一个另外的分块标识符:用户资料、用户浏览历史、用户与分块内容的交互和/或客户机和/或用户的地理位置。
10.根据权利要求1至9中任一项所述的方法,其中所述清单文件包括用于将一个或多个另外的分块标识符标记用于未来分块请求的一个或多个标记,优选地所述标记包括评分值。
11.根据权利要求1至10中任一项所述的方法,其中所述预解析包括:
传输针对网络信息的请求至第一内容传递网络(CDN1),所述请求优选为HTTP HEAD消息或RTSP DESCRIBE消息,所述请求包括至少所述所选的另外的分块标识符;
所述第一内容传递网络(CDN1)传输交互CDN请求消息至第二内容传递网络(CDN2)以供协商由所述所选的另外的分块标识符识别的所述分块的未来传递,所述交互CDN请求消息包括所述所选的另外的分块标识符,优选为DELIVERY REQUEST消息;
所述第一内容传递网络CDN1接收交互CDN响应消息,所述交互CDN响应消息包括位置信息,优选为DELIVERY RESPONSE消息,所述位置信息优选为与所述第二内容传递网络CDN2中一个或多个传递节点关联的网络地址或分块定位符,所述一个或多个传递节点配置成向客户机传递由所述所选的另外的分块标识符识别的分块;
其中,可选地,所述交互CDN请求消息包括优选为标志的指示符,所述指示符允许所述第二内容传递网络CDN2确定所述交互CDN请求消息与分块定位符的所述预解析关联,或其中所述交互CDN请求消息以HTTP HEAD消息或RTSP DESCRIBE消息为基础来实现,从而允许所述第二内容传递网络CDN2确定所述交互CDN消息与分块定位符的所述预解析关联。
12.一种客户机,用于在网络中一个或多个传递节点上托管的分块内容的客户机控制的流送,所述客户机包括:
清单高速缓冲存储器,其用于存储清单文件的至少一部分,所述清单文件包括一个或多个分块标识符以及一个或多个关联的分块定位符,所述分块定位符用于定位一个或多个配置成向所述客户机传递一个或多个分块的传递节点,所述分块由所述分块标识符识别;
分块检索功能元件,其用于以所述清单文件中至少一个分块标识符为基础请求至少一个分块的传递;
分块选择器,其配置用于以所述至少一个分块标识符为基础从所述分块检索功能元件中选择与至少一个期望的未来分块请求关联的至少一个另外的分块标识符;以及,
预解析功能元件,其用于预解析与所述至少一个另外的分块标识符关联的第一分块定位符的至少一部分以获得与所述第一分块定位符关联的网络信息。
13.一种网络节点,用于与根据权利要求12所述的客户机一起使用,所述网络节点与第一内容传递网络(CDN1)关联并且配置成:
从客户机接收针对与分块定位符关联的网络信息的请求,优选地所述请求包括HTTP HEAD消息或RTSP DESCRIBE消息,所述分块定位符与识别分块的分块标识符关联;
传输交互CDN请求消息至第二内容传递网络(CDN2)以供协商所述分块的未来的传递,所述交互CDN请求消息包括所述分块定位符和/或分块标识符的至少一部分,优选为DELIVERY REQUEST消息;
其中所述交互CDN请求消息包括标志或其中所述交互CDN请求消息基于HTTP HEAD消息或RTSP DESCRIBE消息,所述标志或HTTP HEAD消息或RTSP DESCRIBE消息允许所述第二内容传递网络CDN2确定所述交互CDN消息与所述客户机所请求的分块定位符的所述预解析关联。
14.一种数据结构,优选为清单文件,用于在根据权利要求12所述的客户机中使用,所述数据结构包括一个或多个分块标识符以及一个或多个关联的分块定位符,所述分块定位符优选为URL,所述分块定位符用于定位一个或多个配置成向所述客户机传递一个或多个分块的传递节点,所述分块由所述一个或多个分块标识符识别;所述数据结构还包括一个或多个与所述分块标识符的一个或多个关联的标记,所述一个或多个标记允许所述客户机中的预解析功能元件选择与一个或多个期望的未来分块请求关联的一个或多个另外的分块标识符,优选地所述一个或多个标记与评分值关联,所述评分值优选为受欢迎分值。
15.一种计算机程序产品,包括软件代码部分,该软件代码部分配置用于当其在计算机的存储器中运行时,执行根据权利要求1至11中任一项所述的方法步骤。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP11196064.7 | 2011-12-29 | ||
EP11196064 | 2011-12-29 | ||
EP12153228 | 2012-01-31 | ||
EP12153228.7 | 2012-01-31 | ||
PCT/EP2012/076941 WO2013098319A1 (en) | 2011-12-29 | 2012-12-27 | Controlled streaming of segmented content |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104137564A true CN104137564A (zh) | 2014-11-05 |
CN104137564B CN104137564B (zh) | 2018-06-12 |
Family
ID=47505012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280070941.1A Active CN104137564B (zh) | 2011-12-29 | 2012-12-27 | 分块内容的受控流送 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10225306B2 (zh) |
EP (2) | EP2798854B1 (zh) |
JP (2) | JP6023213B2 (zh) |
CN (1) | CN104137564B (zh) |
WO (1) | WO2013098319A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872598A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 多媒体直播方法及装置 |
CN107018431A (zh) * | 2016-01-27 | 2017-08-04 | 上海交通大学 | 一种基于媒体自身属性以支持空间分块的存储与传输机制 |
CN109862438A (zh) * | 2019-02-19 | 2019-06-07 | 普联技术有限公司 | 一种代理转发实时流协议流媒体数据的方法及设备 |
CN110140335A (zh) * | 2016-11-10 | 2019-08-16 | 瑞典爱立信有限公司 | 用于改进递送性能的资源分段 |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8135912B2 (en) | 2009-05-18 | 2012-03-13 | Hola Networks, Ltd. | System and method of increasing cache size |
US8560604B2 (en) | 2009-10-08 | 2013-10-15 | Hola Networks Ltd. | System and method for providing faster and more efficient data communication |
US8732569B2 (en) * | 2011-05-04 | 2014-05-20 | Google Inc. | Predicting user navigation events |
EP3068102B1 (en) | 2011-12-29 | 2017-11-08 | Koninklijke KPN N.V. | Network-initiated content streaming control |
CN110139130B (zh) | 2012-10-12 | 2022-09-20 | 佳能株式会社 | 流传输数据的方法、发送和接收视频数据的方法和设备 |
GB2513139A (en) * | 2013-04-16 | 2014-10-22 | Canon Kk | Method and corresponding device for streaming video data |
US9128892B2 (en) * | 2012-12-10 | 2015-09-08 | Netflix, Inc. | Managing content on an ISP cache |
US20140366080A1 (en) * | 2013-06-05 | 2014-12-11 | Citrix Systems, Inc. | Systems and methods for enabling an application management service to remotely access enterprise application store |
CN105379295A (zh) | 2013-07-03 | 2016-03-02 | 皇家Kpn公司 | 分段内容的流送 |
US9894125B2 (en) * | 2013-07-03 | 2018-02-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Redistributing sources for adaptive bit rate streaming |
CN109842613B (zh) * | 2013-07-12 | 2021-11-19 | 佳能株式会社 | 用于提供和接收媒体数据的方法和装置以及存储介质 |
GB2516112B (en) * | 2013-07-12 | 2016-10-26 | Canon Kk | Methods for providing media data, method for receiving media data and corresponding devices |
US9628528B2 (en) | 2013-07-19 | 2017-04-18 | Electronics And Telecommunications Research Institute | Apparatus and method for providing content |
EP2973228B1 (en) * | 2013-07-26 | 2019-08-28 | Huawei Technologies Co., Ltd. | Spatial adaptation in adaptive streaming |
US9241044B2 (en) * | 2013-08-28 | 2016-01-19 | Hola Networks, Ltd. | System and method for improving internet communication by using intermediate nodes |
US8718445B1 (en) | 2013-09-03 | 2014-05-06 | Penthera Partners, Inc. | Commercials on mobile devices |
EP2851833B1 (en) | 2013-09-20 | 2017-07-12 | Open Text S.A. | Application Gateway Architecture with Multi-Level Security Policy and Rule Promulgations |
US10824756B2 (en) | 2013-09-20 | 2020-11-03 | Open Text Sa Ulc | Hosted application gateway architecture with multi-level security policy and rule promulgations |
US9674225B2 (en) | 2013-09-20 | 2017-06-06 | Open Text Sa Ulc | System and method for updating downloaded applications using managed container |
US9244916B2 (en) * | 2013-10-01 | 2016-01-26 | Penthera Partners, Inc. | Downloading media objects |
JP6698553B2 (ja) * | 2014-02-13 | 2020-05-27 | コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ | 1つの要求メッセージに基づいたネットワーク・ノードへの多数のチャンクの要求 |
US10523723B2 (en) * | 2014-06-06 | 2019-12-31 | Koninklijke Kpn N.V. | Method, system and various components of such a system for selecting a chunk identifier |
US9692800B2 (en) * | 2014-06-11 | 2017-06-27 | Google Inc. | Enhanced streaming media playback |
US10033824B2 (en) * | 2014-06-30 | 2018-07-24 | Samsung Electronics Co., Ltd. | Cache manifest for efficient peer assisted streaming |
US9992251B2 (en) | 2014-07-18 | 2018-06-05 | Cisco Technology, Inc. | Segment routing support in MPEG dash |
KR20160041398A (ko) * | 2014-10-07 | 2016-04-18 | 삼성전자주식회사 | 컨텐츠 처리 장치 및 그의 컨텐츠 처리 방법 |
US9509742B2 (en) | 2014-10-29 | 2016-11-29 | DLVR, Inc. | Configuring manifest files referencing infrastructure service providers for adaptive streaming video |
US10084838B2 (en) * | 2014-10-29 | 2018-09-25 | DLVR, Inc. | Generating and using manifest files including content delivery network authentication data |
US10142386B2 (en) | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
JP2016129014A (ja) * | 2015-01-01 | 2016-07-14 | 利仁 曽根 | 配信サーバ方法 |
US9826016B2 (en) | 2015-02-24 | 2017-11-21 | Koninklijke Kpn N.V. | Fair adaptive streaming |
JP5973616B1 (ja) * | 2015-04-15 | 2016-08-23 | 西日本電信電話株式会社 | 受信端末及びその映像取得方法 |
US10425453B2 (en) | 2015-04-17 | 2019-09-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic packager network based ABR media distribution and delivery |
US11057446B2 (en) | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
US9954930B2 (en) * | 2015-08-06 | 2018-04-24 | Airwatch Llc | Generating content fragments for content distribution |
US11593075B2 (en) | 2015-11-03 | 2023-02-28 | Open Text Sa Ulc | Streamlined fast and efficient application building and customization systems and methods |
US11388037B2 (en) * | 2016-02-25 | 2022-07-12 | Open Text Sa Ulc | Systems and methods for providing managed services |
WO2018186718A1 (en) * | 2017-04-07 | 2018-10-11 | Samsung Electronics Co., Ltd. | A method and apparatus for reducing latency of network protocols |
US10972515B2 (en) * | 2017-07-31 | 2021-04-06 | Verizon Digital Media Services Inc. | Server assisted live stream failover |
EP3767494B1 (en) | 2017-08-28 | 2023-02-15 | Bright Data Ltd. | Method for improving content fetching by selecting tunnel devices |
US11190374B2 (en) | 2017-08-28 | 2021-11-30 | Bright Data Ltd. | System and method for improving content fetching by selecting tunnel devices |
US10650078B2 (en) * | 2017-09-26 | 2020-05-12 | Adobe Inc. | Reducing latency in rendering of content |
US10838924B2 (en) * | 2017-10-02 | 2020-11-17 | Comcast Cable Communications Management, Llc | Multi-component content asset transfer |
WO2019120506A1 (en) * | 2017-12-20 | 2019-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for content delivery |
EP4075304B1 (en) | 2019-02-25 | 2023-06-28 | Bright Data Ltd. | System and method for url fetching retry mechanism |
US11411922B2 (en) | 2019-04-02 | 2022-08-09 | Bright Data Ltd. | System and method for managing non-direct URL fetching service |
US11647252B2 (en) | 2020-02-28 | 2023-05-09 | Hulu, LLC | Identification of elements in a group for dynamic element replacement |
EP4111698A4 (en) * | 2020-02-28 | 2024-03-13 | Hulu, LLC | CLIENT-BASED REMOTE ELEMENT RESOLUTION STORAGE |
US11368505B2 (en) * | 2020-09-15 | 2022-06-21 | Disney Enterprises, Inc. | Dynamic variant list modification to achieve bitrate reduction |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009075033A1 (ja) * | 2007-12-13 | 2009-06-18 | Fujitsu Limited | パケット通信システム及びパケット通信方法並びにノード及びユーザ端末 |
US20090292819A1 (en) * | 2008-05-23 | 2009-11-26 | Porto Technology, Llc | System and method for adaptive segment prefetching of streaming media |
US20100011061A1 (en) * | 2002-04-26 | 2010-01-14 | Hudson Michael D | Centralized selection of peers as media data sources in a dispersed peer network |
US20110231519A1 (en) * | 2006-06-09 | 2011-09-22 | Qualcomm Incorporated | Enhanced block-request streaming using url templates and construction rules |
CN102232298A (zh) * | 2011-04-07 | 2011-11-02 | 华为技术有限公司 | 媒体内容的传输处理方法、装置与系统 |
CN102238179A (zh) * | 2010-04-07 | 2011-11-09 | 苹果公司 | 实时或准实时流传输 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1153244A (ja) | 1997-08-01 | 1999-02-26 | Fujitsu Ltd | 情報提供システム |
US6553376B1 (en) * | 1998-11-18 | 2003-04-22 | Infolibria, Inc. | Efficient content server using request redirection |
US6854018B1 (en) * | 2000-03-20 | 2005-02-08 | Nec Corporation | System and method for intelligent web content fetch and delivery of any whole and partial undelivered objects in ascending order of object size |
US6938005B2 (en) | 2000-12-21 | 2005-08-30 | Intel Corporation | Digital content distribution |
US8090761B2 (en) | 2002-07-12 | 2012-01-03 | Hewlett-Packard Development Company, L.P. | Storage and distribution of segmented media data |
US20050071881A1 (en) * | 2003-09-30 | 2005-03-31 | Deshpande Sachin G. | Systems and methods for playlist creation and playback |
US8321690B2 (en) | 2005-08-11 | 2012-11-27 | Microsoft Corporation | Protecting digital media of various content types |
CN101146110B (zh) | 2007-09-25 | 2011-06-29 | 深圳市迅雷网络技术有限公司 | 一种播放流媒体的方法 |
CN101141627A (zh) | 2007-10-23 | 2008-03-12 | 深圳市迅雷网络技术有限公司 | 一种流媒体文件的存储系统及方法 |
GB2469238A (en) | 2008-01-31 | 2010-10-06 | Ericsson Telefon Ab L M | Method and apparatus for obtaining media over a communications network |
JP2009187466A (ja) | 2008-02-08 | 2009-08-20 | Ntt Docomo Inc | プロキシシステム及び中継方法 |
EP2131362A1 (en) | 2008-06-06 | 2009-12-09 | Koninklijke KPN N.V. | Method and system for managing content data |
JP5223480B2 (ja) | 2008-06-13 | 2013-06-26 | 富士通株式会社 | コンテンツ配信方法及び通信端末装置 |
US8938548B2 (en) | 2008-12-23 | 2015-01-20 | At&T Mobility Ii Llc | Streaming enhancements through pre-fetch background |
US20100169303A1 (en) | 2008-12-31 | 2010-07-01 | David Biderman | Playlists for real-time or near real-time streaming |
US9225794B2 (en) * | 2009-03-31 | 2015-12-29 | Google Inc. | Adaptive DNS pre-resolution |
US9326029B2 (en) | 2009-09-03 | 2016-04-26 | Koninklijke Kpn N.V. | Pre-loading follow-up content |
US8392600B2 (en) * | 2009-09-14 | 2013-03-05 | Adobe Systems Incorporated | Dynamic stream switch control |
WO2011044287A1 (en) * | 2009-10-06 | 2011-04-14 | Openwave Systems Inc. | Managing network traffic by editing a manifest file and/or using intermediate flow control |
US9124642B2 (en) | 2009-10-16 | 2015-09-01 | Qualcomm Incorporated | Adaptively streaming multimedia |
CN102714602B (zh) | 2009-12-04 | 2016-03-02 | 清流迅有限公司 | 通过网络传输用来播放的多媒体内容的系统和方法 |
US9355144B2 (en) | 2009-12-10 | 2016-05-31 | Nokia Technologies Oy | Method and apparatus for recycling information fragments in information spaces |
US8850116B2 (en) | 2010-03-10 | 2014-09-30 | Lsi Corporation | Data prefetch for SCSI referrals |
US9137278B2 (en) * | 2010-04-08 | 2015-09-15 | Vasona Networks Inc. | Managing streaming bandwidth for multiple clients |
WO2011139305A1 (en) * | 2010-05-04 | 2011-11-10 | Azuki Systems, Inc. | Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction |
WO2012047064A2 (ko) | 2010-10-07 | 2012-04-12 | 삼성전자 주식회사 | Drm 서비스 제공 방법 및 장치 |
EP2487609A1 (en) | 2011-02-07 | 2012-08-15 | Alcatel Lucent | A cache manager for segmented multimedia and corresponding method for cache management |
US20120254591A1 (en) | 2011-04-01 | 2012-10-04 | Hughes Christopher J | Systems, apparatuses, and methods for stride pattern gathering of data elements and stride pattern scattering of data elements |
WO2012167106A1 (en) * | 2011-06-01 | 2012-12-06 | Interdigital Patent Holdings, Inc. | Content delivery network interconnection (cdni) mechanism |
US9615126B2 (en) | 2011-06-24 | 2017-04-04 | Google Technology Holdings LLC | Intelligent buffering of media streams delivered over internet |
US9026670B2 (en) | 2011-08-22 | 2015-05-05 | Allot Communications Ltd. | System and method for efficient caching and delivery of adaptive bitrate streaming |
US9860604B2 (en) | 2011-11-23 | 2018-01-02 | Oath Inc. | Systems and methods for internet video delivery |
US8806193B2 (en) | 2011-12-22 | 2014-08-12 | Adobe Systems Incorporated | Methods and apparatus for integrating digital rights management (DRM) systems with native HTTP live streaming |
US9401968B2 (en) | 2012-01-20 | 2016-07-26 | Nokia Techologies Oy | Method and apparatus for enabling pre-fetching of media |
US20140089467A1 (en) | 2012-09-27 | 2014-03-27 | Andre Beck | Content stream delivery using pre-loaded segments |
US9612972B2 (en) | 2012-12-03 | 2017-04-04 | Micron Technology, Inc. | Apparatuses and methods for pre-fetching and write-back for a segmented cache memory |
US20160198202A1 (en) | 2012-12-10 | 2016-07-07 | Koninklijke Kpn N.V. | Digital Rights Management for Segmented Content |
CN105379295A (zh) | 2013-07-03 | 2016-03-02 | 皇家Kpn公司 | 分段内容的流送 |
-
2012
- 2012-12-27 US US14/369,994 patent/US10225306B2/en active Active
- 2012-12-27 EP EP12810311.6A patent/EP2798854B1/en active Active
- 2012-12-27 WO PCT/EP2012/076941 patent/WO2013098319A1/en active Application Filing
- 2012-12-27 JP JP2014549463A patent/JP6023213B2/ja active Active
- 2012-12-27 EP EP19157642.0A patent/EP3525474A1/en not_active Withdrawn
- 2012-12-27 CN CN201280070941.1A patent/CN104137564B/zh active Active
-
2016
- 2016-10-06 JP JP2016197799A patent/JP6258432B2/ja active Active
-
2019
- 2019-01-10 US US16/244,881 patent/US20190149589A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100011061A1 (en) * | 2002-04-26 | 2010-01-14 | Hudson Michael D | Centralized selection of peers as media data sources in a dispersed peer network |
US20110231519A1 (en) * | 2006-06-09 | 2011-09-22 | Qualcomm Incorporated | Enhanced block-request streaming using url templates and construction rules |
WO2009075033A1 (ja) * | 2007-12-13 | 2009-06-18 | Fujitsu Limited | パケット通信システム及びパケット通信方法並びにノード及びユーザ端末 |
US20090292819A1 (en) * | 2008-05-23 | 2009-11-26 | Porto Technology, Llc | System and method for adaptive segment prefetching of streaming media |
CN102238179A (zh) * | 2010-04-07 | 2011-11-09 | 苹果公司 | 实时或准实时流传输 |
CN102232298A (zh) * | 2011-04-07 | 2011-11-02 | 华为技术有限公司 | 媒体内容的传输处理方法、装置与系统 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107018431A (zh) * | 2016-01-27 | 2017-08-04 | 上海交通大学 | 一种基于媒体自身属性以支持空间分块的存储与传输机制 |
CN107018431B (zh) * | 2016-01-27 | 2019-07-12 | 上海交通大学 | 一种基于媒体自身属性以支持空间分块的存储与传输方法 |
CN110225371A (zh) * | 2016-01-27 | 2019-09-10 | 上海交通大学 | 一种基于媒体自身属性以支持空间分块的存储与传输方法 |
CN110225371B (zh) * | 2016-01-27 | 2020-11-06 | 上海交通大学 | 一种基于媒体自身属性以支持空间分块的存储与传输方法 |
CN105872598A (zh) * | 2016-04-25 | 2016-08-17 | 乐视控股(北京)有限公司 | 多媒体直播方法及装置 |
CN110140335A (zh) * | 2016-11-10 | 2019-08-16 | 瑞典爱立信有限公司 | 用于改进递送性能的资源分段 |
CN110140335B (zh) * | 2016-11-10 | 2022-08-12 | 瑞典爱立信有限公司 | 用于改进递送性能的资源分段 |
US11558677B2 (en) | 2016-11-10 | 2023-01-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Resource segmentation to improve delivery performance |
US11722752B2 (en) | 2016-11-10 | 2023-08-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Resource segmentation to improve delivery performance |
CN109862438A (zh) * | 2019-02-19 | 2019-06-07 | 普联技术有限公司 | 一种代理转发实时流协议流媒体数据的方法及设备 |
CN109862438B (zh) * | 2019-02-19 | 2021-05-07 | 普联技术有限公司 | 一种代理转发实时流协议流媒体数据的方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
EP3525474A1 (en) | 2019-08-14 |
JP2015508596A (ja) | 2015-03-19 |
US10225306B2 (en) | 2019-03-05 |
US20190149589A1 (en) | 2019-05-16 |
JP6258432B2 (ja) | 2018-01-10 |
US20140359081A1 (en) | 2014-12-04 |
JP6023213B2 (ja) | 2016-11-09 |
JP2017062799A (ja) | 2017-03-30 |
CN104137564B (zh) | 2018-06-12 |
EP2798854A1 (en) | 2014-11-05 |
EP2798854B1 (en) | 2019-08-07 |
WO2013098319A1 (en) | 2013-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104137564A (zh) | 分块内容的受控流送 | |
US10609447B2 (en) | Method of unscrambling television content on a bandwidth | |
EP3446461B1 (en) | Just in time transcoding and packaging in ipv6 networks | |
EP3213222B1 (en) | Content delivery systems and methods | |
KR101617929B1 (ko) | 세그먼트된 콘텐츠를 위치시키고 검색하는 방법 및 시스템 | |
CN115514981A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170906 Address after: Holland Hague Applicant after: KPN N. V. Address before: Holland Hague Applicant before: KPN N. V. Applicant before: Nederlandse Organisatie Voor Toegepast Natuurwetenschappelijk Onderzoek TNO |
|
GR01 | Patent grant | ||
GR01 | Patent grant |