在数字内容中插入个性化信息的制作方法

文档序号:12183724阅读:205来源:国知局
在数字内容中插入个性化信息的制作方法与工艺

本申请是2015年6月24日提交的美国专利申请No.14/749,204的部分继续申请,该美国专利申请No.14/749,204是2012年3月5日提交的美国专利申请No.13/412,489,现在是美国专利No.9,094,695的继续申请,该美国专利申请No.13/412,489是2009年7月23日提交的美国专利申请No.12/508,503,现在是美国专利No.8,397,253的分案申请。

技术领域

本申请的主题一般涉及用于将个性化信息插入数字内容中的方法和装置,包括计算机程序产品。



背景技术:

近几年来,数字视频内容的传播和可用性已经以指数方式增长。记录和生产技术诸如手持式数字视频摄像机和高级编辑软件的发展,连同因特网上托管资源的扩展,已经允许传统媒体出口(例如,电视网络)以及小型、“自己动手的”内容提供者创建大量多种多样的视频内容。此外,视频内容的消费不再限于家用电脑或电视机。便携式媒体设备像来自苹果电脑公司的iPodtouch以及来自索尼公司的PSP的激增已经使得数字视频内容几乎在任何地方都是随时可用的。

尽管存在大量的内容选择,但是为观看该内容的个人定制的数字视频源却非常少。为使观看者获得个性化的内容(例如,用户的投资组合的投资效益,个人信用卡交易概要等),该用户常常必须连接至不同的源——例如需要离散认证以便访问该信息的网站。这意味着用户打开多个应用和/或在查看视频内容和个性化信息之间来回切换。

提供“个性化”数字视频内容的当前方法可利用像使用Adobe Flash家族产品创建的覆盖层的技术。代替在逐帧的基础上将个性化数据插入视频内容流中,内容提供者利用专门软件将底层的视频流转换成Flash应用,常常使用专用服务器硬件来执行该转换。此外,协议中的内容文件诸如Flash有时需要特定的插件以便被回放。对于特定类型的设备来说这些插件的可用性可能受限。

鉴于上文,将期望开发一种能够提供数字视频内容和个性化信息的完全集成的流使得用户可在一个内容查看体验中接收数字视频和个性化信息的系统和方法。还将期望开发一种允许将包含个性化信息的单个视频内容流分布至多个用户但是每个用户仅被允许查看作为内容流的一部分的属于他的个性化信息的系统和方法。



技术实现要素:

本发明在一个方面以一种用于使视频内容个性化的计算机化方法为特征。服务器计算设备从客户端设备接收对数字视频流的请求,该请求包括与该客户端设备的用户相关联的认证数据。该服务器计算设备生成要被插入所请求的数字视频流中的第一组个性化帧,其中所述个性化帧包括该用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字。该服务器计算设备通过从所请求的数字视频流中提取一个或多个帧并利用来自第一组个性化帧的一个或多个帧取代所提取的帧来组合该第一组个性化帧和所请求的数字视频流以生成个性化视频流。该服务器计算设备将该个性化视频流发送至下游设备。该下游设备生成要被插入该个性化视频流中的第二组个性化帧,其中该第二组个性化帧包括与该一个或多个关键字对应的内容数据。该下游设备通过从该个性化视频流中提取一个或多个帧并利用来自该第二组个性化帧的一个或多个帧取代所提取的帧来组合该第二组个性化帧和该个性化视频流以生成更新的个性化视频流。该下游设备将该更新的个性化视频流发送至该客户端设备。

本发明在另一方面以一种用于使视频内容个性化的系统为特征。该系统包括耦合至下游设备和客户端设备的服务器计算设备。该服务器计算设备从客户端设备接收对数字视频流的请求,该请求包括与该客户端设备的用户相关联的认证数据。该服务器计算设备生成要被插入所请求的数字视频流中的第一组个性化帧,其中所述个性化帧包括该用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字。该服务器计算设备通过从所请求的数字视频流中提取一个或多个帧并利用来自第一组个性化帧的一个或多个帧取代所提取的帧来组合该第一组个性化帧和所请求的数字视频流以生成个性化视频流。该服务器计算设备将该个性化视频流发送至下游设备。该下游设备生成要被插入该个性化视频流中的第二组个性化帧,其中该第二组个性化帧包括与该一个或多个关键字对应的内容数据。该下游设备通过从该个性化视频流中提取一个或多个帧并利用来自第二组个性化帧的一个或多个帧取代所提取的帧来组合该第二组个性化帧和该个性化视频流以生成更新的个性化视频流。该下游设备将该更新的个性化视频流发送至该客户端设备。

本发明在另一方面以一种用于使视频内容个性化的计算机程序产品为特征,该计算机程序产品有形地实现在非瞬态计算机可读存储设备中。该计算机程序产品包括可操作以使耦合至下游设备和客户端设备的服务器计算设备从客户端设备接收对数字视频流的请求的指令,该请求包括与该客户端设备的用户相关联的认证数据。该计算机程序产品包括可操作以使该服务器计算设备生成要被插入所请求的数字视频流中的第一组个性化帧的指令,其中所述个性化帧包括该用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字。该计算机程序产品包括可操作以使该服务器计算设备通过从所请求的数字视频流中提取一个或多个帧并利用来自第一组个性化帧的一个或多个帧取代所提取的帧来组合该第一组个性化帧和所请求的数字视频流以生成个性化视频流的指令。该计算机程序产品包括可操作以使该服务器计算设备将该个性化视频流发送至下游设备的指令。该计算机程序产品包括可操作以使该下游设备生成要被插入该个性化视频流中的第二组个性化帧的指令,其中该第二组个性化帧包括与该一个或多个关键字对应的内容数据。该计算机程序产品包括可操作以使该下游设备通过从该个性化视频流中提取一个或多个帧并利用来自第二组个性化帧的一个或多个帧取代所提取的帧来组合该第二组个性化帧和该个性化视频流以生成更新的个性化视频流的指令。该计算机程序产品包括可操作以使该下游设备将该更新的个性化视频流发送至该客户端设备的指令。

以上方面中的任一个可包括下列特征中的一个或多个。在某些实施例中,该服务器计算设备使用该认证数据加密该用户所特有的内容数据。在某些实施例中,该下游设备使用该认证数据加密与该一个或多个关键字对应的内容数据。

在某些实施例中,该下游设备是电缆顶端器(head-end),路由器,调制解调器,内容缓存器,或手机信号塔。在某些实施例中,包含该一个或多个关键字的帧少于包含该用户所特有的内容数据的帧。

在某些实施例中,该服务器计算设备通过分析与多个用户中的每一个相关联的用户简档来确定该多个用户共有的内容数据。在某些实施例中,该服务器计算设备通过分析提供给多个用户的内容数据的历史来确定该多个用户共有的内容数据。

在某些实施例中,生成要被插入该个性化视频流中的第二组个性化帧包括由该下游设备从该个性化视频流中提取该一个或多个关键字,由该下游设备检索与该一个或多个关键字对应的内容数据,以及由该下游设备使用与该一个或多个关键字对应的内容数据生成该第二组个性化帧。在某些实施例中,该下游设备从本地存储设备中检索与该一个或多个关键字对应的内容数据。在某些实施例中,该下游设备逻辑地耦合在该服务器计算设备与该客户端设备之间使得从该服务器计算设备发送的数据在到达该客户端设备之前行进通过该下游设备。

本发明的其它方面和优点将在考虑结合仅以示例方式示出本发明原理的附图的情况下从以下详细描述中变得显而易见。

附图说明

通过参考结合附图的以下描述可更好地理解以上描述的本发明的优势以及进一步的优势。附图不一定是按比例绘制的,相反一般重点在于解说本发明的原理。

图1是用于将个性化信息插入数字内容的示例性系统的框图。

图2是用于将个性化信息插入数字内容的示例性方法的流程图。

图3是用于将个性化信息插入数字内容的示例性帧提取和插入的示图。

图4是用于在客户端设备上显示个性化视频内容的媒体播放器的描绘。

图5是用于经由媒体播放器向用户显示个性化视频内容的方法的流程图。

图6是用于将多个不同用户的个性化信息插入数字内容的系统的框图。

图7是将多个不同用户的个性化信息插入数字内容的流程图。

图8是使用下游设备将个性化信息插入数字内容的示例性系统的框图。

图9是使用下游设备将个性化信息插入数字内容的示例性方法的流程图。

具体实施方式

总的来说,下文描述的技术包括用于将个性化信息插入数字内容的方法和装置。这些技术涉及从视频内容流中提取数字视频和/或音频的帧并且将个性化信息的帧嵌入该视频流中。

图1是用于将个性化信息插入数字内容的示例性系统100的框图。系统100包括客户端计算设备102,通信网络104,服务器计算设备106,数据源108,以及视频服务器110。服务器计算设备106,数据源108,以及视频服务器110可驻留在同一物理位置处或者可分散至多个物理位置。服务器计算设备106,数据源108,以及视频服务器110可被集成至同一物理设备中。替代地,或者另外,服务器计算设备106,数据源108,和/或视频服务器110可被分布在很多设备上。服务器计算设备106,数据源108,以及视频服务器110可经由通信网络(例如,通信网络104)进行通信。

客户端计算设备102是向用户显示个性化视频内容的硬件。示例计算设备采用很多形式,包括但不限于个人计算机,独立的视频播放器,家用视频游戏控制台,便携式视频游戏系统,个人数字助理(PDA),互联网电器,数字视频记录器(DVR),智能电话,机顶盒等。客户端计算设备102包括网络接口组件以使得用户能够连接至通信网络104,诸如因特网。计算设备102还包括数字内容查看和回放插件或独立的软件以使得用户能够查看在通信网络104上接收的数字内容(例如,视频和音频)和个性化信息两者。数字内容回放软件可被定制以仅回放从服务器计算设备106接收的个性化视频内容。替代地,数字视频内容回放软件可回放很多不同形式的内容;此类示例包括MicrosoftWindows Media播放器,AdobeFlash播放器,来自Apple计算机公司的QuickTime或者其他类似的应用。

服务器计算设备106经由通信网络(例如通信网络104)与客户端计算设备102通信。服务器计算设备106从客户端计算设备102接收对于个性化视频内容的请求。服务器计算设备106可生成个性化视频内容流以发送至客户端计算设备102并在该客户端计算设备102上回放。

通信网络104通道输送(channel)从客户端计算设备102至服务器计算设备106以及相反方向的通信。网络104可以是局域网(诸如LAN),或者广域网(诸如因特网或万维网)。

数据源108持有与客户端计算设备102的用户相关的个性化信息。当服务器计算设备106从客户端计算设备102接收对于视频内容的请求时,服务器106可从数据源108检索属于该用户的信息以插入个性化视频内容流中。虽然示出了一个数据源108,但在系统100中可存在多个数据源。数据源108不必是计算设备托管的数据库应用,如传统意义上的那样。在某些示例中,数据源108可为至传感器,GPS启用的移动设备,或当数据被收集时可将该数据直接发送至服务器106的其他设备的通信链路。在其他示例中,数据源108可为从多种商业实体接收的数据馈送,该多个商业实体收集必要的数据并使得该必要的数据可用于由服务器106进行的检索。在又其他示例中,数据源108是计算设备托管的数据库应用。

视频服务器110托管(host)视频内容以由服务器计算设备106使用。当服务器计算设备106从客户端计算设备102接收对于视频内容的请求时,服务器106可定位视频服务器110上的所请求的视频内容以生成个性化视频内容流。该视频内容可采用多种形式。该视频内容可为“直播”流。该视频内容可为预先录制的流或剪辑。该视频内容可为短形式的内容,即,4分钟的音乐视频。该视频内容可为长形式的内容,即,30分钟的电视节目。在某些示例中,该视频内容是用户提交的业余视频或视频播客。在其他示例中,该视频内容是专业电视节目,电影,网络直播,音乐视频或其他类似的内容。该视频内容可为广告(例如,商业的)或其他促销的内容。在某些示例中,该视频内容可存在于标准压缩协议中,诸如MPEG-2或MPE-G4。替代地,该视频内容可存在于定制的和/或专有的压缩协议中。

图2是用于将个性化信息插入数字内容的示例性方法的流程图。服务器计算设备106从与用户相关联的客户端计算设备102接收(202)对视频内容的请求。服务器106从一个或多个数据源108中检索(204)要被插入该视频内容的个性化信息。服务器106还从视频服务器110检索(204)所请求的视频内容。这些检索步骤204可并行或以任意次序执行。服务器106通过用个性化信息取代(208)视频内容的一个或多个帧来将该个性化信息插入该数字视频内容以生成个性化视频内容。服务器106随后将该个性化视频内容发送(210)至客户端计算设备102以向用户回放。

在某些示例中,从客户端计算设备102发送的请求可包括与该用户相关联的认证数据并且在其他示例中,可在对视频内容的请求之前或之后接收该认证数据。该认证数据可包括用户名,口令,个人识别号(PIN),数字证书,密码,或其他用于识别该用户的相似凭证。一种优选的实施方式,虽然并不需要,将以组合的方式合并两个或多个认证数据类型以识别该用户。服务器106可使用该认证数据来确定是否为该用户检索个性化信息,并且如果是的话,确定检索什么类型和量的个性化信息。在一个示例中,服务器106可创建与客户端设备102相关联的安全cookie以确保该用户仅能够访问他的个性化数据。在另一示例中,该用户可拒绝提供认证数据作为请求的一部分。结果是,服务器106可能不检索任何个性化信息并且取而代之的是将未经修改的视频内容发送回到该用户。在其他示例中,服务器106可确定该用户可被认证至可用数据源(例如,数据源108)的仅离散子集或者在一个或多个数据源中发现的数据元素的离散子集。服务器106随后可插入从数据源或数据元素的子集中检索的个性化信息,而其认证数据允许服务器106完全访问所有可用数据源的另一用户可接收宽得多的范围的个性化信息。

在某些示例中,服务器106可从客户端102接收对视频内容的请求并确定与该视频内容相关联的特性。在某些示例中,该请求和/或该视频内容可包括“标签”或识别该特性的其他嵌入的标记。在其他示例中,服务器106可进行视频内容的语音或文本分析以便确定该特性。该特性的范围可广泛(例如,视频的种类或主题)或者该特性可更窄(例如,视频中命名的特定人或公司)。举例来说,所请求的视频内容可一般讨论当前股票市场趋势或者最近的公司并购。一旦接收该请求和/或从视频服务器110检索所请求的视频内容,服务器106可确定该视频内容的特性是它的金融主题。在另一示例中,服务器106可利用语音识别技术来分析该视频内容的音频成分并推断出该视频中的人涉及富达公司(Fidelity Corporation)。结果,服务器106可确定该视频内容的特性是它对富达(Fidelity)的提及。

在某些示例中,服务器106可使用所识别的特性来检索与该用户相关联并且以某种方式与该特性有关的个性化信息。举例来说,服务器106可基于服务器106对作为该视频内容的特性的富达的识别以及服务器106对请求的用户在他的经纪账户中持有对一个或多个富达共有基金的股份的确定来检索富达公司的当前的股票报价。在其他示例中,服务器106可基于一般投资建议的视频内容特性和服务器106对用户具有富达投资的证券的确定来为用户检索最近的证券交易概要。

在其他示例中,服务器106不需要识别视频内容的特性或将识别的特性与该个性化信息相关联。该视频内容和个性化信息不必在主题或任何其他特性方面包含任何相似性。举例来说,服务器106可在接收到对最近一集国内网络情景喜剧(sitcom)的请求时从数据源108中为用户检索最近的信用卡交易历史。

在确定要从数据源108检索何种类型的个性化信息中,服务器106可确定用户是否已经指定任何个性化信息偏好。在某些示例中,可在从客户端计算设备102接收的请求中指定这些偏好,或者这些偏好可为存储在数据源108中并当从特定用户接收到视频内容请求时由服务器106检索的用户简档的一部分。举例来说,用户可将当他请求任何视频内容时他总是想要查看他的当前银行账户余额指定为一种偏好。此后,当服务器106接收来自该用户的视频内容请求时,服务器106可在生成个性化视频内容中查阅包含该偏好的数据源108并检索他的余额信息。

在某些示例中,用户简档可包括与用户相关并且与特定实体(例如,富达投资)相关联的多种类型的信息(例如,人口统计,金融,兴趣等)。该实体可为分布该视频内容的同一实体。举例来说,用户可持有富达共同基金账户,并且用户简档可包含与该账户相关的信息。在其他示例中,用户简档可包括来自第三方源(诸如,例如,信用卡公司,银行,社交网络网站,电子邮件服务等)的信息。用户简档可包括由用户输入的信息以及从内部和/或外部数据源检索的信息。用户简档可以是可由用户经由网络应用(例如,网页)配置的。用户可登录并更新与传递视频内容相关联的他的用户简档。举例来说,用户可登录至他的富达账户页面并且他可看到他的富达账户与两个信用卡(例如,一个是他自己使用并且一个是他妻子使用)相关联。该用户可配置他的用户简档以限制个性化信息的显示使得当他请求视频内容时仅显示与他自己使用的信用卡相关联的信息。

在服务器106检索所请求的视频内容和该个性化信息之后,服务器106通过用该个性化信息取代数字视频内容的一个或多个帧来生成个性化视频内容。图3是用于将个性化信息插入数字内容的示例性帧提取和插入的示图300。

一般来说,传统的视频压缩技术使用“帧”的概念来操作。视频内容流通常被划分成原始的,未压缩的帧,这些原始的未压缩的帧随后通过使用算法来进行压缩以识别和消除帧之间的很多冗余数据。所得的压缩帧随后被分类为特定类型的帧。举例来说,MPEG-2压缩协议使用内部编码帧(1帧),预测编码帧(P帧)以及双向预测编码帧(B帧)。当媒体播放器或其他设备接收所压缩的视频内容时,该播放器应用反向算法以将每个帧恢复至与相应的原始帧基本相同以便显示该内容。

相似的技术可与所要求保护的发明相关联,如图3所示。在第一时间,服务器106已经检索个性化信息和所请求的视频内容流310的至少一部分。服务器106可确定从该视频内容流中移除的一个或多个视频内容帧320。在某些示例中,服务器106可基于某些考虑确定移除哪些视频帧,这些考虑诸如,例如对整体视频质量的影响,视频内容的连续性,缓冲能力,或其他相似的考虑。在其他示例中,视频流310可具有可被提取的预先分配的帧或服务器106可在其中插入该个性化信息的“空”帧。

一旦服务器106已经移除所识别的视频帧320,在第二时间,服务器106可将个性化信息转换成符合数据压缩协议和/或可用数据压缩协议集成的帧340并将帧340插入在视频内容流330中已经移除视频帧的位置处。

在某些示例中,服务器106还可在将该信息转换成帧340并将帧340插入视频内容流330中之前或之后加密该个性化信息。归因于某些类型的个性化数据(诸如财务记录)的敏感性质,服务器106可将已知的加密技术应用至该个性化信息使得无心或有意拦截所发送的视频内容的人不能获得对包含在其中的个性化数据的访问。服务器106还可使用从用户接收的认证数据作为数据加密技术的一部分。客户端计算设备102可接收经加密的视频内容并随后为了向用户显示该视频和个性化信息而解密该内容。

在某些实施例中,作为接收和显示视频内容的一部分,服务器106可创建它自己和客户端计算设备102之间的个性化会话(或“通道”)。在该会话期间,个性化视频内容以流的形式从服务器106发送至客户端102,并且服务器106可动态地改变个性化数据“中流(mid-stream)”。举例来说,用户可请求与金融新闻网络相关联的视频内容。服务器106可接收该请求,检索该视频内容,并插入与用户当前拥有股票的公司的新闻标题相关的个性化数据。服务器106可将该个性化视频内容发送至客户端计算设备102,从而创建会话。在视频内容的回放期间,用户账户中包含的股票之一可达到特定基准(例如,达到52周的高价格)。服务器106可检测这一基准,并在用户观看该内容时将价格提醒作为个性化数据插入该视频内容中。当该价格提醒到达客户端计算设备102时,设备102不再显示新闻标题而取而代之地向用户显示该提醒。在其他示例中,设备102可在显示该提醒之前提示用户确认。如果用户指示他不想查看该提醒,则服务器106将继续提供新闻标题作为个性化信息。在视频内容的回放期间动态地改变个性化信息的技术具有向用户提供最新信息,从而创建更有用且有趣的视频内容体验的优点。

在其他示例中,服务器106可检查置入视频内容流330中的数据帧340的尺寸和完整性。本领域已知的示例数据完整性技术(诸如散列)可被用于执行该检查。

图4是用于在客户端设备(诸如,客户端计算设备102)上显示个性化视频内容的媒体播放器400的描绘。媒体播放器400可为针对与个性化视频内容的兼容性设计的定制的软件应用。媒体播放器400包括视频内容显示区402,以及回放控制诸如播放/暂停按钮404a,搓擦条404b,音量控制404c,以及时间指示器404d(统称为回放控制404)。媒体播放器400还包括弹入窗口区406和飞出窗口区408,优选地当视频内容回放开始时隐藏不可见。还可包括与媒体播放器400分离的弹出窗口(未示出)。该弹入窗口406,飞出窗口408和/或该弹出窗口可被用于显示该个性化信息,如下文更详细地描述的。

图5是经由媒体播放器(例如媒体播放器400)向用户显示个性化视频内容的方法的流程图。一旦服务器106已经生成该个性化视频内容,服务器106将该视频内容发送(502)至与请求用户相关联的客户端计算设备102。该客户端设备102经由位于客户端设备102上的媒体播放器400向用户显示视频内容和个性化信息。一旦接收该个性化视频内容以回放,媒体播放器400将该内容缓冲(504)至暂时存储器缓冲区(例如,位于客户端设备102上的存储器或其他存储设备)中。在缓冲过程期间,媒体播放器400分析(506)个性化视频内容的帧并确定帧的类型(例如,I帧,P帧,B帧或个性化数据帧)。如果帧的类型与视频内容相关联,则媒体播放器400将该帧解压缩(508)回到原始形式使得该帧可被显示给用户并将该帧置于该缓冲器中。如果帧的类型与个性化信息相关联,则媒体播放器400从该帧提取(510)个性化信息并将该信息存储在存储设备中以供在视频内容的回放期间使用。

在某些示例中,媒体播放器400从服务器设备106接收加密形式的个性化视频内容。在其他示例中,个性化视频内容流中仅与个性化信息相关联的帧被加密。媒体播放器400可基于预定义的加密算法来解密该个性化视频内容。也可由媒体播放器400连同用户的认证一起执行解密。举例来说,媒体播放器400可使用从用户,服务器设备106接收的和或从客户端设备102检索的认证凭证作为解密技术的一部分。在其他示例中,媒体播放器400可在视频内容的回放开始之前请求用户提供认证凭证。在又其他示例中,媒体播放器400可通过与服务器设备106通信以确认用户的身份和授权来认证用户以查看所请求的内容。如果对用户的认证和/或对个性化视频内容的解密不成功则媒体播放器400可取消所请求的视频内容的回放。替代地,如果认证和/或解密不成功,则媒体播放器400可限制或取消仅仅个性化信息的显示,并继续视频内容流的回放。

当媒体播放器400开始个性化视频内容的回放时,视频内容流被显示在视频内容显示区402中。用户可操纵回放控制404以影响视频的显示或其他特性(例如,音量)。当视频完成时,用户可选择从头重放该视频,或使用搓擦条404b将该视频“倒回”至特定点。

在视频内容的回放期间,媒体播放器400还可显示个性化信息。媒体播放器400可使用弹入窗口406来在视频内容显示区402的边界内显示个性化信息的一部分。在某些示例中,该弹入窗口可完全阻碍用户对视频内容的查看。在其他示例中,该弹入窗口406可为透明或不透明的,从而允许用户观看下面的视频内容。该弹入窗口406可在自动消失之前出现预定量的时间(例如,十秒),或者该弹入窗口406可贯穿视频回放持续出现直到用户采取行动(例如,点击媒体播放器400中的按钮或按压客户端设备102上的键)来移除该弹入窗口406。一旦该弹入窗口406被关闭,可出现允许用户重新打开该弹入窗口的按钮。该弹入窗口406可基于视频内容中的特定时间参考点被触发出现。举例来说,当视频内容逝去的时间到达例如02:25时该媒体播放器400可在弹入窗口406中显示该个性化信息。在其他示例中,该弹入窗口406可基于当前显示的视频内容被触发出现。

以相似的方式,媒体播放器400可使用飞出窗口408来在视频内容显示区402的边界外显示个性化信息的一部分。该飞出窗口408可出现在视频内容显示区402的顶部,底部,或者侧边。该飞出窗口还可出现在不附连至该视频播放器的屏幕上的其他某个地方和/或在分离的窗口中,像弹出窗口。该飞出窗口408可具有与上述弹入窗口406相同的特性。

在所要求保护的本发明的其他实施例中,服务器106可为多个用户检索个性化数据并生成单个个性化视频内容流以发送至该多个用户。服务器106可籍此避免必须为请求同一视频的一组用户中的每个用户生成个性化视频内容流。图6是用于将多个不同用户的个性化信息插入数字内容的系统600的框图。

举例来说,用户A602a和用户B602b两者都是特定共同基金(例如,由富达公司提供的自由基金)中的股份的持有者。用户A与客户端计算设备604a相关联并且用户B与客户端计算设备604b相关联。客户端计算设备604a和604b与服务器设备606通信。在其中数据不是机密数据的情况下,诸如自由基金的业绩数据,此数据以未加密的形式被发送至用户A602a和用户B602b两者并如上文所述在他们相应的视频播放器中显示给每个用户。

图7是用于将多个不同用户的个性化信息插入数字内容的方法700。一旦经由与例如服务器设备606的通信登录至富达的网站,用户602a和602b每人都被呈现以与富达基金相关联的视频内容的链接。用户A602a和用户B602b两者都点击该链接以从服务器计算设备606请求(702)视频内容608。如上所述,服务器设备606可为持有富达基金中的股份的所有人从视频服务器(例如,视频服务器110)检索(704)视频内容以及从数据源(例如,数据源108)检索个性化信息(例如,当前股份值)。服务器设备106可通过利用包含所有人的个性化信息的帧取代来自视频内容的视频帧来生成(706)个性化视频内容608。

服务器设备606将同一个性化视频内容流608发送至每一用户602a和602b。在某些示例中,接收该发送的用户可能所有都已经注册以接收被安排为在特定时间显示的富达基金的网络研讨会。在其他示例中,接收该发送的用户可能所有都已经在相同时间段内请求该发送,举例来说,所有都在彼此的20秒内,并且因此接收该发送作为多播发送以便于分布。当内容流608由各自的客户端设备604a和604b接收时,每个设备上的媒体播放器从内容流608中提取个性化信息。在某些示例中,媒体播放器可通过基于与用户A相关联的凭证认证(708)用户A来确定用户A602a的身份。一旦用户A602a被认证,媒体播放器可仅提取包含在视频内容流608中的与用户A相关联的个性化信息。在某些示例中,媒体播放器还可使用解密技术并基于认证凭证解密(710)个性化信息。类似地,用户B602b的客户端设备604b上的媒体播放器可认证用户B并仅提取包含在视频流608中的与用户B相关联的个性化信息。用户A602a和用户B602b两者查看相同的请求的视频内容,但根据上文的技术,在视频回放期间每个用户602a和602b看到,例如,显示的他的或她的个人当前股份值而并非任意其他用户的股份值。这些技术可被应用至任意数量的不同用户,从而给予内容提供者大量的处理效率同时仍保持个性化信息的私有性。

在某些实例中,很多用户可能请求包括与其他用户所请求的相同的新闻事件,公司,股票号等的个性化内容。举例来说,很多不同的投资者可能希望追踪共同的指标或公司(例如,AAPL,IBM,F)集合的市场/股票业绩,因为这些公司是大型且著名的,指示着整个市场,或者出于其他原因。在另一示例中,很多用户可能想要在总统选举周期接收新闻和状态更新,因为它是具有广泛影响和共同利益的事件。然而,需要服务器106将相同的个性化信息集合插入很多不同用户或组的个体视频流中从计算资源角度和带宽角度两者都可能是低效的,因为服务器106必须为每个用户的视频内容单独地插入共同的个性化信息集合并发送该个性化视频流至每个用户的设备。

本文描述的发明可有利地确定或预测共同的流行的或频繁请求的个性化信息集合并将该共同的信息集合指定为所请求的视频内容的基线部分。图8是使用下游设备将个性化信息插入数字内容的示例性系统800的框图。如图8所示,系统800包括客户端计算设备102,通信网络104,服务器计算设备106,数据源108,以及视频服务器110,先前已经参考图1的系统100对它们进行了描述。图8的系统800中还包括下游设备802,该下游设备耦合至通信网络104并处于客户端计算设备102与服务器计算设备106之间,并且包括数据源804。在某些实施例中,该下游设备802是中间设备,它接收来自服务器106的去往客户端设备102的网络流量并且还接收来自客户端设备102的去往服务器106的网络流量。示例性下游设备包括但不限于路由器,电缆顶端器,调制解调器,接入点,手机信号塔,或其他类似设备。

由此,服务器106可将共同的信息集合分发至内容网络中的多个不同的位置,诸如电缆顶端器,路由器,内容缓存器(即,如在内容分发网络(CDN)中找到的),家用计算设备,或其他“最后一英里(last mile)”或下游设备802使得服务器106不必每次当它将个性化视频流供应至客户端设备102时都提供共同的信息集合。取而代之的是,服务器106仅需要插入对于请求该内容的个体真正唯一的和/或并非由其他用户共同请求的并且进一步包括引用要由下游设备802插入的共同的信息集合的关键字(key)(或标签)的个性化信息的子集。由于标签或关键字在尺寸上比个性化信息小,因而这些关键字需要在服务器106处移除更少的视频内容帧。结果,服务器106具有插入对于请求用户特有的更大量的个性化信息(例如,通过移除与先前相同或相似数量的帧)和/或移除更少的帧(藉此增加服务器106的处理效率)的灵活性。

当下游设备802接收个性化视频内容时,下游设备802可分析个性化帧并确定包括在需要个性化信息的个性化帧中的关键字集合。已经预存储由关键字引用的共同的信息集合的下游设备802可从本地存储器(例如,数据源804)快速检索相应的个性化信息并从视频内容中移除帧以插入必要的信息集合。

服务器106可使用任意数量的预测方法来确定上述共同的信息集合的组成。在一个示例中,服务器106可分析由用户请求的个性化信息的历史并确定这些请求内的特定信息的频率(即,在过去的三十天内五千个用户已经请求了谷歌公司股票的当前价格)。在另一示例中,服务器106可评估在第三方站点处的特定信息的流行度并选择该信息的子集以包括在共同集合中(即,#超级碗(SuperBowl)是一月下旬推特(Twitter)上的热门话题,因此系统收集最新的推文,美联社新闻条目,来自搜索引擎结果的网站URL,以及与主题标签(hashtag)相关的其他内容)。在另一示例中,用户可利用服务器106建立包括标识他们想要在他们请求的视频内容中接收的个性化信息的个人简档的账户。服务器106可为所有或很多用户连续分析用户简档并确定对于分析的用户简档是共同的个性化信息集合。

共同的信息集合可通过关键字引用。在一个实施例中,关键字是指示个性化内容的类型和身份的文本串。示例包括:

·Type{News}|ID{Pope Francis}=检索与教皇弗朗西斯相关的新闻文章;

·Type{Stock}|ID{NFLX}=检索网飞公司(Netflix)的当前股价;

·Type{Event}|I D{2016 Election}=检索与2016总统选举相关的各种不同的信息(例如,社交媒体互动,新闻文章,视频的链接等)

服务器106可生成与共同的个性化信息集合对应的关键字列表(或者将这些关键字聚集到像XML文件的数据元素中)并将该关键字列表存储在数据库中。服务器106还可将该关键字列表发送至下游设备802以供由这些设备引用。应当理解,这些关键字可包括很多不同的语法和/或形式而不背离本文描述的本发明的范围。服务器106还可检索包括在该共同的信息集合中的实际内容(例如,股票价格,新闻标题,URL,社交媒体的帖子等)并本地地存储实际内容。此外,服务器106可将实际内容发送至下游设备802以由那些设备存储。在某些实施例中,实际内容至下游设备的检索和发送可周期性地发生以减轻网络上的恒定负载。

作为上述处理的结果,下游设备802被配置成(i)分析从服务器106接收并去往客户端计算设备102的个性化视频流,(ii)提取个性化视频流中表示共同的信息集合的关键字列表,(iii)通过从本地存储设备检索该内容并生成包括该内容的个性化帧来将包括与关键字列表对应的内容的个性化帧插入视频流,以及(iv)将更新的个性化视频流发送至客户端设备102。

图9是使用图8的系统800,使用下游设备将个性化信息插入数字内容的示例性方法的流程图。服务器计算设备106从与用户相关联的客户端计算设备102接收(902)对数字视频流的请求。服务器106生成(904)要被插入所请求的数字视频流的第一组个性化帧,所述个性化帧包括用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字。服务器106通过从所请求的数字视频流中提取一个或多个帧并利用来自该第一组个性化帧的一个或多个帧取代所提取的帧来组合(906)该第一组个性化帧以及所请求的数字视频流(它的示例在图3中示出)以生成个性化视频流。服务器106随后将该个性化视频流发送至下游设备802。

一旦接收到该个性化视频流,下游设备802生成(908)要被插入该个性化视频流的第二组个性化帧,其中该第二组个性化帧包括对应于该一个或多个关键字的内容数据。该下游设备802随后通过从该个性化视频流中提取一个或多个帧并利用来自该第二组个性化帧的一个或多个帧取代所提取的帧来组合(910)该第二组个性化帧和该个性化视频流以生成更新的个性化视频流。该下游设备将该更新的个性化视频流发送至客户端设备102以显示给用户。

示例1:一种用于使视频内容个性化的计算机化方法,所述方法包括:由服务器计算设备从客户端设备接收对数字视频流的请求,所述请求包括与所述客户端设备的用户相关联的认证数据;由所述服务器计算设备生成要被插入所请求的数字视频流中的第一组个性化帧,其中所述个性化帧包括所述用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字;由所述服务器计算设备通过从所请求的数字视频流中提取一个或多个帧并利用来自所述第一组个性化帧的一个或多个帧取代所提取的帧来组合所述第一组个性化帧和所请求的数字视频流以生成个性化视频流;由所述服务器计算设备将所述个性化视频流发送至下游设备;由所述下游设备生成要被插入所述个性化视频流中的第二组个性化帧,其中所述第二组个性化帧包括与所述一个或多个关键字对应的内容数据;由所述下游设备通过从所述个性化视频流中提取一个或多个帧并利用来自所述第二组个性化帧的一个或多个帧取代所提取的帧来组合所述第二组个性化帧和所述个性化视频流以生成更新的个性化视频流;以及由所述下游设备将所述更新的个性化视频流发送至所述客户端设备。

示例2:示例1的方法,进一步包括由所述服务器计算设备使用所述认证数据加密所述用户所特有的所述内容数据。

示例3:示例1的方法,进一步包括由所述下游设备使用所述认证数据加密与所述一个或多个关键字对应的所述内容数据。

示例4:示例1的方法,其中所述下游设备是电缆顶端器、路由器、调制解调器、内容缓存器、或手机信号塔。

示例5:示例1的方法,其中包含所述一个或多个关键字的帧少于包含所述用户所特有的内容数据的帧。

示例6:示例1的方法,进一步包括由所述服务器计算设备通过分析与多个用户中的每一个相关联的用户简档来确定所述多个用户共有的内容数据。

示例7:示例1的方法,进一步包括由所述服务器计算设备通过分析提供给多个用户的内容数据的历史来确定所述多个用户共有的内容数据。

示例8:示例1的方法,其中生成要被插入所述个性化视频流中的第二组个性化帧的步骤包括:由所述下游设备从所述个性化视频流中提取所述一个或多个关键字;由所述下游设备检索与所述一个或多个关键字对应的内容数据;以及由所述下游设备使用与所述一个或多个关键字对应的内容数据生成所述第二组个性化帧。

示例9:示例8的方法,其中所述下游设备从本地存储设备中检索与所述一个或多个关键字对应的所述内容数据。

示例10:示例1的方法,其中所述下游设备逻辑地耦合在所述服务器计算设备与所述客户端设备之间使得从所述服务器计算设备发送的数据在到达所述客户端设备之前行进通过所述下游设备。

示例11:一种用于使视频内容个性化的系统,所述系统包括:耦合至下游设备和客户端设备的服务器计算设备,所述服务器计算设备配置成:从所述客户端设备接收对数字视频流的请求,所述请求包括与所述客户端设备的用户相关联的认证数据;生成要被插入所请求的数字视频流中的第一组个性化帧,其中所述个性化帧包括所述用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字;通过从所请求的数字视频流中提取一个或多个帧并利用来自所述第一组个性化帧的一个或多个帧取代所提取的帧来组合所述第一组个性化帧和所请求的数字视频流以生成个性化视频流;以及将所述个性化视频流发送至所述下游设备;所述下游设备配置成:生成要被插入所述个性化视频流中的第二组个性化帧,其中所述第二组个性化帧包括与所述一个或多个关键字对应的内容数据;通过从所述个性化视频流中提取一个或多个帧并利用来自所述第二组个性化帧的一个或多个帧取代所提取的帧来组合所述第二组个性化帧和所述个性化视频流以生成更新的个性化视频流;以及将所述更新的个性化视频流发送至所述客户端设备。

示例12:示例11的系统,其中所述服务器计算设备被配置成使用所述认证数据加密所述用户所特有的所述内容数据。

示例13:示例11的系统,其中所述下游设备被配置成使用所述认证数据加密与所述一个或多个关键字对应的所述内容数据。

示例14:示例11的系统,其中所述下游设备是电缆顶端器、路由器、调制解调器、内容缓存器、或手机信号塔。

示例15:示例11的系统,其中包含所述一个或多个关键字的帧少于包含所述用户所特有的内容数据的帧。

示例16:示例11的系统,其中所述服务器计算设备被配置成通过分析与多个用户中的每一个相关联的用户简档来确定所述多个用户共有的内容数据。

示例17:示例11的系统,其中所述服务器计算设备被配置成通过分析提供给多个用户的内容数据的历史来确定所述多个用户共有的内容数据。

示例18:示例11的系统,其中生成要被插入所述个性化视频流中的第二组个性化帧包括:从所述个性化视频流中提取所述一个或多个关键字;检索与所述一个或多个关键字对应的内容数据;以及使用与所述一个或多个关键字对应的内容数据生成第二组个性化帧。

示例19:示例18的系统,其中所述下游设备从本地存储设备中检索与所述一个或多个关键字对应的所述内容数据。

示例20:示例11的系统,其中所述下游设备逻辑地耦合在所述服务器计算设备与所述客户端设备之间使得从所述服务器计算设备发送的数据在到达所述客户端设备之前行进通过所述下游设备。

示例21:一种用于使视频内容个性化的计算机程序产品,所述计算机程序产品有形地实现在非瞬态计算机可读存储设备中,所述计算机程序产品包括可操作以使耦合至下游设备和客户端设备的服务器计算设备进行下列操作的指令:从所述客户端设备接收对数字视频流的请求,所述请求包括与所述客户端设备的用户相关联的认证数据;生成要被插入所请求的数字视频流中的第一组个性化帧,其中所述个性化帧包括所述用户所特有的内容数据以及与多个用户共有的内容数据对应的一个或多个关键字;通过从所请求的数字视频流中提取一个或多个帧并利用来自所述第一组个性化帧的一个或多个帧取代所提取的帧来组合所述第一组个性化帧和所请求的数字视频流以生成个性化视频流;以及将所述个性化视频流发送至所述下游设备;其中所述计算机程序产品包括可操作以使所述下游设备进行下列操作的指令:生成要被插入所述个性化视频流中的第二组个性化帧,其中所述第二组个性化帧包括与所述一个或多个关键字对应的内容数据;通过从所述个性化视频流中提取一个或多个帧并利用来自所述第二组个性化帧的一个或多个帧取代所提取的帧来组合所述第二组个性化帧和所述个性化视频流以生成更新的个性化视频流;以及将所述更新的个性化视频流发送至所述客户端设备。

上述系统和方法可实现在数字电子电路、计算机硬件、固件和/或软件中。该实现可以作为计算机程序产品(即,有形地实现在计算机可读存储介质中的计算机程序)。该实现例如可以例如在机器可读存储设备中和/或包括传播的信号,以供由数据处理装置执行或控制数据处理装置的操作。该实现例如可以是可编程的处理器,计算机,和/或多个计算机。

计算机程序可用任何形式的编程语言编写,包括汇编和/或编译语言,并且该计算机程序其可以任何形式部署,包括作为独立程序或者作为子例程、元件、或其他适合在计算机环境中使用的单元。计算机程序可被部署成在一台计算机上或一个地点的多台计算机上执行。

方法步骤可由执行计算机程序以通过对输入数据操作和/或生成输出来执行本发明的功能的一个或多个可编程处理器执行。方法步骤还可由专用逻辑电路执行,且装置可被实现为专用逻辑电路。该电路例如可以是FPGA(现场可编程门阵列),ASIC(专用集成电路),DSP(数字信号处理器),和/或配置成实现所需要的功能的任意其他分立的电路。模块、子例程、和软件代理可指实现该功能的计算机程序、处理器、专用电路、软件、和/或硬件的部分。

适于执行计算机程序的处理器包括,通过示例的方式,利用指令特别编程以执行本文描述的方法的专用微处理器。一般而言,处理器从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储设备。一般而言,计算机可包括、可用于耦合以从和/或向用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据和/或传输数据。

数据传输和指令还可在通信网络上发生。适于实现计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器,作为示例包括半导体存储器设备。计算机可读介质可以是例如,EPROM、EEPROM、闪存设备、磁盘、内部硬盘、可移除盘、磁光盘、CD-ROM、和/或DVD-ROM盘。处理器和存储器可由专用逻辑电路系统补充和/或被纳入到专用逻辑电路系统中。

为了提供与用户之间的交互,上述技术可被实现在具有显示设备或传输设备的计算机上。例如,该显示设备可以是阴极射线管(CRT)和/或液晶显示(LCD)监测器。与用户的交互可以是,例如,向用户的信息显示以及键盘以及指向设备(如,鼠标或跟踪球),通过这些用户可向计算机提供输入(如,与用户接口元件的交互)。可使用其他类型的设备来提供与用户之间的交互。其他设备可以是,例如,以传感器反馈的任意形式(如,视觉反馈、听觉反馈、或触觉反馈)提供给用户的反馈。来自用户的输入可例如以任何形式接收,包括声学、语音、和/或触觉输入。

该远程/客户端设备和计算设备可包括,例如,计算机,具有浏览器设备的计算机,电话,IP电话,移动设备(例如,蜂窝电话,个人数字助理(PDA)设备,智能电话,膝上型计算机,电子邮件设备),和/或其他通信设备。浏览器设备包括例如具有万维网浏览器(例如,可从微软公司获得的MicrosoftInternet Explorer,可从Mozilla公司获得的MozillaFirefox)的计算机(例如,桌上型计算机,膝上型计算机)。该移动计算设备包括例如Blackberry或iPhone。

网络服务器例如可以是具有服务器模块的计算机(例如,可从微软公司获得的因特网信息服务,可从阿帕奇软件基金会(Apache Software Foundation)获得的阿帕奇网络服务器,可从阿帕奇软件基金会获得的阿帕奇Tomcat网络服务器)。

以上描述的技术可在包括后端组件的分布式计算系统中实现。例如,后端组件可以是数据服务器、中间件组件和/或应用服务器。以上描述的技术可在包括前端组件的分布式计算系统中实现。前端组件可例如是具有图形用户界面的客户端计算机、通过其用户可与示例实现交互的Web浏览器、和/或传输设备的其它图形用户界面。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。

该系统可包括客户端和服务器。客户端和服务器通常彼此间远离并且典型地通过通信网络交互。客户端和服务器的关系凭借在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序出现。

上述通信网络可实现在基于分组的网络,基于电路的网络,和/或基于分组的网络和基于电路的网络的组合中。基于分组的网络可包括例如因特网、载波网际协议(1P)网络(例如,局域网(LAN)、广域网(WAN)、校域网(CAN)、城域网(MAN)、家庭域网(HAN))、专用IP网络、IP专用交换分机(IPBX)、无线网络(例如无线电接入网络(RAN)、802.11网络、802.16网络、通用分组无线业务(GPRS)网络、HiperLAN)和/或其它基于分组的网络。基于电路的网络可包括例如公共电话交换网(PSTN)、专用交换分机(PBX)、无线网络(例如,RAN、蓝牙、码分多址(CDMA)网络、时分多址(TDMA)网络、全球移动通信系统(GSM)网络)和/或其它基于电路的网络。

包含,包括,和/或每个复数形式是开放式的并且包括列出的部分并可包括未列出的附加部分。和/或是开放式的并且包括列出的部分中的一个或多个以及列出的部分的组合。

本领域的技术人员将意识到本发明可体现为其它具体形式,而不背离本发明的精神和本质特性。因此,上述实施例将在各方面被视为是对本文中所描述的本发明的说明而不是限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1