CN107968790B - 自适应流创建和输送中的虚拟化 - Google Patents
自适应流创建和输送中的虚拟化 Download PDFInfo
- Publication number
- CN107968790B CN107968790B CN201711345755.5A CN201711345755A CN107968790B CN 107968790 B CN107968790 B CN 107968790B CN 201711345755 A CN201711345755 A CN 201711345755A CN 107968790 B CN107968790 B CN 107968790B
- Authority
- CN
- China
- Prior art keywords
- content stream
- client
- data structures
- segment
- streaming server
- 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
Links
Images
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
-
- 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/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- 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/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/64322—IP
-
- 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/70—Media network packetisation
-
- 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/6581—Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明的名称是自适应流创建和输送中的虚拟化。本文中描述了通过将内容分段成在随机存取存储器(易失性存储装置)中存储的数据结构而不是将内容分段成在磁盘或数据库(非易失性存储装置)上存储的段文件来创建要输送到一个或更多个客户端的内容流的自适应流传送服务器、方法和系统。
Description
本申请是申请号为201280070100.0、申请日为2012年12月12日、发明名称为“自适应流创建和输送中的虚拟化”的发明专利申请的分案申请。
技术领域
本发明涉及通过将内容分段成在随机存取存储器(易失性存储装置)中存储的数据结构而不是将内容分段成在磁盘或数据库(非易失性存储装置)上存储的段文件来创建要输送到一个或更多个客户端的内容流的自适应流传送服务器、方法和系统。
背景技术
下面的缩略词和术语以此定义,其中的至少一些在有关至少现有技术和/或本发明的以下描述内提及。
CDN 内容分布网络
HLS HTTP直播流传送
HTTP 超文本传送协议
IP 因特网协议
MPEG 运动图像专家组
MRTG 多路由器业务自动记录器
RTP 实时传输协议
RTSP 实时流传送协议
SNMP 简单网络管理协议
易失性存储装置(易失性存储器):是要求功率以保持存储的信息的计算机存储器,不象不要求保持的电源的非易失性存储器。大多数形式的现代随机存取存储器(RAM)是易失性存储装置,包括动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)。内容可寻址存储器和双端口RAM通常使用易失性存储装置实现。
非易失性存储装置(非易失性存储器):是即使不供电也能够保留存储的信息的计算机存储器。非易失性存储器的示例包括只读存储器、闪存、铁电RAM、大多数类型的磁计算机存储装置(例如,硬盘、软盘和磁带)、光盘和诸如纸带和穿孔卡的早期计算机存储方法。
自适应比特率流传送是自适应流传送服务器用于通过一个或更多个网络流传送多媒体到用户装置(例如,计算机、移动通信装置、平板、智能电话)的技术。虽然过去大多数视频流传送技术利用流传送协议,如具有RTSP的RTP,但今天的自适应流传送技术主要基于HTTP,并且设计成通过诸如因特网的大型分布式HTTP网络有效地工作。
HTTP自适应比特率流传送要求自适应流传送服务器具有以不同比特率编码的内容流的多个文件(源视频、多媒体)。自适应流传送服务器然后基于从用户装置收到的请求在流传送内容文件的不同编码之间切换。HTTP流的结果是用户的装置经历极少的缓冲和快速开始时间,因此,用户对高端和低端网络连接均具有良好的体验。如今,存在若干HTTP自适应比特率流传送技术能够由自适应流传送服务器用于通过诸如因特网的网络将多媒体流传送到用户装置。例如,Apple的HTTP直播流(HLS) m3u8文件系统是一个此类HTTP自适应比特率流传送技术,其中,“清单”文件被创建以引用许多视频段,这些视频段实时更新以便以特定顺序播放。其它HTTP自适应比特率流传送技术包括Adobe的Dynamic stream forFlash、Microsoft的Smooth Streaming等。
参照图1A-1D(现有技术),有几个附图用于帮助解释传统系统100能够如何实现HTTP自适应比特率流传送技术。如图1A(现有技术)所示,传统系统100包括内容提供商102(例如,广播网络102a、CDN/内容库102b)、自适应流传送编码器/转码器104、自适应流传送服务器106、网络107(例如,IP网络107、CDN网络107)及客户端108。自适应流传送服务器106接收来自特定客户端108a对源视频110的的请求,并且然后从内容提供商102检索源视频110(步骤1)。在此示例中,广播网络102a具有请求的源视频110,并且提供源视频110到自适应流传送编码器/转码器104。自适应流传送编码器/转码器104采用源视频110,并且(例如)生成相同视频和音频内容的多个文件112a、112b、112c和112d,但文件以不同比特率编码。例如,自适应流传送编码器/转码器104能够输出4M比特率文件112a、2M比特率文件112b、1M比特率文件112c及512K比特率文件112d,这些文件全部通过PTS/DTS 114相互关键帧对齐(参见图1B(现有技术))。因此,4M比特率文件112a具有部分116a,该部分包含与2M比特率文件112b、1M比特率文件112c和512K比特率文件112d的对应部分116b、116c和116d相同的视频和音频内容。然而,4M比特率文件的部分116a具有比2M比特率文件的部分116b更高的质量,而2M比特率文件的部分116b具有比1M比特率文件的部分116c更高的质量,1M比特率文件的部分116c又具有比512K比特率文件的部分116d更高质量。
自适应流传送服务器106包括接收多个文件112a、112b、112c和112d的多播分组第三方保管118和存储多个文件112a、112b、112c和112d的分组第三方保管数据库120(非易失性存储装置)。自适应流传送服务器106包括分段单元122,该单元用于将每个存储的文件112a、112b、112c和112d分段成多个段文件120a1-n、120b1-n、120c1-n和120d1-n(参见图1C(现有技术))。自适应流传送服务器106包括存储段文件120a1-n、120b1-n、120c1-n和120d1-n的段数据库124(非易失性存储装置)。每个段文件120a1-n、120b1-n、120c1-n和120d1-n包含在预确定的持续时间(例如,10秒)内的视频和音频分组。在此示例中,段文件120a1、120b1、120c1和120d1(例如)将与时间代码t1-t2相关联,并且段文件120a4、120b4、120c4和120d4(例如)将与时间代码t4-t5相关联。
自适应流传送服务器106具有HTTP服务器126,该服务器连接段数据库124并且创建主清单文件128,该文件包括子清单文件130a、130b、130c和130d(例如)(参见图1D(现有技术))。每个子清单文件130a、130b、130c和130d分别包括对每个段文件120a1-n、120b1-n、120c1-n和120d1-n的引用132a1-n、132b1-n、132c1-n和132d1-n。HTTP服务器126通过网络107将主清单文件128发送到客户端108a(步骤2)。之后,客户端108a(例如)通过网络107将包括子清单文件的引用之一132a1的请求发送到HTTP服务器126(步骤3)。HTTP服务器126使用请求的引用132a1检索并通过网络107发送对应的段文件120a1到播放段文件120a1的客户端108a(步骤4)。客户端108a(例如)通过网络107将识别子清单文件的引用之一132b2的另一请求发送到HTTP服务器126(步骤3’)。HTTP服务器126使用请求的引用132b2检索并通过网络107发送对应的段文件120b2到重放段文件120b2的客户端108a(步骤4’)。客户端108a继续发送对特定段文件(例如)120a3-n、120b3-n、120c3-n和120d3-n的请求,并且HTTP服务器126将请求的段文件120a3-n、120b3-n、120c3-n和120d3-n发回重放收到的段文件120a3-n、120b3-n、120c3-n和120d3-n的客户端108a(步骤3’’和4’’)。这样,客户端108a能够在经历极少缓冲和快速开始时间的同时重放请求的源视频110,因此,用户对于高端和低端网络连接均具有良好的体验。
实际上,传统自适应流传送服务器106能够接受直播和点播内容流。这些内容流被分成不同质量的可管理段,并且写入存储在磁盘上的文件(示为段数据库124)。客户端108然后能够通过向原始web服务器提出HTTP查询来检索用于视频显示的这些文件。然而,有与当前解决方案有关的几个问题:
·分割(分切)段文件120a1-n、120b1-n、120c1-n和120d1-n的灵活性受到限制。因此,提取段的子集变得相当困难。
·传统自适应服务器106在尝试存储原内容文件和所有其另外的段文件120a1-n、120b1-n、120c1-n和120d1-n时,服务器106要求VOD流的冗余副本。
相应地,需要解决与传统自适应服务器106相关联的这些问题和其它问题。本发明满足了此需要和其它需要。
发明内容
在本申请的独立权利要求中描述了解决上面提及的问题和其它问题的流传送服务器、方法和系统。在本申请的相关权利要求中已描述了流传送服务器、方法和系统的有利实施例。
一方面,本发明提供用于通过网络提供内容流到客户端的流传送服务器。流传送服务器包括服务器、分段单元和随机存取存储器单元。服务器具有配置成接收来自客户端的播放内容流的请求的输入接口。分段单元配置成接收内容流并且将内容流分段成多个数据结构,其中,多个数据结构包含对应于时间代码的指针和对未分段的内容流的引用。随机存取存储器单元配置成存储多个数据结构和指针。服务器还包括:(a)处理单元,配置成生成包括对应于内容流的多个段的多个引用的清单;(b)输出接口,配置成将清单发送到客户端;(c)输入接口配置成接收来自客户端的获取对应于内容流的片段之一的请求;(d)处理单元配置成从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节,其中,处理单元使用与请求的片段相关联的开始时间和停止时间,并且计算与多个数据结构相关联的对应指针以从与请求的片段相关联的一个或更多个数据结构查找字节;以及(e)输出接口配置成将与请求的片段相关联的字节发送到客户端。流传送服务器的优点是能够推迟分段直至必需播放内容流。
在仍有的另一方面,本发明提供由流传送服务器实现的用于通过网络提供内容流到客户端的方法。方法包括以下步骤:(a)接收来自客户端播放内容流的请求;(b)接收内容流;(c)将内容流分段成多个数据结构,其中,多个数据结构包含对应于时间代码的指针和对未分段的内容流的引用;(d)在随机存取存储器单元中存储多个数据结构和指针;(e)生成包括对应于内容流的多个片段的多个引用的清单;(f)将清单发送到客户端;(g)接收来自客户端的获取对应于内容流的片段之一的请求;(h)通过使用与请求的片段相关联的开始时间和停止时间并且计算与多个数据结构相关联的对应指针以从与请求的片段相关联的一个或更多个数据结构查找字节,从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节;以及(i)将与请求的片段相关联的字节发送到客户端。方法的优点是能够推迟分段,直至必需播放内容流。
在还有的另一方面,本发明提供用于通过网络提供内容流到客户端的系统。系统包括内容提供商和通过网络与客户端对接的流传送服务器。流传送服务器配置成:(a)接收来自客户端播放内容流的请求;(b)接收来自内容提供商的内容流;(c)将内容流分段成多个数据结构,其中,多个数据结构包含对应于时间代码的指针和对未分段的内容流的引用;(d)生成包括对应于内容流的多个片段的多个引用的清单;(e)将清单发送到客户端;(f)接收来自客户端的获取对应于内容流的片段之一的请求;(g)通过使用与请求的片段相关联的开始时间和停止时间及与多个数据结构相关联的指针以从与请求的片段相关联的一个或更多个数据结构查找字节,从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节;以及(h)将与请求的片段相关联的字节发送到客户端。流传送服务器的优点是能够推迟分段,直至必需播放内容流。
在还有的另一方面,本发明提供一种流传送服务器,包括:处理单元;随机存取存储器单元,其耦合到处理单元;以及其中流传送服务器配置成接收播放内容流的请求、接收内容流、将内容流分段成多个数据结构而不是分段成多个段文件以及将多个数据结构存储在随机存取存储器单元中。
在还有的另一方面,本发明提供一种流传送服务器中的方法,方法包括:接收播放内容流的请求;接收内容流;将内容流分段成多个数据结构而不是分段成多个段文件;以及将多个数据结构存储在随机存取存储器单元中。
在还有的另一方面,本发明提供一种用于通过网络提供内容流到客户端的流传送服务器,流传送服务器包括:包括输入接口的超文本传输协议(HTTP)服务器,在输入接口处接收来自客户端的播放内容流的请求;分段单元,配置成接收内容流并且将内容流分段成多个数据结构而不是分段成多个段文件,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;随机存取存储器单元,配置成存储多个数据结构;HTTP服务器还包括:处理单元,配置成生成包括对应于内容流的多个片段的多个引用的清单;输出接口,从输出接口将清单发送到客户端;输入接口,在输入接口处接收来自客户端的获取对应于内容流的片段之一的请求;处理单元,配置成从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节,其中处理单元配置成使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节;以及输出接口,从输出接口处将与请求的片段相关联的字节发送到客户端。
在还有的另一方面,本发明提供一种用于通过网络提供内容流到客户端的流传送服务器,流传送服务器包括:包括输入接口的超文本传输协议(HTTP)服务器,在输入接口处接收来自客户端的播放内容流的请求;分段单元,配置成接收内容流并且将内容流分段成多个数据结构,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;随机存取存储器单元,配置成存储多个数据结构;HTTP服务器还包括:处理单元,配置成生成包括对应于内容流的多个片段的多个引用的清单;输出接口,从输出接口处将清单发送到客户端;输入接口,在输入接口处接收来自客户端的获取对应于内容流的片段之一的请求;处理单元,配置成从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节,其中处理单元配置成使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节,其中处理单元配置成在从与请求的片段相关联的一个或更多个数据结构查找字节时执行内插操作;以及输出接口,从输出接口处将与请求的片段相关联的字节发送到客户端。
在还有的另一方面,本发明提供一种用于通过网络提供内容流到客户端的流传送服务器,流传送服务器包括:包括输入接口的超文本传输协议(HTTP)服务器,在输入接口处接收来自客户端的播放内容流的请求;分段单元,配置成接收内容流并且将内容流分段成多个数据结构,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;随机存取存储器单元,配置成存储多个数据结构;HTTP服务器还包括:处理单元,配置成生成包括对应于内容流的多个片段的多个引用的清单;输出接口,从输出接口处将清单发送到客户端,其中HTTP服务器配置成在分段单元完成将内容流分段成多个数据结构之前将清单发送到客户端;输入接口,在输入接口处接收来自客户端的获取对应于内容流的片段之一的请求;处理单元,配置成从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节,其中处理单元使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节;以及输出接口,从输出接口处将与请求的片段相关联的字节发送到客户端。
在还有的另一方面,本发明提供一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,方法包括:接收来自客户端的播放内容流的请求;接收内容流;将内容流分段成多个数据结构而不是分段成多个段文件,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;在随机存取存储器单元中存储多个数据结构;生成包括对应于内容流的多个片段的多个引用的清单;将清单发送到客户端;接收来自客户端的获取对应于内容流的片段之一的请求;通过以下操作从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节:使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节;以及将与请求的片段相关联的字节发送到客户端。
在还有的另一方面,本发明提供一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,方法包括:接收来自客户端的播放内容流的请求;接收内容流;将内容流分段成多个数据结构,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;在随机存取存储器单元中存储多个数据结构;生成包括对应于内容流的多个片段的多个引用的清单;将清单发送到客户端;接收来自客户端的获取对应于内容流的片段之一的请求;通过以下操作从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节:使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节,其中获得步骤还包括在从与请求的片段相关联的一个或更多个数据结构查找字节时的内插步骤;以及将与请求的片段相关联的字节发送到客户端。
在还有的另一方面,本发明提供一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,方法包括:接收来自客户端的播放内容流的请求;接收内容流;将内容流分段成多个数据结构,其中多个数据结构包含(1)对内容流的引用和(2)对应于内容流的时间代码的指针;在随机存取存储器单元中存储多个数据结构;生成包括对应于内容流的多个片段的多个引用的清单;将清单发送到客户端,其中在完成将内容流分段成多个数据结构之前将清单发送到客户端;接收来自客户端的获取对应于内容流的片段之一的请求;通过以下操作从随机存取存储器单元中存储的数据结构获得与请求的片段相关联的字节:使用与请求的片段相关联的时间代码以从与请求的片段相关联的一个或更多个数据结构查找字节;以及将与请求的片段相关联的字节发送到客户端。
本发明的另外方面将部分地在随附的详细描述、附图和任何权利要求中陈述,并且部分地可从详细描述中得出,或者能通过本发明的实践而了解。要理解的是,前面的一般描述和下面的详细描述均只是示范和说明性,并不是限制本发明为公开的内容。
附图说明
结合附图,参照下面详细的说明,可获得本发明的更完整理解:
图1A-1D(现有技术)是用于帮助解释传统系统能够如何通过网络提供内容流到客户端的几个图;
图2是根据本发明的一实施例,配置成通过网络提供内容流到客户端的示范系统的图;
图3是示出根据本发明的一实施例,由自适应流传送服务器为通过网络提供内容流到客户端实现的示范方法的步骤的流程图;
图4是根据本发明的一实施例,用于帮助解释自适应流传送服务器能够将内容流分段成数据结构(虚拟文件)的一种方式的图;
图5A-5B是根据本发明的一实施例,用于帮助解释自适应流传送服务器能够将视频分段以放置到数据结构中的一种方式及它能够如何进一步扫描到内容流中以确保对应音频分组也包含在正确数据结构中使得音频和视频时戳在内容流中均匹配的图;
图6是根据本发明的一实施例,包括配置成接收直播内容流并且然后经IP网络适应性地输送直播内容流到一个或更多个客户端的自适应流传送服务器的示范系统的图;以及
图7是根据本发明的另一实施例,包括配置成接收点播内容流并且然后经IP网络适应性地输送点播内容流到一个或更多个客户端的自适应流传送服务器的示范系统的图。
具体实施方式
参照图2,有根据本发明的一实施例,配置成通过网络208提供内容流203到客户端202的示范系统200的图。系统200包括内容提供商204和流传送服务器206。内容提供商204连接流传送服务器206,而流传送服务器206又通过网络208(例如,IP网络208、CDN网络208、无线网络208或其任何组合)与客户端202(只示出一个)连接。备选地,内容提供商204可通过网络208连接到流传送服务器206。流传送服务器206包括分段单元210、随机存取存储器211(易失性存储装置211)和服务器212(例如,HTTP服务器212)。
服务器212还包括输入接口216、处理单元218和输出接口220。在此示例中,处理单元218包括执行在存储器(例如,非易失性存储器)中存储的过程可执行指令以实现下述操作的处理器。输入接口216配置成接收来自客户端202的播放内容流203的请求(步骤1)。分段单元210配置成接收内容流203的一个文件或内容流203的多个文件,其中,多个文件以不同比特率编码(步骤2)。例如,内容提供商204(例如,CDN内容库204)可提供内容流203的文件或多个文件(参见图7)。或者,内容提供商204(例如,广播网络204a)可提供内容流203的单个文件到自适应流传送友好的编码器/转码器,编码器/转码器然后生成内容流203的文件或多个文件,并且提供文件或多个文件到分段单元210(参见图6)。
分段单元210还配置成将文件或多个文件的每个文件分段成多个数据结构(不是段文件),数据结构包含对应于时间代码的指针和对未分段的内容流的引用(步骤3)。随机存取存储器211(易失性存储器)配置成存储内容流203的文件或多个文件的数据结构(步骤4)。处理单元218配置成如果有内容流203的一个文件,则生成清单,或者如果有内容流203的多个文件,则生成主清单(步骤5)。清单或主清单将存储在随机存取存储器单元211。在一个示例中,清单包括对应于内容流203的片段(例如,10秒片段)的引用(例如,URL)。在另一示例中,主清单包括多个子清单(例如,子清单)(步骤5)。例如,第一子清单具有对应于具有内容流203的第一比特率的片段(例如,10秒片段)的引用(例如,URL),第二子清单具有对应于具有内容流203的第二比特率的片段(例如,10秒片段)的引用(例如,URL)等等,其中,第一比特率比第二比特率更高等等。输出接口220配置成将清单或主清单发送到客户端202(步骤6)。输入接口216配置成接收来自客户端202的获取对应于内容流203的片段的一个特定片段的请求(步骤7)。处理单元218配置成从在随机存取存储器单元211中存储的数据结构获得与请求的片段相关联的字节。例如,处理单元218使用与请求的片段相关联的开始时间和停止时间,并且计算与数据结构相关联的对应指针以从与请求的片段相关联的一个或更多个数据结构查找字节(步骤8)。处理单元218在从与请求的片段相关联的一个或更多个数据结构查找字节时,配置成如果需要获得请求的片段的字节,则执行内插。输出接口220配置成将请求的片段发送到客户端202(步骤9)。之后,步骤7-9将重复进行,因此,客户端202能够获得和重放内容流203。
参照图3,图中示出根据本发明的一实施例,由流传送服务器206实现的通过网络208提供内容流203到客户端202的示范方法300的步骤的流程图。在步骤302,流传送服务器206接收来自客户端202的播放内容流203的请求。在步骤304,流传送服务器206接收内容流203的一个文件或多个文件,其中,多个文件以不同比特率编码。在步骤306,流传送服务器206将文件或多个文件的每个文件分段成多个数据结构(不是段文件),数据结构包含对应于时间代码的指针和对未分段的内容流的引用。在步骤308,流传送服务器206在随机存取存储器211中存储数据结构。在步骤310,流传送服务器206生成清单(如果使用内容流203的一个文件)或主清单(如果使用具有内容流203的不同编码率的多个文件)。在步骤312,流传送服务器206将清单或主清单发送到客户端202。在步骤314,流传送服务器206接收来自客户端203的获取对应于内容流203的片段的一个特定片段的请求。在步骤316,流传送服务器206从随机存取存储器单元211中存储的数据结构获得与请求的片段相关联的字节。例如,流传送服务器206使用与请求的片段相关联的开始时间和停止时间并且计算与多个数据结构相关联的对应指针以从与请求的片段相关联的一个或更多个数据结构查找字节。流传送服务器206在从与请求的片段相关联的一个或更多个数据结构查找字节时,配置成如果需要获得请求的片段的字节,则执行内插。在步骤318,流传送服务器206将请求的片段发送到客户端202。之后,步骤314、316和318将重复进行,因此,客户端202能够获得和重放内容流203。
因此,根据本发明的一实施例的流传送服务器206通过实现以下操作解决现有技术的上面提及的问题:
1.仅在客户端需要VOD和多节目直播传输流时,才应解析它们以实现单节目自适应传输流传送。然后,流传送服务器206在创建自适应流中只需要要求内容拆分成存储在随机存取存储器211(易失性存储装置)中的数据结构而不是将内容拆分成在磁盘(非易失性存储装置)上存储的本地分段文件。这些数据结构将可用于客户端202作为文件流检索。
2.解析流时,流传送服务器206创建清单或主清单,清单或主清单包含到流被拆分成的数据结构的虚拟指针集。这允许客户端202以在任何传统自适应流传送系统的情况下它将使用的相同的方式播放内容流203,但内容流203将由于数据结构原因而更快可用,并且客户端202不需要知道流传送服务器206中内容的数据的存储格式和管理。
用于示范数据结构的数据集如下所述:
public class SimplePacketSpan
extends AbstractPacketSpan
{private final long s0; // 段开始时间
private final long e0; // 段结束时间
OneFileStore enclosing; // 分组数据库
}
public class OneFileStore
{private long end; // 分组数据库结束时间
private long start; // 分组数据库开始时间
protected TransportPacketBag bag; //磁盘上存储的分组的引用
protected PCRSlope slope; // “对象”(算法+数据)允许从时间映射到盘上的对应分组。示范实现使用线性内插
}
下面关于图4-6提供流传送服务器206能够实现上面提及的方法300的几个示范方式的详细讨论。
参照图4,图中示出根据本发明的一实施例,流传送服务器206(例如,自适应流传送服务器206)能够如何将内容流203分段成数据结构402、404和406(虚拟文件)的一种方式的图。具体而言,此图示出以下内容:
1.表示数据结构402、404和406的随机存取存储器211的快照,这些数据结构组成自适应流传送服务器206已分段的内容流203的不同质量。
2.每个字母数字组合(P1、P2…P15、Q1、Q2…Q15、N1、N2…N15)引用内容流203中段边界的特定指针412
3.自适应流传送服务器206能够使用线性引导数据馈送以将内容流206分段(分切)以获得引用节目的数据结构的子集402、404和406。
参照图5A-5B,附图示出有关流传送服务器206(例如,自适应流传送服务器206)能够将视频分段以放置到数据结构402、404和406(参见字母数字A)中的方式及它能够如何进一步扫描到内容流203中以确保对应音频分组也包含在正确数据结构402、404和406中,使得音频和视频时戳在内容流203(参见字母数字B)中均匹配。在内容流203被输送到客户端202时,这提供了与最新技术发展水平相比时在一部分时间中在内容流203中任意处剪切新虚拟段和子集的灵活性。例如,如果期望,能够使用自适应流传送服务器206组合任何两个不同编码视频文件的部分,如组合广告到内容流中。另外,图示出自适应流传送服务器206能够如何生成主清单502(参见字母数字C)。主清单包括多个子清单504a、504b…504n(例如,子清单504a、504b…504n)。例如,第一子清单504a具有多个引用506a(例如,URL),引用506a对应于具有内容流203的第一比特率的片段(例如,10秒片段)。第二子清单504b具有引用506b(例如,URL),引用506b对应于具有内容流203的第二比特率的片段(例如,10秒片段)。第n子清单504n具有引用506n(例如,URL),引用506n对应于具有内容流203的第n比特率的片段(例如,10秒片段)。第一比特率高于第二比特率,第二比特率高于第n比特率。
参照图6,图中示出根据本发明的一实施例,包括配置成接收直播内容流203并且然后经IP网络208适应性地输送直播内容流203到一个或更多个客户端202的流传送服务器206(例如,自适应流传送服务器206)的示范系统600的图。自适应流传送服务器206配置成通过将直播内容流203分段成在随机存取存储器211(易失性存储装置211)中存储的数据结构而不是将直播内容流203分段成在磁盘上或数据库(非易失性存储装置)内存储的段文件来创建要输送到一个或更多个客户端202的直播内容流203。在此示例中,自适应流传送服务器206包括多播分组第三方保管610、可配置长度非易失性存储器分组第三方保管612(其存储内容流203)、分段单元210、服务器212及随机存取存储器211。在广播重新启动时移电视(TSTV)环境中实现自适应流传送的示范系统600包括以下组件:
自适应流传送客户端202:个人计算机、移动电话/平板、具http能力的电视等。
自适应流传送友好的编码器/转码器602 – 确保自适应流传送服务器206接收为输入的任何内容流203将处在可管理格式。
自适应流传送服务器206 – 处理将内容流203分段成数据结构并且产生用于自适应流传送客户端202的流(参见图2和3)。虽然在本文中描述自适应流传送服务器206,但应领会的是,本发明也包括作用于只具有单个比特率的流的流传送服务器。
CDN或内容库604 – 内容分布网络或存储系统,其中,在从不同摄取入口收到内容流203后能够将其存入库中。
示范系统600可包括许多其它熟知的组件,但为清晰起见,这些熟知的组件在本文中未描述,而与本发明相关的组件202、206、602、604、606已在本文中描述。示范系统600配置成根据以下步骤提供完成的直播自适应内容流203到一个或更多个请求客户端202(只示出三个):
1.自适应流传送客户端202具有对信道编排和引导数据列表608的接入以找出当前可用的节目(内容流203)。
2.自适应流传送客户端202定位要观看的节目(内容流203),并且向自适应流传送服务器206提出播放广播直播或TSTV节目(内容流203)的请求。应注意的是,VOD流具有开始和结束,而广播流具有开始并且然后随时间增长。
3.自适应流传送服务器206也具有对信道编排和引导数据列表608的接入。自适应流传送服务器206使用此信息定位请求的内容流203。
4.在此情况下,请求的关键帧对齐的内容流203以多节目传输流格式从广播网络606到达广播馈送。备选地,CDN 604能够包含请求的内容流203。
5.自适应流传送友好的编码器/转码器602根据要求重新格式化来自广播网络606的内容流203,并且将重新格式化的内容流203作为输入提供到自适应流传送服务器206。适应的流传送服务器206在接收适当格式化的内容流203时将内容流203分段以创建在随机存取存储器中存储的数据结构集。如果内容流203处在多节目传输流格式,则自适应流传送服务器206将每个内容流(具有相同内容但具有不同比特率)解复用成单节目传输流格式的其自己的数据结构集。
6.自适应流传送服务器206将引用内容流203的片段的主清单发送到客户端202。主清单能够对每客户端202是独特的,并且是自适应流传送服务器206能够基于需要创建的内容流203的片段的引用集。
7.内容流203本身作为分段文件集被输送到客户端,然而主清单引用的数据结构用于完成此操作。换而言之,输送内容流203不以传统方式要求来自磁盘或数据库(非易失性存储装置)的静态段文件。
参照图7,图中根据本发明的另一实施例的示范系统700的图包括配置成接收点播内容流203并且然后经IP网络208适应性地输送点播内容流203到一个或更多个客户端202的流传送服务器206(例如,自适应流传送服务器206)。自适应流传送服务器206配置成通过将点播内容流203分段成在随机存取存储器211(易失性存储装置211)中存储的数据结构而不是将点播内容流203分段成在磁盘上或数据库(非易失性存储装置)内存储的段文件来创建要输送到一个或更多个客户端203的点播内容流203。在此示例中,自适应流传送服务器206包括分段单元210、服务器212和随机存取存储器211。在视频点播环境中实现自适应流传送的示范系统700包括以下组件:
自适应流传送客户端202:个人计算机、移动电话/平板、具http能力的电视等。
自适应流传送服务器206 – 处理将内容流203分段成数据结构并且产生用于自适应流传送客户端202的流(参见图2和3)。虽然在本文中描述自适应流传送服务器206,但应领会的是,本发明也包括作用于只具有单个比特率的流的流传送服务器。
CDN或内容库604 – 内容分布网络或存储系统,其中,在从不同摄取入口收到内容流203后能够将其存入库中。
VOD内容203 – 多个关键帧对齐的视频/音频流203。应注意的是,VOD流具有开始和结束,而广播流具有开始并且然后随时间增长。
示范系统700可包括许多其它熟知的组件,但为清晰起见,这些熟知的组件在本文中未描述,同时与本发明相关的组件202、206、602的604已在本文中描述。示范系统700配置成根据以下步骤提供完成的点播自适应内容流203到一个或更多个请求客户端202(只示出三个):
1.自适应流传送客户端202向自适应流传送服务器206提出播放VOD资产(点播内容流203)的请求。
2.自适应流传送服务器206从CDN 604检索请求的关键帧对齐的VOD内容流203,并且将检索的内容流203分段,创建要发送到客户端202的数据结构集。
3.自适应流传送服务器206将引用内容流203的片段的清单发送到客户端202。清单能够对每客户端202是独特的,并且是自适应流传送服务器206现在创建的内容流203中位置的指针集。
4.内容流203本身作为分段文件集被输送到客户端,然而清单引用的数据结构用于完成此操作。换而言之,输送内容流203不以传统方式要求来自盘或数据库(非易失性存储装置)的静态段文件。
鉴于以上所述,应领会的是,配置成输送来自管理的数据结构而不是静态文件的自适应内容流203的自适应流传送服务器206具有许多优点(例如)。
·现在,内容流203在其分段由分段单元210完成前能够变得可用于客户端202。这在处理直播内容流203时提供了向客户端203的更快服务输送。
·自适应流传送服务器206能够快速更改段边界并且为客户端202提取内容流203的子集而不必创建新文件。能够重定义段边界大幅增强了自适应流传送服务器206能够如何管理其内容。它也使自适应流传送服务器206更易于将广告或备选流插入内容流203中。
·仅在必需播放内容流203时才进行流分段。这在自适应流传送服务器206上是巨大的空间消耗节省。
·传统自适应流传送服务器在分割(分切)段文件方面灵活性有限,这使得提取段的子集变得困难。自适应流传送服务器206通过包括能够按需在任何边界将文件分段的逻辑解决了此问题。此逻辑用于每个段,并且不是特殊情况。
·服务器尝试存储原内容文件并且所有其另外的段文件时,传统自适应服务器要求VOD流的冗余副本。自适应流传送服务器206通过按需计算段而不是在文件中存储段来解决此问题。
虽然附图中示出且在上面的具体实施方式中描述了本发明的多个实施例,但应理解的是,本发明并不限于公开的实施例,而是在不脱离随附权利要求内陈述和定义的本发明的情况下,也能够进行多种重新布置、修改和替代。
Claims (14)
1.一种流传送服务器,包括:
处理单元;
随机存取存储器单元,所述随机存取存储器单元耦合到所述处理单元;以及
其中所述流传送服务器配置成接收播放内容流的请求、接收所述内容流、将所述内容流分段成多个数据结构而不是分段成多个段文件以及将所述多个数据结构存储在所述随机存取存储器单元中,
其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针,以及
其中所述流传送服务器配置成仅在接收到播放所述内容流的所述请求时将所述内容流分段成所述多个数据结构。
2.如权利要求1所述的流传送服务器,其中所述内容流是单节目传输流、多节目传输流、视频点播内容流或直播内容流之一。
3.一种在流传送服务器中的方法,所述方法包括:
接收播放内容流的请求;
接收所述内容流;
将所述内容流分段成多个数据结构而不是分段成多个段文件;以及
将所述多个数据结构存储在随机存取存储器单元中,
其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针,以及
其中仅在接收到播放所述内容流的所述请求时将所述内容流分段成所述多个数据结构。
4.如权利要求3所述的方法,其中所述内容流是单节目传输流、多节目传输流、视频点播内容流或直播内容流之一。
5.一种用于通过网络提供内容流到客户端的流传送服务器,所述流传送服务器包括:
包括输入接口的超文本传输协议HTTP服务器,在所述输入接口处接收来自所述客户端的播放所述内容流的请求;
分段单元,配置成接收所述内容流并且将所述内容流分段成多个数据结构而不是分段成多个段文件,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
随机存取存储器单元,配置成存储所述多个数据结构;
所述HTTP服务器还包括:
处理单元,配置成生成包括对应于所述内容流的多个片段的多个引用的清单;
输出接口,从所述输出接口处将所述清单发送到所述客户端;
所述输入接口,在所述输入接口处接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
所述处理单元,配置成从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节,其中所述处理单元配置成使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节;以及
所述输出接口,从所述输出接口处将与所述请求的片段相关联的所述字节发送到所述客户端。
6.如权利要求5所述的流传送服务器,其中所述分段单元配置成仅在接收到来自所述客户端的播放所述内容流的所述请求时将所述内容流分段成所述多个数据结构。
7.如权利要求5所述的流传送服务器,其中:
所述客户端是能够自适应流传送的客户端;以及
所述内容流是单节目传输流、多节目传输流、视频点播内容流或直播内容流之一。
8.一种用于通过网络提供内容流到客户端的流传送服务器,所述流传送服务器包括:
包括输入接口的超文本传输协议HTTP服务器,在所述输入接口处接收来自所述客户端的播放所述内容流的请求;
分段单元,配置成接收所述内容流并且将所述内容流分段成多个数据结构,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
随机存取存储器单元,配置成存储所述多个数据结构;
所述HTTP服务器还包括:
处理单元,配置成生成包括对应于所述内容流的多个片段的多个引用的清单;
输出接口,从所述输出接口处将所述清单发送到所述客户端;
所述输入接口,在所述输入接口处接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
所述处理单元,配置成从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节,其中所述处理单元配置成使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节,其中所述处理单元配置成在从与所述请求的片段相关联的所述一个或更多个数据结构查找所述字节时执行内插操作;以及
所述输出接口,从所述输出接口处将与所述请求的片段相关联的所述字节发送到所述客户端。
9.一种用于通过网络提供内容流到客户端的流传送服务器,所述流传送服务器包括:
包括输入接口的超文本传输协议HTTP服务器,在所述输入接口处接收来自所述客户端的播放所述内容流的请求;
分段单元,配置成接收所述内容流并且将所述内容流分段成多个数据结构,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
随机存取存储器单元,配置成存储所述多个数据结构;
所述HTTP服务器还包括:
处理单元,配置成生成包括对应于所述内容流的多个片段的多个引用的清单;
输出接口,从所述输出接口处将所述清单发送到所述客户端,其中所述HTTP服务器配置成在所述分段单元完成将所述内容流分段成所述多个数据结构之前将所述清单发送到所述客户端;
所述输入接口,在所述输入接口处接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
所述处理单元,配置成从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节,其中所述处理单元使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节;以及
所述输出接口,从所述输出接口处将与所述请求的片段相关联的所述字节发送到所述客户端。
10.一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,所述方法包括:
接收来自所述客户端的播放所述内容流的请求;
接收所述内容流;
将所述内容流分段成多个数据结构而不是分段成多个段文件,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
在随机存取存储器单元中存储所述多个数据结构;
生成包括对应于所述内容流的多个片段的多个引用的清单;
将所述清单发送到所述客户端;
接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
通过以下操作从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节:使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节;以及
将与所述请求的片段相关联的所述字节发送到所述客户端。
11.如权利要求10所述的方法,其中仅在接收到来自所述客户端的播放所述内容流的所述请求时执行所述分段操作。
12.如权利要求10所述的方法,其中:
所述客户端是能够自适应流传送的客户端;以及
所述内容流是单节目传输流、多节目传输流、视频点播内容流或直播内容流之一。
13.一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,所述方法包括:
接收来自所述客户端的播放所述内容流的请求;
接收所述内容流;
将所述内容流分段成多个数据结构,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
在随机存取存储器单元中存储所述多个数据结构;
生成包括对应于所述内容流的多个片段的多个引用的清单;
将所述清单发送到所述客户端;
接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
通过以下操作从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节:使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节,其中所述获得步骤还包括在从与所述请求的片段相关联的所述一个或更多个数据结构查找所述字节时的内插步骤;以及
将与所述请求的片段相关联的所述字节发送到所述客户端。
14.一种在流传送服务器中的用于通过网络提供内容流到客户端的方法,所述方法包括:
接收来自所述客户端的播放所述内容流的请求;
接收所述内容流;
将所述内容流分段成多个数据结构,其中所述多个数据结构包含(1)对所述内容流的引用和(2)对应于所述内容流的时间代码的指针;
在随机存取存储器单元中存储所述多个数据结构;
生成包括对应于所述内容流的多个片段的多个引用的清单;
将所述清单发送到所述客户端,其中在完成所述将所述内容流分段成所述多个数据结构之前将所述清单发送到所述客户端;
接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
通过以下操作从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节:使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节;以及
将与所述请求的片段相关联的所述字节发送到所述客户端。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/329443 | 2011-12-19 | ||
US13/329,443 US8762452B2 (en) | 2011-12-19 | 2011-12-19 | Virtualization in adaptive stream creation and delivery |
CN201280070100.0A CN104126175B (zh) | 2011-12-19 | 2012-12-12 | 自适应流创建和输送中的虚拟化 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280070100.0A Division CN104126175B (zh) | 2011-12-19 | 2012-12-12 | 自适应流创建和输送中的虚拟化 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107968790A CN107968790A (zh) | 2018-04-27 |
CN107968790B true CN107968790B (zh) | 2021-10-29 |
Family
ID=48611300
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711345755.5A Active CN107968790B (zh) | 2011-12-19 | 2012-12-12 | 自适应流创建和输送中的虚拟化 |
CN201280070100.0A Active CN104126175B (zh) | 2011-12-19 | 2012-12-12 | 自适应流创建和输送中的虚拟化 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280070100.0A Active CN104126175B (zh) | 2011-12-19 | 2012-12-12 | 自适应流创建和输送中的虚拟化 |
Country Status (6)
Country | Link |
---|---|
US (3) | US8762452B2 (zh) |
EP (1) | EP2795467B1 (zh) |
CN (2) | CN107968790B (zh) |
BR (1) | BR112014014955A2 (zh) |
TW (1) | TWI575950B (zh) |
WO (1) | WO2013093725A1 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9177264B2 (en) | 2009-03-06 | 2015-11-03 | Chiaramail, Corp. | Managing message categories in a network |
US9515904B2 (en) * | 2011-06-21 | 2016-12-06 | The Nielsen Company (Us), Llc | Monitoring streaming media content |
US9674247B1 (en) * | 2012-06-21 | 2017-06-06 | Google Inc. | Generating manifest files for digital media items |
WO2014015110A1 (en) | 2012-07-18 | 2014-01-23 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution |
US9804668B2 (en) * | 2012-07-18 | 2017-10-31 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
CN104737514B (zh) * | 2012-10-23 | 2018-08-17 | 瑞典爱立信有限公司 | 用于分布媒体内容服务的方法和设备 |
US9357239B2 (en) | 2012-11-16 | 2016-05-31 | Adobe Systems Incorporated | Converting live streaming content to video-on-demand streaming content |
US9325945B2 (en) * | 2012-11-21 | 2016-04-26 | Morega Systems Inc. | Video server and client with custom key exchange and methods for use therewith |
US10142390B2 (en) * | 2013-02-15 | 2018-11-27 | Nec Corporation | Method and system for providing content in content delivery networks |
US9445141B2 (en) * | 2013-03-06 | 2016-09-13 | Disney Enterprises, Inc. | Efficient re-use of a media asset |
US8949912B2 (en) * | 2013-03-12 | 2015-02-03 | Centurylink Intellectual Property Llc | ABR live to VOD system and method |
US9215080B2 (en) * | 2013-05-31 | 2015-12-15 | Broadcom Corporation | Adaptive bit rate distribution of multicast streams |
US20150180845A1 (en) * | 2013-12-19 | 2015-06-25 | Robert Uomini | Electronic mail system and methods |
US9794604B2 (en) * | 2014-11-14 | 2017-10-17 | Panopto, Inc. | Systems and methods for transmitting segment-quality units of a streaming video session |
US9407968B2 (en) * | 2014-12-22 | 2016-08-02 | Verizon Patent And Licensing Inc. | Multicast and unicast adaptive bitrate services |
FR3031862B1 (fr) * | 2015-01-16 | 2017-02-17 | Sagemcom Broadband Sas | Procede de transmission d'un flux de donnees utilisant un protocole de diffusion en direct. |
US20170054780A1 (en) * | 2015-03-24 | 2017-02-23 | ART19, Inc. | Real-time file generation and delivery |
US10476926B2 (en) | 2015-06-12 | 2019-11-12 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for managing ABR bitrate delivery responsive to video buffer characteristics of a client |
US9954930B2 (en) * | 2015-08-06 | 2018-04-24 | Airwatch Llc | Generating content fragments for content distribution |
US10349104B2 (en) | 2015-08-19 | 2019-07-09 | Ericsson Ab | System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics |
US20170055007A1 (en) * | 2015-08-19 | 2017-02-23 | Ericsson Ab | System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics |
US10009642B2 (en) | 2016-03-24 | 2018-06-26 | Comcast Cable Communications Management, Llc | Systems and methods for advertising continuity |
CN110036607B (zh) * | 2016-12-16 | 2022-03-08 | 瑞典爱立信有限公司 | 用于在内容分发网络中动态汇集资源的方法和请求路由器 |
US10965966B1 (en) * | 2018-07-17 | 2021-03-30 | Amazon Technologies, Inc. | Dynamic content insertion |
US10728180B2 (en) * | 2018-08-21 | 2020-07-28 | At&T Intellectual Property I, L.P. | Apparatus, storage medium and method for adaptive bitrate streaming adaptation of variable bitrate encodings |
US11792472B2 (en) * | 2019-09-18 | 2023-10-17 | Wayne Fueling Systems Llc | Schedule-based uninterrupted buffering and streaming |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002041570A (ja) * | 2000-07-26 | 2002-02-08 | Sumitomo Metal Ind Ltd | データベースシステム及びサーバ装置 |
CN101184021A (zh) * | 2007-12-14 | 2008-05-21 | 华为技术有限公司 | 一种实现流媒体缓存置换的方法、设备及系统 |
CN101242520A (zh) * | 2007-01-12 | 2008-08-13 | 博路技术有限公司 | 数据分发及缓冲 |
CN101809962A (zh) * | 2007-09-25 | 2010-08-18 | 爱立信电话股份有限公司 | 与媒体结构有关的方法和装置 |
WO2011044285A2 (en) * | 2009-10-06 | 2011-04-14 | Microsoft Corporation | Low latency cacheable media streaming |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU580769B2 (en) * | 1984-05-05 | 1989-02-02 | British Encryption Technology Limited | Communications system |
US5933603A (en) * | 1995-10-27 | 1999-08-03 | Emc Corporation | Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location |
US6480667B1 (en) * | 1997-12-23 | 2002-11-12 | Intel Corporation | Method of time shifting to simultaneously record and play a data stream |
US6956593B1 (en) | 1998-09-15 | 2005-10-18 | Microsoft Corporation | User interface for creating, viewing and temporally positioning annotations for media content |
US6418473B1 (en) * | 1999-05-20 | 2002-07-09 | Nortel Networks Limited | Multimedia clent and server |
US7237123B2 (en) | 2000-09-22 | 2007-06-26 | Ecd Systems, Inc. | Systems and methods for preventing unauthorized use of digital content |
US7237033B2 (en) * | 2001-04-30 | 2007-06-26 | Aol Llc | Duplicating switch for streaming data units to a terminal |
EP1276323A1 (en) | 2001-07-13 | 2003-01-15 | France Telecom | Method for broadcasting multimedia signals towards a plurality of terminals |
JP2006526204A (ja) | 2003-03-13 | 2006-11-16 | ディーアールエム テクノロジーズ、エルエルシー | セキュアストリーミングコンテナ |
US7941554B2 (en) * | 2003-08-01 | 2011-05-10 | Microsoft Corporation | Sparse caching for streaming media |
US20050210394A1 (en) * | 2004-03-16 | 2005-09-22 | Crandall Evan S | Method for providing concurrent audio-video and audio instant messaging sessions |
US7664109B2 (en) | 2004-09-03 | 2010-02-16 | Microsoft Corporation | System and method for distributed streaming of scalable media |
US8089349B2 (en) * | 2005-07-18 | 2012-01-03 | Diego Giuseppe Tognola | Signal process and system |
US20070294500A1 (en) * | 2006-06-16 | 2007-12-20 | Falco Michael A | Methods and system to provide references associated with data streams |
US9225761B2 (en) * | 2006-08-04 | 2015-12-29 | The Directv Group, Inc. | Distributed media-aggregation systems and methods to operate the same |
CN101030938B (zh) * | 2007-02-05 | 2010-04-14 | 北京大学 | QoS自适应的P2P流媒体数据组织与传输系统及方法 |
US7720100B2 (en) * | 2007-05-11 | 2010-05-18 | Applied Micro Circuits Corporation | Packet preclassification using search tree algorithms |
US8966103B2 (en) | 2007-12-21 | 2015-02-24 | General Instrument Corporation | Methods and system for processing time-based content |
JP4588120B2 (ja) | 2009-02-19 | 2010-11-24 | パナソニック株式会社 | 再生装置、記録方法、記録媒体再生システム |
US20110276744A1 (en) * | 2010-05-05 | 2011-11-10 | Microsoft Corporation | Flash memory cache including for use with persistent key-value store |
US9271052B2 (en) | 2010-05-10 | 2016-02-23 | Comcast Cable Communications, Llc | Grid encoded media asset data |
US8677428B2 (en) * | 2010-08-20 | 2014-03-18 | Disney Enterprises, Inc. | System and method for rule based dynamic server side streaming manifest files |
US10069887B2 (en) * | 2011-01-04 | 2018-09-04 | Thomson Licensing Dtv | Apparatus and method for transmitting live media content |
CN102238434B (zh) * | 2011-07-22 | 2017-12-19 | 中兴通讯股份有限公司 | 一种iptv流媒体文件虚拟分段和使用的方法及系统 |
US8751679B2 (en) * | 2011-10-07 | 2014-06-10 | Ericsson Television Inc. | HTTP adaptive streaming server with automatic rate shaping |
-
2011
- 2011-12-19 US US13/329,443 patent/US8762452B2/en active Active
-
2012
- 2012-12-12 CN CN201711345755.5A patent/CN107968790B/zh active Active
- 2012-12-12 CN CN201280070100.0A patent/CN104126175B/zh active Active
- 2012-12-12 EP EP12858831.6A patent/EP2795467B1/en not_active Not-in-force
- 2012-12-12 WO PCT/IB2012/057249 patent/WO2013093725A1/en active Application Filing
- 2012-12-12 TW TW101147029A patent/TWI575950B/zh active
- 2012-12-12 BR BR112014014955A patent/BR112014014955A2/pt active Search and Examination
-
2014
- 2014-05-06 US US14/271,201 patent/US9807137B2/en active Active
-
2017
- 2017-09-24 US US15/713,658 patent/US10389783B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002041570A (ja) * | 2000-07-26 | 2002-02-08 | Sumitomo Metal Ind Ltd | データベースシステム及びサーバ装置 |
CN101242520A (zh) * | 2007-01-12 | 2008-08-13 | 博路技术有限公司 | 数据分发及缓冲 |
CN101809962A (zh) * | 2007-09-25 | 2010-08-18 | 爱立信电话股份有限公司 | 与媒体结构有关的方法和装置 |
CN101184021A (zh) * | 2007-12-14 | 2008-05-21 | 华为技术有限公司 | 一种实现流媒体缓存置换的方法、设备及系统 |
WO2011044285A2 (en) * | 2009-10-06 | 2011-04-14 | Microsoft Corporation | Low latency cacheable media streaming |
Also Published As
Publication number | Publication date |
---|---|
CN107968790A (zh) | 2018-04-27 |
TW201332343A (zh) | 2013-08-01 |
US10389783B2 (en) | 2019-08-20 |
WO2013093725A1 (en) | 2013-06-27 |
EP2795467A4 (en) | 2015-10-07 |
US20180013807A1 (en) | 2018-01-11 |
BR112014014955A2 (pt) | 2017-06-13 |
TWI575950B (zh) | 2017-03-21 |
EP2795467B1 (en) | 2016-11-02 |
CN104126175A (zh) | 2014-10-29 |
US9807137B2 (en) | 2017-10-31 |
EP2795467A1 (en) | 2014-10-29 |
US20140244732A1 (en) | 2014-08-28 |
US20130159388A1 (en) | 2013-06-20 |
US8762452B2 (en) | 2014-06-24 |
CN104126175B (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107968790B (zh) | 自适应流创建和输送中的虚拟化 | |
US11032344B2 (en) | Content delivery | |
US9609340B2 (en) | Just-in-time (JIT) encoding for streaming media content | |
US9038116B1 (en) | Method and system for recording streams | |
US9258333B2 (en) | Method for recovering content streamed into chunk | |
US10165032B2 (en) | Chunking of multiple track audio for adaptive bit rate streaming | |
CN106233735B (zh) | 管理多播视频传送的方法 | |
US20150007239A1 (en) | Smart pre-load for video-on-demand in an http adaptive streaming environment | |
US11722711B2 (en) | System and method for data stream fragmentation | |
JP2016519895A (ja) | メディアファイル受信およびメディアファイル送信方法、装置、およびシステム | |
WO2014208377A1 (ja) | コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム | |
EP3951597A1 (en) | Video content processing systems and methods | |
US10750248B1 (en) | Method and apparatus for server-side content delivery network switching |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |