内容/服务处理及输送 【技术领域】
本发明涉及内容/服务处理及输送。
背景技术
由于用户选择交互作用一定会影响观看主要节目或分割观看的屏幕以及他们对各节目的注意力,所以交互电视(ITV)有其限制。数字家庭个人视频记录(PVR)设备的引入通过提供存储(记录)许多小时的内容的能力并通过使用关联的电子节目指南控制记录,提升了用户的体验。家庭PVR设备每次记录一个节目,且是面向内容的而非广泛包含内容和服务的输送。进一步,如果在距节目广播的时间较远的时刻回放,则可以容易地使记录的节目中包含的广告过时。
视频点播系统向用户提供对单个有效视频资源库的访问,该有效视频资源库由供应商的判断力来维护,并且用户的选择余地有限。
【发明内容】
本发明的一个方面的特征为增强型回放方法,包括:从与源相连地源链路接收实时内容;同时使用容错及负载平衡方法将实时内容保存为存储内容;将实时内容与来自附加内容的存储的内容聚集;响应来自终端系统上的用户的用户请求,使用直通式(cut-through)转发方法输送实时的或已存储的内容。实时内容和附加内容是数据。数据包括以下一种或多种:音频/视频数据、网页、图像、图形、软件程序、软件脚本、非线性作品、多媒体作品、语音、数据呼叫及数据消息。
直通式转发方法包括:接收在内容存储及直通式转发系统的输入元件中的内容;将输入元件中的内容发送至内容存储及直通式转发系统中的至少一个存储转发元件,每一存储转发元件包括缓冲器及本地存储子系统;并将来自缓冲器或本地存储子系统的内容发送至内容存储及直通式转发系统的输出元件。存储器使用内容存储及直通式转发系统,或由内容传播及直通式路由选择系统管理的直通式转发系统的网络。
本方法进一步包括通过内容存储及直通式转发系统的网络对内容进行传播及路由选择。可以在网络中的一个或多个内容存储及直通式转发系统中接收、替换、插入、分段、存储及重装配内容。
在另一个方面,本发明的特征为内容/服务处理及输送系统,包括:源输入/输出(I/O)链路、内容处理子系统、与源输入链路相连的内容处理系统、与内容处理系统相连的服务输送子系统、与服务输送子系统和终端I/O链路相连的输入及交互子系统、与服务输送子系统相连的多个终端I/O链路。
内容处理子系统包括:内容导入器、服务网关链路及存储器子系统。存储器子系统存储内容信息库及内容库中的所有内容,存储器子系统与多个内容导入器及服务网关链路相连。
每个内容导入器包括:导入处理器,用于处理并准备接收的内容以备后续的存储及使用;导入操作接口,与导入处理器相连,用于配置并控制导入处理器;和信息数据库接口,用于连接相关的与导入处理器一起使用的相关信息库。
存储器子系统使用内容存储及直通式转发系统,或由内容传播及直通式路由系统管理的直通式转发系统的网络。
本发明的实施例具有以下一个或多个优点。
该系统及方法是用户驱动的且可根据用户的需要度身定制,并根据用户随时间而变化的需求而提供扩充性及自适应性。消除了在个人视频录制、视频点播及交互服务之间的差异、障碍和冲突。
该系统及方法被设计为服务提供商向用户提供以有效、负载平衡及容错的方式对来自所有源的实时内容、时移(time-shifted)内容及时延(time-delayed)内容的访问。例如在实施例中,这包括数字有线电视、数字用户线路(DSL)系统和住宅宽带(residential broadband)因特网。
该系统支持直通式输送,使得在内容同时透明地存储于提供商内容库中时,用户可以使用内容。
该系统可以为每一用户保持个人视频指南。例如在实施例中在个人视频指南中为所有有用的东西保持了状态信息,且使用视频书签机制在用户正使用的所有内容中追踪用户的当前位置。
用户可以无缝地访问它们希望的数目的同时播出的节目。例如在实施例中,用户完全可以访问正在进行的节目,并可以访问之前播出的节目。因为系统可以存储在所有频道的所有节目,所以用户无需事先决定记录什么节目。
该系统可以自动存储各用户开始观看的所有节目,并且可以在各用户的个人视频指南中应用多种策略来放出节目。该系统消除了观看正播出的电视与观看先前录制的内容之间的差别。
该系统使用户可以拥有多个活动节目,并使用原始节目切回到他们停止的地方。例如在实施例中,用户可以停止使用电视一段时间而不错过这段内容。
该系统支持个性化的内容组合,其中在使用时为每一用户由内容元素组合节目。例如在实施例中,可以考虑用户期望的观看角度而提供电影,或者节目可以包括对视频元素的链接,从而提供更多感兴趣的人或事的相关信息。
该系统支持个性化的交互广告,其中在使用时为每一用户由内容元素组合广告。广告可以自己发布,或作为对其它内容的增强而发布。例如在实施例中,可以更新或替换陈旧广告,可以根据多种准则个性化广告,广告可以提供到其它内容及服务的链接;用户可以标记出不想要的广告,可以响应用户表达的偏好而发布广告;可以根据需要或响应用户对信息的请求或搜索而发布广告;与广告的交互可以改变接下来要显示的广告数量及种类;广告对所有用户是相同的,但是与广告的交互可以个性化;广告可以非线性的允许用户深入探究相关产品或服务的各方面;等等。
从下面的说明将更清楚地看到进一步的方面、特征和优点。
附图和下面的说明将介绍本发明的一个或多个实施例的细节。由说明、附图及权利要求,可以更清楚地理解本发明的其它特征、目的及优点。
【附图说明】
图1是内容/服务处理及输送网络的示例框图;
图2是图1的内容/服务处理及输送系统的框图;
图3是图2的内容导入元件的框图;
图4是用于实时及时移音频/视频内容的交互输送的内容/服务处理及输送系统的示例框图;
图5是内容处理过程的流程图;
图6是播放过程的流程图;
图7是暂停过程的流程图;
图8是恢复过程的流程图;
图9是改变频道过程的流程图;
图10是倒放过程的流程图;
图11是快进过程的流程图;
图12是作记号过程的流程图;
图13是搜索及选择过程的流程图;
图14是终止过程的流程图;
图15是用于交互广告内容及服务的内容/服务处理及输送系统的示例框图;
图16是图2的内容/服务处理及输送系统中使用的内容存储及直通式转发系统的框图;
图17是显示图2的内容/服务处理及输送系统中使用的内容传播及直通式路由选择系统的图。
不同附图中相似的参考符号代表相似的元件。
【具体实施方式】
参考图1,示例性的内容/服务处理及输送网络10包括一个或多个通过通信机构14链接到内容/服务处理及输送系统16的源系统12。内容/服务处理及输送系统16通过通信机构18链接到一个或多个终端系统20。网络10中的源系统12向内容/服务处理及输送系统16提供内容和/或服务。系统16处理并输送内容、服务、以及内容与服务的组合。作为例子,用内容说明网络10中的系统16。然而,应意识到,对服务的处理及输送和内容与服务的组合的处理及输送应用相同和相似的说明。内容可以是任意数据类型。例如,内容可以是音频/视频及相关数据、在线或电子文件、网页、图像、图形、软件程序及脚本、非线性及多媒体作品、语音、视频、数据呼叫、数据消息等。在最简单的形式中,内容是以多种格式,如MPEG-2、MPEG-4、Quicktime、Real、ASF等,同基本交互性、暂停、快进、倒放、书签等一起输送的量产音频/视频。内容可望通过多种技术的应用演变为日益丰富的交互式混合媒体体验,所述的技术包括万维网联盟建议、具有级联风格层(Cascading Style Sheets,CSS)及脚本的HTML(即DHTML)、文档目标模型(Document Object Model,DOM)、WebCGM、可扩展矢量图形(Scalable Vector Graphics,SVG)、同步多媒体集成语言(Synchronized Multimedia Integration Language,SMIL)等等、JavaScript、Java和Personal Java、Macromedia Flash and Shockwave、Adobe LiveMotion、ATVEF、PowerTV、Active-X、Active Server Pages等等。
内容可以集成对商业事务和多种在线及离线服务的链接:呼叫中心、邮件中心、Web站点等等。内容可以是交互内容对象的可分解集合,在使用时所述集合被用户浏览或者被提供商以一种个性化的方式为每一用户组合。后者尤其引人瞩目,因为用户可能只对产品的特定方面感兴趣而对其它方面不感兴趣。
网络10中的终端系统20从内容/服务处理及输送系统16接收内容和/或服务。终端系统20通常包括输出设备、输入设备、存储器、处理元件、外设等的某种组合。输出设备通常可以从内容/服务处理及输送系统16和/或终端系统20中的存储器及处理元件接收不同的内容,并将其提供给一个或多个用户(未显示)。输入设备通常可以检测音频、可视、手动、和/或其它信息,并把它们发送到终端系统20内的存储器和处理元件或发送到内容/服务处理及输送系统16。用户可以是使用终端系统的一个人或一群人。
在另一实施例中,内容/服务处理及输送系统16可以是用于一个或多个附加内容处理和输送系统(未显示)的源和/或终端系统。内容/服务处理及输送系统的这种结构可以在下面介绍的内容传播及直通式路由选择网络中实施。
通信机构14和18可以包括若干通信方法或系统中任一种。例如,通信机构14和18可以包括电子、光学和无线总线、链路、网络、分组媒体、卫星和地面无线系统。其它例子包括有线电视系统、电话系统、通用和专用网络、因特网等。通信方法可以包括例如点对点、多点传送、基于连接或无连接的广播。
内容/服务处理及输送系统16通常作为中介处理众多源系统和众多终端系统之间的内容和服务的输送。内容/服务处理及输送系统16通常接收来自众多源系统12的内容(尤其是实时内容)和服务。内容/服务处理及输送系统16有存储、处理及输送从所有源系统12接收的全部内容的能力,它通常响应一个或多个用户请求,提供各种服务并将选择的内容及服务输送至一个或多个终端系统20。选择的内容被内容/服务处理及输送系统16实时或时移地输送至一个或多个终端系统20,实时即在系统16从源系统12接收时,时移即比系统16开始从源系统接收内容延迟一定时间。术语“时移”可与术语“存储”互换。内容/服务处理及输送系统16可以在被输送至一个或多个终端系统20之前,增强选择的内容及服务。增强可以包括响应用户请求,对内容的处理、组织、和/或集成,从而使终端系统20和内容处理及输送服务系统16之间的通信为交互式的。
正如下面将要介绍的,内容/服务处理及输送网络10被设计为有效、容错、负载平衡的,其中内容(尤其是实时内容)仅需通过网络10一次以被存储,或在输送至终端系统20时通过。内容可以经一个或多个内容/服务处理及输送系统路由,并由这些系统随意地存储或高速缓存。于是,向用户提供了对实时及时移内容的访问,以及实时和/或时移内容的作品。例如,存储的视频或动画广告可以被拼接为实时或时移内容(音频/视频、网页及其它文件、ATVEF、交互图形等等),流过网络10。
参考图2,图1的内容/服务处理及输送系统16包括元件及元件间数据流的集合。这些元件包括:内容导入元件30、服务网关元件32、内容信息元件34、内容库元件36、一个或多个服务元件38、原始作品(primitive composition)元件40、和输入及交互元件42。所有数据流都是双向(或多向)的,且尽管在优选实施例中冗余通信机构用于多数元件之间以得到可扩展性、容错、和负载平衡,但冗余路径不代表冗余通信机构。处理元件、存储器、内存、总线等可以由系统16中的各种元件30、32、34、36、38、40和42使用和/或共享。
内容/服务处理及输送系统16由例如交互电视服务提供商部署或管理,以作为对众多始发者和众多交互电视用户之间的内容及服务的处理中介。内容/服务处理及输送系统16在一个方面被设计为包括:可缩放的能力,以始终导入来自所有源的所有内容;存储一段时间的内容;并向用户提供对内容的实时及时移的访问。
参考图3,内容导入元件30使用一个或多个导入器50执行内容导入,导入器50通过操作者接口(未显示)和各种相关信息库(未显示)而配置并管理。导入器50处理并准备后面要存储并使用的内容。类似的内容被编码为数字格式。数字内容可以被重编码、代码转换、译码等。导入的内容可以与系统16的其它元件包括其它导入器通信。
可以关联带内或带外接收的内容的多种情况。关联的内容可以同时或不同时接收。例如,电视节目的内容可能包含带内描述信息和/或节目描述可能在节目播出之前,或许是前夜,已经接收了。为了同步带外的关联内容,可以同步导入器50。
由一个或多个导入器50导入的内容可以影响其它导入器的操作。例如,由一个导入器接收的接合信息可以被传送到另一导入器,从而导致后者将其正在输入的内容分段。
导入器50的操作可以影响另一系统元件,或被另一系统元件所影响。典型地,可以使用配置信息、程序调度表及频道指派、通用资源标识符、以及其它源规格来协助操作者管理内容的导入。
再次参考图2,由系统16导入、生成、和/或收集的内容可以存储于和/或经内容库36和内容信息库34路由。通常内容库36包含的内容可以直接呈送至输出设备,而无需中间翻译或解释。内容信息库34通常包含在获取及使用内容期间需要并收集的辅助数据。这里将术语“信息库”解释为以任一方式,包括数据文件、目录、数据库等,组织的任意数据或数据集。内容库中的内容及内容信息库中的信息由内容管理器(未显示)通过多种管理接口(未显示)、内容信息库、及可能的其它信息库(未显示)进行管理。内容管理器控制系统16中用于通过系统16对内容存储、转发、传播及路由的资源,如处理、存储、通信等等。内容管理器还控制并监控终端系统20中的内容的缓冲。
这里,在内容库36及内容信息库34之间的差别反映了实践中对不同形式的内容之间的区别以及为最佳使用而对这些形式进行的组织。然而,这些差别并不是系统16中固有的。希望优选实施例中对内容的区别以及组织随着技术的进步而不断改变(如,会有一天,从关系数据库中提取电影如现今提取帐务记录一样容易)。
内容存储于一个或多个存储器中。内容库的优选实施例是由内容传播及直通式路由系统管理的内容存储及直通式转发系统或内容存储及直通式转发系统的网络。通过应用这些存储机制,得到的系统16是高度可伸缩、容错、且负载平衡的。内容可以在终端系统20中的存储器中高速缓冲。内容信息库34可以以相同或相似的方式存储或传播。
当内容存储于内容库36中时,通常更新内容信息库34以用信号通知内容的可用性。可以在内容存于内容库34之前、期间或之后的任意时间,以信号通知内容的可用性。例如,存于源系统12中和/或通过源系统12路由的内容,即使还没有(或者根本不会)存入内容库36,也可以用信号表示该内容在内容库36中可用,其中的源系统12利用下面参考内容存储及直通式转发系统而描述的直通式转发功能。类似的,由终端系统20存储或高速缓存的内容可以用信号标为在内容库36中可用。
内容/服务处理及输送系统16支持多种服务38。典型地,服务38使用输入的内容、相关信息、以及用户输入来执行功能。得到的服务输出38与其它服务的输出结合,并被输送至一个或多个终端系统20。然而更为通常地,服务38从内容/服务处理及输送系统16的其它元件接收内容及信息,执行某功能,并将结果发送至内容/服务处理及输送系统16的其它元件。服务38可以与绕过内容库36的导入器50通信。服务38可以包括多个用户,从而用户通信并共同参与(合作或竞争)某种活动,如包括单终端系统或多终端系统的多用户游戏。服务38还可以包括多个使用一个或多个终端系统20的用户,从而用户通信并共同参与某种活动。
可以使用多种硬件及软件方法构造服务38。服务38可以从其它服务38构造,也可以与其它服务38互操作。一些服务38可以位于内容/服务处理及输送系统16中,其它的位于源系统12或终端系统20中,另外的则位于通过服务网关32访问的外部系统中。
服务网关32提供了系统16内的服务38与系统16外的服务38之间的通信。典型地,服务网关32用于传送由系统16的用户或使用所生成的报告及其它消息。但是,例如电话或音频/视频会议服务可以使用服务网关32来使系统16的用户与不同类型的其它系统或设备的用户通信。
服务38由服务管理器(未显示)通过多种管理接口和信息库(未显示)进行管理。服务管理器控制系统16中用于向终端20输送服务38的资源,如处理、存储、通信等等。服务管理器还与终端20互操作,如对监控终端系统20中的服务38的高速缓存和执行情况。
输入及交互元件42从终端系统20接收输入,并将其分派至一个或多个服务38。输入通常被分派到请求它的服务38。输入可以来自位于终端系统20内的输入设备(未显示),和/或来自位于终端系统20内的其它应用程序(未显示)。如果多个服务38请求相同的输入或输入类型,则请求的输入根据在操作者控制下的规则集而分派。例如,规则可以确定为将输入发送至请求输入的最后的服务,该服务可以使用或修改该输入,和/或将输入传播至其它请求该输入的服务。
内容/服务处理及输送系统16的原始作品元件40将来自一个或多个服务38的输出进行聚集(或组成),并将结果输送至一个或多个终端系统20。聚集结果也可以被发送至多终端系统20。例如,服务38可以负责接收实时内容、向其中插入广告、并将结果向所有用户广播。在这里,术语“聚集”被解释为将内容集合为一块、总量或整体。它包括但不限于将要以多种通信机制发送到一个或多个终端系统的内容替换、插入、复用、拼接、以及复合。
如上所述,用户使用终端系统20与内容/服务处理及输送系统16提供的内容和服务交互。从终端系统20接收的输入被分派到一个或多个服务38。发送至终端系统20的内容及其它数据可以由位于终端系统20中的服务38和应用程序使用,和/或呈送给一个或多个用户。在一种实施例中,终端系统20动态地高速缓冲内容或服务(或它的元件),以增加系统10的有效性。
参考图4,显示了用于交互输送实时及时移音频/视频内容的内容/服务处理及输送系统16。在优选实施例中,内容存储于下面描述的内容存储及直通式转发系统或由内容传播及直通式路由系统管理的内容存储及直通式转发系统的网络中。这只是系统16的一个方面,且作为一个例子而描述。其它的方面在下面描述。
内容/服务处理及输送系统16导入模拟及数字音频/视频内容50。可以使用多种编码方法,如MPEG-2、MPEG-4、Quicktime、Real、ASF等,与基本交互性、暂停、快进、倒放、书签等一起输送。内容可望通过多种技术的应用演变为日益丰富的交互式混合媒体体验,所述的技术包括万维网联盟建议、具有级联风格层(Cascading Style Sheets,CSS)及脚本的HTML(即DHTML)、文档目标模型(Document ObjectModel,DOM)、WebCGM、可扩展矢量图形(Scalable Vector Graphics,SVG)、合成多媒体综合语言(Synchronized Multimedia IntegrationLanguage,SMIL)等等、JavaScript、Java和Personal Java、MacromediaFlash and Shockwave、Adobe LiveMotion、ATVEF、PowerTV、Active-X、Active Server Pages等等。系统16在内容导入元件30内可以具有少至一个的音频/视频导入器,其允许每次导入来自一个源的内容。可以向系统16增加导入器,以允许来自多源的内容同时导入或提供冗余及容错。优选实施例的效率、负载平衡、及容错支持大规模部署,其中一个或多个导入器专用于每一内容源,从而使得可以从许多源同时导入(和输送)内容。
一个终端系统20的例子包括与电视通信并控制电视的机顶盒。通常,系统20还包括遥控设备及其它设备。内容/服务处理及输送系统16对每一用户具有默认的服务。这是指用户服务52。用户服务52在终端系统20上将用户接口呈送给用户,并提供对内容/服务处理给输送服务系统16上的服务的访问。用户服务52询问多种信息库,以确定什么服务是用户可用的,并使用户能够调用服务。在这个例子中,只显示了一个交互输送服务54。用户服务52还收集并保持与用户及服务的使用相关的信息。这可以包括但不限于下列信息:用户帐目、注册、及简介信息、帐务及付费信息、偏好、内容及服务订阅、允许、及限制、过去的及当前的服务请求、对内容库中的内容的个性化指南、收集的使用信息等。
交互输送服务54向用户提供对可通过内容/服务处理及输送系统16利用的内容的访问。交互输送服务54查询内容库36、内容信息库34、以及各种其它信息库(具体地,用户及使用信息),以生成关于可通过内容/服务处理及输送系统16利用的内容的个性化指南、列表、及推荐。用户与交互输送服务54交互,以选择要输送的内容。输送可以立即开始,或者安排在以后的某一时间开始。如果用户请求使用仍不可用的内容,则交互输送服务54可以在内容变为可用时以信号通知终端设备20,或者与广告、宣传、或适合该情况的其它类型内容一起显示计时器,指示距内容可用还有多长时间。
通常,内容以如下的方式输送至用户。交互输送服务54通过内容库36读出内容,并将其发送至原始作品元件40,该原始作品元件40要添加到正发送至一个或多个终端系统20的内容的一个或多个聚集之上。使用如下所述的内容存储及直通式转发系统,或通过绕过内容库与导入器50直接通信的服务,完成实时内容的输送。实时内容还可以存储在内容库36中,以供以后的时移输送。
用户以多种途径与交互输送服务54交互。对于暂停、快进、倒放、开始和停止被适用这些控制的内容,如流媒体,支持。应意识到,下面描述的特定的交互方法可以作出修改,或应用于任一种包括任何种类内容和/或服务的交互。如果终端系统20上的用户正在接收实时内容,并暂停或倒放该内容,则内容/服务处理及输送系统16无缝地从实时输送内容过渡到从内容库36中时移地输送它。如果用户正在观看时移的内容,并快进到已经存储在内容库36中的末尾,则内容/服务处理及输送系统16无缝地从时移地输送内容过渡到实时输送内容。
用户可以通过终端系统20与交互输送服务54交互,以停止输送内容并做书签以备后用。相应的,交互输送服务54查询并修改用户信息库(未显示)中的用户及使用信息。
交互输送服务54可以收集使用信息,并将该信息保存在用户信息库中。该使用信息可以用于影响交互输送服务54随后对用户的行为。例如,可以根据用户以前的使用方式或其它用户的使用方式,向用户作出不同的内容推荐。
参考图5,位于系统16中并与交互输送服务54相关联的内容/服务处理进程200包括例如接收用户的命令(202)。如上所述,用户通常通过与终端系统20内的显示单元相连的机顶盒输入命令。在实施例中,可以使用无线设备输入用户命令。该进程确定用户的命令是不是“播放”(204),如果是,则执行播放进程(206)。该进程确定用户的命令是不是“暂停”(208),如果是,则执行暂停进程(210)。
进程200确定命令是不是“恢复”(212),并执行恢复进程(214)。进程162确定命令是不是“改变频道”(216),并执行改变频道进程(218)。进程162确定命令是不是“倒放”(220),并执行倒放进程(222)。进程162确定命令是不是“快进”(224),并执行快进进程(226)。进程162确定命令是不是“作记号”(228),并执行作记号进程(230)。进程162确定命令是不是“搜索并选择”(232),并执行搜索并选择进程(234)。进程200确定命令是不是“终止”(236),并执行终止进程(238)。
参考图6,播放进程206包括交互服务输送通过内容库将内容输送至终端系统(252)。进程206确定是否为用户设置了书签(254),并如果设置了书签,则将记录的内容输送至终端系统(256)。如果没有为用户设置书签,则进程206将流经(或绕过)内容库36的实时内容输送至终端系统(258)并返回(260)。
参考图7,暂停进程210包括交互输送服务向用户服务发送书签指示(272)。用户服务在它的用户信息库中设置书签(274)。进程210将用户与用户信息库中的书签关联(276),并且交互输送服务延缓内容向终端系统的发送,即实时或时移(278)。
参考图8,恢复进程214包括交互输送服务将恢复命令发送至用户的用户服务(292)。进程214确定是否找到了用户(296)。如果没有找到用户,则返回一个错误消息至交互输送服务(298),且该错误消息被发送至使用交互输送服务的用户(300)。如果找到了用户,则交互输送服务定位与用户相关的内容,并从内容库36将内容输送至终端系统(310)。进程214在312返回。
参考图9,改变频道进程218包括交互输送服务接收改变频道命令(322)。交互输送服务在当前频道为用户设置书签(324),如上所述。交互输送服务输送在选择的频道上广播的实时内容(326)。进程320在328返回。
参考图10,倒放进程222包括交互输送服务接收倒放命令(342)。交互输送服务开始为与交互输送服务相关联的用户,对选择的内容的发送进行倒放(即,以倒序输送内容,该内容可能经过摘录或修改)。进程222确定是否接收到停止命令(346),如果没有,则继续倒放(348)。如果接收到停止命令,则交互输送服务停止为用户倒放内容(350)。交互输送服务设置书签(352),如上所述。进程222在254返回。
参考图11,快进进程226包括交互输送服务接收快进命令(372)。进程226确定内容是否是实时的(374)。如果内容是实时的,则进程226用信号向用户通知错误(376),并返回(378)。如果内容不是实时的,则交互输送服务开始对来自内容库的内容的快进输送(即,以快于实时的速度发送内容,该内容可能经过摘录或修改)(380)。进程226确定正在快进的存储的内容是否到了末尾(382)。如果记录的内容没有到达末尾,则交互输送服务继续对内容库中存储的内容倒放(380)。如果存储的内容到达末尾,则进程226用信号通知用户停止(384)。进程226在378返回。
参考图12,记号进程230包括交互输送服务接收设置记号命令(402)。交互输送服务设置记号(404),并指示用户服务,以将记号与用户联合(406)。进程在408返回。
参考图13,搜索并选择进程234包括交互输送服务接收搜索并选择命令(422)。交互输送服务在内容库中搜索存储的内容(426),并向用户信息库询问与内容使用相关的记号及其它信息。交互输送服务向用户发送个性化的标题列表(428)。用户向交互输送服务发送作出的选择(430)。交互输送服务开始经过(或靠近)内容库发送选择的内容(436),并在438返回。
参考图14,终止进程238包括交互输送服务接收终止命令(452)。交互输送服务终止向用户输送内容(454),并设置书签(458),如上所述。进程450在460返回。
在一个实施例中,交互输送服务可以收集使用信息。信息可以影响交互输送服务随后的行为。例如,根据用户之前的使用方式或其它用户的使用方式,可以为用户作出不同的内容推荐。该信息可以通过服务网关32与外部服务通信。例如,交互输送服务(或与交互输送服务合作的服务)可以向用户提出购买间接产品及服务的选择(例如,他们观看的电影的原声带),并响应用户的选择,向外部订购处理中心生成消息。
一个实施例支持输送的时移、实时或以上两种模式并存,但是不支持在两者之间无缝地过渡。在这种实施例中,用于时移输送的内容的可用性会轻微或严重地从内容由系统输入的时刻延迟。
另一实施例仅支持内容的时移输送。将使用底层系统的直通式特征,以减小在内容可用性上的延迟。可以通过服务网关或通过系统外部的通信机制,向终端系统输送实时服务。
在另一个实施例中,系统的服务特征被用于收集关于谁正在使用什么内容的信息,即使内容现在并未流经系统(例如,监控谁正在观看什么电视广播频道,即使系统并未用于广播服务)。这样的信息可以用于例如决定将什么广告插入内容,即使广告插入系统或进程在内容/服务处理及输送系统之外。
参考图15,显示了适合提供交互广告内容及服务的内容/服务处理及输送系统16。在优选实施例中,内容存储在下面描述的内容存储及直通式转发系统,或由下面描述的内容传播及直通式路由系统管理的内容存储及直通式转发系统的网络中。这只是系统16的一个方面。下面描述其它方面。
延伸内容输入元件30中的导入,以包括与广告相关联的内容:通过对相关服务做广告而对使用的内容(副本)和数据做广告,以将广告内容与其它内容相关联。
辅助数据导入器58导入与内容输入元件30中的一个或多个内容导入器导入的内容相关联的模拟和数字数据。辅助数据的例子包括但不限于拼接数据、内容辨识、描述、发源信息、时间触发器、增强信息、可用广告次数及间隔、输入及交互作用次数及间隔,等等。在一个实施例中,可以使用用于导入特定种类辅助数据的固定的或固有的方案完成它。在另一实施例中,可以使用用于概括导入辅助数据的进度表可扩张集完成它。
在一个实施例中,辅助数据导入器(拼接导入器)用于导入与一个或多个音频/视频导入器导入的内容相关联的模拟及数字拼接数据(提示、进度表等)。拼接数据可以从它相关联的内容,带内或带外传递。典型地,将拼接数据(音频“提示音”)、接点闭合(contactclosures)、SCTE标准DVS-253、VBI数据、ATVEF(高级电视增强论坛)、文本数据、XML数据、或其它报头/描述符格式编码(模拟)或重编码(数字)为通用内部格式。为了保持带外数据及与它们相关的内容之间的同步,将拼接数据导入器与它们相关的内容导入器同步。带内拼接数据被复制或从与其关联的内容中切断、处理、和/或(逻辑地)转发至如上所述要处理的拼接数据导入器。
拼接导入器将拼接数据发送至内容信息库34,拼接数据存储于该内容信息库34中,并/或被转发至一个或多个请求服务38,以用于输送广告或与相关内容共同作用的广告服务。来自拼接导入器或来自内容信息库34的拼接数据可以由内容导入器使用,以修改相关内容的导入(如,发送至MPEG编码器的拼接数据可以使它们结束序列并插入I-Frames,以在内容中生成干净的拼接点)。这允许拼接数据与它相关的数据同时、或早些、或晚些导入。
辅助数据导入机制还用于导入ATVEF(以及其它这样的机制)中定义的触发器及增强信息。该信息用于以本地化及个性化的增强替换通用(或默认)增强。
优选实施例是灵活的,且能够适应技术的进步而随时间改变。例如,数字方法有望代替模拟方法,表现并传递内容及相关数据;带内拼接信号有望代替带外信号方法;将内容及辅助数据构造为自标识、自描述元件的内容格式代替通用的拼接提示做法。为了适应这些趋势,在如上所述的内容输入元件30中的独立内容导入器和辅助数据导入器被集成的、一般化的导入器所代替,从而内容信息库34聚集了从内容直接提取和/或源自它的结构的信息。
交互广告服务(IAS)60中提供了广告服务。IAS60通常与其它服务38合作,以广告功能增强它们的服务。IAS60可以从内容库36中读出广告内容,并使用它修改输送至一个或多个终端系统20的内容的聚集。它还可以与其它服务38通信,决定什么广告内容(副本)包括在服务的输送中。例如,IAS60与交互输送服务54合作,将广告插入、替换、聚集、组合等交互内容输送。
IAS60通常负责对一个或多个终端设备20的一个或多个用户进行广告的投放。向一个或多个用户介绍广告的时机被看作“产品目录(inventory)”,且产品目录有许多属性(用户或用户们、时间、间隔等)。尽管可以单独存在,但产品目录通常与其它内容及服务的输送相关联。例如,用户可以请求发送描述产品的内容。可以预先知道产品目录,例如,关于何时何地在电视节目或网页上显示广告的说明书。产品目录还可以在用户使用系统中的服务时,如当用户开始时移地观看电视节目时,动态出现。
在某些实施例中,内容/服务处理及输送系统16可以这样从广告者的内容传播及直通式路由网络导入内容,而且当用户开始使用服务时,来自广告商的内容被立刻介绍给用户。
IAS60使用多种方法之一将广告与产品目录绑定。一个方面是它支持将广告捆绑到动态出现的产品目录。典型地,它利用动态的且新的绑定方法,使得绑定(或最终绑定)在产品目录被前“即时(just intime)”完成。这使得绑定功能可以结合涉及绑定决策的最大可能量的信息,于是保证了最优结果(价值最大化,而投放广告的成本最小化)。绑定功能合并了一个或多个因素,这些因素包括但不限于用户及用户信息、有关可用广告的信息、有效寿命、目标观众、有关与广告相关的内容及服务的信息、时间及日期信息、有关影响用户及使用的事件的信息(如,暴风雪的新闻)、表达用户偏好和/或对产品或服务的请求的信息、广告商协议、投放安排等等。
IAS60的另一个方面是它支持“智能或自引导广告”,“智能或自引导广告”包括在搜索最优绑定时与IAS60接口的信息、指令、程序、以及可能的软件程序。一个特定的例子是:广告内嵌有或关联有Java程序,且IAS60提供Java运行环境以及广告接口程序包,广告通过该程序包可以发现产品目录、用户信息、以及其它在绑定决策中起作用的信息。结果通常被看作接受或忽略IAS60的暗示或推荐。
绑定功能可以用于为每一用户编辑广告集——该集当中的每一广告都有特定于该集的计算值。对于包括单独用户的产品目录,IAS60检查与用户相关的广告集,并将广告与匹配产品目录的参数的最大值绑定。产品目录参数包括:内容类型、屏幕尺寸及位置、持续时间,等等。所以,例如视频广告不能用只包含文本或静态图像的产品目录来投放。对于包括多个用户的产品目录,IAS60检查对每一用户的集,并使用所有集共有的、具有最大平均值的广告。也可以使用其它统计准则。这种机制代替了现在的(通常是手动的)静态地将广告绑定到文本的做法,作为达到估计人口统计的方法。这里,人口统计和用户表现的兴趣(以及其它信息)明确地作为评价的因素。
在短期内,由于在处理、存储、和/或通信中的约束,所以IAS60可以预计算所有或部分上述功能。预计算可以周期性或响应如新广告内容导入这样的事件而执行。预计算通常使用因素的子集,如用户人口统计信息、用户偏好及请求、以及有关可用广告及其目标观众的信息(这些都在动态显示产品目录之前很好地已知了)。当产品目录出现且在它消失之前的不同时间,可以在作出最终绑定决策之前实施附加计算。
通常,服务与IAS60通信,以输送或协助输送广告。它们还与IAS60通信,以响应用户涉及广告输送的输入并跟踪及报告广告的输送及使用。
IAS60可以使用存储于内容信息库34中的辅助数据,以在聚集及输送相关内容期间,对广告的输送排序或同步。它还可以预先使用辅助数据来聚集内容。后者的一个特定的例子是,IAS60使用拼接数据对内容库中的内容分段。通过修改内容而直接进行分段,或者通过修改内容如何由其它内容拼接或参考而间接进行分段。
在前面的例子中描述的交互输送服务54可以在输送内容之前、期间或之后与IAS60通信。IAS60跟踪内容中的产品目录、将广告绑定到产品目录,并按产品目录参数的要求将这些广告增加到一个或多个内容的集合之上。这个过程的一个特定例子是当交互输送服务54要输送分段的(或结构化的)内容时:交互输送服务54与IAS60通信,以替换包含广告的片段及可能的广告片断(如上所述,这可以通过IAS60将内容添加至合适的聚集而直接完成,或者通过交互输送服务54使用IAS60修改正在或将要发送的内容的结构而间接完成)——特别的,它替换丧失了对其它可用广告的价值的广告——且这个过程可以在输送序列期间的不同时间进行重复,从而允许对要输送的广告进行重评价。终端系统输入及交互(如,用户输入及交互)或其它事件可以改变为用户编辑的广告集中的广告值。
与广告输送相关的终端系统输入(如用户输入)被分派到IAS60。IAS60还可以检查与广告不相关的终端系统输入。IAS60对终端系统输入的响应依赖于许多因素,如引起输入的广告的类型、产品目录的参数、服务策略、顾客偏好及请求、提供商策略等等。
IAS60可以将信息合并入广告的评价,并/或使用信息来发送消息并通过服务网关向外部服务报告。
IAS60如何响应的特定例子是当用户使用电视机遥控器与广告交互时:根据输入的类型,IAS60可以延缓和/或修改正在输送的内容及服务。特别的,它可以使某些内容的输送延缓并使其它与广告相关的内容的输送开始。或者,它可以以要输送的增强形式(如ATVEF)触发广告。它可以修改用户信息,例如,在广告中注明用户表达的兴趣或反感。它还可以使用服务网关32向外部实体生成并发送报告或其它种类的消息,例如执行购买或让广告商联系用户(如通过邮件或电话)。可以使用任何通信机制。优选实施例可以利用多种标准及惯例来达到与授权实体的安全且无抵赖的通信。例如,可以使用为流通交互广告内容及服务而设计的外联网(广告外联网)。
IAS60还向观众提供了用户接口,使用户可以表达他们对广告的偏好并请求相关内容及服务的广告。特别地,IAS60使用户可以请求产品信息。这可以以多种方式实现,包括向用户提供产品目录以使用户通过结构化的表达式(搜索表达式)以及自由形式表达式(自然语音或书写语言)从中选择。
尽管在上面暗示了,但IAS60也可以负责将广告绑定到与由系统16的其它元件提供的多种用户(或操作者)接口相关联的产品目录。例如,用户服务52和交互输送服务54与IAS60通信,以在它们的用户接口(UIs)处提供广告。
IAS60生成涉及交互广告的报告以及其它消息,并使用一个或多个服务网关32将该信息向外部实体(如内容始发者及广告商)传达。例如,该机制可以用于报告交互广告的使用,或者可以用于使用户可以请求进一步的信息、来自广告商的回调、或到其它在线服务的链接。
参考图16,内容存储及直通式转发系统100包括:至少一个输入元件102、至少一个存储转发元件104、以及至少一个输出元件106。每一个元件102、104和106都由一个或多个通信链路机制108互连。系统中的不同元件102、104等以及106可以使用和/或共享处理元件、存储器、内存、总线等。上述内容管理器通过管理接口(未显示)控制不同元件,以建立、监控,并拆卸系统中的内容流。
在优选实施例中,输入102和输出106与存储转发元件集成,使得存储转发元件可以伴随一个或多个集成输入、一个或多个集成输出、集成输入及输出的组合、或无伴随。典型地,多个输入及输出元件被集成并分配到多个存储转发元件,以平衡系统100中的输入及输出流量负载、通过提供冗余输入及输出数据通路而增加系统容错度,并通过消除系统上的负载(输入及输出)的来源而在存储转发元件失败时适度降低服务。
内容存储和直通式转发系统100中的元件利用一个或多个通信机制108来通信。尽管内容存储和直通式转发系统100中的通信可以描述为请求/响应事务,但可以使用多种方法。在某些实施例中,通过所述系统关联一个数据流的状态可以是“缓慢绑定(lazy bound)”(创建虚拟或隐含连接)并且在所述数据流期间保持。当一个数据流被终止或修改,状态将在随后的时间里被明确地删除或回收。
每一输入元件102通过通信机制接收内容,根据定义的方法将这些内容片段(如果规定了),并计算奇偶校验引擎116中的冗余信息。优选实施例使用为RAID-5定义的分段及冗余方法。其它实施例可以使用为RAID-0、RAID-1、RAID-2、RAID-3、RAID-4、以及RAID-6系统、非-RAID系统、混合存储子系统等等定义的方法。这些其它实施例中有的不包括分段。输入元件102将内容片断及冗余信息分配至一个或多个存储转发元件104、110、112和114。输入元件102还可以根据需要或响应在一个或多个存储及接收元件104、110、112和114中的故障,缓冲内容片段并转发内容片段。可以通过计算时间窗口而缓冲内容片段,在该时间窗口内内容片段保持在重发缓冲器中。
在另一实施例中,可以通过检测元件故障并使用有关信息来保存缓冲存储器,该消息确定哪些内容片段的转发无需先放入重发缓冲器。
每一存储转发元件,例如存储转发元件104接收来自输入元件102的内容片段、对缓冲器117中的内容片段进行缓冲,并将内容片段存储在本地存储子系统118中。存储转发元件104通过从缓冲器117中检索请求的内容分段,或通过从本地存储子系统118中检索请求的内容分段,而响应对读取内容分段的请求。
可以使用任一种缓冲器117或高速缓存。在优选实施例中,使用环状缓冲器,因为它有效地支持顺序数据的写入器以及多个异步读取器。在一些实施例中,依大小排列缓冲器,以允许通过系统100的延迟平滑分级。在其它实施例中,使用了较小尺寸的缓冲器。可以以小于、等于、或大于内容分段尺寸的单位测量缓冲器大小。
本地存储子系统118优选地是容错的且负载平衡的,使用RAID-5,尽管可以使用其它存储方法:RAID-0、RAID-1、RAID-2、RAID-3、RAID-4、以及RAID-6系统、非-RAID系统、混合存储子系统等等。
每一输出元件106从一个或多个存储转发元件中读取内容片段,检查错误,并在通信机构115上输出内容。根据输入元件102应用的分段及冗余方法,输出元件106可以对片段排序(如有必要),以重装配原始内容,并且如果有错误发生则重新构造丢失的或错误的内容。
如果发生了错误,如读取请求失败或片段被破坏或丢失,则输出元件106做以下重构内容的两件事之一。第一,依照定义的步骤,输出元件106可以从合适的输入元件102中读取丢失的或破坏的数据,或者第二,输出元件106可以从合适的存储转发元件中读取冗余信息,以重构丢失的内容。使用的方法依赖于输出相对输入是否是实时或时移的以及哪一种方法可以达到输出的时间要求。
一些实施例可以使用足够小的内容片段,以使来自奇偶校验的重构可以达到实时输出的要求,从而消除了对重发的需要。使用RAID-3(或等同的)算法将有类似的效果。其它实施例可以使用大的内容片段,以使重发在重构过程中延迟较低。期望优选实施例根据潜在的技术(处理器、磁盘、总线、网络等)中的变化而随时间变化。
其它实施例可以不以上述方式集成存储转发,而是使用不同的(但互联的)存储转发(或交换)元件以生成以相似或相容方式运转的系统100。
参考图17,显示了内容传播及直通式路由网络130的示例。内容传播及直通式路由系统130对于上述内容存储及直通式转发系统100的网络应用“CONTENT PROPAGATION IN INTERACTIVETELEVISION(交互电视中的内容传播)”(专利申请号:09/547,474)中定义的传播方法。该网络中的系统(标号为A-L)通过一个或多个通信机制互连,且可以使用任意尺寸、类型的内容存储及直通式转发系统或它们的组合。例如,合适构造的终端系统将有这样的资格并用于高速缓存内容。优选实施例是高效、容错、且负载平衡的网络,其中实时内容在被传播到存储器以及为播放及使用而输送时,只需通过网络(或网络的子集)一次。上述内容管理器控制网络系统中的不同系统,以实现定义的传播及路由程序,从而控制内容被存储并通过网络整体转发的方式及地点。
可以使用多种路由算法中的任意一种来建立用于通过网络转发内容的系统(路径)。使用的路由算法的类型将依赖于网络的大小、类型,以及使用底层通信机制。在一些实施例中,可以使用与逐跳(hop-by-hop)路由相对的边缘路由,从而边缘系统根据内容有效性以及从网络重的系统采集(或广播)的负载信息,计算并重算最优路径。这种方法提高了容错以及负载平衡:如果内部系统故障或过载,则从边缘路由计算结果中除去这些系统并将计算结果分配到边缘系统;如果边缘系统故障,则类似的减少系统上的路由信号负载。
一个方面当在网络130中的系统上的实时内容被输送至终端系统时,将其存储。存储的内容按照要求(如时移地)输送至其它终端系统。
另一个方面将内容从只是间接相连的系统输送至终端系统。内容通过一个或多个系统被路由至终端系统,并可选地由这些系统高速缓存。
另一个方面输送的内容是实时和/或之前存储的内容的聚集。例如,视频广告可以与在网络中路由的实时或存储的视频拼接,或者存储的横幅广告可以随着在网络中路由的网页内容传送。
另一个方面提供了对分段(打断)的内容在网络中跨系统输送。例如,网络中的系统可以响应用户的暂停播放,而开始高速缓存它正在转发的内容。如果播放内容被倒转(倒放),则从高速缓存中丢失的内容被路由并有可能增加到高速缓存中。可以使用其它高速缓存策略,如高速缓存一定量的最近(如近10秒)使用的内容,或预读取(如快于实时地)稍后将被输送的内容。
图17显示了标号为A~L的内容存储及直通式转发系统的网络130中的内容传播及直通式路由。在这个图中,网络中的所有系统都至少双重连接,以提供故障恢复及负载平衡。图16和下面的例子是显示内容传播及直通式路由的不同概念及实施例。在实际部署中,可能使用与这里显示的不同的多种拓扑结构。
网络130可以代表跨组织的、地理的、或拓扑的边界的系统。例如,A、B和C可以位于内容始发设备(如电视或网页制造设备);E和D可以位于区域性或地方性的设备;F、G、H和I可以位于本地或邻近设备;且J、K和L可以合适地配置为位于用户(或订户)位置的终端设备(机顶盒、个人视频录像机)。
图17显示了三种由系统130输送内容的不同方式。实时内容由J输送。时移内容由K输送。时移及实时内容的组合由L输送。可以使用多种输送路径,且输送路径可以动态改变,以平衡系统负载或从故障中恢复。
D和E可以是大的内容储存库(一个基本的,一个备用的),网络中所有内容通过它们输送并存储。
到J的实时内容可以直通,尽管系统B、E、D和F,并在过程中存储在D中。如果给了内容足够的权重(如对随后要求的高期望值),内容也可以存储在F中。内容还可以后台传播到E作为D的备份。
K上的相同内容的时移视图直通G。该内容又可以存储在G上。
实时内容被路由通过L(例如,适当构造的机顶盒或个人视频录像机),且L(或其它网络系统)上先前存储的内容可以替换、覆盖、或与实时内容混合。于是系统用于插入特定于从L接收内容的用户的广告。
已经描述了本发明的许多实施例。但是,应当理解,在不脱离本发明的精神或本质特征的情况下,可以做出多种改动。例如,上述的多种元件中的每一个都作为整体来管理,并将继续随着它们随时间而日益集成而管理。因此,其它实施例在下列权利要求的范围之内。