用于从网络节点取回数字多媒体内容的系统和方法

文档序号:7634895阅读:129来源:国知局
专利名称:用于从网络节点取回数字多媒体内容的系统和方法
技术领域
本发明一般地涉及网络上的媒体流传输。具体来说但是不作为任何限制,本发明涉及一种用于在客户机-服务器的架构中从网络节点取回数字多媒体内容的系统和方法。
背景技术
随着因特网当今作为主要通信媒体的广泛使用,计算机网络越来越多地用来传输多媒体数据(例如音频、全动态视频、画面等)。在基于网络的背景中,用于产生信息的一种简单模型涉及客户机设备请求从服务器下载多媒体数据。一旦下载,客户机然后可以消费或者表示该信息。这一模型相对地易于实施;然而,它不是最优的,因为要求客户机在该表示可以开始之前等待下载完成。在涉及大块多媒体数据时延迟可能相当之大。
用于产生信息的较复杂模型涉及一个网络地点处的内容服务器通过网络将多媒体信息“流传输”到另一地点处的客户机。流传输是这样的过程,在该过程中,通过基于网际协议(IP)的网络而发送的包被用来如用户所感知的那样基本上实时地在素材到达时就向接收客户机连续地表示它。这样,客户机无须在显示素材之前下载和存储大型文件。也就是,客户机在信息到达时就开始表示它(即恰好及时的呈现),而不是在开始表示之前等待整个数据集到达。因而,在客户机设备处,为了多媒体内容的实时表示,接收的数据在由客户机接收之后立即地或者稍后地缓冲到高速缓存存储器中并连续地加以处理。
大多数流传输会话包括实况或者视频点播(VOD)源,而且通常与单个内容源(即单个VOD文件或者单个实况源,例如摄影机)相关联。然而,通过将组合源这一能力添加到单个流传输会话中,可以基于多媒体流传输来构建丰富得多的应用。
最简单形式的“播放表”只不过是可以用来简单地管理本地内容(即音频文件)的回放或者用来控制流传输媒体会话的媒体列表。当在多媒体流传输的背景中使用时,播放表提供了用于通过流传输将可定制的音频和视频内容传送给用户的可扩展动态方法。播放表代表了服务器可以用流传输到客户机的媒体项目的列表,其可以例如包括节目内容和广告(ad)的混合。播放表也可以用来播放若干短的剪辑或者用来向用户提供长的编程块。
在客户机-服务器的流传输架构中,可以提供两类播放表客户机侧的播放表和服务器侧的播放表。两类播放表之间的主要区别在于,当使用客户机侧的播放表时,客户机播放器应用具有对流传输体验的控制,而当使用服务器侧的播放表时,流传输服务器具有对流传输体验的控制。服务器侧的播放表为流传输服务器提供了在单个会话中将来自多个源的流(依次地)组合并流流传输到客户机的能力。客户机不需要(而且可以甚至于没有)意识到有多个媒体源。这一点对于提供ad插入功能来说或者对于希望(来自多个源的)无间断的流传输(即客户机无须明确地请求来自每个新源的流传输)这样的应用来说是有用的。
在利用服务器侧的播放表时的问题之一在于支持动态的播放表导航,这一点在向终端用户提供引人注目和有用的用户体验时是有利的。此外,由于有重要的客户机设备资源制约,播放表导航功能必须伴随有对客户机设备应用的最小影响。然而,现有的服务器侧播放表方案由于它们不支持对播放表搜寻的客户机侧导航控制而有不足。

发明内容
在一个方面中,本发明涉及一种用于从网络节点取回数字多媒体内容的方法,包括由在数字多媒体设备上执行的客户机应用生成到网络节点的消息,消息包含多维指针和定时参数中的至少一个,该多维指针指向与网络节点相关联的数字多媒体内容库,该定时参数可操作用以指示消息何时生效;以及由网络节点从多维指针所标识的特定内容源将数字多媒体内容传送到数字多媒体设备,传送在响应于定时参数而指示的时间开始。
在另一方面中,本发明涉及一种用于从网络节点取回数字多媒体内容的系统,包括与在数字多媒体设备上执行的客户机应用相关联的装置,用于生成到网络节点的消息,消息包含多维指针和定时参数中的至少一个,该多维指针指向与网络节点相关联的数字多媒体内容库,该定时参数可操作用以指示消息何时生效;以及用于由网络节点从多维指针所标识的特定内容源将数字多媒体内容传送到数字多媒体设备的装置,传送在响应于定时参数而指示的时间开始。
在又一方面中,本发明涉及一种可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,包括用于由在数字多媒体设备上执行的客户机应用生成到网络节点的消息的逻辑,消息包含多维指针和定时参数中的至少一个,该多维指针指向与网络节点相关联的数字多媒体内容库,该定时参数可操作用以指示消息何时生效;以及可操作用以回放来自多维指针所标识的特定内容源的流传输内容的播放器引擎,流传输内容在响应于定时参数而指示的时间开始。
在再一方面中,本发明涉及一种可操作用以用流传输数字多媒体内容到数字多媒体设备的网络节点,包括组织成具有多个级别的嵌套分级布局的数字多媒体内容库;用于对于在该数字多媒体设备上执行的客户机应用所发送的消息进行处理的逻辑,该消息包含指向该数字多媒体内容库的多维指针以及可操作用以指示该消息何时生效的定时参数,其中该多维指针包括与多媒体的多个嵌套分级级别对应的多个媒体标识符维度,也包括在最低级别设置的特定媒体块之内的相对时间偏移;以及用于从该多维指针所标识的特定内容源将内容流传输到该数字多媒体设备的逻辑,该流传输内容在响应于该定时参数而指示的时间开始。


附图被结合到说明书中而且形成说明书的一部分以图示本发明的一个或多个当前优选的示例性实施例。根据与所附权利要求相关地结合的以下具体描述并且参照附图,将理解本发明的各种优点和特征,在附图中图1描绘了本发明的实施例可以在其中加以实践的示例性网络环境;图2描绘了根据本发明的实施例可操作的服务器侧媒体管理系统的示例性实施例;图3描绘了根据本发明的实施例在用于流传输数字多媒体内容的网络环境中可操作的客户机-服务器布局的框图;图4是针对图3中所示的客户机-服务器布局的操作的一个方面的流程图;图5是针对图3中所示的客户机-服务器布局的操作的另一方面的流程图;图6A-6C描绘了与使用本发明的多维指针系统来访问的网络节点相关联的数字多媒体内容的示例性嵌套分级布局的各种方面;图7描绘了与用于从网络节点取回数字多媒体内容的实施例相关联的消息流示意图;图8描绘了与根据本发明的实施例用于切换到服务器侧播放表内容源的示例性PLAYLIST_PLAY过程相关联的请求/响应句法结构;以及图9描绘了与根据本发明的实施例的PLAYLIST_PLAY过程相关联的示例性返回代码表。
具体实施例方式
现在将参照如何能够最佳地实现和使用本发明的各种例子来描述本发明的实施例。相似的标号在说明书和附图的若干视图中通篇用来指代相似或者相应的部分。现在参照附图,特别是参照图1,其中描绘了本发明的实施例可以在其中加以实现的示例性网络环境100。标号102A和102B图示了网络基础结构,该网络基础结构可以除其他之外包括任何有线、无线、卫星或者线缆网络布局或其组合,该布局或其组合可以支持数字多媒体内容从服务器节点110到各种客户机设备的传送,该客户机设备能通过客户机-服务器的网络架构接受这样的内容。在一个实施中,网络102A可以包括比如因特网这样的公共分组交换网络,该网络可以经由包括窄带(例如拨号)接入机制和宽带(例如线缆、数字用户线或者DSL等)接入机制在内的适当接入手段来接入。可选地,网络120A可以实施为专用企业级内部网。无线网络102B可以实施为比如通用分组无线业务(GPRS)网络这样的无线分组数据业务网络,该网络为移动设备提供分组无线接入,该移动设备使用了基于全球移动通信系统(GSM)的载波网络的蜂窝基础结构。在更多的实施中,无线网络102B可以包括任一已知或者至今未知的第3代伙伴项目(即3GPP、3GPP2等)网络,该网络可操作用以服务于具有网际协议(IP)功能的手持设备,例如使用适当无线基础结构112的移动客户机设备114,该无线基础结构除其他之外包括短程无线保真(WiFi)接入点(AP)或者“热点”。如在下文中将看到的,无论网络102A、102B是怎样的任一特定有线或者无线网络实施,都将描述用于由客户机设备取回基于服务器的数字多媒体内容的本专利申请的实施例。
尽管服务器节点110示为耦合到网络102A的单个节点,但是它的功能可以根据底层的流传输媒体架构而分布于多个节点之间。示例性的客户机设备可以是胖客户机或者瘦客户机,该客户机具有可变的处理能力水平,可操作用以执行可以包括Java应用、插件等适当的流传输客户机应用。客户机设备可以包括一般地表示为计算机104的便携式计算机、膝上型计算机、手持计算机、桌面型计算机,一般地表示为A/V组件108的比如数字音乐播放器、数字视频播放器等网络感知式音频/视频(A/V)设备,或者比如iPODTM设备等的专用多媒体设备106。另外,如前面暗示的,客户机设备也可以包括能接受和播放数字多媒体内容的移动客户机设备(例如设备114)。
图2描绘了根据本发明的实施例与服务器(例如服务器节点110)相关联的服务器侧媒体管理系统200的示例性实施例。服务器侧媒体管理系统200可以包括媒体管理器210和数字多媒体内容数据库204,其中媒体管理器210控制对数据库204的访问。在一个实施中,媒体管理器210接收来自在数字多媒体设备上执行的客户机应用的请求,访问内容数据库,并将响应返回到客户机应用。如下文将描述的,数据库204用作为组织成嵌套分级布局的数字多媒体内容库,该布局以用来对数据库204中的媒体(即媒体项目)进行分类、标识和/或描述的参数为基础具有多个级别。例如,与服务器相关联的数字多媒体内容可以包含音乐文件,该文件可以在比如实时流传输协议(RTSP)这样适当的基于文本协议的控制之下通过网络来流传输。应当理解,其它媒体文件可以包括任一形式的数字媒体,该数字媒体可以包含声音文件、图片数据、电影、文本文件或者可以数字地存储于计算机上的任一其它类型的媒体。因而,服务器侧的播放表可以概括为媒体集合,包括混合的数字媒体的集合,每个播放表包含一个或多个单独的多媒体文件或者剪辑。媒体管理器202具有或者可以获得关于数据库204的信息,该信息可以例如包括服务器名、所用数据库的版本、所需安全性的类型、可为服务器所用的数据库数目、是否支持非标准媒体类型、是否支持持久性标识等。本领域技术人员应当理解,关于数据库204的信息可以存在于单个记录文件中或者可以根据需要部分地或者完全地生成,对所需的各条信息进行标识。一个或多个元数据文件206包含与在数据库204中可用的每个媒体项目有关的元数据。作为示例,当媒体项目是歌曲时,元数据可以例如包括歌曲名或标题、标识号、持久性标识号、歌手、专辑、歌曲大小、歌曲格式、所需比特速率和任何其它适当的信息,这可以取决于媒体类型。视频文件可以具有额外的字段,例如导演和制片人字段、男演员和女演员字段等。静态图片可以不需要比特速率信息。尽管一些字段可以是标准的,但是其它字段可以是某些应用所特有的。例如,除其它与视频有关的元数据信息之外,视频信号还可以具有辅助音频程序(SAP)信息。
播放表记录208包含与在数据库204中可用的每个播放表有关的信息,其中播放表通常由媒体剪辑的集合组成,该媒体剪辑可以具有任一特定的顺序,但也可以不这样。用户可以选择按照流派、情绪、歌手、导演/制片人、观众或者任一其它有意义的安排来组合媒体。尽管服务器110上的播放表将通常仅包括在它自己的音乐数据库204中包含的媒体剪辑,但是也有可能的是,根据服务器侧媒体管理系统200的实施,播放表记录208可以包括在其它服务器上存储的多媒体剪辑或者播放表。
图3描绘了根据本发明的实施例在用于用流传输数字多媒体内容的网络环境中可操作的示例性客户机-服务器布局300的框图,其中服务器侧的架构分布于多个可相互操作的模块之间。本领域技术人员应当理解,该客户机-服务器布局300是涉及上面参照图1和图2描述的服务器节点110和客户机设备的一个说明性的实施。在任一适当的数字多媒体设备上执行的流传输客户机应用302可操作用以针对经由路径316而提供的用户请求和用户反馈来与Web服务器306交互。与客户机应用302相关联的是媒体播放器引擎304,该引擎可以用软件、硬件、固件或其任一组合来实施,用于回放通过流传输会话而接收的流传输媒体。Web服务器306包括用以通过向服务器应用模块(AM)308发出元数据文件创建请求318来调用一表示描述的逻辑结构和功能,该服务器应用模块为特定播放表生成会话描述协议(SDP)文件。一般地,表示描述可以描述一个或多个表示,每个表示维持公共的时间轴。单个表示可以包含数个媒体流,该媒体流的描述包括编码信息、语言和其它参数,该其它参数使得客户机应用能够选择最适当的媒体组合。当涉及到多个媒体流时,有可能的是,它们可以位于不同的媒体服务器上;例如,可以在服务器上分离音频流和视频流以便负载共享。
作为例子,服务器流传输模块(SM)310、相关联的内容数据库312和本地内容管理器(LCM)314代表了媒体服务器,该媒体服务器用于经由实时媒体传送路径324将数字多媒体流传输到客户机播放器引擎304,该路径经由比如实时传输协议(RTP)这样的传输协议来实现。流传输事件经由路径322由流传输模块通知给服务器AM 308,而流传输会话状态更新经由路径320由服务器AM模块308提供给Web服务器306。Web服务器306可操作用以关于播放表和媒体内容管理以及播放表标识符(例如统一资源定位符或者URL)经由路径326来与LCM交互。
如上文暗示的,在客户机-服务器的布局300中对于具有实时特性的数据(即数字多媒体)的传送所施行的控制可以通过比如RTSP这样的应用级的基于文本的协议来实现,该协议可操作用以控制多个数据传送会话,提供用于对比如用户数据报协议(UDP)信道、组播UDP信道等传送信道进行选择的手段,以及提供用于对基于RTP的数据传送机制进行选择的手段。由于本专利公开的教导特别地是在RTSP消息接发的背景中举例说明的,所以紧接在下文中对其进行简短的描述。
RTSP建立和控制比如音频和视频这样的连续媒体的一个或多个时间同步流,其中待控制的流集合通过表示描述来限定。没有RTSP连接的概念;取而代之,服务器维护通常由标识符来标记的逻辑会话。一般地,RTSP会话不连接到比如传输控制协议(TCP)这样的传输层的连接。在RTSP会话期间,RTSP客户机应用可以开启和关闭通向服务器的多个TCP传输连接以发出RTSP请求。可选地,它可以使用比如UDP这样的无连接传输协议。
“表示”是通过使用表示描述信息来向客户机表示的一个或多个流的集合,作为完整的媒体馈送。在RTSP背景中的多数情况下,这意味着对这些流的聚合控制,但是也不必如此。表示描述包含与在表示之内的一个或多个媒体流有关的信息,比如编码集、网络地址和关于该内容的其它信息。比如SDP这样的其它因特网工程任务组(IETF)协议使用术语“会话”来描述实况表示。表示描述可以采用若干不同的格式,包括但不限于上文暗示的基于SDP的会话描述格式。
由RTSP控制的流可以将RTP用于数据传送,但是RTSP的操作不依赖于用以承载连续媒体的传输机制。RTSP的句法和操作类似于较为熟悉的超文本传送协议(HTTP)的句法和操作,不过二者之间仍然存在若干重要的区别。例如,RTSP服务器和客户机都可以发出请求,而HTTP是非对称协议,其中客户机发出请求而服务器进行响应。同样对于RTSP,通常通过不同的协议(例如RTP)使数据进行带外承载。以下操作得到RTSP的支持(i)从媒体服务器取回媒体;(ii)邀请媒体服务器参加会议;以及(iii)将媒体添加到现有的表示。
在整体操作方面,每个表示和媒体流可以通过RTSP URL来标识。例如,RTSP URLrtsp://media.example.com:554/twister/audiotrack标识了在表示“twister”之内的音频流,该音频流可以经由RTSP请求来控制,该请求通过TCP连接发到主机<media.example.com>的端口554。如先前指出的,该表示和该媒体的性质通过表示描述文件来限定,该文件可以由客户机应用通过使用HTTP或比如电子邮件和RTSPDESCRIBE请求这样的其它手段来获得,而且可以不必存储于媒体服务器上。下表概述了RTSP方法标记,该标记指示了要针对在请求消息中标识的源而执行的特定方法
表I

这些方法中的每个方法,无论是应用于单个流还是应用于一组流(即表示),通常具有许多报头字段,该报头字段用于进一步限定在客户机-服务器的布局中的RTSP事项。与之有关的额外细节以及有关的RTSP要求可以在IETF Request for Comments(RFC)2326,Schulzrinne等人的“Real Time Streaming Protocol(RTSP)”(日期为1998年4月)中找到,通过引用将其结合于此。
应当理解,RTSP通用到足以借助于用新的参数对现有方法进行扩展或者通过限定为了赋予增强型功能而设计的新方法来提供扩展。如在下文中将看到的,本专利公开提供了一种新方法,该方法实现了在比如上面描述的布局300这样的客户机-服务器布局之内针对服务器侧播放表的增强的播放表搜寻能力。
现在参照图4,其中示出了针对图3中所示的客户机-服务器布局300的操作的一个方面的流程图。Web服务器306可操作用以可能在用户针对该服务进行注册时生成初始播放表(块402)。在一个实施中,初始播放表可以简单地是稍后获得定制的缺省播放表。客户机应用302向Web服务器306发出访问特定播放表的请求(块404),因此服务器306针对与具体播放表有关的SDP文件而向服务器应用模块308上的CreateMetafile服务发出请求(块406)。CreateMetafile服务随后将该请求传播到LCM 314以查找SDP文件(块408)。本领域技术人员应当理解,SDP文件包含可能已经经由RTSP DESCRIBE请求而获得的数据以及包含附加信息,因此客户机应用302无须发出单独的RTSPDESCRIBE请求。响应于SDP文件,LCM 314开启播放表文件和一个或多个适当的媒体文件,生成SDP信息,而且将它返回到CreateMetafile服务(块410),该服务又将SDP文件传递到进行请求的Web服务器306(块412)。随后,Web服务器306将播放表(先前生成的)和对应的SDP文件返回到在数字多媒体设备上执行的客户机应用302(块414)。客户机应用302将SDP文件传递到播放器引擎304,该引擎建立与流传输模块310的流传输会话以便接受所选媒体的传送(块416)。例如,当涉及音频文件时,它们可以用比如高级音频编码(AAC)、Windows MediaAudio(WMA)、MP3等许多方式来编码。
在又一变形中,在生成SDP文件时可以不涉及LCM 314。取而代之,CreateMetafile服务直接地向流传输服务器(经由RTSP DESCRIBE)发出请求以接收基本的SDP描述。随后,CreateMetafile服务修改所接收的SDP描述以使之适合于客户机消费。此外,播放表文件不必在所有情况下都随着SDP文件传送到客户机应用。在客户机应用理解播放表文件句法的一个实施例中,除了SDP文件之外,还可以提供播放表,由此允许更丰富的用户体验和与客户机的交互。在客户机可能完全不知道整体播放表的情况下,它将仅接收SDP文件。
图5是针对图3中所示的客户机-服务器布局的操作的另一方面的流程图。服务器侧的流传输模块310可操作用以将定期消息(例如RTSP中的SET_PARAMETER消息)发送到播放器引擎304,指示了切换到在所选播放表之内的新媒体剪辑或者整体地切换到新的播放表(块502)。响应于此,播放器引擎304将剪辑切换消息中的定时信息传递到客户机应用302以协调用于向用户进行显示的媒体同步操作(块504)。此外,客户机应用302也可以基于用户反馈将用户偏好的定期更新发送到Web服务器306(块506)。响应于此,Web服务器306基于用户偏好来创建新的播放表而且将之推送到LCM。随后,LCM返回在请求来自这一新播放表的流传输时会用到的URL(块508)。在又一方面中,客户机应用302可操作用以请求来自新播放表的流传输,因此Web服务器306返回播放表URL,而且还可以可选地返回新播放表文件(块510)。响应于此,客户机应用302指示播放器引擎304将适当的消息发送到流传输模块310以切换到来自新播放表的流传输(块512)。如图5中所示,提供了两个示例性实施例用于实现服务器侧的播放表切换RTSP SET_PARAMETER方案,该方案在SET_PARAMETER消息中限定了新的附加参数(块514);以及称作PLAYLIST_PLAY的新方法,该方法为现有的RTSP方法限定了新颖的扩展方案(块516)。SET_PARAMETER方案在有关的共同未决、共同转让的专利申请中有描述,该申请的标题为“SYSTEM AND METHODFOR RETRIEVING DIGITAL MULTIMEDIA CONTENT FROM ANETWORK NODE”,与本申请同日提交(代理案号1285-165PCT),通过引用将其结合于此,而且在本专利公开中将不用额外的细节具体地进行阐述。下面在具体实施方式
的以下部分中对涉及多维指针系统的PLAYLIST_PLAY扩展方案进行阐述,该系统包括多维m元组的相对偏移定时变量。
参照图6A-6C,其中描绘了与使用本发明的多维指针系统来访问的网络节点相关联的数字多媒体内容的示例性嵌套分级布局的各种方面。本领域技术人员应当理解,网络节点在一个实施中可以包括一个或多个服务器侧节点(即媒体服务器),一个或者多个web服务器与其耦合用来实现流传输事务。换句话说,数字多媒体内容可以遍布于不同的数据库,不过它在这里表现为具有多个级别的单个嵌套的分级布局。
图6A中的标号600A指代了数字多媒体的示例性物理内容分级。如先前阐述的,物理内容602可以由播放表605和媒体剪辑607组成。图6B中的标号600B指代了与数字媒体相关联的示例性逻辑内容分级。逻辑内容603由多个主要级别的播放表标识符604-1至604-N组成,每个标识符可以包括对一个或多个媒体剪辑和/或一个或多个附加播放表(即辅助播放表)的引用。每个辅助播放表引用还可以包括对附加媒体剪辑引用的引用。如图所示,播放表标识符604-2包括对M个媒体剪辑的引用606-1至606-M以及辅助播放表引用608,该辅助播放表引用又包括对其它多个媒体剪辑的引用610-1、610-2,依此类推。
根据当前优选的示例性实施例,在对特定剪辑之内的参考点进行标识时用到的剪辑级别定时变量可以描述为数字多媒体分级的m元组相关,其中用多级的父子关系来安排内容,每级具有它对应的唯一标识符,这一点在上文中有阐述。换句话说,是将时间轴分别地依附到位于最低级(即位于叶节点级)的媒体的每个单独块,其中分级600B包括媒体剪辑。作为将媒体内容组织成“n”个嵌套级(也就是第(i)级跨越多个第(i-1)级节点,每个第(i-1)级节点又跨越一个或多个第(i-2)级节点,依此类推,每级具有它自己的唯一标识符)的概括,提供了多维指针参数作为(n+1)元组{[Identifier][n];[Identifier][n-1];[Identifier][n-2];...;[Identifier][1];[time]}
其中每个较低级的标识符还在整个分级中限定了媒体。剪辑级别的time变量可以限定为采用各种值,范围从所标识的剪辑的开始点到它的结束点。根据实施,time变量还可以提供为相关于特定媒体块的相对时间偏移,该媒体块通过n个媒体标识符维度(即(n+1)元组的n维媒体标识符部分)来标识。
图6C中的标号600C指代了与根据上面所述教导的服务器侧数字媒体相关联的示例性可访问性分级。为了唯一地标识和访问在说明性的数字多媒体内容数据库之内的特定媒体块(例如媒体剪辑),可访问性分级620分解成播放表标识符622和媒体剪辑标识符624。媒体剪辑偏移626可以用来指定流传输应当在所标识的剪辑之内的哪一点开始。可以提供另一定时参数628(称作有效时间或者激活时间)用以确定何时满足由客户机启动的播放表导航请求(例如NOW(现在)、END OFCLIP(剪辑结束)和END OF PLAYLIST(播放表结束)或者基于时钟的时间值)。
在正常回放期间,服务器侧的网络节点(即与Web服务器集成的或者与之相关联的流传输模块)可操作用以无缝地开启在播放表中的每个连续内容元文件而且无间断地继续进行流传输,这由播放器引擎看作为连续的RTP会话。图7描绘了与用于通过飞行式地跳跃到新的媒体剪辑或者新的服务器侧播放表(即动态的播放表更新或者切换)从网络节点取回数字多媒体内容的实施例相关联的消息流示意图。客户机播放器应用302和相关联的播放器引擎304被概括成数字多媒体设备701,该设备被设置于具有概括的服务器侧网络节点703的客户机-服务器布局中,该服务器侧网络节点包括流传输模块310。在将PLAY消息702从播放器应用302传播到它的播放器引擎304(经由适当的应用程序接口连接)时,生成RTSP SETUP消息304到流传输模块310。与之有关,RTSP PLAY消息706由播放器引擎304发送到流传输模块310,该引擎然后实现其间的流传输数据传送会话。当请求跳跃到新的剪辑或者切换到新的播放表时,客户机播放器应用302将例如SWITCH请求708这样的播放表导航请求经由适当的API发送到播放器引擎304,该引擎然后将RTSP PLAYLIST_PLAY(或者是缩写形式的PL_PLAY)709发送到流传输模块310。如图所示,该请求包括新范围报头,该报头包含3元组指针参数,该参数标识了所请求的播放表的URL、在播放表之内的媒体剪辑索引和在剪辑之内的相对偏移。此外,也包括有效时间(即该请求何时是有效的)作为定时参数。如前面暗示的,在一个实施中,满足请求的时间的可接受值包括NOW、END OFCLIP和END OF PLAYLIST。来自流传输模块310的成功响应710简单地返回向客户机播放器应用302回传的经修改的范围报头,但是没有激活时间。RTSP SET_PARAMETER调用712是优选地基本上就在出现实际的播放表/剪辑转变时由流传输模块310进行的,以便指示在出现切换到下一剪辑时的时间值(时间=ts)。响应于此,CALLBACK(回呼)消息714由播放器引擎304传播到客户机播放器应用302,该应用将[时间=ts]映射到正常播放时间(NPT)的时间戳。
图8描绘了根据本发明的实施例的与用于切换到服务器侧内容源(新的剪辑或者新的播放表)的示例性PLAYLIST_PLAY过程相关联的请求/响应句法结构。PLAYLIST_PLAY请求802在它的范围报头中包括称为“playlist_play_time”的新范围类型,其是播放表URL、剪辑索引和相对偏移(在指示始于剪辑开头的例子中表示为“0”)的3元组。然后有附加的定时参数,该参数代表了满足请求时的有效时间(例如NOW)。标号804指代了如上所述来自流传输模块的响应消息。SET_PARAMETER请求806由流传输模块生成,其中有效时间被映射到NPT时间以向客户机应用通知何时可以开始来自所标识的内容源的流表示。利用此信息,客户机播放器应用可以相应地更新剪辑标语信息。此外,也向客户机播放器应用提供信息,用以导出与来自新播放表中所请求的媒体源的第一RTP包对应的RTP时间戳。在成功完成消息收发过程时,响应于SET_PARAMETER请求806,提供客户机播放器应用的RTSP响应808。
当用户/客户机发出跳跃到新剪辑/播放列表的请求,但是流传输模块在试图从所标识的媒体源开始流传输而遇到错误时,适当的错误代码可以由流传输模块提供。图9描绘了根据本发明实施例的与PLAYLIST_PLAY过程相关联的示例性返回代码表900。“故障现象(symptom)”栏902描述了与在“返回代码”栏904中标识的各种代码对应的多个条件,该“返回代码”栏可以包括实施所特有的数字或者字母数字代码。“行为”栏906描述了可能在示例性的PLAYLIST_PLAY过程中遇到的每个条件的效果。例如,如果没有找到播放表文件,则规定的行为可以使得流传输模块继续从当前播放表(即在传播播放表更新请求时播放的播放表)传输流。在请求安全播放表文件时或者如果确定所请求的播放表文件遭破坏则也可以规定类似的行为模式。当确定所请求的剪辑遭破坏时,可以在来自流传输服务器的SET_PARAMETER请求中处理该行为。
作为说明,当请求动态播放表更新时,服务器侧节点的流传输模块可操作用以开启新的内容文件,验证它是有效的,而且预备在该请求中所指定的时间切换到所标识的媒体源。如果新的播放表本身是有效的,但是剪辑丢失,则将继续流传输播放表中在发出的更新请求所针对的剪辑之后的下一可用剪辑。在这一情况下,PLAYLIST_PLAY响应中新的范围报头中的剪辑索引值将指示实际上将用流发送的下一剪辑。如果相继的剪辑也包含错误,则流传输模块可操作用以继续跳跃到在所请求的播放表中的下一剪辑,直至达到最后的剪辑、更新播放表或者找到成功的剪辑为止。
基于前面的具体实施方式
,应当理解,本发明公开有利地提供了用于流传输客户机应用的如下能力,该能力请求流传输服务器节点在播放表边界之内或者跨越播放表边界动态地导航。通过按照多维指针对时间参数进行表征,该导航可以用如下形式来实现从其它播放表文件跳跃到同一播放表之内的媒体源,和/或从当前的播放表或者不同的播放表跳跃到媒体源之内的不同偏移。由于嵌套播放表文件的组成,也可以创建播放表文件以递归地包含其它播放表文件。也就是,在播放表中限定的媒体源本身可以由在另一播放表中限定的其它媒体源一起组成。本领域技术人员将认识到,无论是怎样的底层流传输架构(例如RealMedia、Windows Media、QuickTime等),这一高效的概念都会带来多媒体流传输中的许多应用的灵活性。另外,应当认识到,本公开的教导可以与比如会话发起协议(SIP)、H.323等其它客户机/服务器协议结合起来实现。
尽管已经参照某些示例性实施例描述了本发明,但是将理解到所示和所述的本发明的形式仅视为示例性实施例。因而,在不脱离如所附权利要求中限定的本发明的精神和范围情况下可以实现各种变化、替换和改型。
权利要求
1.一种用于从网络节点取回数字多媒体内容的方法,包括由在数字多媒体设备上执行的客户机应用生成到所述网络节点的消息,所述消息包含多维指针和定时参数中的至少一个,该多维指针指向与所述网络节点相关联的数字多媒体内容库,该定时参数可用于指示所述消息何时生效;以及由所述网络节点从所述多维指针所标识的特定内容源将数字多媒体内容传送到所述数字多媒体设备,所述传送在响应于所述定时参数所指示的时间开始。
2.如权利要求1所述的用于从网络节点取回数字多媒体内容的方法,其中由所述客户机应用生成的所述消息包括遵循实时流传输协议(RTSP)的PLAYLIST_PLAY消息,该PLAYLIST_PLAY消息包括在所述消息的范围报头中的所述多维指针。
3.如权利要求1所述的用于从网络节点取回数字多媒体内容的方法,其中所述数字多媒体内容库被组织成具有多个级别的嵌套分级布局,该多个级别对应于所述多维指针的相应媒体标识符维度。
4.如权利要求3所述的用于从网络节点取回数字多媒体内容的方法,其中所述数字多媒体内容库的第一级包括由统一资源定位符标识的至少一个服务器侧播放表。
5.如权利要求4所述的用于从网络节点取回数字多媒体内容的方法,其中所述至少一个服务器侧播放表包括一个或多个媒体剪辑,每个媒体剪辑通过对应媒体源标识符和在所述媒体剪辑之内的相对时间偏移来标识。
6.如权利要求1所述的用于从网络节点取回数字多媒体内容的方法,其中所述数字多媒体设备通过有线网络、无线网络和线缆网络中的至少一个网络来访问所述网络节点。
7.如权利要求1所述的用于从网络节点取回数字多媒体内容的方法,其中所述数字多媒体设备包括能够接受流传输媒体的数字音乐播放器、数字视频播放器、计算机和手持通信设备中的至少一个。
8.如权利要求1所述的用于从网络节点取回数字多媒体内容的方法,其中所述定时参数用来标识所述网络节点何时满足所述消息,而且可用于采用从包括NOW、END OF CILP和END OF PLAYLIST的组中选择的值。
9.一种用于从网络节点取回数字多媒体内容的系统,包括与在数字多媒体设备上执行的客户机应用相关联的装置,用于生成到所述网络节点的消息,所述消息包含多维指针和定时参数中的至少一个,该多维指针指向与所述网络节点相关联的数字多媒体内容库,该定时参数可用于指示所述消息何时生效;以及用于由所述网络节点从所述多维指针所标识的特定内容源将数字多媒体内容传送到所述数字多媒体设备的装置,所述传送在响应于所述定时参数所指示的时间开始。
10.如权利要求9所述的用于从网络节点取回数字多媒体内容的系统,其中由所述客户机应用生成的所述消息包括遵循实时流传输协议(RTSP)的PLAYLIST_PLAY消息,该PLAYLIST_PLAY消息包括在所述消息的范围报头中的所述多维指针。
11.如权利要求9所述的用于从网络节点取回数字多媒体内容的系统,其中所述数字多媒体内容库被组织成具有多个级别的嵌套分级布局,该多个级别对应于所述多维指针的相应媒体标识符维度。
12.如权利要求11所述的用于从网络节点取回数字多媒体内容的系统,其中所述数字多媒体内容库的第一级包括由统一资源定位符标识的至少一个服务器侧播放表。
13.如权利要求12所述的用于从网络节点取回数字多媒体内容的系统,其中所述至少一个服务器侧播放表包括一个或多个媒体剪辑,每个媒体剪辑通过对应媒体源标识符和在所述媒体剪辑之内的相对时间偏移来标识。
14.如权利要求9所述的用于从网络节点取回数字多媒体内容的系统,其中所述数字多媒体设备可用于通过有线网络、无线网络和线缆网络中的至少一个网络来访问所述网络节点。
15.如权利要求9所述的用于从网络节点取回数字多媒体内容的系统,其中所述数字多媒体设备包括能够接受流传输媒体的数字音乐播放器、数字视频播放器、计算机和手持通信设备中的至少一个。
16.如权利要求9所述的用于从网络节点取回数字多媒体内容的系统,其中所述定时参数用来标识所述网络节点何时满足所述消息,而且可用于采用从包括NOW、END OF CILP和END OF PLAYLIST的组中选择的值。
17.一种可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,包括用于由在所述数字多媒体设备上执行的客户机应用生成到所述网络节点的消息的逻辑,所述消息包含多维指针和定时参数中的至少一个,该多维指针指向与所述网络节点相关联的数字多媒体内容库,该定时参数可用于指示所述消息何时生效;以及可操作用以回放来自所述多维指针所标识的特定内容源的流传输内容的播放器引擎,所述流传输内容在响应于所述定时参数所指示的时间开始。
18.如权利要求17所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述消息包括遵循实时流传输协议(RTSP)的PLAYLIST_PLAY消息,该PLAYLIST_PLAY消息包括在所述消息的范围报头中的所述多维指针。
19.如权利要求17所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述多维指针包括多个媒体标识符维度,该多个多媒体标识符维度对应于所述数字多媒体内容库被组织成的多个嵌套分级级别。
20.如权利要求19所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述多个媒体标识符维度的第一级包括标识服务器侧播放表的统一资源定位符。
21.如权利要求20所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述多个媒体标识符维度的第二级包括用于对所述服务器侧播放表之内的特定媒体剪辑进行标识的媒体源标识符以及另一服务器侧播放表标识符中的至少一个标识符。
22.如权利要求21所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述多维指针包括在所述特定媒体剪辑之内的相对时间偏移。
23.如权利要求17所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,还包括用于通过有线网络、无线网络和线缆网络中的至少一个网络来访问所述网络节点的装置。
24.如权利要求17所述的可操作用以从网络节点取回数字多媒体内容的数字多媒体设备,其中所述定时参数用来标识所述网络节点何时满足所述消息,而且可用于采用从包括NOW、END OF CILP和ENDOF PLAYLIST的组中选择的值。
全文摘要
一种用于从网络节点取回数字多媒体内容的方案。由在数字多媒体设备上执行的客户机应用提供消息到网络节点,其中该消息包含多维指针以及定时参数,该多维指针指向与网络节点相关联的数字多媒体内容库,该定时参数可操作用以指示该消息何时生效。多维指针包含相对时间偏移变量以及与数字多媒体内容被组织到的多个嵌套分级级别对应的多个媒体标识符维度。响应于该消息,将来自多维指针所标识的特定内容源的内容在响应于定时参数所指示的时间用流传输到数字多媒体设备。
文档编号H04N7/025GK101095348SQ200580013084
公开日2007年12月26日 申请日期2005年3月3日 优先权日2004年3月3日
发明者托马斯·曾, 迈克尔·福斯特, 迈克尔·塞弗拉, 舍克·陈, 格雷格·P·舍伍德, 吴伟, 戴维·科西巴 申请人:分组视频网络技术方案有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1