到达远程用户的内容数据流的受控传递的制作方法

文档序号:6595733阅读:281来源:国知局
专利名称:到达远程用户的内容数据流的受控传递的制作方法
到达远程用户的内容数据流的受控传递
发明题目
到达远程用户的内容数据流的受控传递
相关申请的交叉引用
本申请要求于2008年10月10日所提交的第61/104,577号美国临时专利申请的权益。
关于联邦资助的研究或开发的声明
不适用。
参考“序列表”
不适用。
发明背景发明领域
本发明涉及用于在网络上提供交互性的系统,并且更具体地是涉及用于以通用格式以及数字包封或容器格式中的至少一种来提供多个内容数据流30的系统,其中传输速率与客户端容量受到监控,以维持内容数据流的连续呈现,而无需缓冲。
相关领域的描述
今天,对于将补充内容信息与宽带媒体进行整合的方法有着相当大的兴趣。例如, 广播公司寻找着从不同的内容源,比如互联网提供互动性内容的以吸引观众的方法,所述内容源与被广播的节目一致或者是其补充。然而,现在与互联网的交互今天还十分有限,因为一般的TV观众没有便利地位于电视放映间里的个人电脑,而且一般的TV观众也不能够在导航到适当的互联网地址上的同时在相同显示屏上观看电视节目。此外,如果广播内容比如通过记录或时移被延迟,当前的互动方法试图将补充的互联网内容与广播节目内容进行同步不会出现。
之前的系统利用互联网协议电视(IPTV)服务作为一种向订户提供实况电视节目的可供选择的方法。在IPTV中,电视节目可在基于IP的多路广播的顶端被传输。类似于传统的广播电视形式,对于每条TV频道,仅有一组视频流内容通过IPTV网络被广播。同时, 类似于有线和卫星电视传递系统,IPTV服务的定价一般是频道数量和视频质量相关,比如标准的、数字的、或高清的电视节目。
存在着对于能够提供对内容数据流30的传递进行控制的方法和系统的需要,其中内容数据流30包括社交媒体、直播内容、和数字营销的整合。此外,存在着对于来自各种不同源和格式的内容进行统一呈现的需要,其中多个音频、视频和数据源能够被组合到单个播放器中,而无需由客户端进行额外的下载或软件安装。还存在着对于一种方法和系统的需要,该方法和系统能够允许响应于预定同步、用户启动同步、或与主内容流相关的数据,将次级内容数据流与主内容数据流进行整合。
发明概述
根据本发明,存在着一种包括解码器、编码器和计算机的系统,其被选择配置到达内容传递网络的内容数据流30,其中该系统提供了一种将多个内容数据流30提供到远程位置上的显示屏的方法,该方法是通过接收以第一格式的第一数据流和以不同的第二格式的第二数据流;将第一内容数据流和第二内容数据流编码成通用格式或以预定文件格式至少包封内容数据流30中的一个内容数据流;被编码的第一内容数据流和第二内容数据流传到内容传递网络;验证在远程位置上的播放器实例,已验证的实例与显示屏通信;将第一内容数据流和第二内容数据流以一传输速率传输到已验证的播放器实例;以及,响应内容传递网络与已验证的实例之间的可用传输速率,调整第一内容数据流和第二内容数据流中的至少一个的传输速率。
进一步设想,系统能够提供显示内容数据流的方法,该方法通过将内容数据流显示在与第一显示屏相关的已授权播放器实例的第一视频画布(video canvas)中;选择在第一显示屏上显示内容数据流的第一视频画布;启动在与已授权播放器相关的第二显示屏上的第一视频画布的显示;以及,结束在第一显示屏上的第一视频画布的显示。
同样,系统能够执行将内容数据流从内容传递网络提供至第一远程播放器和第二远程播放器的方法,该方法通过验证第一远程播放器,该第一远程播放器被选择生成在相关第一显示屏上的显示;验证第二远程播放器,该第二远程播放器被选择生成在相关第二显示屏上的显示;确定在已验证的第一远程播放器与内容传递网络之间的第一可用传输速率和第一传输时间中的至少一个;确定在已验证的第二远程播放器与内容传递网络之间的第二可用传输速率和第二传输时间中的至少一个;以及将内容数据流传输至已验证的第一远程播放器和已验证的第二远程播放器,该传输相应于第一可用的传输速率、第一传输时间、第二可用的传输速率、和第二传输时间中的至少一个,其中内容数据流被显示在第一显示屏上,其实质上与第二显示屏上的内容数据流同时显示。
本系统能够额外地提供一种显示内容数据流的方法,该方法通过验证第一远程播放器实例,该播放器与第一显示屏相关用于显示内容数据流;在第一显示屏上的视频画布中显示内容数据流;响应于第一数据流的时间安排、第一内容数据流的内容、以及与第一内容数据流相关的元数据中的一个,在第一显示屏上生成第二视频画布;独立于随后在内容数据流中的数据,启动通过第二视频画布的业务;以及,根据业务中的至少一部分的完成来关闭第二视频画布。
在本发明的附图和详细描述中,仅显示和描述了本发明的主要实施方式,并且它们仅仅是说明性而非限制性的性质。其他的实施方式和技术实现是可应用的,并且全部都不偏离本发明的范围和精神。
对附图几个视图的简要描述


图1是本系统的配置中组件的示意图。
图2是本系统中组件的可选配置的示意图。
图3是用户或客户端与系统进行登记的流程图。
图4是用户或客户端登入系统的流程图。
图5是对播放器内的视频画布进行操作以用于呈现和观看内容数据流的过程的流程图。
图6是对传输和用户度量进行监控以用于至少控制内容数据流的质量的流程图。
图7是使内容数据流名称模糊化的过程的流程图。
发明详述
以下某些实施方式的详细描述表示了本发明特定实施方式的各种描述。然而,本发明按照如权利要求所定义和涵盖的大量不同方式来实施。在本说明书中,对附图做出参考,其中始终以相同的数字指示相同的部分。
定义
下面提供了在描述本系统及其相关方法的某些实施方式时所使用的术语的多个可能有用的定义。
网络可以指跨越任何物理区域的网络或网络组合,比如局域网络、广域网络、地区网络,国家网络、和/或全球网络。互联网是当前全球计算机网络的例子。网络可以是硬连线网络、无线网络、或者硬连线和无线网络的组合。硬连线网络可包括,例如,光纤线、电缆线、ISDN线、铜线,等等。无线网络可包括,例如,蜂窝系统、个人通信服务(PCS)系统、 卫星通信系统、分组无线电系统、以及移动宽带系统。蜂窝系统可以使用,例如,码分多址 (CDMA)、时分多址(TDMA)、个人数字电话(PDC)、全球移动通信系统(GSM)、或者频分多址 (FDMA),等等。
网站可以指一个或多个相互关联的网页文件或其他文件,以及在一个或多个网络服务器上的程序。通过发送指定了统一资源定位符(URL)的超文本传输协议(HTTP)请求, 可在网络比如互联网上访问所述文件和程序,所述统一资源定位符识别网页文件中的一个的位置,其中文件和程序一般由单个实体或企业拥有、管理或授权。这些文件和程序能够包括,例如,超文本标记语言(HTML)文件、通用网关接口(CGI)文件、以及Java应用。网页文件优选地包括主页文件,其相应于网站的主页。主页能够作为对于网站内所包含的剩余文件和程序的网关或接入点。在一个实施方式中,所有的文件和程序在与主页文件相同的网络域中被定位,并且可在其中访问。可选择地,文件和程序能够通过若干不同的网络域定位和访问。
网页或电子页可包括响应于指定了 URL的HTTP请求而由标准网络浏览器所呈现的页,通过URL所述网页文件被识别。网页能够包括或链接到各种内容,例如,文本、图像、 音频、视频、以及动画。
内容、内容数据、以及媒体内容可以指电子素材,比如音乐、视频、软件、书籍、多媒体演示、图像、文本、以及其他电子数据,其能够被作为流传送或转移,例如通过网络到达一个或多个用户。内容数据一般通常是使用的计算机文件形式,用于视频、音频、文本、程序、 数据和其他多媒体类型的内容,以及有价值内容的真实物理备份,例如CD-R0M、DVD、VCR、音频、TV或无线电广播信号、网络上的音频流和视频流、或者传输这种信息的其他形式。
计算机或者计算设备可以是任何允许访问互联网的处理器控制的设备,其包括终端设备,比如个人计算机、工作站、服务器、客户端、迷你计算机、大型计算机、膝上型计算机、单独计算机的网络、移动式计算机、掌上计算机、手持式计算机、电视机的机顶盒、其他类型的能上网的电视机、互动信息站、个人数字助理、交互式的或能上网的无线通信设备、 移动式网络浏览器、或其组合。计算机还可具有一个或多个输入设备,比如键盘、鼠标、触摸板、游戏棒、笔输入垫,等等。计算机还可具有输出设备,比如显示屏和音频输出或扬声器。
这些计算机可以是单处理器或多处理器的机器。此外,计算机可包括可寻址的储存介质或者计算机可存取介质,比如随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PR0M)、可擦除可编程只读存储器(EPROM)、硬盘、软盘、激光盘播放器、数字视频设备、压缩盘、录像带、录音带、磁记录轨道、电子网络、以及用于传输或存储电子内容的其他技术。在一个实施方式中,计算机配备有网络通信设备,比如网络接口卡、调制解调器、或者适用于连接到网络的其他网络连接设备。此外,计算机运行适当的操作系统,比如 Linux、Unix、任何版本的 Microsoft Windows、Apple Mac OS、IBM OS/2 或其他操作系统。适当的操作系统可包括通信协议的实现,其处理在互联网上通过的所有输入和流出的消息业务。在其他实施方式中,同时操作系统可基于计算机的类型进行区分,操作系统将继续提供适当的通信协议,以便建立与网络比如互联网的通信链路。
计算机可包含程序逻辑、或者数据和指令的其他代表,其导致计算机以特殊的和预定的方式进行操作。在一个实施方式中,程序逻辑可被实现为驻留在计算机中或者可由计算机访问的一个或多个程序。
在组件、程序和数据库中所提供的功能可被组合到较少的组件、程序、或数据库中,或者被进一步分离到额外的组件、程序、或数据库中。此外,组件、程序、和数据库可被实现为在一个或多个计算机上执行。在另一个实施方式中,所述组件、程序、和数据库中的一些可被实现为在网站外部的一个或多个计算机上执行。在这种情况下,网站包括程序逻辑, 其使得网站能够与在外部实现的组件、程序、和数据库进行通信,以执行如此处所公开的功能。
内容传递网络(⑶N) 150能够是或者包括一个或多个基于适合的互联网协议的网络,用于将内容数据比如多媒体内容传输至服务器或远程用户。CDN服务供应商一般在网络中维护大量计算机,其能够保存来自各个内容供应商的内容。反过来,内容供应商能够指示或者以其他方式建议客户端计算设备从特定CDN服务供应商的计算机请求内容供应商的内容中的一些或全部。优选地,⑶N 150是负载平衡的,并且在客户端级别上容错。
一般来说,硬件装配或软件(广播节点)用于提供被编码的内容数据流。广播节点提供来自IRD的内容数据流的内嵌代码转换。在一个配置中,广播节点将一个信道编码成Flash,以便保持额外的特征/数据比如环绕声。必要的硬件装配能够被提供到自给系统(SCU)中,其能够包括计算机或服务器,带有适当的输入/输出,并且带有当前所描述的程序,用于实现被公开的功能。因此,通过使用SCU,独立的内容供应商能够给他们的内容提供本系统的交互性。在一个配置中,独立供应商能够传递来自摄像机的内容数据,或者通过 SCU进行后期处理,其中所述内容随后被发布到CDN或传统的内容传递系统。进一步设想, 传递通过S⑶的内容数据能够如以下所阐明的一样被数字包封。
与CDN共同地,或者作为其备选方案,能够利用广播节点,其中广播节点作用为虚拟CDN。广播节点包括服务器和相关软件,用于动态地(on the fly)对内容数据流30进行编码转换,如此处所更全面描述的。
社交媒体包括被设计成通过社交互动进行传播并使用非常方便且可扩展的出版技术创造的媒体。社交网络利用基于互联网和网络的技术将宽带媒体独自式描述 (monologue)( 一对多)转换成社交媒体对话(多对多)。
社交网络被理解为并入了社交媒体,其能够采用许多不同的形式,其中包括互联网论坛、网络博客、社交博客、维基(wiki)、播客(podcast)、图片、视频、评级和标书签。技术包括博客、图片共享、视频博客、公告墙、电子邮件、即时通信、音乐共享、众包(crowdsourcing)、以及IP语音。许多这些社交媒体能够经由社交网络集合平台,包括但不限于Mybloglog和Plaxo,来进行整合。
社交媒体通信软件应用的例子包括但不限于博客,比如Blogger、Livejournal, Open Diary> TypePacU WordPress> Vox、ExpressionEngine> Xanga ;微博禾口呈现应用,包括 Twitter、Plurk、Tumb Ir > Jaiku、f my life ;社交网络,比如 Bebo、Facebook、Linkedln、 MySpace, Orkut, Skyrock、Hi5、Ning、Elgg ;以及社交网络集合应用,比如 NutshellMail, FriendFeecL
关于图1、2、和3,本系统一般包括可从网络20比如互联网访问的网站10,其中借助在远程计算机40上的浏览器70内操作的播放器50,该网站提供内容数据流30和到远程计算机40的互动性通信。在一个配置中,远程计算机40包括显示屏42,以及连接到计算机商用摄像头或视频摄像机的图像采集设备80。然而,要理解,本系统不需要图像捕获设备。
一般来说,系统包括卫星接收器或者卫星接收器阵列100、解码器110、编码器 120、代码转换器130、以及应用服务器140。
在一个配置中,内容数据流30中的至少一些从卫星传输中取得,并因此内容数据进入在卫星接收器或卫星接收器100处的系统,并随后传递到解码器110比如综合接收/ 解码器(IRD)。卫星或卫星阵列100在本领域中已知,并且从各种内容供应商接收内容数据。可选地或额外地,系统能够在前端106上从网络比如虚拟专用网络(VPN)接收信道流。 因此,这样的输入将不传递通过现有的卫星和IRD。
IRD 110是商用的,并且一般用于节目提供(contribution feeds)的接收,旨在通过⑶N 150或广播节点进行重新广播。IRD 110是在接收卫星接收器(或电信网络)与编码器120之间的接口。经由卫星接收的数字广播流通过IRD 110解码,其中输出被传递给编码器120。
编码器120是商用的,并且被利用来将内容数据流30编码成预定格式,比如与 Flash媒体综合服务器(FMIQ兼容的格式。令人满意的编码器120将内容数据流30编码到多媒体编辑程序,比如如下面所阐明的Flash或Quicktime。令人满意的编码包括Adobe Flash媒体服务器3. 5软件所支持的H. 264编码。通过Adobe Flash媒体版权管理服务器应用,比如RTMP或RTMPE,能够提供加密。在一个配置中,所有独立的内容数据流30都被加密。例如,内容数据流30能够经由到⑶N 150的AES加密TCP连接,被传递至已验证的播放器实例。编码器120生成内容数据流30,其被发送至FMIS前端服务器,该FMIS前端服务器将内容数据流转发至⑶N 150或广播节点。
在一个配置中,内容数据流30经由RTMP和RTMPE,使用Adobe Flash媒体服务器软件,从网络集线器传递到最后的网络节点。
在一个配置中,来自编码器120的内容数据流30通过专用网络发送至FMIS,其中借助令牌认证,内容数据流30随后从FMIS头传递至⑶附50。已经被发现令人满意的是,在冗余安全专用网络上执行编码转换和集合,以防止在编码转换过程中内容数据的破坏。内容数据的永久保存也在专用网络内,并且根据需要被中继到缓存服务器和CDN 150。前端 106能够包括冗余,以寻址可能的硬件故障。
被编码和加密的内容数据流30从前端处的编码器通过,用于分配到远程客户端, 以及选择性地临时归档比如数字视频录像。
如图1中所见,内容数据在卫星阵列100上被接收,并且能够以第一格式传递至 IDP,其中IPD对内容数据流30进行编码转换成为预定格式。内容数据流30随后传递到 Flash媒体服务器,在此处内容数据流被加密并传递至服务器、处理器、CPU或⑶N 150,并随后到达与特定订户(用户)相关的、已验证的播放器50的实例。
特别地参考图2,能够在卫星阵列100上接收内容数据,其通过接收器、IRD 110和编码器120。由编码器120,内容数据流30能够被提供至⑶N 150和/或VOD系统,其用于响应已验证的访问请求进行缓冲并将给定内容数据流30传递至播放器50的实例。共同地, 节目指南数据能够进入关于Rails系统的数据库和储存区域网络(SAN)。
因此,前端106能够包括服务器、应用服务器、海量储存设备,如在本领域中和在选定配置解码器110和编码器120、IRD和接收器中已知的。还预期的是,前端106能够包括或与广告内容的服务器或储存器通信,所述服务器或储存器能够被有选择地提供到已授权播放器的特定实例上。
从⑶N 150或广播节点,内容数据流30被有选择地发送到远程客户端,用于通过播放器实例50进行显示。
通过与系统进行登记,获得播放器50,所述系统提供随后的登录,比如图3和4中所示。
通过建立账户,用户与系统进行登记,其中所述账户能够具有多个子账户。例如, 所述账户能够通过信用卡持有人创建,其中账户所有者确立一主账户和至少一个子账户, 以及在选择的配置中确立多个子账户。账户所有者能够确定子账户中每一个的配置文件。 也就是说,账户所有者能够为每个子账户指派内容和安全的等级。子账户能够被限制到某些次数的存取、过滤、购买、以及联系。在一个配置中,每个子账户能够被分类为预定的年龄范围,或者用户年龄能够被设定,并且系统根据用户的年龄通过年龄组移动用户。示例性的年龄组包括0-6、7-13、13-16、16-18和大于18。要设想的是,虽然主账户在网络上是可搜索的,但是子账户受到保护以致于是不可见的。
此外,如果子账户试图与朋友“直接”通信,比如通过视频,则该账户所有者必须与所述朋友有关的账户所有者联系,其中联系信息在两个方向上进行交换。因此,每个账户都能够接收或拒绝被提出的通信。作为对在两个子账户之间进行直接联系的授权,所获得的联系信息随后被每个账户所有者提供至系统。
一般来说,审核所有连接和内容数据流30,以便维持完整性和授权。关于加密, 所有内容数据流30经由到CDN或广播节点的高级加密标准(AES)TCP连接,传递至播放器 50(客户端)。关于包括了反编译抵制、流捕获、和已知攻击载体的安全性最佳实践,检测客户端(远程计算机40),以保护内容数据流30。
使用商用程序,能够自动地且主动地完成安全和内容数据流30质量。例如,经由商用的防火墙和入侵检测程序,连接和活动性被主动地且自动地监控。此外,能够利用客户端采样以监控并识别异常的使用模式。
在内容恶化的情况下,内容数据流30和编码被自动重启并进行配置。在客户端位置上的播放器50的所有实例、内容数据流30、⑶N 150和数据交互提供监控和检查点,以维持内容的完整性,以及提供对内容数据流30的传递的刑侦分析(forensic analysis) 0
因此,已验证的播放器50的流管理器从⑶N 150或广播节点请求内容数据流30被请求的内容数据流30由CDN 150或广播节点传递至流管理器,其接下来将信号传递至视频开关。内容数据流30随后传递至播放器50中的视频画布,并因此在相关显示屏42上可观看到(或可听得到)。
度量管理器接收来自视频画布的度量,并且将该度量和与该度量相应的数据提供至广播节点或⑶N 150。广播节点或⑶N 150随后调节或改变传递至流管理器的内容数据流30。
播放器或视频播放器50是单个的播放器,其用于提供多个视频、音频、和交互性的功能、安全和监控。因为利用了单个播放器,相同的代码库能够被用于视频功能、安全和监控中的每一个。视频播放器50包括视频画布,并且提供综合测试隔离和内容数据流30 完整性。一旦登录或验证了对账户的访问,播放器50经由安装程序比如Flash安装程序或 iPhone的AppStore,被自动地安装在用户计算机40 (或设备)上。
因此,播放器50能够解码根据商用配置来加密的内容数据流30。正如下面所阐明的,在Adobe套件中,解密密钥是Flash播放器动作脚本虚拟机(AVM)的组成部分,并且被选择成在任何当前已知的小网络格式(SWF)反编译过程中都不被透露。
如图5中所见,视频播放器50包括Videowindow、VideoScrim, Videowindowcontrols> Videoadoverlay> Videometricsoverlay 以及 Videoplayer。
Videowindow被整合到远程计算机(客户端)的用户界面中,所述远程计算机使用 Videoffindow 类
< media: VideoWindow Id="mywindow" Width=’’800" Height="450" VideoAlign="center" playerType="vod" showMetrics="true" showControls="false"windowControls="VideoWindowsControls—instance" streamToken="zapTestStreaml “clientToken="zapTestClient"/>
该标签仓ij 建了 Videoffindow 的实例,其仓Il 建了 Metricsmanager、AdManager> StreamManager以及VideoSwitch的实例。这组实例构成了独特的streamPath,其中在任何给定时间能够在客户端中存在大量的比如视频或画中画(PIP)。
这个类的特性有=Vide0Align-如果宽度和高度不相应于视频的宽高比,或者被缩放小于其正常尺寸,则该视频能够被定位在左侧、中央或者右侧;playerType-在主窗口中利用默认的直播和视频点播(VOD)流。使用playerType中的“preview”为预览观看而优化播放器,比如在时间表网格中的滚动。playerType中的“chat”为视频聊天配置播放器。 为了观看任何PIP流,以及为了观看流出的聊天流,应当使用playerType中的“preview” ; showMetrics使得播放器诊断程序覆盖可见;showControls显示或隐藏内嵌的播放器控件;windowControls传递类的实例,该类扩展VideoWindowControls以提供定制的内嵌视频控制;streamToken是对要播放的流的参照,其中没有流的名称被传递至客户端播放器, 直到授权了客户端和内容数据流请求之后;clientToken是在启动时传递到客户端的独特对话参照,其用于在流管理器中的授权;autoPlay规定一旦内容数据流可用时内容数据流 30是否将被自动播放。
一种额外的类允许在用户界面的任何地方嵌入“远程控件”。能够调用控制关于特定实例的传输(例如,播放、暂停、恢复和搜索)的方法,并且从流路径引发事件(例如, netStream事件、度量和广告事件)。
<media VideoPlayerRemote
stream Path =“ {mywindow. stream Path}/>“
该类的特性包括=StreamPath,其规定独特的流路径(例如,独特的id,用于特定的直播内容数据流30、聊天对话或V0D),以进行远程控制。
数个动态元件通过与内容数据流30比如视频相关的元数据来控制,其中包括 scrimOverlay,其作为大图标或布幕(scrim)在视频停止状态期间覆盖整个VideoWindow ; 静态图像-如果有布幕的话,提供在布幕之下显示的图像,但是在停止状态期间在所有其他的VideoWindow部分上(或在其上方);以及adOverlay,其在netStream广告事件期间被触发。
视频播放器50还监控在客户端计算机40上的内容数据流30的容量,并且分配包括了传输速率和处理能力的可用资源。也就是说,播放器的每个实例是相互依赖的,并因此视频画布是相互依赖的,并且每个播放器实例的使用要求是视频画布的其余实例的功能。
播放器50还允许客户端启动多个内容数据流30的PIP观看,每个内容数据流都在相应的视频画布以内。在一个配置中,与PIP相关的音频被静音,直到客户端选择PIP作为主视频画布。还要设想,与特定视频画布相关的音频能够响应于光标在屏幕上的位置而自动地启用或禁用。当系统监控光标和其他输入设备的位置以及视频画布的位置时,该系统能够利用光标的位置来使得相关的音频数据可被听得到,而不要求用户进行任何点击。 因此,通过移动光标以将其置于给定的视频画布上,播放器50能够自动地启动足够的音量,同时结束空出的视频画布的音频。可用视频画布的数量仅受到对于客户端计算机40的带宽(传输速率)的限制。
因此,视频画布有别于之前商用的图形用户界面的窗口。当前的视频画布受到单个播放器的控制,其中一个视频画布的内容数据流30依赖于在第二视频画布上呈现的内容数据流。因此,在一个视频画布中的内容数据流的显示适于在相同显示屏上的第二视频画布中的第二内容数据流的显示。此外,视频画布能够呈现不同格式的内容数据流30,所述不同的格式包括不同的编码格式。
播放器50被构建在多媒体编辑程序中,用于使用普通的商用计算机程序比如网络浏览器来观看动画和影片。可用的网络浏览器包括Windows Internet Explorer, Mozilla Firefox、Apple Safari、Google Chrome、以及 Opera。因此,播放器 50 作为浏览11器窗口在客户端计算机上的浏览器内运行。
一种令人满意的多媒体编辑程序是Adobe Flash播放器,或称Flash。Flash播放器广泛地分布于专有多媒体和应用播放器中,其由Macromedia创造并且现在由Adobe开发和发行。Flash播放器运行小网络格式或Shockwave (SffF)的文件,其能够通过Adobe Flash 编辑工具,通过Adobe Flex或者通过大量其他的Macromedia和第三方工具来创建。
Adobe Flash,或简单地称为Flash,其通常指由Adobe所编写和发行的多媒体编辑程序和Adobe Flash播放器这两者,其使用矢量和光栅图像、一种被称为活动脚本 (ActionScript)的本地脚本语言、以及视频和音频的双向流。Adobe Flash是编辑环境,并且Flash播放器是用于运行Flash文件的虚拟机,要理解的是,在工业文献中术语“Flash” 可能意味着编辑环境、播放器、或者应用文件。
Flash播放器可用作在选定平台上的各种网络浏览器(比如Mozilla Firefox, OperaJafari和hternet Explorer)的最新版本的插件。此外,Flash与大量移动操作系统兼容。
在一个配置中,从⑶N 150的边界节点到客户端(订户)计算机40,使用Adobe Flash媒体服务器,内容数据流30被直接传递至软件客户端。
另一种用于播放器50的多媒体编辑软件是由Apple公司所开发的QuickTime。 Quicktime能够处理各种格式的数字视频、媒体片段、声音、文本、动画、音乐、以及互动式的全景图像。QuickTime流服务器被发现对于QuickTime格式的流而言是令人满意的,其中对流进行分段,并且实现AES 128加密。
播放器50被配置成将内容数据流传递至连接到已验证的客户端设备比如计算机或pda上的显示屏。
在用户输入通过网站10时,所有用户的互动能够被监控和记录,比如通过按键或密钥登录,以及屏幕登录。因此,用户关于网站的每个动作能够被测量,并因此相关内容数据能够被测量。例如,启动和放弃(或终止)观看内容数据;暂停和恢复观看。
这种监控能够被用于提供动态的或主动的过滤。因为具体的站点由个别用户所限制,系统监控这种相关网站的限制,并且能够将网站自动地添加到不同的类或受限制的组中。因为地理定位允许系统知道每个客户端的位置,所以系统能够调整网站的分类,使之适合作为其他用户以及地理位置的函数。例如,在纽约城中不受限制的网站却可能在沙特阿拉伯受限制。
动态过滤能够被独特地应用到给定用户的不同子账户。设想账户可具有多个子账户,其中子账户中的每一个都与特定年龄的用户或年龄范围相关。系统则能够关于所选择的年龄限制某些网站,并由此限制子账户,由此允许不同的子账户观看不同的内容数据流 30或网站10。
关于图6,服务质量(或可用的传输速率)通过来自每个客户端计算机或设备40 的实时量度来主动监控。内容数据流30被重新路由,并且根据网络条件,响应于需要,使用额外的流服务器。内容数据流30能够被拓扑地重新路由到最近的接入点并遍及CDN 150, 以避免网络阻塞。也就是说,⑶N 150和/或广播节点连续地平衡负载。
还设想,用户创造的内容能够通过系统进行共享。对着这种内容,用户上载所述用户创造的内容,其传递通过编码器120,并因此被标记为其他的内容数据流30,并作为其他的内容数据流30传播。然而,设想,至少一些用户创造的内容数据可通过已验证的播放器 50的实例来编码,并且内容数据流30随后从播放器的起始实例传递到CDN 150,并随后到达用于存档的系统存储器。在播放器50的某些实例中,要被编码的内容数据流30传递通过嵌入式的编译码器,比如索伦森(Sorenson)编译码器。然而,依赖于负载平衡,要理解的是,如果在播放器50的实例上有过度的需求,则内容数据流30能够被传递至在前端106处的广播节点或编码器。也就是说,当系统主动监控负载、传输速率、和用户活动性时,系统能够对不断改变的需求做出反应。
在所选的配置中,系统将所有内容数据流30传递通过编码器120,因此,依赖对于来自客户端(用户)的PIP馈送的需求,内容数据流30传递通过编码器,并随后传递到终端。用户生成的PIP因此能够被提供给私人观看或公开观看的观众圈。此外,通过编码器的通道允许对内容数据流30,即PIP,进行分别的加密。
关于社交网络、微博服务、和短信服务(SMQ,这些输入维持本地格式,但是以数字容器或包封装置进行包封,并且因此能够像相关视频画布一样被跟踪。
也就是说,内容数据流30中的一些被数字地包封在播放器50中。也就是说,在那些使用Adobe Flash的配置中,所选择的内容数据流30,比如twitter或!^cebook的文本, 以起始格式来保持,并且Flash被用于提供特殊文件格式的元数据,其用于被包封的内容流的储存和传输。Adobe Flash因此被用来提供文件格式(或流格式),其具体指定被包封的内容数据流在文件和可用元数据内中被存储但不被编码的方法。在这些配置中,通过存储实际的内容数据流和关于如何将所述内容数据流存储在文件内的信息,Adobe Flash包封内容数据流。因此,播放器50的实例能够将被包封的内容数据流30视为Flash编码的内容数据流。
通过处理经过编码器120内容数据流(无论是流或者仅仅是一个文件)(并因此创造普通的、与内容无关的格式),无论是由第三方或其自身生成,并且无论是视频、音频或文本,系统允许用户选择内容数据流30被共享给预定的“关系密切的”组、合乎标准的第三方、所有的第三方、或受限的被邀请方。
关于自身生成的,或者客户端创造的内容数据,这种内容数据流30被传递通过编码器,并因此被视为流入的第三方商业内容数据流30-由此具有相关的元数据、传输控制、 加密以及验证。
此外,因为这种由客户端创造的内容数据流30能够由系统监控,所以观看能够被跟踪,并且相对新的客户端内容数据流能够与现有的商业实体进行关联,允许为双方提供赞助、广告宣传、或者植入式广告(product placement)的机会。
本系统还提供在⑶N 150上的内容数据流名称的模糊化,以及在内容数据流30上存储和恢复度量的能力。
关于图7,在⑶N 150上的内容数据流名称的模糊化通过令牌授权模式来实现,其涉及用于背景程序上的Ruby编程语言比如Ruby on Rails(Rails)的开源网络应用架构, 以及基于Adobe Flash平台比如Adobe Flex、Adobe A^和ColdFusion来部署交叉平台的、丰富互联网应用的软件开发。特别地,当内容数据流30来源于编码器120时,流被广播至Flash媒体综合服务器(FMIS),其接下来将内容数据流30发布至⑶N 150。因为内容数据流30被发布至⑶N 150,FMIS通知Rails背景程序所述流的名称和位置。Rails背景程序存储流名称,并且生成随机字符串,比如通用唯一识别码(UUID),其被使用为公开的流名称。Rai 1 s背景程序还将内容数据流与节目指南数据相关联,比如通过使用所述内容数据流的位置和一当前时间,以将流与频道相关联。正如在可变比特流部分的描述中所阐明的,能够存在与每个节目项相关联的多个流,即多个带宽和被记录的DVR流。一旦Rails背景程序返回内容数据流的新名称,FMIS服务器随后将流发布至CDN。
通过将节目指南密钥或令牌传递至播放器,来提供客户端计算机40和播放器50 实例的授权。播放器50随后将该令牌与一个对于客户端(用户)唯一的令牌传递至Rails 背景程序,其中所述唯一的客户端令牌可以是从用户管理模块传送到客户端的字符串。一旦完成了这种传递,Rails背景程序将与被请求的节目相关联的流的列表发送给视频播放器50。
设想,令牌能够为被使用一次的数字(临时使用的数),其中该临时使用的数能够为验证协议中所发布的随机的数字或者伪随机的数字,以确保旧的通信不能够在重放攻击 (replay attack)中被重新使用。例如,每当验证怀疑响应代码出现时,该临时使用的数是不同的,并且来自已验证的播放器实例的每个客户端请求具有唯一的序列号,因此使重放攻击和字典式攻击(dictionary attack)变得异常困难。
因此,在内容数据流的传输开始之前,必须使用被分别地发送和审核的一次性令牌来使内容数据流请求生效。除非提供了被分别地发送和审核的一次性令牌,否则客户端 (计算机40)会被阻止连接到内容数据流30。
内容数据流的详细目录通过在Rails背景程序中存储的参考文件来提供。所有在技术堆栈(例如但不限于编码器、起源、视频聊天)中生成的内容数据流30将具有参考文件,甚至当该内容数据流非公开可用时也是如此。
与内容数据流30相关联的度量被存储为XML—段预定的时间周期,比如在近似12 至对小时之间。对于每个内容数据流30,一组非专用独立识别度量存储预定的时间。也就是说,这些被存储的度量不识别具体的用户,而是用户在人口统计学上的代表,比如有统计学特征的人群(或者通过年龄或性别或收入等等加以区分的人群的部分)。每个度量资料被打时间戳,使得该度量能够使用Flex客户端来重新构造。在Flex客户端与Rails背景程序之间的通信以动作消息格式(AMF)来提供。
例如,用作恢复内容数据流位置的存根(stub)的数据通过用户对特定程序数据项的请求来提供。
〈location name=”rickRoN" type="vod"> <connection><application>vod</application> <ip>192.168.1.K/ip> 〈/connection〉 〈stream〉<name>Never Gonna Give You Up</name> <type>vod</type> <uid>anlHk77#ksAkssaap</uid> ■ <url>astley—never—gonna_l200k</url> <videobitrate> 1200</videobitrate> <audiobitrate>96</audiobitrate>〈events〉 <event><type>com.zapmytv.events.ClosedCaptioningEvent</type> </event> <event><type>com. zapmytv. events. AdEvent</type> </event>
</events> 〈/stream〉 <stream><name>Never Gonna Give You Up</name> <type>vod</type><uid>dioNmsomKk6KkM00akw</uid> <url>astley_never_gonna_800k</url> <videobitrate>800</videobitrate> <audiobitrate>96</audiobitrate> <events> <event><type>com.zapmytv.events.ClosedCaptioningEvent</type> </event> <event><type>com.zapmytv.events.AdEvent</type> </event〉 </events> </stream> 〈stream〉<name>Never Gonna Give You Up</name>< type >vod</ type ><uid>oosmaii833kMMIw92&m</uid><url>astley_never_gonna_400k</url><videobitrate>400</videobitrate><audiobitrate>48</audiobitrate><events><type>com.zapmytv.events.ClosedCaptioningEvent</type> </event> <event><type>com.zapmytv.events.AdEvent</type>
</event> </events> 〈/stream〉 </location>
当度量数据被接收时,由于不同的流类型(VOD、SV0D、视频、聊天、数据),该度量数据将具有任意结构。一个示意性的例子是
〈metrics streamType="vod"> <uid>ggYx5rrd</uid> <metric><name>ave_buffer_pct</name> <value>67</value> 〈/metric〉 <metric><name>num_insifficient_bw</name> <value>0</value> 〈/metric〉 </metrics>
一般来说,单个IP网络连接由客户端位置上的每个播放器50支持。与地理定位信息共同作用,客户端(订户)能够有选择地防止接收作为互联网接入点的功能的、被选择的内容数据流30。播放器50被配置成要被再次更新,其中安全更新不需要客户端的许可。 通过在播放器50中设定无效标志(flag)来启动更新。通过加载来自网站的适当版本,所述无效标志导致播放器50自动再次更新。然而,通过使播放器不工作,能够宣告播放器50 被撤销。在一个配置中,播放器50从安全位置加载一次性使用的令牌。一旦被启动,令牌返回安全服务器以授权播放器连接到网站10或网络。
一旦连接到网站10、网络、或特定服务器,在接收每个内容数据流之前,播放器50 必须将关于每个内容数据流30的令牌与从安全服务器获得的一次性使用的令牌一起进行传递。每个单独使用的令牌的接收以用户凭据和用户内容许可的有效性为基础(正如能够有账户管理员所设定的一样)。
可变比特流技术提供了内容数据流30以多个预定传输速率中的一个进行编码。 例如,编码器120以400K、800K、1. OM和1. 2Μ中的任何一个提供内容数据流30。因为借助于在客户端计算机40上运行的播放器50的实例在CDN 150与客户端或用户计算机40之间存在活动的链路,因而可用的传输速率被连续地(至少被认为连续地)监控。因此,如果编码器120提供800k的内容数据流30,并且可用的传输速率降到700k,则通过将编码器所提供的800k内容数据流30编码转换成可用的700k传输速率,可变比特流程序将被传输的内容数据流调节至可用的传输速率。可变比特流程序继续在来自编码器120的可用预定码率之间将内容数据流30进行编码转换,其作为对于各自客户端的可用传输速率的函数。一旦可用的传输速率匹配预定的编码器120速率中的一个,可变比特流技术请求较接近编码器的预定码率,并且将这种码率传递至客户端(已验证的播放器50的实例)。
因为被应用到广播节点,可变比特流程序允许软件桥接如编码器120所提供的内容数据流30的可用的传输速率之间的间隙。
在一个配置中,FMIS提供动态流以便自动地检测不同的比特率,并在不同的比特率间进行切换,允许远程客户端观看内容数据流30而不暂停或中断。此外,在一个实施方式中,所有内容数据流30受到系统监控,以便检测和隔离故障。此外,参数和事件通过系统从客户端捕获,以便广播标志流。
加密能够包括工业标准实时消息协议加密(RTMPE),其中RTMP能够被封装到HTTP 请求内,以穿过防火墙或RTMPS,其在安全HTTPS连接上操作。此外,对于Adobe FMS,除了 RTMPE,还能够利用SWF验证。
另外,系统设想使用一次(单个)使用令牌,其中一旦与系统进行了验证,第一单个使用令牌被传递到已验证的播放器50的实例。当用户请求内容数据流30时,第一单个使用令牌从播放器50被传递至服务器140,并且第二单个使用令牌在令牌不再有效的时间上使用内容数据流30被传递至播放器。当播放器50 (用户)请求第二内容数据流30时, 第二单个使用令牌被传递至服务器140,并且第三单个使用令牌使用第二个被请求的内容数据流30传递至播放器50。每当令牌被传递时,系统鉴定相对多个因数的请求,所述因数比如是账单或单据、预定等级、可用过滤器(包括内容过滤器)、观看周期、事件或管制(地理上的限制)。现在,单个使用令牌和验证的交换需要近似3秒或更少的时间。
因为令牌仅对相关的内容数据流有效,如果令牌被呈现给服务器104两次,则系统辨认其企图,并且能够实现各种响应比如去激活、或重新发送要求中的任何一个。
单个使用令牌的使用还能够被应用到登记在给定账户内的其他设备。例如,如果用户将iPhone 160与系统进行登记,已验证的播放器的实例能够在iPhone上启动。随后从iPhone中,一个请求能够由iPhone作出,并且相关的单个使用令牌和内容数据流被传输至iWione。包括了与iPhone的服务供应商验证的验证能够随着每个令牌交换而发生,再次核查系统参数以及iPhone服务供应商的参数。
因为iPhone 160具有GPS功能,并且系统主动地跟踪每个连接,系统能够监控 iPhone相对于账户所有者的计算机的地理位置(如以下所阐明的,该地理位置是已知的) 的位置。因此,如果系统检测iPhone 160移动距离大于距账户所有者的计算机的地理位置的预定间隔,则系统能够终止与这些设备中的一个(一般为稳定的设备)的通信。
此外,系统能够被配置使得一旦启动观看iPhone 160上的内容数据流30,则到稳定的播放器实例的传输在预定时间内终止。
另外,因为iPhone 160是与系统进行了登记的设备,iPhone能够运行远程控制应用,以作为已验证的播放器50实例的远程控制起作用,或者iPhone能够作为摄像机(视频摄像机)起作用,其为已验证的播放器50实例提供内容数据流30。还要理解,运行编程以提供在次要的、分立的、已验证设备或计算机上的光标控制(作为鼠标或输入设备起作用)。18也就是说,由iPhone 160生成的命令,比如光标控制或键盘输入,被传输至次要的设备,并且因为系统(已验证的播放器50)监控在相应显示屏42上显示的内容数据30的位置,则来自iPhone 160的命令能够控制并修正在分立的、已验证的播放器50的实例的远程显示屏上的显示。
内容数据流30能够通过HTTP流提供至iPhone 160。
地理定位允许给定的观众(用户)被限制到特定的网络或地理区域,比如通过ZIP 代码,或者可选地,能够基于相同的参数拒绝指定的访问。地理定位是自动识别客户端的物理位置的过程,而用户不必提供任何信息,比如ZIP代码。地理定位可用于几乎所有的网络浏览器,并且不需要任何插件或cookies。一般来说,地理定位利用互联网协议地址到特定位置的映射。在地理定位使用的额外数据包括手机信号接收塔的使用和Wi-Fi接入点。令人满意的地理定位数据由Quova公司提供。因此,通过系统已知的IP地址能够被用于提供信息,比如关于给定IP地址、并因此关于用户的国家、地区、城市、邮编/区号、纬度、经度和时区。
因此,本系统获得或访问提供了位置的数据库,其中位置能够包括给定用户的国家、地区、城市、邮编/区号、纬度、经度和时区,并且能够实现与地理位置相关的内容数据流30限制的必需管制。
这种地理数据被存储在系统中,或者由系统访问,并且与广告比如adOverlay — 起使用,并且依从于内容数据流30的许可。
adOverlay(VideoAdoverlay)的启动能够设定到大量触发中的任何一个。例如, adOverlay能够以预定的间隔随着内容数据流30来启动。可选地,adOverlay能够以预定的次数启动,其独立于视频画布中的任何内容数据流30的计时。要进一步理解,adOverlay 能够响应于与给定内容数据流30相关的元数据被启动。也就是说,在IRD 110处的接收的内容数据流30中,该内容数据流可包括的元数据比如标题、导演、演员、内容概述、记录长度、关键评级、和该记录的数据和源,以及文件名和当前状态(观看状态、‘保存-直到(save until) ’数据)。因此,adOverlay能够响应于元数据的特定类型或内容而被启动。
此外,能够相应于元数据的主题,类似地来提供adOverlay的内容。因此,浪漫喜剧的内容数据流30将启动与开赛的足球比赛不同的adOverlay。进一步设想,一般在编码步骤上,系统能够将额外的元数据与内容流相关联,由此提供对adOverlay计时和内容更加特殊的调整。例如,植入式广告能够在特定时间被记录在内容数据流中,使得关于所述产品或者相关产品的adOverlay与内容数据流30中的植入式广告同时地或者基本上同时地出现。
另外,系统监控由用户通过网站10的输入。特别地,按键登录、和鼠标位置、以及输入被监控。因此,系统能够将被访问的特定网站和所采取的行动相关联。该信息能够关于特定用户(客户端)、并且按一般的地理学或人口统计学兴趣被存储。这种积累的使用数据还能够被用于计时和将adOverlay与给定内容数据流相关联。因此,关于adOverlay的启动和内容数据流能够为用户的地理位置、用户的配置文件、与之前的内容数据流、以及用户的观看历史相关的元数据的函数。
在被启动的adOverlay中提供的内容数据流30存储到系统的服务器中,或存储到可通过系统的服务器(或CDN)访问的储存器中。关于adOverlay的内容数据流能够通过互联网提供实时业务,允许客户端保存或打印赠券或广告宣传,或链接到特定第三方网站。
作为实时业务的例子,被启动的adOverlay能够提供完整的业务而不中断之前的业务,并且现在同时显示主要的内容数据流30。如果adOverlay是关于本地的pizza供应商,则adOverlay允许与互联网通信,使得客户端能够根据需要改变adOverlay的尺寸,选择提供的食物,预定食物,并且接收确认,以及关闭adOverlay,而不要求用户改变对主内容数据流的观看的任何方面,或者触发内容数据流。要理解,系统监控到客户端播放器的内容数据流30和可用传输,并且在与播放器50相关的相应显示屏上维持相应内容数据流30的连续显示。
还要设想,本系统能够提供用于识别内容数据流30(比如电视表演)的节目指南数据(如图2中所见),以用于观看。该指南数据能够从第三方供应商比如Macrovision 处获得,其中该指南数据被显示在以传统的网格格式的视频画布中。从对客户端和订户群体的监控数据中,系统能够自动识别(全部或一种类别内)最流行的项目、观众评价、由支持者或观众圈(viewing circle)所观看的表演、高级搜索(演员、导演、时间、广播公司,等等)、以及推荐项目(基于观看习惯和友情链接)。来自内容数据供应商的元数据还能够包括在被显示的网格中。在一个配置中,视频点播还将通过标题、类别、和供应商被列出。
另外,因为系统监控光标位置和每个内容数据流30在相应显示屏上的位置(以及数据在流中的位置),根据指南数据的显示,系统能够被配置,使得用户能够在指南数据中选择给定的项,并且在被选择的数据上自动启动搜索。特定的搜索引擎和用于搜索的位置能够由用户和账户所有者预先确定。例如,如果指南数据具有影片的条目和主要演员的列表,则用户能够选择主演的名字,并且系统将使用由用户限定的搜索引擎自动地进行搜索, 以定位关于该演员的额外信息。
因此,本系统提供一种平台,其用于提供即时流内容数据流30,比如跨网络比如互联网到达任何流设备的有线或卫星电视广播,其中流内容数据能够与社交媒体相结合,比如twitter或&(3吐001^。本系统提供观众圈,以将流内容数据流30比如电视与在线社交媒体和社交网络结合,其中在流中,内容数据流30通常在位于远程的播放器50的实例上被实时体验。因此,本系统提供对得到许可的即时有线电视、社交网络、互动视频、视频点播 (VOD)、预订视频点播(SVOD)、用户生成的内容的访问和观看,所述用户生成的内容包括借助于在用户计算机的浏览器内的播放器实例在单个网站中的视频、文本和语音聊天。
在观众圈中,多个观众能够共享同步的或非同步的内容数据流,并且邀请其他人加入-以对特定的内容数据流的单独预订(授权)为条件。设想在观众圈中的观众能够共享当前描述的DVR控制的远程功能,预测性同步维持了跨多个客户端的计时。因为系统将会控制每个内容数据流30到观众圈中的每个成员的传递的传输速率,内容数据流的实质上同步的传递能够通过以观众圈内最低的传输速率进行传输来实现。此外,因为观众圈中的每个成员都是已验证的账户(或子账户),并且到成员的传输是同步的,则内容数据流的远程控制能够被转移至观众圈的任何一个成员。
本系统允许观众观看即时流内容数据流30,其中可变比特流提供内容数据流的一致的即时表演,因为实际的可用的传输速率(作为带宽和网络流量的函数)指示了到达相应播放器实例的内容数据流的实际传输速率。
考虑到所提供的加密,对内容数据流30的访问通常被阻止达到任何其他的设备或程序。与以上所阐明的三秒或更短时间的短期缓冲不同,在任何时刻存储到远程计算机处。此外,因为每个内容数据流是已授权的,在每账户/每设备基础上,对内容数据流的访问受到控制。在一个配置中,对每个内容数据流的访问链接到单个令牌或临时使用的数,其已关于唯一的访问进行了授权。在内容数据流查询过程期间的任何访问尝试之前,核查并拒绝多个访问。
选择对播放器50实例的加密和验证,利用阻止的目标在实质上抑制对内容数据流30的记录。因此,不同于被缓冲的瞬态数据,不高速缓冲存储实际量的内容数据流30来提供广播标志的依从性。
本系统还提供内容数据流30的数字视频记录,这与内容数据流是否作为即时内容数据流而由客户端实际观看无关。
本系统能够记录全体可用内容流的范围内的可用内容数据流30中的每一个。
在一个配置中,系统从多种多样的“内容供应商”-生产和提供独立节目的各种广播公司和有线频道处-接收、集成、并编码电视节目,并且选择性地将被编码的内容数据流传输至独立客户端的播放器实例的远程位置。系统实时地接收第三方内容供应商的内容数据流,编码并且传输内容数据流给提出请求的客户端。因此,如果卡通网络节目被安排在周一晚8点播放,则卡通网络在该时间将节目数据传输至本系统和全国范围内的其他有线电视公司,本系统立即将该数据重新传输至预订或选择了当前网站中的频道的顾客。
本系统能够包括或订阅远程储存DVR系统(RS-DVR)。RS-DVR允许系统客户端在 “远程”位置上记录或观看系统的中央硬盘驱动器上记录的内容数据流30。因此,系统能够关于给定的时间段(比如1天、3天、7天、14天、21天、或如通过系统配置或内容许可所允许的任何时间段)自动捕获在RS-DVR上的每个内容数据流30,其中客户端能够有选择地观看在给定时间段内存储的内容数据流30中的任何一个。在给定的时间段中,RS-DVR用户随后可通过本网站接收到已验证的播放器实例的这些内容数据流30的回放。
在RS-DVR中,编码的内容数据流30被分成两个流。第一内容数据流被直接路由至客户端。第二内容数据流被传输至大量的高容量硬盘。在所选的配置中,储存器能够在前端106中,或者使用CDN 150,其中被存储的内容能够保存在点播高速缓存中。此外,内容数据流30能够存储在长度从近似1分钟到30分钟的任意片段中,并且响应被传输到客户端播放器实例的需求而被重新组合。
对于使用网站10的客户端,该客户端能够选择任何被记录的内容数据流30,其随后传输至客户端计算机40。不将实际的内容储存在客户端计算机40上,并且客户端不启动记录。客户端仅做书签或搜索并且访问已经被存储、高速缓存到前端106或⑶N 150上的内容数据。依赖于和内容供应商达成的协议,能够有选择地应用内容数据流30的暂停、回退、和快进。已经发现令人满意的是,将在客户端计算机上高速缓存的内容数据流的量限制到近似180秒或更短的时间上。
本系统能够以类似于其他内容数据流30的处理的方式来提供V0D、SV0D。也就是说,内容数据以加密形式储存,并且关于多个带宽的流(可用的传输速率)动态地进行编码转换。要设想的是,所选择的内容数据可以在租赁或购买的基础上经由AdobeFlash数字版权管理服务进行传输。
事实上,网站10是即时电视广播公司、社交网络、PIP视频、音频或文本聊天、互动21式广告的视频门户。通过经前端提供内容数据流30,并以此通过网站,本系统允许用户观看来自任何互联网接入点的可用内容。因为每个视频画布是与内容相关的,所以每个视频画布能够以之前不可使用的方法被控制。
例如,客户端能够使用个人数字助理、手持式或掌上型的计算机来控制播放器实例网站。因此,控制面板能够显示在任何被选择的(和已授权的)客户端显示屏上,由此允许客户端体验来自任何地方的交互性(以来自被储存的地理定位信息的管制控制为前提条件)。
因为视频画布与其上出现该视频画布的显示屏无关,视频画布能够从台式的或固定的显示屏传递至个人数字助理、手持式或掌上型的计算机。在应用中,系统监控在客户端显示屏42上的按键和光标位置这二者。此外,系统监控哪个视频画布、窗口是被选择的或者是主要的。因为在账户的设定或建立时被提供,特定的设备已由系统授权,并因此可由系统辨别。所以,当内容数据流30在第一显示屏42上显示期间,播放器50能够在第一显示屏上提供用户可识别的转移位置,其中用户构建所述用户可识别的转移位置,以表示将视频画布从第一显示屏转移传输至与所述账户相关联的、第二个之前已授权的显示屏的指令。因此,通过选择在第一显示屏上给定的视频画布,并且将所选择的视频画布与用户可识别的转移位置相关联,用户能够使所选择的视频画布(带有相关的内容数据流)停止到第一显示屏的传输,并且启动到第二显示屏的传输。因此,因为每个内容数据流30都通过相应的视频画布,代表性的视频画布能够被传递至客户端的第二显示屏,而不中断传输。
本系统的传输速率监控能够与虚拟影院结合使用。在虚拟影院中,客户端(订户) 能够邀请特定个人在多个远程位置上同时观看公共的内容数据流,比如影片。在一个配置中,受邀请者导航通过相应的播放器实例,到达在线“票务代理”并且在同一时间开始观看。 在观看公共的内容数据流期间,通过文本、音频、或视频、或其组合,受邀请者能够通过分离的视频画布进行互动。正如每个受邀请者感受到的,系统持续不断地监控到每个受邀请者的可用传输速度,并且以最低的公共比率传输所选择的内容数据流,使得所有相关的播放器同时显示内容数据流。也就是说,之前描述的可变比特流程序应用于内容数据流到受邀请者的传输。
本系统的主动过滤能够被应用到各种内容数据流30中的任何一个。在一个配置中,本系统能够利用网络爬虫(web crawler)搜索可用的在线无线台站,并且给客户端提供这种可用台站的列表,其中主动过滤被应用到该列表,使得客户端或者客户端的子账户能够访问仅从该列表中选出的台站。还要设想,系统能够利用网络爬虫监控新创建的网站,并且给这些新创建的网站提供评价,并因此提供了对内容的过滤。
本系统还提供了在之前不可达到的内容数据流30之间的同步。通过编码每个内容数据流、监控传输速率和利用元数据,本系统能够同步内容数据流30,这与内容数据流是否是即时或时移的无关。因此,播放器依据访问被验证,并且用于访问内容数据流30的随后请求提供了观看即时流电视广播,其中多个内容数据流30能够被同步(比如通过移动至特定的传输速率、通过元数据、通过可用的传输速率),并且社交网络的内容能够整合到播放器内。
因此,如所提供的,针对关于每个内容数据流的地理定位授权数据库和内容数据流内的时间块(timeblock),用于访问内容数据流30的请求被查询(授权),其中在关于播放器50或客户端(账户所有者)的授权实例的授权地理区域以外的请求或现存的流被阻止或断开。已经被发现令人满意的是,响应对内容数据流的请求关于地理定位进行查询或验证,并且是在内容数据流的传输期间以周期性的间隔进行查询或验证。所述周期性的间隔能够是预定的间隔比如以5分钟、15分钟、30分钟、或1小时基准的间隔。还要理解的是,预定的间隔能够在分钟或更短时间的级别上。关于iPhone,地理定位数据能够从商用的 iPhone定位服务获得。此外,仅当使用账户资格和所描述的临时的一次性使用的令牌参与对话时,唯一地识别播放器50的实例。通过将根据访问的已证实的软件(播放器)的必需下载与根据访问的账户资格相结合,来阻止克隆设备。对内容数据流和授权进行访问,同时的连接(因此对内容数据流30的同时的访问)被驳回。因为每个访问都是以设备(计算机40)和软件的授权这两者为前提条件的,之前已授权的设备能够被阻止进行访问。因此,设备40或播放器50的实例被视为不受信任的,并且根据对内容数据流进行访问的每个请求来使其生效或进行验证。根据访问,对播放器50的更新被推送到客户端设备,或者根据来自服务器比如前端106的服务器140的播放器的下载(安装)来提供。本系统还通过使用反向的“绿”屏来提供交互性。与已验证的账户相关的图像采集设备80能够被用于映射未被占用的空间。也就是说,摄像机80捕获图像,该数据被传输至服务器(或在播放器级别上完成),并且对空间的像素代表进行映射。用户随后进入空间, 并且图像采集设备捕获用户并且再次捕获该空间。然而,服务器140或(播放器50)移除之前映射的背景,由此提供用户的数字表示。系统能够针对任何所需的背景层,比如游戏环境或学习环境,来定位或处理用户的数字代表。系统能够由此登记用户的移动而不要求用户操作输入设备。在一个配置中,本系统具有以下规格
权利要求
1.一种向显示屏提供多个内容数据流30的方法,所述方法包括(a)接收第一数据流和第二数据流;(b)对所述第一内容数据流和所述第二内容数据流中的至少一个进行编码和以预定文件格式将所述第一内容数据流和所述第二内容数据流中的至少一个进行包封中的至少一项;(c)将所述第一内容数据流和所述第二内容数据流传递至内容传递网络;(d)验证在远程位置上的播放器实例,被验证的实例与所述显示屏通信;(e)以一传输速率将所述第一内容数据流和所述第二内容数据流传输至所述被验证的播放器实例;以及(f)响应在所述内容传递网络和所述被验证的播放器实例之间的可用传输速率,调节所述第一内容数据流和所述第二内容数据流中的至少一个的传输速率。
2.如权利要求1所述的方法,还包括在所述显示屏上的第一视频画布中显示所述第一内容数据流。
3.如权利要求1所述的方法,还包括在所述显示屏上的第二视频画布中显示所述第二内容数据流;
4.如权利要求1所述的方法,还包括从所述被验证的播放器实例接收用户生成的内容数据流,并且编码所述用户生成的内容数据流。
5.一种显示内容数据流的方法,所述方法包括(a)在与第一显示屏相关的已授权的播放器实例的第一视频画布上显示所述内容数据流;(b)选择在所述第一显示屏上显示所述内容数据流的所述第一视频画布;(c)启动在与所述已授权的播放器相关的第二显示屏上的所述第一视频画布的显示;以及(d)终止在所述第一显示屏上的所述第一视频画布的显示。
6.如权利要求5所述的方法,其中启动在第二显示屏上的所述第一视频画布的显示是响应于所述第一视频画布在所述第一显示屏上的移动。
7.—种显示内容数据流的方法,所述方法包括(a)在与第一显示屏相关的已授权的播放器实例的第一视频画布中显示所述内容视频流;(b)监控所述第一视频画布在所述第一显示屏上的位置;(c)启动在不同的第二显示屏上显示的第二视频画布上所显示的控制程序;以及(c)响应于在所述控制程序处的输入来改变在所述第一显示屏上的所述第一视频画布的显示。
8.一种将内容数据流从内容传递网络提供到第一远程播放器和第二远程播放器的方法,所述方法包括(a)验证所述第一远程播放器,所述第一远程播放器被选择成生成在相关的第一显示屏上的显示;(b)验证第二远程播放器,所述第二远程播放器被选择成生成在相关的第二显示屏上的显示;(C)确定在被验证的第一远程播放器与所述内容传递网络之间的第一传输时间和第一可用的传输速率中的至少一个;(d)确定在被验证的第二远程播放器与所述内容传递网络之间的第二传输时间和第二可用的传输速率中的至少一个;以及(e)将所述内容数据流传输至所述被验证的第一远程播放器和所述被验证的第二远程播放器,所述传输对应于所述第一可用的传输速率、所述第一传输时间、所述第二可用的传输速率和所述第二传输时间中的至少一个,其中,实质上在所述内容数据流在所述第二显示屏上显示的同时,所述内容数据流被显示在所述第一显示屏上。
9.如权利要求8所述的方法,其中第一传输时间是在所述被验证的第一远程播放器与所述内容传递网络之间的平均传输时间。
10.如权利要求8所述的方法,其中第二传输时间是在所述被验证的第二远程播放器与所述内容传递网络之间的平均传输时间。
11.如权利要求8所述的方法,其中所述第一可用的传输速率和所述第二可用的传输速率是不同的。
12.如权利要求8所述的方法,还包括将用户生成的内容数据流从所述被验证的第一远程播放器传递至所述被验证的第二远程播放器。
13.—种显示内容数据流的方法,所述方法包括(a)验证第一远程播放器实例,与第一显示屏相关的所述播放器用于显示所述内容数据流;(b)在所述第一显示屏上的视频画布中显示所述内容数据流;(c)响应于所述第一数据流的计时、所述第一内容数据流的内容、和与所述第一内容数据流相关的元数据中的一个,生成在所述第一显示屏上的第二视频画布;(d)独立于所述内容数据流中随后的数据,使能通过所述第二视频画布的业务;以及(e)一旦完成了所述业务的至少一部分,则关闭所述第二视频画布。
14.如权利要求13所述的方法,其中所述第二视频画布以所述内容数据流的预定间隔被生成。
全文摘要
本系统提供了一种用于发布被转换成通用格式的多个内容数据流的网站,其中每个内容数据流被加密,并且内容数据流的传输是到给定远程设备的可用传输速率的函数。
文档编号G06F21/00GK102483777SQ200980149527
公开日2012年5月30日 申请日期2009年10月9日 优先权日2008年10月10日
发明者S·E·特纳 申请人:S·E·特纳
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1