CN106170095A - 内容分发网络系统和方法 - Google Patents
内容分发网络系统和方法 Download PDFInfo
- Publication number
- CN106170095A CN106170095A CN201610421716.8A CN201610421716A CN106170095A CN 106170095 A CN106170095 A CN 106170095A CN 201610421716 A CN201610421716 A CN 201610421716A CN 106170095 A CN106170095 A CN 106170095A
- Authority
- CN
- China
- Prior art keywords
- media
- file
- audio
- video
- content segments
- 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
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000009826 distribution Methods 0.000 title abstract description 15
- 239000012634 fragment Substances 0.000 claims description 26
- 230000002085 persistent effect Effects 0.000 claims description 13
- 238000007596 consolidation process Methods 0.000 claims 1
- 238000013459 approach Methods 0.000 abstract description 3
- 238000003860 storage Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000000750 progressive effect Effects 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000331006 Euchaeta media Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000035882 stress Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26216—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
-
- 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/84—Generation or processing of descriptive data, e.g. content descriptors
-
- 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/8451—Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
-
- 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
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
- H04N9/8211—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being a sound signal
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
内容分发网络系统和方法。按照实施例,计算机服务器的操作方法应包括流媒体数据接收。流媒体数据包含内容片断和媒体说明文件,而媒体说明文件包含元数据,用于描述内容片断。方法还包括将内容片断储存在缓存中。
Description
此专利申请已于2009年10月8日提交编号为61/249,848、标题为“为内容分发网络提供各种采集和分发方式支持的系统和方法”的美国临时申请案,以及于2010年7月8日提交编号为US12/832828、标题为“为内容分发网络提供各种采集和分发方式支持的系统和方法”的美国非临时申请案,本文将引用上述申请案以作参照。
技术领域
本发明主要与计算机网络有关,尤其是用于为内容分发网络提供各种采集和分发方式支持的系统和方法。
背景
互联网协议(IP)路由原本是专为主机对主机通讯而设计的。但是,时至今日,大部分的互联网流量都是用于内容传播。基于对视频流等内容的需求的不断上升,使现有的互联网基础设施的使用日渐艰难,尤其是讲求时效性和带宽密集型流量的内容,例如音频流和视频媒体内容。
在一个互联网内容分发网络中,已摄取媒体内容可能会针对不同的音频编码及视频编码和不同类型的媒体客户端(例如计算机、电视机和移动手持设备)而分为不同的文件格式。一般情况下,这些类型不同的媒体客户端对媒体文件格式、编码和比特率等有着不同的要求。例如,高清电视系统和手机相比,前者对图像分辨率、媒体文件大小和比特率等方面的要求都高得多。一般而言,不同的分发方式需要有不同的内容副本,原始服务器上会存有多份内容副本,这些副本又会缓存在内容分发系统的边缘服务器上。
但是,多份媒体文件的存在会使网络流量提高和系统性能降低。例如,在存在多份媒体文件的情况下,缓存失效率会提高,使得指定大小的 缓存只能够储存较少的视频。站在用户的角度,这会导致流媒体间歇性中断。
这就需要有一套能够改善流视频内容分发的系统和方法。
发明内容
按照实施例,计算机服务器的操作方法应包括流媒体数据接收。流媒体数据包含内容片断和媒体说明文件,而媒体说明文件包含元数据,用于描述内容片断。方法还包括将内容片断储存在缓存中。
根据进一步的实施例,计算机服务器操作方法包括接收源媒体内容和处理源媒体内容,以产生内容片断和用于描述内容片断的媒体说明文件。内容片断和媒体说明文件采用统一的格式。
根据进一步的实施例,服务器系统包含输入端口、缓存和处理器。处理器从输入端口接收流媒体数据,其中流媒体数据包含内容片断和媒体说明文件,而媒体说明文件包含用于描述内容片断的元数据。处理器还会将内容片断存储在缓存中,将缓存中的多个内容片断结合起来,生成符合特定配置的流媒体内容,并将符合特定配置的流媒体内容传输到媒体客户端。
下文将大致列出本发明的部分实施例,以便使以下发明的详细说明更易懂。后文将说明本发明实施例的额外功能和优势,本发明的专利申请主题便是由它们组成。本技术领域的人员应深知,本文所透露的概念和指定实施例可被用作为修改或设计与本发明拥有相同目的的其他结构或流程的基础。上述技术人员还应认识到,这些等效结构并不违背追加申请中阐述的发明的精神和范畴。
附图说明
为提供更完整的实施例见解及其优势说明,现为以下说明提供参考信息,请参阅与其相对应的附图,其中:
图1演示了实施例内容分发系统;
图2演示了在实施例媒体摄取阶段的实施例媒体预处理流;
图3演示了实施例视频格式;
图4演示了实施例音频格式;
图5演示了实施例媒体说明模板;
图6演示了实施例媒体数据存储方式;
图7演示了实施例视频片段格式;
图8演示了实施例音频片段格式;
图9演示了实施例边缘服务器媒体存储方式;
图10演示了实施例文件容器格式;以及
图11演示了在实施例中安装一个文件的示例。
实施例的详细说明
下文将详细讨论多种实施例的制备和使用。但这应理解为,本发明提供许多适用的发明概念都能够在各种各样的指定场合中实施。所讨论的指定实施例只是演示本发明的指定利用和使用方法,而不是限制本发明的使用范围。
本文将根据本发明在为内容分发网络提供各种摄取和交付方式支持的指定场合、系统和方法中的实施例而描述本发明。本发明的实施例可能还适用于其他类型的通讯系统和网络。
在一个实例中,为内容分发网络提供各种采集和分发方式支持的系统和方法可分为三个阶段:媒体摄取阶段、缓存阶段,即媒体从原始服务器分发到边缘服务器以进行缓存,和媒体输出阶段。在媒体输出阶段,实况视频源流或文件会被编码、转码或重新编码成一个视频编码格式,例如H.264/AVC,音频流或文件会被编码、转码或重新编码成一个音频编码格式,如AAC。为应对可用网络带宽、终端能力和用户偏好等变化,在媒体摄取阶段,准备好多种可替换媒体,例如变换视频内容的比特率、分辨率、帧速率和语言,)以获得媒体适应性。另外,为了在边缘服务器有效地缓存和根据需要进行转码,会使用同步的方式,将音频和视频流分成多个片断。在第二阶段,会采用拉动或推送模式,将媒体从原始服务器分发至边缘服务器。不管采用哪个模式,媒体内容都会以块为单位进行传送,其 中每一个块都是由一个或多个片断组成的。在一个实施例中,媒体会以片断或片断块的形式存储在边缘服务器上。在媒体输出阶段,支持各种不同的分发方式,例如文件下载、渐进式下载、HTTP流和RTP/RTSP流。
图1演示了一个根据本发明的一个实施例制定的内容分发系统。逻辑上,系统含有媒体摄取阶段102、媒体缓存阶段104和媒体输出阶段106。物理上,系统包含原始服务器108和边缘服务器110。在实施例中,原始服务器108和边缘服务器110位于网络的不同部分。或者,服务器108和110可位于相同位置。在一个实施例中,一台或多台服务器108可与一台或多台边缘服务器110进行通讯。
在一个实施例中,原始服务器108会接收媒体源,例如,以媒体文件和/或实时内容的形式并执行媒体预处理112以生成经过预处理的媒体数据和说明数据。经过预处理的媒体会以媒体数据加上一份说明的形式存储在内存114中,它可以是硬盘,也可以是其他存储设备。在一个实施例中,媒体预处理是由处理器116负责的一项功能。原始服务器108通过网络连接118将经预处理的媒体数据和说明传输到边缘服务器110。网络连接118可以是直接连接,也可以是相关技术中任何已知类型的网络连接,包括但不限于有线或无线连接、以太网、互联网I/P连接或其他类型的宽带连接。
边缘服务器110会从原始服务器108接收经预处理的媒体数据并使用缓存功能120将数据存储在缓存122中。在需要时,流功能126会使用转码功能128创建流数据,这会将经预处理的媒体数据转码成媒体客户端目标格式。在一个实施例中,流和按需要转码功能都是由处理器124执行的。
在一个实施例中,为提高系统管理和适应效率,在媒体缓存阶段104中会采用统一的媒体格式。统一的媒体格式包含统一的视频格式、统一的音频格式和统一的文件容器格式。例如,在一个实施例中,采用了H.264(视频)和高级音频编码(AAC)作为统一的媒体格式。在另一个实施例中,可以采用其他格式,例如MPEG-2视频和AAC。在媒体摄取阶段102,视频流会被编码、重新编码或转码成统一的视频格式,例如H.264 格式,音频流会被编码、重新编码或转码成统一的音频格式,例如AAC格式,文件容器格式会被编码成统一的文件容器格式。在一个实施例中,统一的文件容器格式参照了ISO基媒体文件格式。在其他实施例中,可采用其他文件格式。
在一个实施例中,为应对可用的网络带宽、终端能力和用户偏好等变化,在媒体摄取阶段102,准备好多种没可替换媒体,例如变换视频内容的比特率、分辨率、帧速率和语言等以获得媒体适应性。
图2演示了在实施例媒体摄取阶段的实施例媒体预处理流200;内容分割块202会接收媒体文件或实时内容,然后将内容分割成视频内容和音频内容。视频内容首先会被分成片断204,然后在需要时进行转码206,而音频数据首先会在需要时被转码208,然后被分成片断210。容器管理块212负责处理视频和音频数据的分段和可能发生的转码然后存储在内存216中,它可以是硬盘,也可以是其他存储设备。媒体说明生成块214会生成音频和视频片断媒体说明,它也会被存储在内存216中。在其他实施例中,分切片断和转码的顺序可能会与图2所演示的不同。
在一个实施例中,音频和视频流会以同步的方式分切片断(例如按照基于ISO的媒体文件格式中所指定,存储为电影片断)。在一个实施例中,每个视频片断都有一个固定的持续时间(例如2000毫秒)但含有剩余视频帧的最后一个片段却不在此例,它的持续时间和/或视频帧数可能会有所不同。或者,可采用其他固定或非固定的持续时间。每个视频片断都含有一个整数的图片组(GOP),例如,一个GOP。在一个实施例中,每个GOP都是闭合GOP,表示GOP的第一个视频帧是一个随机接入点和固定长度GOP,可能是持续时间,也可能是视频帧数,或者是两者。
在一个实施例中,会尽可能接近地对齐音频片断和视频片断的时间。在某些实施例中,每个音频片断都有一个整数的已编码音频样本数。根据音频采样率,音频片断和与其对应的视频片段的持续时间可能不是完全相同的。在某些实施例中,执行分切片断流程204和210的目的是让音频片断的持续时间尽可能地与视频片断的持续时间接近。
在一个实施例中,可通过以下方法,对齐音频片断和视频片断。假设 Dvi代表视频片断i的持续时间,Dai(n)代表包含n个样本的音频片断i的持续时间,Dai(n-1)代表包含n-1个样本的音频片断i的持续时间,Dai(n+1)代表包含n+1个样本的音频片断i的持续时间。那么,当满足以下两个条件时,音频片断i中包含的音频样本将等于n:
|Dvi-Dai(n)|<|Dvi-Dai(n-1)|, (1)
|Dvi-Dai(n)|<|Dvi-Dai(n+1)|. (2)
在原始服务器上,为支持有效的文件管理和存储,在一个实施例中,属于相同内容替换的所有片断都被根据基于ISO的媒体文件格式,存储在文件的一个曲目中。对于每个品质级别的视频流,图3中描述了实施例视频格式300。视频格式300含有文件类型标题302、媒体元数据304、一个或多个视频片断310和电影片断随机访问块320。媒体元数据块304含有电影标题306和视频曲目标题308,每个片断310有一个电影片断标题312和媒体数据314,其中包含实际的视频数据。电影片断随机访问块320含有曲目片断随机访问块322和电影片断随机访问偏移块324。
图4演示了实施例音频流400,它与视频流格式300相似。音频格式400含有文件类型标题402、媒体元数据404、一个或多个音频片断410和电影片断随机访问块420。媒体元数据库404含有电影标题406和音频曲目标题408,每一个片断410含有一个电影片断标题412和媒体数据414,其中包含实际音频数据。电影片断随机访问块420含有曲目片断随机访问块422和电影片断随机访问偏移块424。
例如,在一个实施例中,媒体预处理完成后,有多个分属不同品质级别的视频文件、多个音频文件,例如可能在音频编码使用、音频声道、音频语言和品质级别等方面不同。在一个实施例中,会有一个视频替换和一个音频替换存储在一个文件中。
在一个实施例中,媒体说明文件描述与其对应的视频流和音频流。图5演示了一个基于SMIL(同步媒体集成语言)的说明模板示例。
图6演示了已经过预处理的媒体数据在媒体摄取阶段的一个实施例 存储方式600。在一个单一媒体说明文件602下存储了一个或多个视频文件604和606,以及一个或多个音频文件608或610。在一个实施例中,每个视频文件604和606可代表不同品质级别,每个音频文件608和610可代表不同的目标音频编码、声道语言和/或比特率。每个分发方式的一个或多个预计算文件容器或说明文件612和614而进一步存储媒体说明文件602下。
在一个实施例缓存阶段中,媒体内容会以块为单位,从原始服务器传输到边缘服务器,其中每一个块都是由一个或多个片断组成的。在一个实施例中,原始服务器和边缘服务器之间的基础传输单位是音频和/或视频块。在一个实施例中,音频或视频块都会被当做是单一文件而保存在边缘服务器上和加以管理。或者,也可以将一个音频块和一个视频块存储在边缘服务器的一个文件中。
图7演示了一个含有电影片断702和媒体数据704的实施例视频块格式700。在一个实施例中,每个视频块都含有一个视频片断。或者,也可以使用多个的片断。在一个实施例中,会根据基于ISO的媒体文件格式标准格式化电影片断702,该片段含有媒体数据704中每个样本的类型、大小和位置等信息。在一个实施例中,每个视频片断都会采用“v_xx_yyyyy.frv”的命名方式,其中“xx”代表两位数的视频曲目ID,“yyyyy”代表五位数的片断序号。例如,“v_01_00001.frv”是视频曲目1的第一个视频片断。在其他实施例中,可能会采用其他格式和标签方式。
图8演示了一个含有电影片断802和媒体数据804的实施例音频块格式800,这与视频块格式700相似。在一个实施例中,每个音频块含有一个音频片断。在一个实施例中,会根据基于ISO的媒体文件格式标准格式化电影片断802,该片段含有媒体数据804中每个样本的类型、大小和位置等信息。在一个实施例中,每个音频片断都会采用“v_xx_yyyyy.fra”的命名方式,其中“xx”代表两位数的音频曲目ID,“yyyyy”代表五位数的片断序号。例如,“v_01_00001.fra”是音频曲目1的第一个音频片断。在其他实施例中,可能会采用其他格式和标签方式。
图9演示了边缘服务器在缓存阶段中的一个实施例内部媒体存储方 式900。在一个实施例中,内容被存储在一个或多个文件容器904、906和908中,每一个都在XML媒体说明902中有指示,每一个与一个内容替换相对应。在一个实施例中,XML媒体说明902根据图5演示的SMIL模板进行格式化。每个文件容器904、906和908都有一个或多个关联的视频和/或音频片断文件。在一个实施例中,文件容器1(904)中的片断文件910、912、914、916、918和920代表第一个内容替换的视频和音频。文件容器2(906)中的片断922、924和926和文件容器j(908)中的片断928、930、932、934、936和938代表其他内容替换的片断。在一个实施例中,内容替换是在原始服务器上创建的。内容替换可根据原始服务器侧的多个参数(例如已摄取内容的品质)和客户端侧的变量(例如网络带宽、CPU能力、屏幕分辨率和/或最终用户配置)而生成。在一个实施例中,有j个文件容器和m个片断。在一个实施例中,每个视频片断会按照n_m的形式予以标签(其中n是视频品质等级替换的总数),每个音频片断会按照k_m的形式予以标签(其中k是音频曲目替换的总数)。
在一个实施例中,会为特定的流技术定义说明文件。例如,图9含有Silverlight客户端说明文件XML 940,这是一个为Microsoft Silverlight Smooth Streaming而格式化的说明文件。在其他实施例中,可使用其他流技术(例如Adobe Flash)的其他说明文件。
在一个实施例媒体输出状态中,不同品质级别的视频片断和不同编码既声道的音频片断会结合起来,以支持各种分发方式,以及满足各种接入网络带宽和终端能力的要求。
例如,图9演示的实施例便支持Microsoft Silverlight Smooth Streaming。在这里,Silverlight Smooth Streaming使用一个说明文件,同时将已分段音频和视频逐一分发到客户端播放设备,以及使用品质等级和开始时间以请求指定的音频和视频片断。在一个实施例中,品质等级会被映射至音频和视频曲目ID,而开始时间则会被映射至片断序号。通过音频/视频曲目ID和片断序号,缓存中对应的a_xx_yyyyy.fra或v_xx_yyyyy.frv片断文件将被直接分发至Silverlight客户端以供播放。在 一个实施例中,图9中显示的提示片断会含有各种信息,这些信息可用于协助从音频和视频片断生成MPEG-2传输流数据包。
图10演示了实施例文件容器1000。文件容器1000含有文件类型标题1002和媒体元数据1004。媒体元数据1004含有电影标题1006、音频曲目标题1008和视频曲目标题1010。
在一个实施例中,文件下载和HTTP渐进式下载(使用交错完整文件)会以以下方式进行。通过图7中演示的视频片断700、图8中演示的音频片断800,以及图10中演示的文件容器1000,便可产生一个如图11所示的完整的MP4文件,以供文件下载和HTTP渐进式下载时使用。在这里,输出阶段会从文件容器生成文件标题和元数据信息生成MP4文件1102,以及从片断1104和1106生成实际视频和音频数据。
在一个实施例中,会采用统一的内部编码和容器格式。在媒体输出阶段,实况视频源流或文件会被编码、转码或重新编码成一个视频编码格式(例如H.264/AVC),音频流或文件会被编码、转码或重新编码成一个音频编码格式(如AAC)。在媒体输出阶段,边缘服务器上的视频块和音频块支持各种不同的分发方式,包括文件下载、渐进式下载、HTTP流和RTP/RTSP流
在一个实施例中,用于存储统一内容(带或不带替换视频曲目、音频曲目)和元数据的方法支持多种分发方式。如图6所描述,在媒体摄取阶段,可准备好某些文件容器或说明文件。
在一个实施例中,有一种灵活的存储和分发方式会采用媒体流片断和多层文件管理方式。在内容分发系统的不同阶段中,媒体流会议不同的大小做出说明。例如,使用这些实施例可提供有效的数据管理和高性能的流。例如,在图1描述的实施例系统中,原始服务器的每个音频或视频的媒体数据会存储为一个流,以方便管理,而边缘服务器的基本存储单位是音频块或视频块。边缘服务器采用基于块的存储方式,通过并行媒体处理提供实时按需求编码能力。
在一个实施例中,一个紧凑的媒体说明方式会与视频片断和音频片断命名规则相结合。媒体说明方式让系统能够根据品质等级和时间或字节范 围,有效地从缓存或原始服务器(在发生缓存缺失的情况下)找到请求的视频片断和音频片断。
虽然详细描述了实施例和它们的优势,但仍请明白这一点:可以在不违背专利申请中定义的发明精神和范围的情况下,进行各种变化、变动和替换。另外,本申请的范围并不局限于规格中描述的流程、机器、制造、物质组成、意义、方法和步骤的特定实施例。这些流程、机器、制造、物质组成、意义、方法或步骤,不管是目前已存在还是有待日后开发,只要是能够与本文描述的相应的实施例发挥本质上相同的功能或取得本质上相同的结果,都可以根据本发明而予以采用,作为相关技术中的一个普通技巧,这一点定会在本发明公布后受到相关方面的欢迎。相应地,追加申请的目的是将这些流程、机器、制造、物质组成、意义、方法或步骤包括在申请的范围中。
Claims (6)
1.一种计算机服务器运行的方法,所述方法包括:
接收流媒体数据,所述流媒体数据包括内容片断和媒体说明文件,所述媒体说明文件包括用于描述所述内容片断的元数据;以及
将所述内容片断存储在一个或多个文件容器,每一个所述文件容器在所述媒体说明文件中有指示,每个所述内容片断包含多个替换片断文件。
2.如权利要求1所述的方法,所述流媒体数据采用统一格式。
3.如权利要求1所述的方法,所述内容片断包括视频片断和音频片断。
4.如权利要求1所述的方法,所述内容片断包括一系列拥有固定的持续时间的内容片断,以及最后一个持续时间不固定的内容片断。
5.如权利要求1所述的方法,进一步包括组合所述缓存中的多个所述内容片断以生成符合特定配置的流媒体内容。
6.如权利要求1-5任意一项所述的方法,所述替换片断文件包括具有各种比特率的文件。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US24984809P | 2009-10-08 | 2009-10-08 | |
US61/249,848 | 2009-10-08 | ||
US12/832,828 US8751677B2 (en) | 2009-10-08 | 2010-07-08 | System and method to support different ingest and delivery schemes for a content delivery network |
US12/832,828 | 2010-07-08 | ||
CN201080026286.0A CN102474504B (zh) | 2009-10-08 | 2010-09-15 | 为内容分发网络提供各种采集和分发方式支持的系统和方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080026286.0A Division CN102474504B (zh) | 2009-10-08 | 2010-09-15 | 为内容分发网络提供各种采集和分发方式支持的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106170095A true CN106170095A (zh) | 2016-11-30 |
CN106170095B CN106170095B (zh) | 2019-05-03 |
Family
ID=43855712
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080026286.0A Active CN102474504B (zh) | 2009-10-08 | 2010-09-15 | 为内容分发网络提供各种采集和分发方式支持的系统和方法 |
CN201610421716.8A Active CN106170095B (zh) | 2009-10-08 | 2010-09-15 | 内容分发网络系统和方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080026286.0A Active CN102474504B (zh) | 2009-10-08 | 2010-09-15 | 为内容分发网络提供各种采集和分发方式支持的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8751677B2 (zh) |
EP (1) | EP2471271A1 (zh) |
CN (2) | CN102474504B (zh) |
BR (1) | BR112012008217B1 (zh) |
RU (1) | RU2632394C2 (zh) |
WO (1) | WO2011041974A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241398A (zh) * | 2017-05-24 | 2017-10-10 | 中广热点云科技有限公司 | 一种基于内容分发网络的视频下载方法 |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9485299B2 (en) * | 2009-03-09 | 2016-11-01 | Arris Canada, Inc. | Progressive download gateway |
CA2711311C (en) | 2009-08-10 | 2016-08-23 | Seawell Networks Inc. | Methods and systems for scalable video chunking |
CA2767368C (en) | 2009-08-14 | 2013-10-08 | Azuki Systems, Inc. | Method and system for unified mobile content protection |
US9792363B2 (en) * | 2011-02-01 | 2017-10-17 | Vdopia, INC. | Video display method |
WO2011100901A2 (zh) * | 2011-04-07 | 2011-08-25 | 华为技术有限公司 | 媒体内容的传输处理方法、装置与系统 |
US20120278495A1 (en) * | 2011-04-26 | 2012-11-01 | Research In Motion Limited | Representation grouping for http streaming |
EP2525587B1 (en) * | 2011-05-17 | 2017-07-05 | Alcatel Lucent | Method for streaming video content, node in a network for monitoring video content streaming |
US9462024B2 (en) | 2011-06-08 | 2016-10-04 | Futurewei Technologies, Inc. | System and method of media content streaming with a multiplexed representation |
CN103023859B (zh) * | 2011-09-22 | 2018-06-19 | 中兴通讯股份有限公司 | 一种分布式业务网络的内容处理方法和系统 |
US9565476B2 (en) * | 2011-12-02 | 2017-02-07 | Netzyn, Inc. | Video providing textual content system and method |
US9591098B2 (en) | 2012-02-01 | 2017-03-07 | Cisco Technology, Inc. | System and method to reduce stream start-up delay for adaptive streaming |
US20130246578A1 (en) * | 2012-03-16 | 2013-09-19 | Cisco Technology, Inc. | Adaptive Bit Rate Optimizations When Joining Single Profile Multicast Streams |
WO2013144981A2 (en) * | 2012-03-28 | 2013-10-03 | Soumya Das | On-the-fly encoding and streaming of video data in a peer-to-peer video sharing environment |
US9246741B2 (en) | 2012-04-11 | 2016-01-26 | Google Inc. | Scalable, live transcoding with support for adaptive streaming and failover |
US9538183B2 (en) * | 2012-05-18 | 2017-01-03 | Home Box Office, Inc. | Audio-visual content delivery with partial encoding of content chunks |
EP2859729B1 (en) | 2012-06-12 | 2020-09-16 | Coherent Logix, Incorporated | A distributed architecture for encoding and delivering video content |
CN102710966A (zh) * | 2012-06-13 | 2012-10-03 | 百视通网络电视技术发展有限责任公司 | 基于http协议的视频直播方法及系统 |
US9197944B2 (en) * | 2012-08-23 | 2015-11-24 | Disney Enterprises, Inc. | Systems and methods for high availability HTTP streaming |
EP2908535A4 (en) * | 2012-10-09 | 2016-07-06 | Sharp Kk | Content transfer device, content playback device, content distribution system, method for controlling a content transfer device, method for controlling a content playback device, control program and recording medium |
US10171887B2 (en) * | 2013-03-13 | 2019-01-01 | Comcast Cable Communications, Llc | Methods and systems for intelligent playback |
US10382512B2 (en) * | 2013-03-14 | 2019-08-13 | Microsoft Technology Licensing, Llc | Distributed fragment timestamp synchronization |
FR3004054A1 (fr) * | 2013-03-26 | 2014-10-03 | France Telecom | Generation et restitution d'un flux representatif d'un contenu audiovisuel |
CN103237068B (zh) * | 2013-04-17 | 2015-11-25 | 北京科技大学 | Cdn-p2p中内容属性可区分的流媒体缓存替换方法 |
US9148386B2 (en) | 2013-04-30 | 2015-09-29 | Cisco Technology, Inc. | Managing bandwidth allocation among flows through assignment of drop priority |
EP3005694A4 (en) | 2013-05-31 | 2017-01-04 | Level 3 Communications, LLC | Storing content on a content delivery network |
US11074394B2 (en) * | 2013-07-10 | 2021-07-27 | Comcast Cable Communications, Llc | Adaptive content delivery |
CN104426915B (zh) * | 2013-08-19 | 2017-12-01 | 中国电信股份有限公司 | 实现在线音乐分段下载的方法、服务器和系统 |
US8718445B1 (en) | 2013-09-03 | 2014-05-06 | Penthera Partners, Inc. | Commercials on mobile devices |
CN104469433B (zh) * | 2013-09-13 | 2018-09-07 | 深圳市腾讯计算机系统有限公司 | 一种视频直播回看方法及装置 |
US9244916B2 (en) * | 2013-10-01 | 2016-01-26 | Penthera Partners, Inc. | Downloading media objects |
US9923945B2 (en) | 2013-10-10 | 2018-03-20 | Cisco Technology, Inc. | Virtual assets for on-demand content generation |
JP2015136057A (ja) * | 2014-01-17 | 2015-07-27 | ソニー株式会社 | 通信装置、通信データ生成方法、および通信データ処理方法 |
CN103957469B (zh) * | 2014-05-21 | 2017-09-15 | 百视通网络电视技术发展有限责任公司 | 基于实时转封装的互联网视频点播方法及系统 |
US9288510B1 (en) * | 2014-05-22 | 2016-03-15 | Google Inc. | Adaptive video transcoding based on parallel chunked log analysis |
CN104023244A (zh) * | 2014-05-29 | 2014-09-03 | 深圳市云宙多媒体技术有限公司 | 一种cdn系统中流媒体数据的切片方法和装置 |
US20170118501A1 (en) * | 2014-07-13 | 2017-04-27 | Aniview Ltd. | A system and methods thereof for generating a synchronized audio with an imagized video clip respective of a video clip |
CN104639949B (zh) * | 2015-03-03 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 一种视频源接入方法及装置 |
US10057314B2 (en) * | 2015-04-17 | 2018-08-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic packager network based ABR media distribution and delivery |
CN105872572A (zh) * | 2015-12-14 | 2016-08-17 | 乐视云计算有限公司 | 直播视频的处理方法及装置 |
US10701415B2 (en) * | 2016-05-19 | 2020-06-30 | Arris Enterprises Llc | Method and apparatus for segmenting data |
US10015612B2 (en) | 2016-05-25 | 2018-07-03 | Dolby Laboratories Licensing Corporation | Measurement, verification and correction of time alignment of multiple audio channels and associated metadata |
CN107452041B (zh) * | 2016-05-31 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 图片的生成方法及装置 |
US10264044B2 (en) * | 2016-08-29 | 2019-04-16 | Comcast Cable Communications, Llc | Apparatus and method for sending content as chunks of data to a user device via a network |
US11659057B2 (en) * | 2017-04-19 | 2023-05-23 | Comcast Cable Communications, Llc | Methods and systems for content delivery using server push |
US11012488B2 (en) * | 2017-12-13 | 2021-05-18 | Verizon Patent And Licensing Inc. | Content streaming redundancy architecture |
CN112040302B (zh) | 2019-06-03 | 2023-01-03 | 优视科技有限公司 | 视频缓冲方法、装置、电子设备及计算机可读存储介质 |
CN114679438B (zh) * | 2022-03-03 | 2024-04-30 | 上海艾策通讯科技股份有限公司 | 流媒体数据传输方法、装置、计算机设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006041260A1 (en) * | 2004-10-13 | 2006-04-20 | Electronics And Telecommunications Research Institute | Extended multimedia file structure and multimedia file producting method and multimedia file executing method |
US20070130498A1 (en) * | 2005-12-01 | 2007-06-07 | Nokia Corporation | Time-shifted presentation of media streams |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6262777B1 (en) | 1996-11-15 | 2001-07-17 | Futuretel, Inc. | Method and apparatus for synchronizing edited audiovisual files |
US7302490B1 (en) | 2000-05-03 | 2007-11-27 | Microsoft Corporation | Media file format to support switching between multiple timeline-altered media streams |
US6766407B1 (en) | 2001-03-27 | 2004-07-20 | Microsoft Corporation | Intelligent streaming framework |
JP4165298B2 (ja) * | 2003-05-29 | 2008-10-15 | 株式会社日立製作所 | 端末装置、及び通信網の切替え方法 |
US7818444B2 (en) | 2004-04-30 | 2010-10-19 | Move Networks, Inc. | Apparatus, system, and method for multi-bitrate content streaming |
US7536469B2 (en) | 2004-12-10 | 2009-05-19 | Microsoft Corporation | System and process for controlling the coding bit rate of streaming media data employing a limited number of supported coding bit rates |
CN101120590B (zh) * | 2005-02-18 | 2010-10-13 | 皇家飞利浦电子股份有限公司 | 现场提交数字信号的方法 |
US8683066B2 (en) | 2007-08-06 | 2014-03-25 | DISH Digital L.L.C. | Apparatus, system, and method for multi-bitrate content streaming |
JP2007173987A (ja) | 2005-12-19 | 2007-07-05 | Canon Inc | マルチメディアデータ送受信システム、及び装置、又はプログラム |
US7874015B2 (en) | 2006-05-12 | 2011-01-18 | At&T Intellectual Property I, L.P. | Methods, systems, and computer program products for controlling distribution of digital content in a file sharing system using license-based verification, encoded tagging, and time-limited fragment validity |
US8966371B2 (en) * | 2006-09-11 | 2015-02-24 | Apple Inc. | Metadata for providing media content |
US7743161B2 (en) | 2006-10-10 | 2010-06-22 | Ortiva Wireless, Inc. | Digital content buffer for adaptive streaming |
DE102007045741A1 (de) | 2007-06-27 | 2009-01-08 | Siemens Ag | Verfahren und Vorrichtung zum Codieren und Decodieren von Multimediadaten |
JP4634477B2 (ja) * | 2008-03-07 | 2011-02-16 | レノボ・シンガポール・プライベート・リミテッド | メディア・ファイルの中断のない再生方法 |
US8370887B2 (en) * | 2008-05-30 | 2013-02-05 | Microsoft Corporation | Media streaming with enhanced seek operation |
US8387150B2 (en) * | 2008-06-27 | 2013-02-26 | Microsoft Corporation | Segmented media content rights management |
US8909806B2 (en) * | 2009-03-16 | 2014-12-09 | Microsoft Corporation | Delivering cacheable streaming media presentations |
-
2010
- 2010-07-08 US US12/832,828 patent/US8751677B2/en active Active
- 2010-09-15 WO PCT/CN2010/076958 patent/WO2011041974A1/en active Application Filing
- 2010-09-15 CN CN201080026286.0A patent/CN102474504B/zh active Active
- 2010-09-15 CN CN201610421716.8A patent/CN106170095B/zh active Active
- 2010-09-15 BR BR112012008217-5A patent/BR112012008217B1/pt active IP Right Grant
- 2010-09-15 RU RU2012118695A patent/RU2632394C2/ru active
- 2010-09-15 EP EP10821583A patent/EP2471271A1/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006041260A1 (en) * | 2004-10-13 | 2006-04-20 | Electronics And Telecommunications Research Institute | Extended multimedia file structure and multimedia file producting method and multimedia file executing method |
US20070130498A1 (en) * | 2005-12-01 | 2007-06-07 | Nokia Corporation | Time-shifted presentation of media streams |
Non-Patent Citations (1)
Title |
---|
QUALCOMM: "Baseline Architecture and Definitions for HTTP Streaming", 《3GPP TSG-SA4 #55》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241398A (zh) * | 2017-05-24 | 2017-10-10 | 中广热点云科技有限公司 | 一种基于内容分发网络的视频下载方法 |
CN107241398B (zh) * | 2017-05-24 | 2019-09-03 | 中广热点云科技有限公司 | 一种基于内容分发网络的视频下载方法 |
Also Published As
Publication number | Publication date |
---|---|
US8751677B2 (en) | 2014-06-10 |
CN102474504A (zh) | 2012-05-23 |
CN106170095B (zh) | 2019-05-03 |
RU2632394C2 (ru) | 2017-10-04 |
BR112012008217B1 (pt) | 2021-08-10 |
WO2011041974A1 (en) | 2011-04-14 |
BR112012008217A2 (pt) | 2017-03-01 |
CN102474504B (zh) | 2016-08-10 |
EP2471271A4 (en) | 2012-07-04 |
EP2471271A1 (en) | 2012-07-04 |
US20110087794A1 (en) | 2011-04-14 |
RU2012118695A (ru) | 2013-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102474504B (zh) | 为内容分发网络提供各种采集和分发方式支持的系统和方法 | |
JP6681986B2 (ja) | トランスポートのためのコード化された次世代オーディオデータの選択 | |
CN102713883B (zh) | 用编解码器强制的帧大小进行音频分割 | |
KR101701182B1 (ko) | 청크로 스트리밍된 컨텐츠를 복구하기 위한 방법 | |
CN106209892B (zh) | 使用可伸缩编码的增强型块请求流送 | |
CN103002274B (zh) | 一种基于离线下载的移动多媒体实时转码播放系统及方法 | |
US8566393B2 (en) | Methods and systems for scalable video chunking | |
CN102577307B (zh) | 使用url模板和构造规则的增强型块请求流送 | |
CN102550034B (zh) | 使用块划分或请求控制以获得改善的客户端侧处置的增强型块请求流送 | |
US9066138B1 (en) | Replacing ads in HTTP-based manifest driven video transport | |
CN104126175B (zh) | 自适应流创建和输送中的虚拟化 | |
CN107409234A (zh) | 基于lct利用dash格式的基于文件格式的流式传输 | |
CN109286820B (zh) | 基于分布式存储系统的流媒体点播方法及系统 | |
CN108702527A (zh) | 用于使用通用夹层分发格式的媒体传送的系统和方法 | |
CN110099288A (zh) | 处理连续的多周期内容 | |
CN102549999A (zh) | 使用协作式并行http和前向纠错的增强型块请求流送 | |
JP2017143532A (ja) | メディアパッケージングのためのシステム及び方法 | |
CN103813185B (zh) | 一种分段节目快速分发的方法、服务器及客户端 | |
Riiser et al. | Low overhead container format for adaptive streaming | |
KR20130088035A (ko) | 코딩된 멀티-컴포넌트 비디오를 인캡슐레이팅하기 위한 방법 및 장치 | |
CN105872599A (zh) | 一种提供、下载视频的方法及设备 | |
US20240155019A1 (en) | Synchronizing independent media and data streams using media stream synchronization points | |
CN102457760A (zh) | 一种实现内容插播的方法、装置和系统 | |
CN103796035B (zh) | 一种处理分段节目的方法、服务器及客户端设备 | |
CN102244813A (zh) | 一种视频播放方法及应用其方法的互联网电视终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |