CN107968790B - 自适应流创建和输送中的虚拟化 - Google Patents

自适应流创建和输送中的虚拟化 Download PDF

Info

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
Application number
CN201711345755.5A
Other languages
English (en)
Other versions
CN107968790A (zh
Inventor
B.富尔斯曼
C.达舍尔
C.菲利普斯
J.雷诺
S.马丁
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.)
Ericsson Television Inc
Original Assignee
Ericsson Television Inc
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 Ericsson Television Inc filed Critical Ericsson Television Inc
Publication of CN107968790A publication Critical patent/CN107968790A/zh
Application granted granted Critical
Publication of CN107968790B publication Critical patent/CN107968790B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/643Communication protocols
    • H04N21/64322IP
    • 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/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring 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)对应于所述内容流的时间代码的指针;
在随机存取存储器单元中存储所述多个数据结构;
生成包括对应于所述内容流的多个片段的多个引用的清单;
将所述清单发送到所述客户端,其中在完成所述将所述内容流分段成所述多个数据结构之前将所述清单发送到所述客户端;
接收来自所述客户端的获取对应于所述内容流的所述片段之一的请求;
通过以下操作从所述随机存取存储器单元中存储的所述数据结构获得与所述请求的片段相关联的字节:使用与所述请求的片段相关联的时间代码以从与所述请求的片段相关联的一个或更多个所述数据结构查找字节;以及
将与所述请求的片段相关联的所述字节发送到所述客户端。
CN201711345755.5A 2011-12-19 2012-12-12 自适应流创建和输送中的虚拟化 Active CN107968790B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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