Http流式内容对象的重放操作的制作方法

文档序号:6432301阅读:226来源:国知局
专利名称:Http流式内容对象的重放操作的制作方法
技术领域
本发明一般地涉及网络文件传输,更具体地说,本发明涉及采用超文本传输协议(HTTP)的流式内容。
背景技术
利用HTTP和其他文件传输协议,通过因特网传输文件。使用HTTP传输从开始到结束流式传输(stream)内容对象,而不进行任何重放操作。尽管HTTP是传输文件的最普遍采用的协议,但是已经开发出用于传输流式内容(streamed content)的其他协议。这些传输协议包括RealTM、Windows Media AudioTM(WMA)以及QuicktimeTM,它们是分别属于RealNetworsTM、MicrosoftTM以及AppleTM的有专有权的协议。每种协议的专有权人销售的定制服务器软件支持这些协议。流式内容协议与该服务器软件一起使得在下载流式内容的同时进行重放操作。

发明内容
在一个实施例中,本发明提供了一种利用超文本传输协议(HTTP)传输播放流式内容对象的方法。在一个步骤中,利用HTTP,从分组交换网接收流式内容对象的第一部分。至少在时间上与所述第一接收步骤部分重合(coincident),播放该第一部分。接收流式内容对象的第二部分。在流式内容对象中,该第二部分不与第一部分邻接。
在另一个实施例中,本发明提供了一种利用HTTP传输播放流式内容对象的方法。在一个步骤,利用HTTP,接收流式内容对象的第一部分。检测对应于流式内容对象的重放控制的用户输入。至少部分响应检测步骤,接收该流式内容对象的第二部分。
在又一个实施例中,本发明提供了一种用于利用HTTP传输播放流式内容对象的内容播放产品。该内容播放产品包括利用HTTP,接收流式内容对象的第一部分的代码;检测对应于流式内容对象的重放控制的用户输入的代码;至少部分响应检测步骤,接收该流式内容对象的第二部分的代码;以及包含代码的机器可读介质。


结合

本发明,附图包括图1是流式内容分布系统实施例的方框图;图2是流式内容分布系统的另一个实施例的方框图;图3是其中在控制重放的同时用户流式传送的内容对象的处理过程的实施例的流程图;图4是用于在进行重放操作的情况下流式传送的内容对象的处理过程的实施例的流程图;以及图5是以增强的精度流式传输内容对象的处理过程的另一个实施例的流程图。
在这些附图中,利用同样的参考符号表示类似的部件和/或特征。
具体实施例方式
下面的描述仅提供(各)典型优选实施例,而无意限制本发明的范围、适用性或配置。当然,下面对(各)典型优选实施例的描述将向本技术领域内的技术人员提供用于实现本发明的典型优选实施例的实现过程描述。显然,在所附权利要求所述的本发明实质范围内,可以在各单元的功能和排列方面进行各种变化。
本发明包括允许进行重放操作、利用超文本传输协议(HTTP)播放流式内容对象的方法。在下载流式内容对象时,用户可以选择另一个与当前流点(stream point)不邻接的重放点。确定该文件内的新位置,请求对应于该新位置的流。这样,如果采用HTTP传输,则用户可以向后和向前跳跃到该流式内容对象中的任何位置。
首先,参考图1,图1示出流式内容分布系统100的实施例的方框图。通过因特网108,源服务器104将内容对象送到内容处理程序124。通过网络接口112,内容处理程序124与因特网108通信。尽管未示出,但是源服务器104也具有网络接口。
源服务器104将内容对象寄存(host)在通常远离内容处理程序124的位置。源服务器104上的软件使对用户呈现的、与内容处理程序124相关的网页具有固定格式。网页上的各链接调用内容对象文件。一旦选择了链接,就对源服务器104进行HTTP调用,以开始将内容对象文件发送到内容处理程序124。
通过应用程序接口(API)或其等同物,作为内容处理程序124的基础的操作系统与网络接口112通信。当从网络接口112接收内容对象文件时,操作系统识别文件类型,调用与该文件类型有关的内容处理程序124。
在从源服务器104选择流式内容对象文件时,内容处理程序124播放该流式内容对象文件。利用内容处理程序124可以播放声频或视频。可以支持非HTTP传输,例如RealTM、Windows Media AudioTM(WMA)以及QuicktimeTM。通常,在流式内容启动后,从起始开始播放内容对象文件,但是用户可能希望向前跳跃到声频或视频上离开起始的某个点。例如,用户可能希望跳跃电影中的片头字幕。内容对象文件使用流式格式,以致内容处理程序124可以重放给出该文件内的任何一部分内容的内容对象文件。如果是非流式格式,则在开始重放之前,下载整个文件。
内容处理程序上的滑动条、快进按钮或回倒按钮可以使用户告知内容处理程序124应该在何处恢复播放该流式内容文件。例如,用户可以以MP3格式开始下载不熟悉的歌曲。稍后,用户将滑动条移动到该歌曲上10%或30秒的点,这样,用户可以迅速确定用户是否喜欢听该歌曲。内容处理程序124确定对应于该滑动条(slider)位置的内容对象文件的字节范围,并从源服务器104请求该字节范围。一旦该字节范围的内容对象文件开始流入内容处理程序124,就播放该字节范围。
参考图2,图2示出流式内容分布系统200的另一个实施例的方框图。在该实施例中,采用本身不能利用HTTP流式传输内容对象、但是仍可以进行重放操作的内容处理程序124。为了使该处理程序124播放HTTP流式文件,使用观看对象代理(viewer object proxy)204和外壳(skin)212。用户与外壳212通信以进行重放操作。
从内容处理程序124的观点出发,尽管采用不支持HTTP传输,但是仍象用户正在利用内容处理程序124提供的传送机制请求内容文件一样。由外壳212和观看对象代理204实现这种伪装。观看对象代理204将外壳的命令翻译为内容处理程序124可以理解的命令,这样可以流式重放内容对象。例如,可以将在外壳212对HTTP传输文件的请求翻译为对WMA文件的请求。观看对象代理204将WMA请求翻译为源服务器104可以理解的HTTP请求。
接着,参考图3,图3示出其中在控制重放的同时用户流式传送的内容对象的处理过程300的实施例的流程图。所示的处理过程从步骤308开始,在步骤308,用户浏览流式内容对象的网页。在步骤312,选择要从支持HTTP传输,但是可能不支持其他传输协议的源服务器104下载的内容对象文件。在步骤314,浏览器对文件发出HTTP请求。
在步骤316,文件扩展(例如.MP3、.RA、.MOV、.MPG等)所表示的文件类型通过操作系统以调用相关内容处理程序124。在步骤320,内容处理程序从该文件的开头播放该流式内容。在步骤328,用户可以请求与当前播放的一部分不连续的另一部分内容对象文件。如果请求该不连续部分,则在步骤332,请求相应字节范围并流式传输。作为一种选择,如果没有关于不连续部分的请求,则处理过程继续到步骤336。
通常,在具有关键帧的这些文件格式的内容对象文件内的下一个关键帧之前,不能重放不连续部分。在播放声频或视频之前,内容处理程序124接收请求字节范围内的字节,并等待,直到下一个关键帧。在一些实施例中,观看对象代理204甚至不传送关键帧之前出现的这部分字节流,以致内容处理程序124可以立即开始重放。在另外的其他实施例中,内容处理程序124可以开始重放,而无需关键帧,以致例如对于MPEG视频,在某个时间周期,图像可能是块状的(blocky)。
在步骤336,进行测试,以确定重放内容对象文件是否完成。一旦完成下载、播放该流,或者用户停止下载,则完成重放,处理过程结束。如果重放未完成,则处理循环返回步骤328。这样,用户与内容处理程序124交互,以采用HTTP传输流式传输内容对象。如果内容处理程序本身不支持HTTP传输,其他实施例可以使用外壳212和内容处理程序124流式传输内容对象。
参考图4,图4示出用于在进行重放操作的情况下流式传送的内容对象的处理过程400的实施例的流程图。所示的处理过程从步骤408开始,在步骤408,内容处理程序124对远程源服务器104内的内容对象文件发出HTTP请求。通过因特网108或某个其他分组交换网,内容处理程序124耦接到源服务器104。
在步骤412和416,分析要下载的文件。通常,根据文件名扩展,确定文件格式。在HTTP传输文件之前,根据发送的HTTP头(header),确定以字节为单位的文件长度。知道文件格式可以确定如何解释文件中的数据和头。在该文件中,文件头提供更多关于文件的内容的信息。通常,文件头包括位速率、编解码器以及其他格式信息。
如果提供关于内容文件的这种信息,则在步骤416确定该内容在文件内的位置以及该信息的格式。例如,文件名可以是文件大小为2,890千字节的“Beach Boys-Surfin’USA.MP3”。扩展“.MP3”规定该文件使用MPEG-1声频层3格式。在标准MP3文件头上,可以规定每秒160千位的编码速率以及2分零27秒的跟踪时间。此时,可以确定表示声频的部分内容文件,例如,如果该文件的头10千字节是头信息,则该文件的最后2,880千字节可以与声频数据对应。
在步骤420,下载并重放声频数据。在步骤424,确定是否完成流下载。假设下载还未完成,则处理过程继续到步骤428,在步骤428,检测用户的重放控制。如果不存在重放控制,则处理循环返回步骤420,在步骤420,以邻接或时间顺序方式继续下载该内容文件。
如果在步骤428,用户的确在控制重放,则处理过程分支到步骤432,在步骤432,确定HTTP字节范围以发出请求。根据用户规定的时间或百分比,可以内插任何一部分视频数据或声频数据的内容文件的字节范围。继续说明上面的例子,用户可以移动内容处理程序124上的滑动条,以指出“Surfin’USA”歌曲的中间位置,或该歌曲内的约1分零14秒的位置。假设静态编码速率,字节范围可以从该文件的中途开始直到后2,880千字节,或者在文件中的1,450千字节开始。一旦确定了新字节范围,则在步骤436,利用HTTP字节请求命令,源服务器104发出请求。在处理循环返回步骤420后,内容处理程序124接收并播放内容对象文件的后半部分。
在一些文件格式中,在数据流中周期性地发送关键帧。在收到下一个关键帧之前,可能不能进行重放。在接收文本对象的非邻接部分时,在开始重放之前,内容处理程序124可以等待接收下一个关键帧。本技术领域内的熟练技术人员明白,以上述方式进行重放控制可以播放利用HTTP传输、不是时间顺序邻接的内容文件的不同部分。
参考图5,图5示出以增强的精度流式传输内容对象的处理过程500的另一个实施例的流程图。在某种文件格式中,可以周期性地改变编码速率。因此,一次内插不能提供足够精度。以转换到一部分新重放过程中存在延迟为代价,对该实施例增加在步骤508进行精度测试。如果进行内插不能实现在1秒内或一些其他时间周期内的精度,则利用不正确位置的时间标记进行另一次内插,使得利用迭代方法达到该精度。
例如,如果请求中途直到1分钟歌曲的点,则选择在内容文件的数据部分的中间开始的字节范围。从数据流中检索下一个时间标记,并对内插估计检验下一个时间标记。在该例子中,时间标记可以指出由第一次内插获得的流中的20秒的点。在剩余的40秒的文件中进行内插,以估计请求的第二字节范围,等等,直到实现1秒的精度。尽管该实施例采用1秒的精度,但是可以采用任何时间周期、百分比或其他增量。
根据上述说明,容易理解本发明的许多优点。例如,内容处理程序可以使用普遍采用HTTP传输。源服务器不需要目前用于流式内容的有专有权的软件支持专有传送。此外,利用外壳和观看对象代理,可以对本身不支持HTTP传输的传统内容处理程序进行巧妙处理,以支持HTTP传输。
还可以采用本发明的许多变化和修改。例如,一些实施例可以缓存从源服务器接收的内容对象文件的任何部分。规定重放已经下载的部分的后续重放操作可以避免从源服务器请求该流。为此,可以从缓冲器中检索已经下载的部分。作为另一个例子,上述实施例采用特定内插算法确定字节范围,但是其他实施例可以采用任何已知的算法确定字节范围。
尽管上面结合特定设备和方法,对本发明原理进行了描述,但是显而易见,该描述仅作为例子,而不限定本发明范围。
权利要求
1.一种利用超文本传输协议(HTTP)传输播放流式内容对象的方法,该方法包括步骤利用HTTP,从分组交换网接收流式内容对象的第一部分;至少在时间上与所述第一接收步骤部分重合,播放该第一部分;以及接收流式内容对象的第二部分,其中在流式内容对象中该第二部分不与第一部分邻接。
2.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括至少与所述第二接收步骤部分重合、播放第二部分的步骤。
3.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括在播放第二部分之前,等待第二部分内的关键帧的步骤。
4.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,其中在时间上与第二部分相邻,播放第一部分,而不在中间进行任何重放。
5.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括检测与重放控制有关的用户输入的步骤,其中所述第二接收步骤至少部分响应检测步骤。
6.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括确定第二部分的字节范围的步骤。
7.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括确定第二部分在流式内容对象内的位置的步骤。
8.根据权利要求1所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括步骤请求远程服务器中的第一部分请求远程服务器中的第二部分。
9.一种利用HTTP传输播放流式内容对象的方法,该方法包括步骤利用HTTP,接收流式内容对象的第一部分;检测对应于流式内容对象的重放控制的用户输入;以及至少部分响应检测步骤,接收该流式内容对象的第二部分。
10.根据权利要求9所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括至少在时间上与所述第一接收步骤部分重叠、播放第一部分的步骤。
11.根据权利要求9所述的利用HTTP传输播放流式内容对象的方法,其中重放控制将重放点移动到流式内容对象内的非邻接点。
12.根据权利要求9所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括步骤至少与所述第一接收步骤部分重合,播放第一部分;至少与所述第二接收步骤部分重合,播放第二部分,其中在时间上邻接所述第二播放步骤,进行所述第一播放步骤。
13.根据权利要求9所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括检测与重放控制有关的用户输入的步骤,其中所述第二接收步骤至少部分响应检测步骤。
14.根据权利要求9所述的利用HTTP传输播放流式内容对象的方法,该方法进一步包括确定第二部分的字节范围的步骤。
15.一种用于利用HTTP传输播放流式内容对象的内容播放产品,该内容播放产品包括利用HTTP,接收流式内容对象的第一部分的代码;检测对应于流式内容对象的重放控制的用户输入的代码;至少部分响应检测步骤,接收该流式内容对象的第二部分的代码;以及包含所述代码的机器可读介质。
16.根据权利要求15所述的利用HTTP传输播放流式内容对象的内容播放产品,该内容播放产品进一步包括至少在时间上与所述第一接收步骤部分重叠、播放第一部分的代码。
17.根据权利要求15所述的利用HTTP传输播放流式内容对象的内容播放产品,该内容播放产品进一步包括至少与所述第一接收步骤部分重合,播放第一部分的代码;至少与所述第二接收步骤部分重合,播放第二部分的代码,其中在时间上邻接所述第二播放步骤,进行所述第一播放步骤。
18.根据权利要求15所述的利用HTTP传输播放流式内容对象的内容播放产品,该内容播放产品进一步包括检测与重放控制有关的用户输入的代码,其中所述第二接收步骤至少部分响应检测步骤。
19.根据权利要求15所述的利用HTTP传输播放流式内容对象的内容播放产品,该内容播放产品进一步包括用于确定第二部分的字节范围的代码。
全文摘要
根据本发明,公开了一种利用超文本传输协议(HTTP)传输播放流式内容对象的方法。在一个步骤中,利用HTTP,从分组交换网(108)接收第一部分流式内容对象。至少在时间上与所述第一接收步骤部分重合,播放该第一部分。接收流式内容对象的第二部分。在流式内容对象中,该第二部分不与第一部分邻接。
文档编号G06F13/00GK1596403SQ02823669
公开日2005年3月16日 申请日期2002年11月27日 优先权日2001年11月28日
发明者马克·R·汤普森, 内森·F·拉赛博斯基 申请人:奥罗卡斯特.Com公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1