CN101465861A - 用于传输和/或接收媒体流的系统、方法和计算机编程产品 - Google Patents
用于传输和/或接收媒体流的系统、方法和计算机编程产品 Download PDFInfo
- Publication number
- CN101465861A CN101465861A CNA200910002458XA CN200910002458A CN101465861A CN 101465861 A CN101465861 A CN 101465861A CN A200910002458X A CNA200910002458X A CN A200910002458XA CN 200910002458 A CN200910002458 A CN 200910002458A CN 101465861 A CN101465861 A CN 101465861A
- Authority
- CN
- China
- Prior art keywords
- web page
- content
- file
- media
- page contents
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
一种方法包括接收被编码的媒体内容,通过将被编码的媒体内容分割成多个网页文件,其被格式为一个静态网页,将被编码的媒体内容转换成网页内容,并在网络上传输网页内容以响应请求。
Description
相关申请
[0001]本发明涉及美国专利申请(申请号:11/731,401),标题为“METHOD OF SIMULTANEOUSLY PROVIDING DATA TO TWO ORMORE DEVICES ON THE SAME NETWORK(同时提供数据到同一网络上两个或多个设备的方法)”,于2007年3月30申请,在此其通过引用被合并到本发明。
技术领域
[0002]本发明通常涉及流媒体,特别涉及发送的流媒体内容是网页(web page)。
发明背景
[0003]目前,许多网络都采用缓存服务器(caching server)来降低从网络外部的一个媒体源流入和流出的流量。例如,互联网服务提供商(ISP)可以利用一个缓存服务器,其存储由网络用户频繁访问的网页。所以,ISP能够降低从ISP网络到网络上的web服务器的流量。
[0004]流媒体越来越受欢迎,特别是对实时节目而言。可是流媒体对带宽要求很高,特别是音频/视频流。一个流行的流媒体客户端软件是QUICKTIMETM,其通过使用实时流协议(RTSP)能够便于观看预先录制的和实时的节目。可是这种流不能使用当前的缓存技术进行缓存。特别是,不同的客户端有不同的session ID(会话ID),每个session有不同的sessionID。Session ID嵌入在从服务器到给定客户的每个信息包里,并且,一个通用的web缓存服务器不能缓存内容,因为请求同一流的另一个客户有一个不同的session ID。从web缓存服务器的角度来看,这两个客户正要求不同的东西。因此,即使多个客户可能消费相同的内容,内容也是动态的。目前,没有一种技术允许使用传统的web缓存技术来缓存媒体流。
发明概述
[0005]本发明涉及将媒体流转换成可由普通缓存代理缓存的网页文件的系统、方法和计算机程序产品。在一个例子里,服务器端的一个单元接收一个流,并将流分割成组块,其中每个组块是流的一部分。然后,每个组块被打包封装到一个超文本标记语言(HTML)文件内,其包括标头、专用解码器信息、和媒体信息包。
[0006]此外,建立session(对话)索引文件,其指引HTML组块文件。在实时流的情况下,当流持续时,产生新组块文件和session索引文件,从而实时处理并封包实时数据。当客户请求流内容时,web内容文件(包括组块文件和session索引文件)被传输到客户。客户网络上的web缓存代理可以缓存内容,因为其可以是任何其它网页。
[0007]在客户端,客户接收并处理网页内容文件以恢复媒体信息包和元数据(meta data)。客户发送媒体信息包到解码器,其中媒体内容被解码并被再现给用户。
[0008]前述已经相当广泛地概括了本发明的特征和技术优势,以便可以更好地理解以下本发明的详细描述。本发明的其它特征和优势将以随后进行描述,其构成本发明权利要求的主题。本领域技术人员应该注意到,可以轻松地利用披露的概念和具体实施例作为一个基础,用来修改或设计能够执行本发明相同目的的其它结构。本领域技术人员也应该认识到,这种等同构造没有偏移在附加权利要求内阐述的本发明精神和范围。被看作本发明特性的新颖性特征,有关其组织和运作方法,与其它目的和优势一起,从以下结合附图的描述可以更好地加以理解。但是,应该深刻地认识到,在此提供的每个附图仅是用作描述和说明用途,并不是意在作为限制本发明的定义。
附图说明
[0009]为了更全面地理解本发明,现结合附图参照以下的描述,其中;
[0010]图1描述一个可以实施本发明一个实施例的典型网络配置;
[0011]图2描述本发明一个实施例的典型系统;
[0012]图3描述本发明一个实施例的典型文件;
[0013]图4描述本发明一个实施例的典型方法;
[0014]图5描述本发明一个实施例的典型方法;和
[0015]图6描述本发明一个实施例的示范计算机系统。
发明详述
[0016]图1描述一个典型网络配置100,其上可以实施本发明实施例。网络配置100包括远程安置的计算机101、102、103和104,其通过同一互联网服务提供商(ISP)网络105访问互联网109和相关服务。通过使用拨号、数字用户线(DSL)(通常是不对称的DSL)、宽带无线接入、电缆调制解调器(cable modem)、ISDN和/或类似装置,计算机101、102、103和104可以连接到ISP互联网而访问网络105。ISP网络105包括路由器106和代理服务器107,其提供服务以允许计算机101、102、103和104间接连接到互联网109上的其它计算机或服务器(如服务器108)。
[0017]代理服务器107也包括一个共享缓存给客户计算机101、102、103和104。在此例子里,代理服务器107是一个网络计算机,其提供服务以允许网络105上的其它计算机或设备(如计算机101、102、103和104)间接连接到另一个网络上的计算机或服务器(如服务器108)。在一些实施例里,代理服务器和客户计算机是在局域网(LAN)或互联网接入网络上,而其它计算机或服务器是在互联网109上。网络105上的计算机101、102、103和104发送一个请求到代理服务器107,请求服务器108上可用的资源,代理服务器107传递该请求到服务器108,或者从代理服务器107上的共享缓存取回资源,从而提供资源。
[0018]在此例子里,使用由Cisco系统开发的Web缓存通信协议(WCCP),共享缓存是由连接路由器106的代理服务器107提供。但是,实施例也可以采用其它缓存配置和协议以缓存静态网页。与动态网页相比,更容易抓取静态网页。动态网页使用脚本(scripting)来提供内容,这些内容随访问者和session不同而不同。例如,一些网页包括搜索项和/或其它类型的数据查询,使得用户交互上拉信息而不是简单的链接。另一个动态网页的例子是一个显示最新股票信息(stock ticker)的页面。相比较,静态网页通常在多个session提供相同内容给多个用户。典型的静态页面是通过链接而展示变化的内容给用户。各种网站(web site)既提供静态又提供动态的页面。
[0019]图1显示的网络配置是,远程计算机101、102、103和104直接通过ISP访问互联网109;但是,各种实施例并不受此限制。例如,一些实施例可以被应用到任何网络,其将多个访问远程数据资源的设备连接在一起,并且其有一个缓存服务器或共享缓存以临时存储请求的数据资源,从而降低网络网关的带宽要求,并加快客户计算机的资源访问时间。这种网络可能包括一个公司的、机构的或私有的LAN或广域网(WAN),其中设备可以是在地理上非常接近或地理上完全不同和远距离的位置。特别地,一些实施例对于具有多个互联区域网络的全球机构可能是非常有用的,其中一个区域网络上的两个或多个计算机访问另一个区域网络上的信息或数据资源。例如,在流视频会议(videoconference)、电话会议或在各个远距离地理位置的办公室的机构雇员的台式机上实时展示时,一些实施例可以发现其应用之处。此外,一些实施例也可以被实施在电视广播应用领域,其中客户设备包括机顶盒,用来从其它网络访问流视频资源,或被实施在移动网络应用领域,其中客户设备是移动手机。
[0020]依照典型实施例,服务器108提供流媒体内容,其可以由计算机101、102、103和104访问。在此例子里,流媒体内容是由服务器108处理,从而其被分割成多个组块(chunk),并被格式化为网页内容。流媒体内容可能包括一个实时流,其被服务器108格式成一个静态网页。所以,流媒体内容可以由代理服务器107缓存,在此例子里,其是一个传统和典型的缓存代理,仅能够缓存简单项目(如静态网页)。
[0021]图2描述本发明一个实施例的典型系统200。图2是一个实施例传输和接收媒体流的高级别概述。系统200被分成两端-服务器端210和客户端220。在服务器端210,一个流媒体应用程序将音频和视频信号编码成数据信息包。一个示范实施例是使用高级音频编码(AAC)以进行音频和H.264编码;但是,其它实施例可以使用任何类型的编码,如MP3等。实时流打包器(packetizer)211将音频和视频压缩封包成HTML文件。在此示范实施例里,媒体流被分割成一系列的组块文件,其中每个组块文件包含一部分媒体流(如0.2秒的音频和视频)。另外,在此例子里,也建立起索引组块文件的session索引文件。组块文件和session索引文件将在以下详细描述。
[0022]实时流服务器212存储HTML文件到web服务器文档目录213内,和/或传输HTML文件到请求客户(如在客户端220)。使用目录213的web服务器可以是主机,在同一机器上既作为流服务器212又作为流媒体打包器211,或在另一个机器上输出流服务器212上的一个文档目录而写下输出HTML文件。实际上,服务器端210可以实施在一个或多个处理器型机器上。
[0023]在客户端220,实时流客户端模块221从web服务器212下载HTML文件。实时流解包器222从下载的HTML文件提取音频和视频信息包。提取的音频和视频信息包被送到一个解码器内(图中未显示),然后在一个或多个变换器(如视频屏、扬声器等)上再现音频和视频数据。
[0024]尽管未在图2内显示,应该理解,在许多情景下,客户端220是在一个包括能够执行web缓存的代理服务器的网络上。从而,HTML文件可以被缓存为网页,并被发送到网络上的一个或多个其它请求客户。
[0025]图3描述本发明一个实施例的典型文件300。文件300是一个包括媒体内容的HTML文件(如web网页),其可以由图2的流媒体打包器211生成。
[0026]文件300是一个媒体负载类型的HTML文件(如一个组块文件),且是由流媒体打包器211生成。文件300包含音频和视频信息包301,其可以从一个充当编码器的输出缓冲器的数据缓冲器读取。在此例子里的音频和视频信息包301包括活动图像专家组(MPEG)基本流(ES)信息包,其具有一些附加的属性信息,如时戳(timestamp)。其它实施例可以使用其它类型的编码和其它类型的数据信息包。
[0027]文件300是可扩展HTML(XHTML)格式,尽管也可以使用标准HTML格式。在文件300的文本内,组块头(header)303放在<body>单元的<table>部分,并列出文件300内信息包组301里的各个媒体信息包的时戳和偏移(offset)。音频和视频信息包301放在<body>单元内,并且信息包内的每个单独信息包被标记为一个<p>单元,并在组块头303内指定一个相应ID。众所周知,HTML头304包括专有HTML信息。
[0028]如图3所示,在音频和视频信息包301内,个别音频信息包被交错插入到一系列视频信息包内,使得一个音频信息包,如果其时戳位于两个视频信息包的时戳之间,那么这个特定音频信息包就封包在两个视频信息包之间。利用如图3所示的配置,可以轻易地实现音频/视频同步,即使是在序列分析模式(sequential parsing mode)。在一些实施例里,有一个预设的最大组块尺寸,其足够大到可以打包至少一个视频信息包和相应音频信息包,并有利于代理缓存特性。但是,在一个特定实施例里,组块大小和媒体负载信息包的数目可以被调配到期望的大小尺寸。
[0029]在此例子里,有两种组块文件-主组块文件和次组块文件。每个主组块文件可以被用作多媒体流的一个随机接入点(RAP),并包含至少一个视频帧,其可以单独于其它视频帧(I-帧)和相应音频信息包而进行解码。在两个RAP之间,信息包被打包到次组块文件内。可以建立多个次组块,主组块对次组块的比例通常受编码器多久产生一个RAP和最大组块文件尺寸的影响。文件300也包括专用解码器信息302,在此例子里,其是序列参数集(SPS)和图像参数集(PPS)信息。但是,其它实施例可以使用其它类型的编码,并使用其它类型的专用解码器信息。表格1显示一个示范的主组块文件的语法。
表格1
[0030]参照表1,从组块头<table>标记开始,在此例子里,在标记单元之间没有额外空间或新线,所以负载偏移可以在数据产生期间计算。组块头303是HTML<body>单元里的一个<table>单元块。组块头303包含信息以便客户分析组块文件300里的块状的音频/视频负载。组块头303为相应音频/视频负载的每个<p>单元定义了ID。
表格2
[0031]表格2显示一个组块文件的示例部分,其有专用解码器信息和三个媒体信息包,并可以包含在组块文件300内。表2示例的HTML数据显示组块文件300在负载部分包含了四个信息包(如在音频/视频信息包301内的四个媒体信息包)。具有ID S0的首个信息包是SPS/PPS信息。SPS/PPS信息显示组块是一个主组块。有一个具有ID V00000001的视频信息包,和两个具有ID A00000001和A00000002的音频信息包。Offset(偏移)显示了距离<table>标记开头的负载位置。尺寸(size)是字节数目。ID和属性是以十六进制数值提供。
[0032]每个流session被分配一个session名称(SN),如一个广播信道的名称。一个主组块文件被命名为SN,随后是主组块序列号,其是一个32-比特的无符号整数,从1开始到4294967295,然后再回到1。相比较,次组块文件的名称是SN,随后是主组块序列号,然后是一个下划线和次组块序列号,其也是一个32-比特的无符号整数。例如,SN=superman;主组块文件是superman1.html,superman2.html等,而次组块文件是superman1_1.html、superman1_2.html、superman2_1等。
[0033]当从媒体流建立网页文件时,流打包器211(图2)也产生至少一种其它类型的文件,在此例子里是一个session索引文件。服务器(如果适用的话,是流服务器和缓存代理服务器)为每个流session保留一个session索引文件,其包含一个迄今为止已经产生的主组块的列表。客户可以从session索引文件知道哪个文件可以下载。新加入的客户也可以从session索引文件,知道哪个主组块文件是最新的,以便以最小的时间延迟加入一个实时流。
[0034]此外,如果适用的话,session索引文件也包含一些元数据以便再现多媒体流。元数据包含在一个<ul>块内,与属性名称和对应数值一起列出。一个示例的session索引文件的语法如表格3所示。
表格3
[0035]表格3里的例子显示session的SN是“superman”。目前有三个已经建立的主组块文件。主组块文件是时戳0视频RAP的“superman1.html”、时戳2000视频RAP的“superman2.html”、时戳3600视频RAP的“superman3.html”。在此例子里的session索引文件是superman.html,组块文件位于与session索引文件同一路径上。表格4显示一个普通session索引文件语法的例子。
表格4
[0036]图4描述本发明一个实施例的典型方法400。例如,方法400也可以由一个或多个服务器端的处理器型机器执行。
[0037]在模块401,接收流媒体内容。在一个实施例里,流媒体内容是从一个多媒体编码器接收。现在已知的或以后开发的任何类型的编码都可以用于不同实施例。此外,一个应用程序可以在同一设备上运行接收媒体内容并在同一设备上进行编码媒体内容。
[0038]在模块402,流媒体内容被封包成网页内容,其中网页内容被格式成一个静态网页。在一个例子里,使用图3和表1-4以上所示的组块和文件格式。不同实施例可以使用不同的格式,只要媒体流被转换成一个网页文件,其可以由普通web缓存代理服务器使用缓存静态网页的技术进行缓存。
[0039]在模块403,网页内容被传输到客户。传输通常是为响应客户对媒体流的请求而执行。在一些实施例里,一个代理缓存服务器位于提供网页内容的web服务器和请求网页内容的客户之间。在这种情况下,代理缓存服务器缓存网页内容是可能的,因为其是从web服务器被发送到客户。随后,在代理缓存服务器网络上的随后请求客户将从代理缓存服务器而不是从web服务器接收内容。
[0040]在模块404,当接收到实时流数据时更新网页内容。例如,周期性地,或者当实时媒体流继续时,产生新的session索引文件。新的session索引文件可以重写旧的session索引文件,或另外保存,提供索引给新建立的组块文件。如以下图5所述,客户获取更新的session索引文件。
[0041]图5描述本发明一个实施例的典型方法500。方法500可以由一个运行应用程序的客户设备执行,其接收、解码和再现以网页文件发送的媒体流。例如,客户设备可以包括蜂窝电话、个人数字助理(PDA)、膝上型或台式计算机等。
[0042]在此例子里,在模块501和502,假设客户知道SN和合适的服务器URL以下载session索引文件。在获得session索引文件之后,在模块503和504,客户解析session索引文件以确定要下载的首个主组块[媒体数据的元数据是在301内,专有解码器信息]。对一个实时流,将要下载的首个主组块文件是目前可能获得的最新(最近)主组块文件。然后,在模块505-510,客户通过下载主组块文件和相应的次组块文件来下载组块文件。在此例子里,用来下载组块文件的URL前缀与session索引文件相同,尽管在其它实施例里可以有不同方案。
[0043]客户会记录当前的主组块序列号和次组块序列号。当客户完成下载一个主组块文件时,它会尝试下载具有相同主组块序列号和次组块序列号的次组块文件,如在模块508内所示。当完成下载一个次组块文件时,客户会尝试下载具有向上递增的次组块序列号的下一个次组块文件。在模块505,当在服务器上没有发现次组块文件时,客户假设流是在下一个RAP上,应该下载下一个主组块文件。在模块507,如果下一个主组块不在session索引文件上,或者客户没能下载到下一个主组块,客户会尝试再次下载session索引文件,以防session索引文件已经被更新(如在一次实时流session期间)。
[0044]在此例子里,客户依照session索引文件内的主组块序列号列表随机访问可能的主组块文件。主组块文件是RAP,从而客户可以通过访问提供特别窍门模式(trick mode)操作的主文件而实现窍门模式播放(如重绕、暂停、查找、快进等)。
[0045]各种实施例不限于图4和5所示的范例,因为其它实施例可以在方法400和500里增加、删除、重新编排和/或修改一个或多个动作。例如,一些实施例持续反复执行方法400,只要流仍在继续。
[0046]各种实施例提供优于现有技术的优势。例如,以上范例提供一个媒体流作为静态网页的网页内容。所以,使用上述分解方案的流技术可以使用已经在许多网络内采用的通用web缓存构造。
[0047]此外,上述内容分解技术(content disassembling technique)是一种在服务器端的后处理步骤,在一些实施例里,其对现有的内容建立过程和编码是透明的。所以,内容分解技术可以离线或实时进行。类似地,客户端的内容分解技术是一种预处理步骤,在一些实施例里,其对客户使用的现有播放器/解码器是透明的。客户端的内容分解可以离线或实时进行。
[0048]当实施计算机可执行指令时,本发明实施例的各个部件本质上是定义此各个部件操作的软件代码。可执行指令或软件代码可以从可读媒质获得(如硬盘媒质、光媒质、RAM、EPROM、EEPROM、磁带媒质、盒式磁带媒质、闪存、ROM、记忆棒等)。实际上,可读媒质可以包括能够存储信息的任何媒质。
[0049]图6描述本发明一个实施例的一个示例计算机系统600。计算机系统600包含一个可以实施本发明实施例的示范系统(如一个执行客户应用程序的客户端设备或一个将媒体流变换成网页内容的服务器计算机)。中央处理单元(CPU)601被连接到系统总线602。CPU 601可以是任何通用或专用型的CPU。但是,本发明不受CPU 601结构的限制,只要CPU 601支持在此所述的本发明的运作。依照本发明的实施例,CPU 601可以执行各种逻辑指令。例如,依照以上图4和图5所述的典型操作流程,一个或多个CPU,如CPU 601可以执行机器级指令。
[0050]优选地,计算机系统600也包括随机访问存储器(RAM)603,其可以是SRAM、DRAM、SDRAM等。在此例子里,计算机系统600使用RAM603作为图3的缓冲器302。优选地,计算机系统600包括只读存储器(ROM)604,其可以是PROM、EPROM、EEPROM等。正如本领域技术人员所熟知的,RAM 603和ROM 604保留有用户和系统的数据和程序。
[0051]优选地,计算机系统600也包括输入/输出(I/O)适配器605、通信适配器611、用户接口适配器608和显示适配器609。在某些实施例里,I/O适配器605、用户接口适配器608和/或通信适配器611可以使用户能够与计算机系统600进行交互以便输入信息,如选择媒体流。
[0052]优选地,I/O适配器605连接到存储器设备606,如计算机系统600里的一个或多个硬盘、光盘(CD)驱动器、软盘驱动器、磁带驱动器等。当RAM 603不足以满足存储媒体数据的存储要求时,可以使用存储器设备。优选地,通信适配器611被调配以连接计算机系统600到网络612(如互联网、局域网、蜂窝网络等)。用户接口适配器608连接用户输入设备,如键盘613、定点装置607、和麦克风614和/或输出设备,如计算机系统600里的扬声器615。显示适配器609是由CPU 601驱动,以控制显示设备610上的显示,当进行播放时显示媒体。
[0053]尽管图6显示了一台通用计算机,应该注意到,依照各种实施例,一部分系统的具体构造可能稍有不同。例如,依照一个或多个实施例,设备可以是任何类型的处理器型设备,如蜂窝电话、PDA、专用设备(如单机P2P电视模块、或香港应用科技研究院有限公司提供的家庭媒体中心,其流式传输电视内容)等。另外,依照一个或多个实施例,服务器(如流和封包服务器)可以是任何类型的能够发送媒体流的处理器型设备,如个人计算机、服务器型计算机、家庭媒体中心等。而且,本发明实施例可以被实施在专用集成电路(ASIC)或超大型集成(VLSI)电路上。实际上,本领域技术人员可以使用任何数目的能够依照本发明实施例执行逻辑运算的合适结构。
[0054]尽管已经详细说明了本发明及其优越性,但应理解,在不脱离所附权利要求定义的本发明的条件下可以做出各种改变,替换和变化。此外,本申请的范围不限定到此处说明书中描述的处理方法,机器,制造,物质构成,手段,方法和步骤等的特定实施例。从说明书可以容易理解,可以利用实质上执行了与这里说明的相应实施例相同功能或实现了相同结果的目前已有的或者将来会开发出的处理方法,机器,制造,物质构成,手段,方法和步骤。因此,所附的权利要求书旨在包括这些处理方法,机器,制造,物质构成,手段,方法或步骤。
Claims (22)
1.一种具有计算机可读媒质的计算机程序产品,其上记录有一个计算机编程逻辑,计算机程序产品包括:
用来接收流媒体内容的代码;
用来将流媒体内容封包成网页内容的代码;和
用来传输网页内容到客户的代码。
2.根据权利要求1所述的计算机程序产品,其中网页内容包括多个多媒体内容文件和一个包含多媒体内容文件索引的session索引文件。
3.根据权利要求1所述的计算机程序产品,其中网页内容包括:
一个超文本标记语言(HTML)文件,包括被编码的音频和视频数据。
4.根据权利要求1所述的计算机程序产品,其中网页内容包括:
一个HTML文件,包括流媒体内容的组块索引。
5.根据权利要求1所述的计算机程序产品,其中网页内容包括:
一个可扩展HTML(XHTML)格式的HTML文件。
6.根据权利要求1所述的计算机程序产品,其中用来封包流媒体内容的代码包括:
将流媒体内容分割成多个临时顺序组块的代码,每个组块被包含在相应的网页文件内;
产生一个指引组块的session索引文件的代码。
7.根据权利要求6所述的计算机程序产品,其中组块包括:
多个主组块,其充当一个媒体流里的随机接入点;和
多个次组块,每个次组块与一个主组块相关。
8.根据权利要求1所述的计算机程序产品,还包括:
当接收到实时流数据时,用来更新网页内容的代码。
9.根据权利要求8所述的计算机程序产品,其中用来更新网页内容的代码包括:
当接收到实时流数据时,用来从实时流数据建立多媒体内容文件的代码;和
用来产生指引多媒体内容文件的更新的session索引数据的代码。
10.根据权利要求1所述的计算机程序产品,其中网页内容被格式成一个静态网页。
11.一种具有计算机可读媒质的计算机程序产品,其上记录有计算机编程逻辑,用来播放媒体流,计算机程序产品包括:
用来接收网页内容的代码,包括多个多媒体内容文件和至少一个指引多媒体内容文件的session索引文件,多媒体内容文件包含媒体流的内容;
用来使用索引以确定媒体流上一个起始点的代码;和
用来解码多媒体内容文件并再现媒体流的代码。
12.根据权利要求11所述的计算机程序产品,其中一个或多个多媒体内容文件是可以单独选择的以在媒体流上提供一个或多个随机接入点。
13.根据权利要求12所述的计算机程序产品,其中用来再现多媒体内容的代码包括:
使用单独选择的多媒体内容文件以提供一种或多种播放模式的代码,播放模式是从以下列表挑选:
倒带模式;
跳读模式;
查找模式;和
快进模式。
14.根据权利要求11所述的计算机程序产品,其中接收到的网页内容被格式成一个静态网页。
15.一种由网络计算机执行的方法,本方法包括:
接收被编码的媒体内容;
通过将被编码的媒体内容分割成多个网页文件,其被格式成一个静态网页,将被编码的媒体内容转换成网页内容;和
为响应请求,在网络上传输网页内容。
16.根据权利要求15所述的方法,其中将被编码的媒体内容转换成网页内容包括:
建立多个超文本标记语言(HTML)文件,其包括被编码的媒体内容的信息包;和
建立一个session索引文件,其列出至少一些HTML文件的标识符。
17.根据权利要求16所述的方法,其中至少一些所述HTML文件提供到被编码的媒体内容的随机接入点。
18.根据权利要求15所述的方法,其中被编码的媒体内容包括一个实时媒体流,本方法还包括:
当实时媒体流持续时,更新网页内容;和
传输更新的网页内容。
19.一种由网络计算机执行的方法,本方法包括:
请求网络资源;
接收网页内容作为请求的结果,网页内容被格式为静态网页内容,并包括多个被编码的媒体文件;和
再现静态网页内容作为一个媒体流。
20.根据权利要求19所述的方法,其中再现包括:
解码媒体文件内的媒体内容;
在变换器上将被编码的媒体内容转换成人类可感觉到的信号。
21.根据权利要求19所述的方法,其中网页内容包括索引数据,其列出至少一些所述被编码的媒体文件的标识符。
22.根据权利要求19所述的方法,其中再现网页内容包括:
访问在网页内容内被编码的媒体信息包;
解码被编码的媒体信息包;和
使用计算机的一个或多个变换器展示媒体流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910002458A CN101465861B (zh) | 2009-01-16 | 2009-01-16 | 用于传输和/或接收媒体流的系统、方法和计算机编程产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910002458A CN101465861B (zh) | 2009-01-16 | 2009-01-16 | 用于传输和/或接收媒体流的系统、方法和计算机编程产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101465861A true CN101465861A (zh) | 2009-06-24 |
CN101465861B CN101465861B (zh) | 2012-08-29 |
Family
ID=40806223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910002458A Active CN101465861B (zh) | 2009-01-16 | 2009-01-16 | 用于传输和/或接收媒体流的系统、方法和计算机编程产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101465861B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882845A (zh) * | 2010-04-07 | 2013-01-16 | 苹果公司 | 实时或准实时流传输 |
CN105282238A (zh) * | 2015-09-16 | 2016-01-27 | 深圳市茁壮网络股份有限公司 | 一种资源管理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222290B (zh) * | 2007-11-09 | 2013-01-02 | 北京创毅视讯科技有限公司 | 一种广播系统中的数据传输方法、发射系统和终端 |
CN101202920B (zh) * | 2007-12-19 | 2010-06-23 | 北京创毅视讯科技有限公司 | 一种广播系统中的数据发送、传输方法、发射系统和终端 |
-
2009
- 2009-01-16 CN CN200910002458A patent/CN101465861B/zh active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882845A (zh) * | 2010-04-07 | 2013-01-16 | 苹果公司 | 实时或准实时流传输 |
CN102882845B (zh) * | 2010-04-07 | 2016-07-13 | 苹果公司 | 实时或准实时流传输 |
CN105282238A (zh) * | 2015-09-16 | 2016-01-27 | 深圳市茁壮网络股份有限公司 | 一种资源管理方法 |
CN105282238B (zh) * | 2015-09-16 | 2018-11-13 | 深圳市茁壮网络股份有限公司 | 一种资源管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101465861B (zh) | 2012-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8185650B2 (en) | Systems, methods, and computer program products for transmitting and/or receiving media streams | |
JP6944485B2 (ja) | 1つの要求メッセージに基づいたネットワーク・ノードへの多数のチャンクの要求 | |
CN103119934B (zh) | 一种流媒体传输装置 | |
CN106170095B (zh) | 内容分发网络系统和方法 | |
US6816909B1 (en) | Streaming media player with synchronous events from multiple sources | |
CN104796796B (zh) | 提高Android平台的HLS流播放器容错的方法 | |
US20040128342A1 (en) | System and method for providing multi-modal interactive streaming media applications | |
US9277181B2 (en) | Media service presentation method and communication system and related device | |
WO2012079223A1 (zh) | 内容传送网络中流媒体请求地址映射的方法及装置、缓存节点 | |
CN110870282B (zh) | 使用网络内容的文件轨处理媒体数据 | |
GB2534849A (en) | Client-driven push of resources by a server device | |
US9386090B2 (en) | Device and method for receiving scalable content from multiple sources having different content quality | |
EP1602213A1 (en) | System for broadcasting multimedia content | |
CN102055718B (zh) | 一种在http streaming系统中实现分层请求内容的方法,装置和系统 | |
JP6969013B2 (ja) | メディアファイルの同期再生方法、装置及び記憶媒体 | |
US20150172353A1 (en) | Method and apparatus for interacting with a media presentation description that describes a summary media presentation and an original media presentation | |
WO2021143360A1 (zh) | 资源传输方法及计算机设备 | |
KR102635342B1 (ko) | Http를 통한 동적 적응 스트리밍을 위한 세션 기반 정보 | |
KR20170141677A (ko) | 수신 장치, 송신 장치 및 데이터 처리 방법 | |
KR20220133938A (ko) | 원격 엘리먼트 리졸루션들의 클라이언트 기반 저장 | |
WO2016199513A1 (ja) | 受信装置、送信装置、およびデータ処理方法 | |
CN105992016A (zh) | 一种hls在线转码方法及系统 | |
Van Lancker et al. | Implementation strategies for efficient media fragment retrieval | |
CN101465861B (zh) | 用于传输和/或接收媒体流的系统、方法和计算机编程产品 | |
CN101984619A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |