在其他媒体内容中引用的媒体内容的提醒的制作方法

文档序号:14203868阅读:330来源:国知局
在其他媒体内容中引用的媒体内容的提醒的制作方法

本申请描述了用于识别对其他媒体内容中的媒体内容的引用并且对引用的媒体内容设置提醒的系统和方法。



背景技术:

媒体内容可以包括对其他媒体内容的引用。例如,电视颁奖典礼很可能引用电视节目颁奖典礼以外的电视内容(例如,与颁奖的被提名人相关的节目)。观看颁奖典礼的用户会由于颁奖典礼中的引用而对观看所引用的电视内容感兴趣。通常,用户将在观看颁奖典礼的同时或在结束观看颁奖典礼后,搜索他有兴趣观看的电视内容。这两种选择都是低效的,因为一种会使用户无法专注于颁奖典礼,而另一种会有用户忘记引起他兴趣的特定引用电视内容的风险。因此,所需要的是一种有效的方式来提醒用户该用户正在观看的媒体内容中引用的媒体内容,而很少或不会使用户无法专注于正在观看的媒体内容。



技术实现要素:

根据一些实施方式,提供方法、系统和计算机可读存储介质来设置与在媒体内容中引用的实体相关联的事件的提醒。根据一些实施方式,一种在计算系统处的方法包括从用户接收请求;以及响应于所述用户请求:识别与所述用户请求同时地在第一客户端设备上播放的第一媒体内容项;识别在时间上接近所述用户请求的所述第一媒体内容项中的回放位置;识别对所述第一媒体内容项的内容部分内的实体的引用,其中,所述内容部分与所识别的回放位置相对应;识别与所引用的实体相关联的事件;以及为所述用户设置所述事件的提醒。

根据一些实施方式,计算机系统包括一个或多个处理器、存储器以及一个或多个程序,其中,一个或多个程序被存储在存储器中并且被配置为由一个或多个程序执行。一个或多个程序包括用于下述的指令:从用户接收请求;以及响应所述用户请求:识别与所述用户请求同时地在第一客户端设备上播放的第一媒体内容项;识别在时间上接近所述用户请求的所述第一媒体内容项中的回放位置;识别对所述第一媒体内容项的内容部分内的实体的引用,其中,所述内容部分与所识别的回放位置相对应;识别与所引用的实体相关联的事件;以及为所述用户设置所述事件的提醒。

根据一些实施方式,非暂时性计算机可读存储介质存储一个或多个程序。一个或多个程序包括当由具有一个或多个处理器的计算机系统执行时,使计算机系统执行下述操作的指令:从用户接收请求;以及响应所述用户请求:识别与所述用户请求同时地在第一客户端设备上播放的第一媒体内容项;识别在时间上接近所述用户请求的所述第一媒体内容项中的回放位置;识别对所述第一媒体内容项的内容部分内的实体的引用,其中,所述内容部分与所识别的回放位置相对应;识别与所引用的实体相关联的事件;以及为所述用户设置所述事件的提醒。

附图说明

图1a-1b是示出根据一些实施方式的分布式客户端-服务器系统的框图。

图2是示出根据一些实施方式的示例性服务器系统的结构的框图。

图3a是示出根据一些实施方式的示例性客户端设备的结构的框图。

图3b是示出根据一些实施方式的示例性客户端设备的结构的框图。

图4示出根据一些实施方式的示例性实体数据结构。

图5是示出根据一些实施方式,设置用于与媒体内容中引用的实体相关联的事件的提醒的过程的流程图。

图6a-6d是根据一些实施方式的示例性用户界面。

图7a-7c示出根据一些实施方式,用于设置与媒体内容中引用的实体相关联的事件的提醒的方法的流程图。

在整个附图中,相同的参考数字表示相应的部件。

具体实施方式

本文所述的方法和系统公开了用于与媒体内容项中引用的实体相关联的事件(例如,媒体内容的上映、现场事件等)的提醒的系统和方法。这样的方法和系统为媒体内容的消费者提供了一种有效的方式来记住和探索消费者由于其他媒体内容中的提及或引用而感兴趣的媒体内容和其他事件。

现在将详细地参考各种实施方式,在附图中示出其示例。在以下详细描述中,阐述了许多特定细节以便提供本发明和所述实施方式的透彻理解。然而,可以在没有这些特定细节的情况下实施本发明。在其它情况下,并未详细地描述众所周知的方法、程序、组件以及电路以免不必要地混淆实施方式的各方面。

图1a是示出根据一些实施方式的客户端-服务器环境的框图。客户端-服务器环境100包括客户端设备102、客户端设备140、一个或多个通信网络104、服务器系统106、媒体内容系统112以及可选的一个或多个第三方主机170。通信网络104通信地耦合服务器系统106、客户端设备102、客户端设备140、媒体内容系统112和第三方主机170。

在一些实施方式中,将服务器系统106实现为单个服务器系统,而在其它实施方式中,将服务器系统106实现为多个服务器的分布式系统。仅仅为了方便说明,下面将服务器系统106描述为在单个服务器系统上实现。在一些实施方式中,媒体内容系统112被实现为单个服务器系统,而在其他实施方式中,媒体内容系统112被实现为多个服务器的分布式系统。单独地,为了便于说明,在下文中,将媒体内容系统112描述为在单个服务器系统上实现。在一些实施方式中,媒体内容系统112和服务器系统106的功能被组合成一个(单个或分布式)服务器系统。

通信网络104可以是任何有线或无线局域网(lan)和/或广域网(wan),诸如内联网、外联网或互联网。通信网络104提供客户端设备102和140、服务器系统106、媒体内容系统112和第三方主机170之间的通信能力是充分的。在一些实施方式中,通信网络104使用超文本传输协议(http)而使用传输控制协议/网际协议(tcp/ip)来传送信息。http允许客户端设备102和140访问经由通信网络104可用的各种资源。然而,本文中所述的各种实施方式不限于任何特定协议的使用。

客户端设备102是在一些实施方式中能够连接到通信网络104、接收媒体内容126(例如,具有视频和/或音频内容的媒体内容项)、从该媒体内容项126提取信息并且在显示设备108上或通过扬声器109呈现媒体内容项126的任何适当计算机设备。在一些实施方式中,客户端设备102是包括用以接收和呈现视频流的组件的机顶盒。例如,客户端设备102可以是用于接收有线tv和/或卫星tv的机顶盒、数字视频记录器(dvr)、数字媒体接收机、tv调谐器、计算机和/或输出tv信号的任何其它设备。在某些其它实施方式中,客户端设备102是计算机、膝上型计算机、平板电脑设备、上网本、移动电话、智能电话、平板电脑设备、游戏设备、多媒体播放器设备或者能够接收媒体内容126(例如,作为通过网络104的视频流)的任何其它设备。在一些实施方式中,客户端设备102在显示设备108上显示视频流。在一些实施方式中,客户端设备102是常规tv显示器,其被连接到互联网并经由空中广播或卫星或线缆连接而显示数字和/或模拟tv内容。

在一些实施方式中,显示设备108可以是用于向用户呈现视频内容的任何显示器。在一些实施方式中,显示设备108是电视的显示器或计算机监视器,其被配置成从客户端设备102接收并显示音频和视频信号或其它数字内容。在一些实施方式中,显示设备108是具有中央处理单元、存储器和被配置成从客户端设备102接收并显示音频和视频信号或其它数字内容的显示器的电子设备。例如,显示设备可以是lcd屏幕、平板电脑设备、移动电话、投影仪或其它类型的视频显示系统。显示器108可以经由无线或有线连接而耦合到客户端设备102。

在一些实施方式中,客户端设备102包括视频模块110,其从媒体内容系统112或别处接收视频内容,从正在客户端设备102上播放的视频内容(例如,视频流)提取内容信息并且将内容信息发送到服务器106。在一些实施方式中,客户端设备102包括用于仅音频媒体内容的类似模块。

在一些实施方式中,客户端设备102经由tv信号138来接收媒体内容126。如本文所使用的tv信号是包括与tv频道相对应的音频和/或视频分量的电、光或其它类型的数据发送介质。在一些实施方式中,tv信号是陆地空中tv广播信号或者在线缆系统或卫星系统上分发和/或广播的信号。在一些实施方式中,tv信号138被作为数据通过网络连接而发送。例如,客户端设备102可以从互联网连接接收视频流。在本文中有时将tv信号的音频和视频分量称为音频信号和视频信号。在一些实施方式中,tv信号与正在显示设备108上显示的tv频道相对应。

在一些实施方式中,媒体内容126是现场电视系统(例如,首轮放映的电视内容、电视上放映的现场事件)。在一些实施方式中,媒体内容是先前播出的内容(例如,在广播或非广播信道上展出的重播、用以适应时区差异的内容的后来播出)。在一些实施方式中,媒体内容是记录内容(例如,记录在dvr中并从其回放的内容;完全被下载到非易失性存储器并存储在其中以及从其回放的内容)。在一些实施方式中,视频内容是流送的内容(例如在线视频)。

在一些实施方式中,媒体内容项126包括可听声音或内容(例如音频内容)。可听声音或内容包括可听话语信息或内容(例如,说出的对话或话音、有歌词的歌曲)且可选地包括可听非语言信息或内容(例如,音调、音响效果、没有歌词的歌曲)。在一些实施方式中,可听声音被承载于媒体内容项126中的音频轨道中。在某些实施例中,tv信号承载针对与tv频道上的音频轨道相对应的可听声音的信息。在一些实施方式中,可听声音由与显示设备108或客户端设备102相关联的扬声器(例如,扬声器109)产生。在一些实施方式中,媒体内容项126还包括人耳不可听见的音频(音调)(例如,不在用于人类可听声音的范围内的频率),但承载编码在其内的信息(例如节目信息、广播信息)。

在一些实施方式中,tv信号承载与音频轨道中的可听话语信息(例如,说出的话音、说出的独白和/或对话、歌曲歌词)相对应的一般字幕或隐藏字幕(caption)(例如,闭合字幕)的信息或数据。一般字幕或隐藏字幕是媒体内容项中的语言信息的文本转录。一般字幕或隐藏字幕可以被连同相应视频内容一起同时地呈现。为了方便起见,在下文中将一般字幕和隐藏字幕共同地称为“字幕(subtitle)”并将一般字幕/隐藏字幕数据称为“字幕数据”。

客户端设备140可以是能够连接到通信网络104的任何适当的计算机设备,诸如计算机、膝上型计算机、平板电脑设备、上网本、互联网信报亭(kiosk)、个人数字助理、移动电话、游戏设备或能够与服务器系统106通信的任何其它设备。客户端设备140通常包括一个或多个处理器、诸如硬盘驱动器的非易失性存储器和显示器。客户端设备140还可以具有输入设备,诸如键盘和鼠标(如图3中所示)。在一些实施方式中,客户端设备140包括触摸屏显示器。

在一些实施方式中,客户端设备140被连接到显示设备128。显示设备128可以是用于向用户呈现视频内容的任何显示器。在一些实施方式中,显示设备128是电视的显示器或计算机监视器,其被配置成客户端设备140接收并显示音频和视频信号或其它数字内容。在一些实施方式中,显示设备128是具有中央处理单元、存储器和被配置成从客户端设备140接收并显示音频和视频信号或其它数字内容的显示器的电子设备。在一些实施方式中,显示设备128是lcd屏幕、平板电脑设备、移动电话、投影仪或任何其它类型的视频显示系统。在一些实施方式中,客户端设备140被连接到显示设备128。在一些实施方式中,显示设备128包括或者以其它方式连接到能够产生与tv信号或视频流的音频分量相对应的可听流的扬声器。

在一些实施方式中,客户端设备140经由无线或有线连接而连接到客户端设备102。在其中存在此类连接的一些实施方式中,客户端设备140可选地根据由客户端设备102提供的指令、信息和/或内容(统称为第二屏幕信息)而操作。在一些实施方式中,客户端设备102向客户端设备140发布指令,该指令使客户端设备140在显示器128和/或扬声器129上呈现补充或关于由客户端设备102在显示器108和/或扬声器109呈现的内容的内容。在某些其它实施方式中,服务器106向客户端设备140发布指令,该指令促使客户端设备140在显示器128和/或扬声器129上呈现补充或关于正由客户端设备102在显示器108和/或扬声器109上呈现的内容的内容。

在一些实施方式中,客户端设备140包括麦克风114,其使得客户端设备140能够在客户端设备102播放媒体内容项126时,从客户端设备102接收通过扬声器109输出的声音(例如,音频内容,包括人类可听内容(例如话音,音乐)以及人类不可听内容(例如不可听音调)。麦克风141使得客户端设备140能够随着音频内容/音轨被输出而捕获和可选地,存储与该媒体内容项126相关联的音频内容和/或音轨。以与在本文中针对客户端设备102所述的相同方式,客户端设备140可以在本地存储此信息且然后向服务器106发送内容信息,内容信息是以下各项中的任何一个或多个:存储的音频内容的指纹、音频内容本身、音频内容的部分/片断、或音频内容的部分的指纹。这样,服务器106可以识别正在客户端设备102上播放的媒体内容项126,即使正在其上播放媒体内容项126的客户端设备102不是互联网实现设备,诸如,无网络连接的电视机、未(暂时或永久地)被连接到互联网,因此不能发送内容信息的设备或者不具有对与媒体内容项126有关的媒体信息进行记录或指纹识别的能力的设备。此类布置(即,其中第二屏幕设备140存储内容信息并将其发送到服务器106)允许用户从服务器106接收响应于内容信息而被触发的第二屏幕内容,无论观看者正在何处消费媒体内容126和与媒体内容项126有关的信息,诸如与媒体内容126中实体有关的信息。

在一些实施方式中,麦克风141还使得客户端设备140能够从用户接收语音输入。该语音输入包括例如用以执行特定操作的命令以及对信息或内容的查询或请求。在一些实施方式中,响应用户输入(例如,提醒的用户命令或请求)在客户端102处播放的用于媒体内容126的内容信息被发送以识别。

在一些实施方式中,从客户端设备102或140发送到服务器106的内容信息包括以下中的任何一个或多个:所存储的字幕数据的指纹、字幕数据本身、字幕数据的部分/片断或字幕数据的部分的指纹。这样,服务器106可以识别正在客户端设备102上播放的媒体内容项126,即使例如客户端设备102上的音量水平过低而使得音频内容不能被客户端设备140可听地捕获到、由客户端设备102输出的音频内容失真(例如,由于来自媒体内容系统112的传输质量差、由于客户端设备102处的处理能力中的滞后,由于输出音频内容的背景声音失真等),或者如果扬声器109由于其他原因不输出音频内容(例如,扬声器109断电或损坏)。

在一些实施方式中,客户端设备140包括一个或多个应用127。如在本文中更详细地讨论的,一个或多个应用127接收并呈现从服务器106接收到的信息,包括例如媒体内容中的实体、关于媒体内容中的实体的信息以及事件的提醒。在一些实施方式中,一个或多个应用127从服务器106接收并呈现与媒体内容内的可听话语信息或字幕数据有关的信息。在一些实施方式中,应用127包括辅助应用。辅助应用基于多种信号而获得并呈现关于用户的信息(例如提醒),包括但不限于用户的人口统计信息、设备和/或用户的当前位置、用户的日历、用户的联系人列表、用户的社交网络、用户的搜索历史、用户的网络浏览历史、设备和/或用户的位置历史、用户的声明偏好、用户的内容观看历史以及当前正在呈现给用户的内容。

在一些实施方式中,客户端设备140处的应用127(例如,辅助应用)接收用户命令或请求,以设置关于用户感知为对正在客户端设备102上播放的媒体内容项中的实体的提及或引用的提醒。应用处理该命令,根据该命令,由正在客户端设备102处播放的媒体内容项生成内容信息,并且将该内容信息发送到服务器106以识别播放的媒体内容项、在命令被接收时,播放的媒体内容中提及或引用的实体的标识以及与所识别的实体相关联或对应的事件的标识。应用127根据命令或请求,设置对所识别的事件的提醒。在一些实施方式中,应用127包括对用户做出命令或请求的可视性(例如,虚拟按钮)。在一些实施方式中,应用127接受从用户输入到应用127中的语音中的命令或请求。

在一些实施方式中,服务器系统106包括前端服务器114,前端服务器114经由网络104,促进服务器系统106与客户端设备102和140、媒体内容系统112和第三方主机170之间的通信。前端服务器114从客户端设备102和/或客户端设备140接收内容信息。在一些实施方式中,内容信息是视频或音频流或其一部分。在一些实施方式中,内容信息是由正在客户端设备102上播放的媒体内容项126(例如,正在客户端设备102上播放的视频流的一部分以及该部分的一个或多个指纹)导出。在一些实施方式中,前端服务器114被配置为将内容或内容链接发送到客户端设备102或140。在一些实施方式中,前端服务器114被配置为发送或接收一个或多个视频或音频片段,或视频或音频流。

根据一些实施方式,视频或视频流是表示运动中的场景的图像或帧的序列。应当将视频与静态图像区分开来。视频每秒显示多个图像或帧。例如,视频每秒显示24或30个连续帧。相反,图像不一定与任何其他图像相关联。

在一些实施方式中,服务器系统106包括存储用户数据的用户数据库130。在一些实施方式中,用户数据库130是分布式数据库。存储在用户数据库130中的用户数据包括例如登录信息、用户简档、媒体内容的提醒和媒体内容的观看列表。

在一些实施方式中,服务器系统106包括内容识别模块118,内容识别模块118被配置为从客户端设备102和/或客户端设备140接收内容信息,将该内容信息与指纹数据库120中的内容指纹匹配,并且基于内容信息与内容指纹的匹配,识别正在客户端设备102处呈现的媒体内容项126(例如,“视频内容项”,诸如电影、电视剧集、视频剪辑或消费为独立文件或流的任何其他不同的视频内容片段;“音频内容项”,诸如歌曲、音频剪辑或消费为独立文件或流的任何其他不同的音频内容片段)。在一些实施方式中,内容识别模块还识别媒体内容项126中的当前位置(例如,视频内容在客户端设备102上呈现的位置或多远)。媒体内容项126的标识和媒体内容项126中的当前位置被传递到实体模块144,其识别与所识别的媒体内容项126有关的一个或多个实体以及可选地,实体数据库122中所识别的媒体内容中的当前位置。在一些实施方式中,实体包括媒体内容(例如,电影、电视节目、歌曲、专辑、广播节目、播客、上述的任一节目的剧集等)、艺术家和艺术家团体(例如个人歌手、乐队、管弦乐队、表演团体等)、运动队以及其他个人和组织。

服务器106包括实体数据库或储存库122。实体数据库122是与媒体内容相关联的实体的数据库。如本文所使用的,实体是与媒体内容相关联的任何清楚的存在、人类或以其他方式客观可识别的物品。在一些实施方式中,在没有限制的情况下,实体包括标题、人、地点、音乐、物体、产品、引文、事件以及奖项。例如,标题包括电影标题、连续剧标题(例如,电视连续剧标题)以及剧集标题(例如,电视剧集标题)。人包括演员表成员(例如,演员)、剧组成员(例如,导演、制作人、音乐作曲者等)、故事中的角色、竞赛选手、竞赛裁判、主持人、客人以及提到的人。地点包括故事中的位置、拍摄地以及提到的位置。音乐包括在视频内容中使用的歌曲和乐曲。物体包括故事中的对象(例如,“星球大战”中的光剑)。产品包括任何在视频内容中提到或显示的任何货物、服务或项(例如,提到的书、由于植入式广告而包括在视频内容中的产品)。引文包括来自视频内容的语音对话片段,诸如由视频内容中的角色或非虚构的人说出的台词和警句(例如,“愿原力与你同在(maytheforcebewithyou.)”)。奖项包括与视频内容片段及其实体相关联的任何奖项(例如,最佳男演员、最佳导演、最佳歌曲等)。应认识到的是上述的实体类型或类别以及相应的描述或定义是示例性和非穷举的。其它类型或类别的实体是可能的以及上述类型或类别的实体可以具有比上文更宽泛或更窄的定义。

在一些实施方式中,实体数据库122还包括指示实体之间的关联的图表网络。例如,电影实体(例如,作为代表电影的实体的电影标题实体)被链接到其演员表成员实体、剧组成员实体、故事中位置实体、引文实体等。图表网络是使用任何适当数据结构实现的。

在一些实施方式中,实体数据库122还包括关于实体在媒体内容中何时出现、被提及或者被述及(例如在引证的情况下)的信息。例如,实体数据库122存储关于例如在媒体内容项中何时提及特定电影标题的信息(如由媒体内容项的标题(例如,电影标题、电视节目标题)标识。这样的信息可以被存储为与对应于媒体内容项的实体对应的媒体内容项内的时间和/或时间范围。类似地,实体数据库122存储关于在媒体内容项内何时提及事件、事物何时出现或被提及、产品何时出现或被提及等的信息。在一些实施方式中,实体数据库122还包括与实体相关联的时间信息(例如,关于与实体相关联的事件的信息和事件可用性信息)。例如,对于作为电视节目的实体,实体数据库122可以存储节目的已知的当前和未来播出日期和时间,以及可选的,过去播出时间(例如,首次播出的日期和时间)。作为另一示例,对于表演者实体(例如歌手、管弦乐队、舞蹈团等),实体数据库122可以存储用于该表演者的已知当前和未来表演日期,以及可选的,过去表演日期。在一些其他实施方式中,与实体相关联的时间信息被存储在另一数据库中。

在一些实施方式中,实体数据库122中的实体还与实体数据库外的非实体相关联。例如,实体数据库122中的人实体可以包括指向与那个人相关联的新闻故事的web页面的链接。

在一些实施方式中,服务器106还包括对应于媒体内容中的可听话语信息的文本信息。该文本信息是可显示信息,采取书写文本形式,对应于视频内容中的可听话语信息。文本信息包括例如视频中的说出的话音(例如,对话、旁白等)的转录、歌词、所说的话音或歌词的翻译和/或罗马化(romanization)。文本信息的源包括例如字幕数据、在线文档(例如,在线发布的转录)以及来自媒体内容的可听语音信息的话音文本转换。

在一些实施方式中,服务器106将文本信息以及指向文本信息的源的链接(例如,指向在第三方主机170处托管的文档的链接)存储在实体数据库122中。在实体数据库122内,相应的文本信息和相应源可与相应的实体(例如,唱出歌词的人、说出话音的人、在其中唱出或说出歌曲或话音的电影或电视连续剧)相关联。在某些其它实施方式中,文本信息和指向其源的链接被存储在服务器106中的单独数据库或储存库(未示出)中。单独数据库/储存库中的相应的文本信息和相应源可与实体数据库122中的相应的实体相关联。为了方便起见,下面的描述假设文本信息和指向其源的链接被存储在实体数据库122中。

在一些实施方式中,服务器系统106包括存储内容指纹的指纹数据库120。如本文所使用的,内容指纹是媒体内容项的内容(例如,视频流和/或音频流和/或与视频流和/或音频流相对应的字幕数据)的任何类型的压缩或紧凑表示或签名。在一些实施方式中,指纹可以表示视频流或音频流或相应的字幕数据的剪辑(诸如几秒、几分钟或几小时)或一部分。或者,指纹可以表示视频流或音频流或字幕数据的单一时刻(例如,视频的单一帧或与视频的该帧相关联的音频的指纹或与视频的该帧相对应的字幕)。此外,由于媒体内容会随着时间而改变,所以该媒体内容的相应指纹也会随着时间而改变。在一些实施方式中,指纹数据库120是分布式数据库。

在一些实施方式中,服务器106包括实体模块144、事件提醒模块146和可用性模块150。在一些实施方式中,实体模块144识别并提取与媒体内容有关的实体并将提取的实体存储在实体数据库122中。在一些实施方式中,实体模块144从媒体内容(例如,从内容信息)并从其它源(例如,由第三方主机170托管的web页面)提取与视频内容有关的实体。在一些实施方式中,实体模块144还识别媒体内容126中的一个或多个实体、从实体数据库122中检索关于所识别的实体的信息并且将该信息提供给前端服务器114以便发送到客户端设备(例如,客户端设备140)以呈现和/或发送给另一模块以进一步处理或操作。

在一些实施方式中,服务器系统106包括事件提醒模块146和可选的,可用性模块150。事件提醒模块146识别与实体相关联或对应的事件,并且根据用户命令和请求,对所识别的事件设置提醒。在一些实施方式中,事件的示例包括在相应平台(例如,在影院中、用于数字下载或流传输、以物理媒体销售、在广播电视上、在按需点播电视上等)上的现场事件(例如,音乐会、演讲、演奏、体育赛事、选举等)以及媒体内容项(例如电影、电视节目)的发布或可用性。在一些实施方式中,事件也是实体数据库122中的实体。如本文所使用的,提醒是可呈现给用户,提醒、警告或通知用户事件的任何数据或信息,并且可选地,该事件的可用性和/或访问该事件的手段。在一些实施方式中,提醒模式包括:警告(例如,弹出警告)、通知、消息、添加到与用户相关联的日历的日历事件、日历提醒、书签、数字录像机(dvr)或类似设备或应用中的预约录制,以及与用户相关联的列表(例如,媒体观看列表、任务列表、愿望列表)中的项目或条目。

可用性模块150检查跨多个源的事件的可用性,包括但不限于:事件(例如,由组织者、发起者和/或售票者发布的事件时间表和公告)的组织者和/或发起者和/或售票者、流媒体站点、媒体内容销售者(例如,以物理媒体和/或数字下载的媒体内容的销售者)、新闻媒体(例如,本地、地区和国家报纸的网站)、社区信息源(例如,本地和特殊兴趣出版物和网站以及图书馆目录)以及电视传播网络(例如广播、有线电视、卫星和iptv电视平台)以及用于这些网络的节目指南。可用性模块150对事件的可用性(例如,当媒体内容变得可用时以物理媒体和/或数字下载流式传输或购买时、当从流媒体可用性移除媒体内容时、媒体内容的播出日期和时间、当预约事件时、如果事件的门票仍然可获得、当电影在影院播出时),检查在第三方主机170(例如,卖家网站、事件售票机的网站、流媒体站点等)和媒体内容系统112处托管的这些源。在一些实施方式中,可用性模块150将事件信息存储在实体数据库122中。在一些实施方式中,可用性模块150在检查第三方主机170前,首先对事件和可用性信息(例如,已知的当前和未来演出日期),检查实体数据库122(或单独的数据库)。

在一些实施方式中,前端服务器114从客户端设备140接收用户请求,该请求包括与正在客户端设备102上播放的媒体内容项126相对应的内容信息(例如,音频内容的部分/片段等)。用户请求是对与用户感知为媒体内容项126中提及或引用的实体相关联的事件设置提醒的请求。基于内容信息来识别媒体内容项126和用户请求时媒体内容项的位置,识别接近媒体内容项126中所识别的位置提及/引用的实体,识别与所识别的实体相关联的事件,以及对所识别的事件设置提醒。在一些实施方式中,用户通过由麦克风141接收、由客户端设备140录制或转录,然后传送到服务器以进一步处理的口头命令(例如,“对该节目设置提醒(setareminderforthatshow)”或“当该音乐会在我们的地区提醒我(remindmewhenthatconcertisinourarea)”或“让我知道该书何时可在我的图书馆获取(letmeknowwhenthatbookisavailableatmylibrary)”)发出请求。在一些实施方式中,用户通过在客户端设备140上执行的应用127的用户界面来发出命令。例如,在一些实施方式中,应用127的用户界面提供“提醒我”按钮,当被用户选择时,触发客户端140收集与当前正在播放的媒体内容有关的内容信息、将该内容信息传送到服务器、显示可能的提醒和选项(例如,显示由服务器识别、对其设置和发出提醒的事件的列表,用于那些提醒的重现和其他选项),然后辅助用户设置期望的提醒。

在一些实施方式中,分布式系统100还包括一个或多个第三方主机170。第三方主机170托管内容。例如,第三方主机170可以托管媒体内容(例如,媒体内容流媒体站点)。作为另一示例,第三方主机170可以托管可以被用来确定事件的可用性的内容(例如,事件时间表、以物理媒体出售的媒体内容的购物站点页面等)。

图1b描绘了与图1a中描绘的分布式系统100类似的分布式系统180。在图1b中,客户端设备102和104(图1a)的特征和组件被包含到客户端设备182中。在分布式系统180中,客户端设备182接收并呈现媒体内容126。客户端设备182将内容信息发送到服务器106。服务器106识别媒体内容并向客户端设备182发送实体信息以用于呈现。在其它方面,分布式系统180与分布式系统100相同或类似。因此,在此不重复细节。

在一些其他实施例中,客户端设备102和140(图1a)的特征和组件被包括在客户端设备和无显示器辅助设备中。例如,继续图1b所示的例子,客户端设备182可以与无显示器的辅助设备(例如,遥控器)相关联。辅助设备包括麦克风,其执行捕获正在客户端设备182上播放的媒体内容的音频以及捕获来自用户的语音输入命令。辅助设备执行从用户捕获媒体内容音频和/或语音输入,并且将捕的音频和/或语音输入发送到客户端设备182以进一步处理。因此,例如,用户可以在客户端设备上流式传输媒体内容,并且在耦合到客户端设备的显示器上显示媒体内容。用户发出由辅助设备捕获的请求。辅助设备将捕获的请求发送给客户端设备以处理。客户端设备在耦合的显示设备上显示对该请求的响应。

图2是示出根据一些实施方式的服务器系统106的框图。服务器系统106通常包括一个或多个处理单元(cpu)202、一个或多个网络或其它通信接口208、存储器206以及用于将这些组件互连的一个或多个通信总线204。通信总线204可选地包括将系统组件互连并控制其之间的通信的电路系统(有时称为芯片集)。存储器206包括高速随机存取存储器,诸如dram、sram、ddrram或其它随机存取固态存储器设备;并且可包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其它非易失性固态存储设备。存储器206可以可选地包括位于远离cpu202处的一个或多个存储设备。存储器206(包括存储器206内的非易失性和易失性存储器设备)包括非暂时性计算机可读存储介质。在一些实施方式中,存储器206或存储器206的非暂时性计算机可读存储介质存储以下程序、模块或数据结构或其子集,包括:操作系统216、网络通信模块218、内容识别模块118、指纹数据库120、实体数据库122、用户数据库130、实体模块144、事件提醒模块146、可用性模块150、事件和可用性信息152和用户命令模块252。

操作系统216包括用于处理各种基本系统服务且用于执行依赖于硬件的任务的程序。

网络通信模块218经由一个或多个通信网络接口208(有线或无线)和一个或多个通信网络(诸如互联网、其它广域网、局域网、城域网等)来促进与其它设备的通信。

指纹数据库120存储一个或多个内容指纹232。在一些实施方式中,指纹232(例如指纹232-1)包括名称234、指纹音频信息236和/或指纹视频信息238以及关联文件列表239。名称234识别相应的内容指纹232。例如,名称234可以包括关联电视节目、电影或广告的名称。在一些实施方式中,指纹音频信息236包括视频流或音频流的音频内容的一部分(诸如几秒、几分钟或几小时)的指纹或其它压缩表示。在一些实施方式中,指纹视频信息238包括视频流的一部分(诸如几秒、几分钟或几小时)的指纹。在一些实施方式中,指纹232包括表示视频流的字幕数据的一部分的指纹或其它表示。指纹数据库120中的指纹232被周期性地更新。

用户数据库130包括一个或多个用户的用户数据240。在一些实施方式中,用于相应用户的用户数据240(例如,用户数据240-1)包括用户标识符242、人口统计信息244、提醒246、观看列表248和偏好249。用户标识符242识别用户。例如,用户标识符242可以是与客户端设备102相关联的ip地址或由用户选择或由服务器分配的唯一标识用户的字母数字值(例如,用户账户名称、用户id号码)。人口统计信息244包括相应用户的一个或多个特征。人口统计信息可以包括以下一项或多项:年龄、性别、收入、地理位置、教育程度、财富、宗教信仰、种族、伦理团体、婚姻状况、家庭规模、就业状况和政党隶属关系。提醒246是由事件提醒模块146为用户设置的事件的提醒。观看列表248是用户希望在将来观看的媒体内容(例如,电影、电视节目等)的列表。事件提醒模块146可以通过向观看列表248添加条目来设置提醒。偏好249是用户指定的实体集(实体偏好)和/或事件类型(事件偏好)。偏好249指定用户感兴趣以及用户希望为其自动设置事件提醒(例如,不需要明确的用户确认)的实体和/或事件类型。例如,偏好249可以指定特定的电视连续剧和事件类型,包括电视上的新剧集放映和数字流的可用性。当服务器106识别用于特定电视连续剧的新剧集放映时,可以自动设置这些放映的提醒,而不需要明确地要求用户确认。在一些实施方式中,偏好249还包括用户的位置偏好(例如,用户关于事件的偏好的一个或多个地理区域,使得服务器106可以将其事件的标识集中到用户偏好的地区中的事件)和/或关于提醒模式的偏好(例如,提醒是否应当是日历条目、通知、通知应当出现在哪个设备等)。

在一些实施方式中,用于相应用户的用户数据240还包括以下各项中的一个或多个:日历、任务列表、搜索历史(例如,用户已提交给搜索引擎的搜索查询)、内容浏览历史(例如,由用户观看的web页面)以及内容消费历史(例如,用户已观看的视频)。

内容识别模块118从客户端设备102或140接收内容信息,并且识别在客户端设备102或140处呈现的媒体内容。内容识别模块118包括指纹匹配模块222。在一些实施方式中,内容识别模块118还包括指纹生成模块221,其从内容信息或由服务器保存的其它媒体内容生成指纹。在一些实施方式中,内容识别模块118基于除指纹之外或除指纹之外的信息来识别媒体内容。例如,内容识别模块118可以使用从不可听音调、屏幕上文本的光学字符识别(ocr)、字幕数据、通过蓝牙从客户端设备102传输的信息等获得的信息来识别媒体内容。在一些实施方式中,客户端设备102/140将从不可听音调、屏幕上文本的光学字符识别(ocr)、字幕数据、通过蓝牙从客户端设备102传输的信息等获得的信息包括在被发送到服务器106的内容信息中。

指纹匹配模块222将内容信息的至少一部分(或由指纹生成模块生成的内容信息的指纹)与指纹数据库120中的指纹232匹配。匹配的指纹242被发送到实体模块144,其从实体数据库122检索与匹配的指纹242相关联的实体。匹配指纹242包括从客户端102接收到的内容信息。在一些实施方式中,内容信息包括音频信息、视频信息、用户标识符以及可选地字幕数据。内容信息中的用户标识符识别与发送内容信息的客户端设备102或140相关联的用户。例如,用户标识符可以是与客户端设备102相关联的ip地址或者由用户选择或由服务器分配的唯一地识别用户的字母数字值。在一些实施方式中,音频信息包括在客户端设备102上播放的视频流或音频流的剪辑(诸如几秒、几分钟或几小时)。在一些实施方式中,视频信息包括在客户端设备102上播放的视频流的剪辑(诸如几秒、几分钟或几小时)。

实体数据库122包括与媒体内容相关联的实体。下面参考图4来进一步描述实体数据库122。

实体模块144基于所匹配的指纹242或其它标准,从实体数据库122识别和选择或检索与媒体内容项,以及可选地,媒体内容项内的位置相关联的实体。所选/检索的实体可以是在匹配指纹242中引用的实体的子集(例如,实体模块144选择在匹配指纹242中引用的实体)。

事件提醒模块146为用户设置提醒246。提醒模块146识别与实体相关联的事件,并且根据用户命令或请求,对与正在客户端102处播放的媒体内容项126中提及的实体相关联的事件创建并且设置提醒。在一些实施方式中,当用户发出或由服务器106接收用户命令或请求时,在接近回放时间的媒体内容项126中提及或引用与事件相关联的实体。在一些实施方式中,单独的模块识别与实体相关联的事件,并且事件提醒模块146根据用户请求设置提醒。

可用性模块150在第三方主机170和媒体内容系统112中爬取(crawl)关于事件可用性的信息。

在一些实施方式中,所识别的事件和事件可用性信息被作为事件和可用性信息152存储在存储器206中(例如,作为与实体相关联的时间信息存储在实体数据库122中或存储在单独的数据库中)。事件和可用性信息包括例如,电影何时在影院中放映,电视列表和节目指南、事件时间表和日历、特定媒体内容标题何时可用于以物理媒体或数字下载或流式传输访问(例如,购买、租赁、免费广告支持的访问)等。

用户命令模块252处理从客户端设备140/102接收的用户命令或请求(例如,口头命令/请求)以确定该请求是什么以及该请求是否包括任何参数。在一些实施方式中,用户命令模块252包括用于处理口头命令和请求的语音处理模块(例如,转录、话音-文本转换、自然语言处理、关键字标识、文本解析等)。在一些实施方式中,处理包括从命令/请求确定用户正在对何种实体或事件请求提醒,例如确定命令/请求是否包括可被用来缩小用户正请求提醒的可能的实体和事件的任何限制参数(例如,请求是否包括实体类型、请求是否包括事件类型、请求是否包括事件的日期范围、请求是否包括人类实体的性别等)。

上述所识别的元件中的每一个可被存储在先前提到的存储器设备中的一个或多个中,并且模块或程序中的每一个对应于用于执行上述功能的指令集。该指令集可以被一个或多个处理器(例如,cpu202)执行。上文识别的模块或程序(即,内容识别模块118)不需要被实现为单独的软件程序、程序或模块,并且因此在各种实施方式中可将这些模块的各种子集组合或者以其它方式重新布置。在一些实施方式中,存储器206可存储上文识别的模块和数据结构的子集。此外,存储器206可存储上文未描述的附加模块和数据结构。

虽然图2示出了服务器系统,但图2更多地意图作为可存在于服务器集合中的各种特征的功能描述而不是作为本文中所述的实施方式的结构示意图。在实践中,并且如本领域的技术人员认识到的,单独示出的项可以被组合,并且某些项可以被分离。例如,在图2中单独示出的某些项(例如,操作系统216和网络通信模块218)可以在单个服务器上实现,并且单个项可以由一个或多个服务器实现。用来实现服务器系统106的服务器的实际数量和如何在其之间分配特征将根据不同的实施方式而不同,并且可部分地取决于系统在峰值使用时段期间以及在平均使用时段期间必须处理的数据业务的量。

图3a是示出根据一些实施方式的客户端设备102的框图。客户端设备102通常包括一个或多个处理单元(cpu)302、一个或多个网络或其它通信接口308、存储器306以及用于将这些组件互连的一个或多个通信总线304。通信总线304可选地包括将系统组件互连并控制其之间的通信的电路系统(有时称为芯片集)。客户端设备102还可以包括用户接口,其包括显示设备313和键盘和/或鼠标(或其它指针设备)314。存储器306包括高速随机存取存储器,诸如dram、sram、ddrram或其它随机存取固态存储器设备;并且可包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其它非易失性固态存储设备。存储器306可以可选地包括位于远离cpu302处的一个或多个存储设备。存储器306、或者替选地存储器306内的非易失性存储器设备包括非暂时性计算机可读存储介质。在一些实施方式中,存储器306或存储器306的计算机可读存储介质存储以下程序、模块和数据结构或其子集,包括:操作系统316、网络通信模块318、媒体模块110和媒体数据320。

在一些实施方式中,客户端设备102包括用于接收和输出媒体内容流或数据的输入/输出330。在一些实施方式中,输入/输出330被配置成从无线电传输、卫星传输和线缆线路接收媒体内容流。在一些实施方式中,输入/输出330被连接到机顶盒。在一些实施方式中,输入/输出330被连接到圆盘式卫星天线(satellitedish)。在一些实施方式中,输入/输出330被连接到天线。在一些实施方式中,客户端设备102通过网络接口308来接收媒体内容流(例如,通过互联网来接收视频流),与通过输入/输出330相反。

在一些实施方式中,客户端设备102包括用于接收和处理视频流或tv信号的电视调谐器332。

操作系统316包括用于处理各种基本系统服务且用于执行依赖于硬件的任务的程序。

网络通信模块318经由一个或多个通信网络接口308(有线或无线)和一个或多个通信网络(诸如互联网、其它广域网、局域网、城域网等)来促进与其它设备的通信。

数据320包括媒体内容126。媒体内容126可以包括例如视频流126-1、音频流、视频文件和/或音频文件。在一些实施方式中,从媒体内容系统112接收媒体内容126。

媒体模块110从媒体内容126导出内容信息。在一些实施方式中,内容信息322包括音频信息324、视频信息326、用户标识符328、来自不可听音调的信息、来自屏上文字的ocr的信息等或其任意组合。用户标识符328识别客户端设备102的用户。例如,用户标识符328可以是与客户端设备102相关联的ip地址或者由用户选择或由服务器分配的唯一地识别用户的字母数字值。在一些实施方式中,音频信息324包括媒体内容126(例如视频流,音频流)的一部分(诸如几秒、几分钟或几小时)。在一些实施方式中,视频信息326可以包括媒体内容126的一部分(诸如几秒、几分钟或几小时)。在一些实施方式中,内容信息322包括对应于媒体内容126的字幕数据。在一些实施方式中,视频信息326和音频信息324是从正在客户端设备102上播放或已播放的媒体内容126导出的。媒体模块110可生成针对相应的媒体内容126的内容信息的多个集合。

上述识别的元件中的每一个可被存储在先前提到的存储器设备中的一个或多个中,并且模块或程序中的每一个对应于用于执行上述功能的指令集。该指令集可以被一个或多个处理器(例如,cpu302)执行。上文识别的模块或程序(即,指令集)不需要被实现为单独的软件程序、过程或模块,并且因此在各种实施方式中可将这些模块的各种子集组合或者以其它方式重新排列。在一些实施方式中,存储器306可存储上文识别的模块和数据结构的子集。此外,存储器306可存储上文未描述的附加模块和数据结构。

虽然图3a示出了客户端设备,但图3a更多地意图作为可存在于客户端设备中的各种特征的功能描述而不是作为本文中所述的实施方式的结构示意图。在实践中,并且如本领域的技术人员认识指向的,单独示出的项可以被组合,并且某些项可以被分离。

图3b是示出根据一些实施方式的客户端设备140的框图。客户端设备140通常包括一个或多个处理单元(cpu)340、一个或多个网络或其它通信接口345、存储器346以及用于将这些组件互连的一个或多个通信总线341。通信总线341可选地包括将系统组件互连并控制其之间的通信的电路系统(有时称为芯片集)。客户端设备140还可以包括用户接口,其包括显示设备343和键盘和/或鼠标(或其它指针设备)344。存储器346包括高速随机存取存储器,诸如dram、sram、ddrram或其它随机存取固态存储器设备;并且可包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其它非易失性固态存储设备。存储器346可以可选地包括位于远离cpu340处的一个或多个存储设备。存储器346、或者替选地存储器346内的非易失性存储器设备包括非暂时性计算机可读存储介质。在一些实施方式中,存储器346或存储器346的计算机可读存储介质存储以下程序、模块和数据结构或其子集,包括:操作系统347、网络通信模块348、图形模块349、应用127、内容信息模块360和媒体捕获数据370。

操作系统347包括用于处理各种基本系统服务且用于执行依赖于硬件的任务的程序。

网络通信模块348经由一个或多个通信网络接口345(有线或无线)和一个或多个通信网络(诸如互联网、其它广域网、局域网、城域网等)来促进与其它设备的通信。

客户端设备140包括一个或多个应用127。在一些实施方式中,应用127包括浏览器应用127-1(例如web浏览器应用)、媒体应用127-2以及辅助应用127-3。浏览器应用127-1渲染和显示例如web页面。媒体应用127-2执行下述操作中的一个或多个:播放媒体内容(例如视频和音频)、显示图像并管理播放列表356。辅助应用127-3(其也称为“智能个人助理”应用)显示与用户有关的信息(例如,事件提醒357、观看列表359中的条目、即将到来的约会;要行进的路线上的交通),并且执行与用户有关或者用户所请求的任务或服务(例如,发送警告以通知朋友约会的迟到、日程更新、呼叫电话号码)。应用127不限于上文所讨论的应用。

提醒357和观看列表359是用于客户端设备140的用户的提醒和观看列表。分别从存储在用户数据库130中并且从服务器106接收的提醒246和观看列表248检索提醒357和观看列表359。

上述识别的元件中的每一个可被存储在先前提到的存储器设备中的一个或多个中,并且模块或程序中的每一个对应于用于执行上述功能的指令集。该指令集可以被一个或多个处理器(例如,cpu340)执行。上文识别的模块或程序(即,指令集)不需要被实现为单独的软件程序、过程或模块,并且因此在各种实施方式中可将这些模块的各种子集组合或者以其它方式重新排列。在一些实施方式中,存储器306可存储上文识别的模块和数据结构的子集。此外,存储器306可存储上文未描述的附加模块和数据结构。

虽然图3b示出了客户端设备,但图3b更多地意图作为可存在于客户端设备中的各种特征的功能描述而不是作为本文中所述的实施方式的结构示意图。在实践中,并且如本领域的技术人员认识到的,单独示出的项可以被组合,并且某些项可以被分离。

图4示出根据一些实施方式的存储在实体数据库122中的实体数据结构426。相应的实体428包括实体标识符(实体id)448、实体类型450、实体名称452、对其它实体的引用454、对非实体的引用458、(可选的)流行度度量460、其他实体462的引用以及附加信息。在一些实施方式中,实体id448唯一地识别相应的实体428。实体类型450识别实体428的类型。例如,实体数据库122中相应的实体428的实体类型450指示相应的实体428是标题、事件、媒体内容、人、地点等。在一些实施方式中,实体类型450还指示多个类型和/或子类型(例如,实体是媒体内容和(媒体内容)的标题,媒体内容是电影或电视节目)。实体名称452为实体命名。例如,取决于实体,实体名称是电影或电视演出的标题、人名、地名、歌曲或乐曲名称、物体的名称、产品名称、引文的实际言词或奖项名称。对其它实体的引用454指示对其它实体428的引用(例如,用其实体id448)。例如,对应于电影标题的实体428包括对电影的演员表成员、剧组成员、角色、地点等的引用454。在适当时,对其它实体的引用包括关于其它实体出现或被提到的实例456的信息。例如,电影标题实体的实例456数据包括对演职人员或角色何时出现或者产品或另一电影何时被提到等的时间范围。在一些实施方式中,实例456还包括实体428在其他实体中被提及或引用(例如,实体428在另一电影或电视节目中被提及)的实例。在一些实施方式中,其他实体中的引用/提及被单独地存储为其他实体462中的引用。对非实体的引用458包括对并未作为实体存储在实体数据库122中但是依然与实体428有关的内容(例如,指向提到实体的web页面的链接)的引用。流行度度量460提供实体文件428的重要性的测量。在一些实施方式中,度量460由服务器106确定。在一些实施方式中,流行度度量包括历史和实时流行度两者。在一些实施方式中,除了上述数据之外,关于事件和事件可用性的信息(例如日期、时间和位置等)被存储在实体数据结构426中,例如作为用于相应实体428的数据。

图5是示出根据一些实施方式,对与媒体内容中引用的实体相关联的事件设置提醒的过程500的流程图。图5提供对与媒体内容中引用的实体相关联的事件设置提醒的方法的总体视图,其在图7a-7c的论述中更详细地讨论。

媒体内容系统112将视频流(或者更一般地,媒体内容项)发送到客户端设备102(502)。该视频流由客户端设备102接收并播放(并显示)(504)。在播放视频流时,在客户端设备140处接收关于正播放的视频流的用户请求(506)。在一些实施方式中,用户请求是由用户口头发出;用户使用由客户端设备140捕获的一个或多个单词和短语来发出请求。客户端设备140从视频流确定或生成内容信息,并且将内容信息和用户请求发送到服务器106(508)。在一些实施方式中,对于口头用户请求,客户端设备140执行口头请求的转录或话音-文本的转换,并且将所得到的转录或转换文本发送到服务器106。在一些其他实施方式中,客户端设备140将所捕获的口头用户请求的音频发送到服务器106;在服务器106处(例如,由用户命令模块252)执行口头请求的转录或话音-文本转换。

在一些实施方式中,当播放视频流时,客户端设备140从客户端设备102捕获对应于视频流的音频分量的音频输出(例如,客户端设备140上的麦克风从客户端设备102拾取音频输出),并且由捕获的音频输出确定内容信息。客户端设备140确定内容信息并且将该内容信息发送到服务器106。

在一些实施方式中,来自视频流的内容信息包括视频流的音频和/或视频分量或相应字幕数据的一个或多个剪辑或部分(诸如几秒、几分钟或几小时)、或者由正在播放视频流的客户端设备从视频流的音频和/或视频组件或相应字幕数据的一个或多个剪辑或部分生成的指纹或其它签名。在一些实施方式中,内容信息被格式化,因此其可以被容易地与存储在服务器上的内容指纹相比较。

服务器106接收内容信息和请求,并且将内容信息与内容指纹匹配(510)。在一些实施方式中,服务器106(例如,用户命令模块252)处理用户请求。

在一些实施方式中,在运行时间之前,由服务器(例如,使用指纹生成模块221)从由第三方上传的媒体内容(例如,音频和/或视频剪辑、或者视频帧)生成内容指纹。在一些实施方式中,由服务器(例如,使用指纹生成模块221)实时地(例如,现场)或者在运行时间之前从已从媒体内容系统112接收到的媒体内容(例如,音频和/或视频剪辑或者视频帧)生成内容指纹。

服务器106识别视频流和视频流中的位置(512)。服务器106识别视频流中的特定电影、特定电视节目和剧集等,并且识别视频流中的回放位置(例如,进入电影或剧集的多少分钟和多少秒)。在一些实施方式中,服务器106使用内容信息来识别视频流和位置。在一些实施方式中,所识别的回放位置是约在与当做出或接收用户请求时同时(例如,在从其起的预定时间段内)播放的回放位置。例如,如果当回放视频流中的电影为距电影约1小时10分时做出或接收到用户请求,则所识别的位置为约电影中的1小时10分。

服务器106识别视频流中被引用或提及的实体,其中,引用或提及接近所识别的位置,并且识别与引用的实体相关联的事件(514)。基于视频流中所识别的位置,服务器106识别在所识别的位置附近(例如,大约、在前后的预定时间范围内)所引用或提及的一个或多个实体。基于所识别的实体,服务器106识别与所识别的实体相关联的事件(例如,剧院中的电影开场、特定平台上的电影发布、电视剧集的广播时间、涉及实体的现场事件等。)。在一些实施方式中,服务器106识别多个实体并且向客户端设备140发送提示,其中,提示要求用户从所识别的多个实体中选择实体,其中,然后,服务器106识别与所选实体相关联的一个或多个事件。在一些实施方式中,服务器106识别多个事件并且向客户端设备140发送提示,其中,提示要求用户从所识别的多个事件中选择事件。

在一些实施例中,服务器106使用接近所识别的位置的字幕数据来识别所引用或提及的实体。例如,接近识别的位置的字幕数据中的文本可以与实体数据库122或其他数据库或信息源匹配以识别该实体。在一些其他实施例中,除了字幕数据之外或者替代字幕数据,服务器106可以使用其他数据来识别所引用或提及的实体。例如,客户端设备可以对接近所识别的位置的屏幕上文本执行光学字符识别(ocr),并且将ocr文本发送到服务器106,服务器106使用ocr文本来识别所引用/提及的实体。用于识别所引用或提及的实体的其他方法包括将接近所识别的位置的歌词到歌词数据库匹配来识别所唱的歌曲(以及从此识别艺术家)、将接近所识别的位置的音乐与音乐数据库匹配来别正在播放的音乐(并且由此识别艺术家)、将接近所识别的位置的字幕数据中的文本与新闻报道数据库或储存库匹配以识别与新闻报道相关联的引用实体,和/或将广告(例如,在接近所识别的位置播放的广告视频)与广告数据库匹配以识别当前正在播放的广告(并且由此识别产品和/或公司)。

服务器106设置用户事件的提醒(516)。服务器106创建事件提醒以提醒用户该事件。提醒可以是观看列表中的条目、具有相应通知的日历条目、任务列表中的提醒等。在一些实施方式中,为用户提供选择提醒模式的机会。例如,在设置提醒之前,服务器106向客户端设备102/140发送指定或选择提醒的模式(例如,日历条目、文本消息、预约的dvr录制等)、接受由服务器106选择的模式,和/或选择与由服务器106选择的模式不同的模式的提示以显示给用户。在一些其他实施方式中,在无需提示用户干预或确认的情况下,由用户的偏好249确定提醒的模式。

在一些实现方式中,在设置提醒之前(例如,在识别一个或多个实体之后、在识别一个或多个事件之后),服务器106生成呈现并且将该呈现发送到客户端设备140,其中,呈现被显示给用户。该呈现提示用户确认对其设置提醒的所识别的实体和所识别的事件。如果用户确认实体和事件,则服务器106设置提醒。如果用户未确认,则服务器106放弃设置提醒。在一些实施方式中,如果实体和/或事件类型满足用户的偏好249,则服务器106可以在不要求用户确认的情况下跳过确认提示并且设置提醒。

应当认识到,除在媒体内容项126中提及/引用(例如,在媒体内容项126的口头对话中提及)实体和/或事件外,对其设置提醒的事件以及媒体内容项126中提及/引用的关联实体不一定与媒体内容项126相关,并且通常不相关。例如,在表演喜剧节目的喜剧演员的媒体内容项126中,除本身提及外,在喜剧节目中的笑话中的一个中提及电影不一定指示、暗示或建议电影与媒体内容项之间的关系。

图6a-6d示出根据一些实施方式的示例性用户界面。应认识到,图6a-6d中所示的用户界面以及变型是可能的。

图6a示出具有显示器602(例如显示器343)的客户端设备600(例如,客户端设备140,图3b)。在显示器602内,显示用于辅助应用(例如,辅助应用127-3)的用户界面604。当客户端设备600的用户正在观看或收听在设备上(例如,在客户端设备102上)播放的媒体内容时,辅助应用604在运行并且活动时,可以捕获来自播放媒体内容的音频输出并且接收对与媒体内容中引用的实体相关联的事件设置提醒的请求。

在图6a中,用户已经发出了请求“提醒我该电影何时可以购买到蓝光(remindmewhenthatmovieisavailabletobuyonblu-ray)”,引用用户刚才听到的电影标题在播放媒体内容中被提及。在图6a中,用户正在请求用户刚刚听到的电影何时可以购买到蓝光盘的提醒。辅助应用在用户界面604中呈现重复接收到的请求的提示606和指示如果用户希望取消请求时(例如,因为接收到的请求是错误的、因为用户不再感兴趣趣等(e.g.,becausetherequestasreceivediswrong,becausetheuserisnolongerinterested,etc.))采取的动作的指令608。如果用户希望取消在提示606中重复的请求,则用户采取指令608中指示的动作。否则,由辅助应用和服务器106执行请求。

根据用户没有取消该请求,辅助应用由播放媒体内容的音频捕获的音频生成内容信息,并且将该内容信息连同该请求一起发送到服务器106,使得识别播放的媒体内容和提及的电影。当接收到请求时,服务器106识别播放的媒体内容和媒体内容中的位置。随着识别播放的媒体内容和位置,然后,服务器106可以基于例如播放的媒体内容的字幕数据,识别该位置附近提及的实体(例如电影标题)。在一些实施方式中,当请求包括特定实体类型和/或事件类型时,如由于该请求特别提到“该电影”和蓝光购买可用性的情形,服务器106将其实体标识和/或事件识别集中到所提及事件类型的实体和/或所提及事件类型的事件。这可以帮助服务器106改进其识别,因为它可以更容易地排除不是所提及的类型的实体和事件。服务器106将在该位置附近提及的电影识别为“agreatmovie!(很棒的电影)”。根据所识别的实体和所请求的事件(蓝光发行日期),服务器106识别发行“agreatmovie!”以蓝光购买的日期。在一些实施方式中,相同事件的日期根据地区或位置而变化(例如,当电影变得可用于以物理媒体购买时),并且服务器106识别与用户相关联的一个或多个位置(例如,与用户数据240中的用户相关联的位置,诸如用户简档中的家庭位置、在偏好249中指定的位置等)中的事件。

转到图6b,在服务器106设置提醒之前,在辅助应用用户界面604中显示提示610,表示对其设置提醒(例如,添加到用户的日历的日历条目)的电影和事件针对的电影和事件,使得用户可以确认这些是正确的。还显示指令608。如果用户希望取消提醒,则用户可以执行在指令608中指示的动作。否则,将设置如在提示610中指示的提醒。在一些实施方式中,提示610包括提醒的模式(例如,“...日期将被添加到你的日历”意指该模式是日历条目,该模式由服务器106选择)。

图6c示出响应于在用户正在观看或收听媒体内容时,从用户接收请求,向用户显示的提示的另一示例。提示612重复请求“下次当她在此演奏时提醒我(remindmenexttimewhensheisplayinghere.)”。通过提及“她”,服务器106知道用户听到提及的实体是女性。此外,“在此演奏”表明了现场活动。在识别媒体内容和媒体内容中的位置之后,服务器106将该实体识别为音乐家jansmith并且将事件识别为音乐会,其中,jansmith在2016年2月10日在旧金山演奏。图6d示出提示614,其被显示给用户以确认用于提醒的实体(janesmith)和事件(2016年2月10日,旧金山音乐会)。服务器106还能够确定音乐会的门票正在销售并且可用,并且也在提示614(“门票正在销售中(ticketsonsalenow)”)中被指示。同样,用户可以通过执行在指令608中指示的动作来取消提醒。否则,将设置如在提示614中所示的提醒。在一些实施方式中,提示614包括提醒的模式(例如,“2016年2月10日的concert...将被添加到你的日历中”意指该模式是日历条目;该模式由服务器106选择)。

在一些实施方式中,提示(例如,提示610或614)提示用户确认该事件,以及由服务器106选择并且在提示中呈现的提醒的模式,并且如果需要,指定不同的事件、日期和/或模式。

图7a-7c示出根据一些实施方式,对与媒体内容中提及的实体相关联的事件设置提醒的方法。在一些实施方式中,该方法在具有一个或多个处理器和存储一个或多个程序以由一个或多个处理器执行的存储器的计算机系统(例如,服务器106)处执行,其中,一个或多个程序包括用于执行方法的指令。在一些实施方式中,一个或多个程序被存储在非暂时性计算机可读存储介质中,该存储器是非暂时性计算机可读存储介质。

计算机系统从用户接收请求(702)。例如,当媒体内容126正在客户端设备102处播放时,用户发出请求以对与媒体内容126中提及或引用的实体相关联的事件设置提醒(例如,“当该电影可以购买到蓝光时提醒我(remindmewhenthatmovieisavailabletobuyonblu-ray,)”,图6a)。该请求由客户端设备140(例如,辅助应用127-3)接收并且被发送到服务器106。在一些实施方式中,该请求在客户端设备140上(例如,由用户界面604中的辅助应用127-3)显示给用户,以便用户确认或取消。

响应于用户请求(708),计算机系统识别与用户请求同时地在第一客户端设备上播放的第一媒体内容项(710)。服务器106(例如,内容识别模块118)识别当接收到用户请求时正播放的媒体内容项126。

计算机系统识别在时间上接近用户请求的第一媒体内容项中的回放位置(714)。当接收到用户请求时,服务器106(例如,内容识别模块118)识别媒体内容项126的回放已经进行了多久。

计算机系统识别对第一媒体内容项的内容部分内的实体的引用(718),其中,内容部分对应于所识别的回放位置。服务器106(例如,实体模块144)识别在所识别的回放位置处或附近的媒体内容项126的一部分中提及或引用的一个或多个实体(例如,该部分包括在所识别的回放位置前后的预定时间量)。例如,实体模块144可以基于媒体内容项126中的所识别的回放位置的字幕数据,识别在所识别的回放位置附近的媒体内容项126中所说的话音中提到的电影标题。在一些实施方式中,如果服务器106识别多个实体,则服务器106基于一个或多个标准来确定和选择实体之一(例如,实体是否匹配在请求中的单词或短语中指定或暗示的实体类别,实体是否是如在偏好249中指定的用户偏好的实体)。在一些实施方式中,用户命令模块252识别用户请求中的一个或多个指定参数(例如,实体类型、引用的表演者实体的性别),服务器106可以使用该参数来缩小待识别的可能实体的集合。

计算机系统识别与引用的实体相关联的事件(722)。服务器106(例如事件提醒模块146)识别与所识别的实体或在媒体内容项126中提及的实体相关联的一个或多个事件。例如,如果所识别的实体为电影,则服务器106可以识别该电影在影院或电视上的一个或多个放映时间和/或电影在流式传输或物理媒体上的可用性的发布日期。在一些实施方式中,服务器106基于在服务器106处(例如,在实体数据库122中)存储和/或在第三方主机170处托管的信息,诸如电影放映时间信息、电视节目播出日期、事件时间表和流媒体内容发布公告,识别事件。在一些实施方式中,如果服务器106识别多个事件,则服务器106基于一个或多个标准(例如,事件是否匹配在请求中的词或短语中指定或暗示的事件类别、事件是如用户在偏好249中指定优选的类型),选择事件之一。在一些实施方式中,服务器106可以使用由用户命令模块252从用户请求确定的一个或多个参数(例如,日期范围、位置等)来缩小待识别的可能事件的集合。

计算机系统为用户设置该事件的提醒(740)。服务器106(例如事件提醒模块146)通过例如将事件添加到与用户相关联的日历,作为具有相应警告的日历事件、将对应于该实体的条目添加到观看列表、将书签添加到事件等来设置事件的提醒。

在一些实施方式中,从不同于第一客户端设备的第二客户端设备接收用户请求(704)。从与正在播放媒体内容项的客户端设备不同的客户端设备接收该请求。例如,当媒体内容项126正在客户端设备102上播放时,从客户端设备140接收该请求。

在一些实施方式中,用户请求包括事件类型的指示(706),并且识别与所引用的实体相关联的事件包括根据所指示的事件类型来识别该事件(732)。该请求可以包括明确或隐含地指定事件类型的一个或多个单词和短语。例如,在提示606(图6a)中向用户重复的请求包括词“可以购买到蓝光”以及词“电影”。这些词隐含地将事件指定为用于购买物理媒体上的电影(特别是在这种情况下,蓝光盘)的可用性日期。作为另一示例,请求可以说“下次她在这里举办音乐会时提醒我(remindmenexttimesheishavingaconcerthere.)”。在该示例中,该请求明确地指定事件类型“音乐会”。在任一示例中,服务器106根据事件类型的显式或隐式指定来识别事件(第一个示例为蓝光发行日期,第二个示例为音乐会日期)。在一些实施方式中,请求中的事件类型的指示由用户命令模块252确定。

在一些实施方式中,识别第一媒体内容项包括基于以下各项中的一项或多项来识别第一媒体内容项:对应于第一媒体内容项的元数据、第一媒体内容项的字幕数据、第一媒体内容项的指纹以及第一媒体内容项的水印(712)。服务器106可以基于来自媒体内容项126的元数据、媒体内容项126的字幕数据、媒体内容项126的指纹(例如,从指纹数据库120检索的指纹232),和/或媒体内容项126的水印来识别媒体内容项126。

在一些实施方式中,识别第一媒体内容项中的回放位置包括基于以下各项中的一项或多项来识别回放位置:对应于第一媒体内容项的元数据、第一媒体内容项的字幕数据、第一媒体内容项的指纹和第一媒体内容项的水印(716)。服务器106可以基于来自媒体内容项126的元数据、媒体内容项126的字幕数据(例如,将内容信息360中的话音与字幕数据中的文本部分匹配)、媒体内容项126的指纹(例如,从指纹数据库120检索的指纹232)和/或媒体内容项126的水印来识别媒体内容项126中的回放位置。

在一些实施方式中,识别对实体的引用包括基于以下各项中的一个或多个来识别对实体的引用:第一媒体内容项的字幕数据、第一媒体内容项中的文本的光学字符识别以及第一媒体内容项中的话音的话音-文本转换(720)。服务器106可以基于来自媒体内容项126的元数据、媒体内容项126的字幕数据(例如,将内容信息360中的话音与字幕数据中的文本部分匹配)、媒体内容项126的指纹(例如,从指纹数据库120检索的指纹232)和/或媒体内容项126的水印来识别媒体内容项126中的回放位置。

在一些实施方式中,该事件与第二媒体内容项相关联(724)。所标识的事件可以与不同于在客户端设备102处播放的媒体内容项126的第二媒体内容项相关联;第二媒体内容项对应于在识别的回放位置附近的媒体内容项126中提及的所识别的实体。例如,所识别的实体可以是在所识别的位置处的媒体内容项126中的所说的话音中提及的电影,以及该事件是流媒体平台上的电影的可用性。

在一些实施方式中,该事件是现场事件(726)。例如,该事件可以是音乐会、现场体育赛事、公众人物的演讲等。

在一些实施方式中,所引用的实体是事件(728)。所引用的实体本身可以是用户请求设置提醒的事件。例如,所引用的实体可以是赛车比赛“daytona500”,其本身是具有日期和时间的事件、现场出席的门票和电视播出时间。

在一些实施方式中,所引用的实体是不同于事件且与事件关联的实体(730)。例如,所引用的实体可以是音乐家,并且该事件是音乐家演奏的音乐会。

在一些实施方式中,计算机系统生成用于向用户显示的呈现(734),该呈现包括以下一项或多项的相应指示:所引用的实体和事件。计算机系统接收对呈现的用户响应(736)。响应于确定对呈现的用户响应满足一个或多个预定的肯定响应标准,计算机系统为用户设置该事件的提醒(738)。计算机系统响应于确定对呈现的用户响应不满足预定的肯定响应标准,放弃设置事件的提醒(754)。服务器系统106(例如,事件提醒模块146)生成呈现(例如,提示610或614)并且将呈现发送到客户端设备(例如,客户端设备102或140),其中,呈现被显示给用户。该呈现向用户指示将为其设置提醒的所识别的实体和/或所识别的事件。例如,提示610和614(图6b,6d)向用户指示所识别的实体(“agreatmovie!”,“janesmith”)和所识别的事件(蓝光销售日期,2016年2月10日的旧金山音乐会)。对呈现的用户响应取决于具体的实施方式,可能的响应包括执行关于该呈现的特定动作(例如,点击提示610或614,说出“取消”或“确定”)或忽略呈现(例如,离开所显示的提示,而不采取关于呈现的任何动作)。如果动作或无动作满足用于肯定响应的一个或多个标准(例如,动作是指示所指示的所识别的实体和/或所识别的事件的准许或确认的动作,无动作被视为隐含的准许/确认),服务器106根据上述步骤740,继续对用户设置事件的提醒。如果动作或无动作不满足用于肯定响应的一个或多个标准或满足用于否定响应的一个或多个标准(例如,动作是指示所指示的所识别的实体和/或所识别的事件的拒绝或未确认的动作,而无动作被视为隐含的拒绝/不确认),服务器106放弃为用户设置事件的提醒。在一些实施方式中,呈现提示用户如所指示的确认事件,或者指定不同的事件、日期、位置等,或者从多个选择中选择(例如,音乐会的不同日期)。在一些实施方式中,呈现包括提醒模式的指示(例如,通知、书签、日历条目、观看列表中的条目等),并且提示用户如所指示的确认模式或指定不同的模式。

在一些实施方式中,为用户设置事件的提醒包括根据以下各项中的一项或多项来为用户自动地设置事件的提醒:用户的一个或多个实体偏好以及用户的一个或多个事件偏好(742)。如果所识别的实体和/或所识别的事件匹配由用户指定的偏好249,则服务器106可以省略生成对所识别的实体和/或所识别的事件的用户的呈现并且将其发送给客户端设备103/140,以便用户在设定提醒之前确认所识别的实体和/或所识别的事件;服务器106在无需用户确认的情况下,自动地设置提醒。在一些实施方式中,根据附加用户偏好249(例如,关于提醒模式的偏好等),自动地设置提醒。

在一些实施方式中,为用户设置事件的提醒包括将事件添加到与用户相关联的观看列表(744)。事件提醒模块146可以通过将事件添加到观看列表248来设置提醒。例如,对于电视节目,事件提醒模块146可以将用于下一个新剧集的播出时间添加到观看列表248。

在一些实施方式中,为用户设置事件的提醒包括生成事件的书签(746)。事件提醒模块146可以通过添加用于事件提醒246的书签来设置提醒。书签可以是例如用于描述现场事件并且提供出售现场事件的门票的页面(例如,音乐会的页面)的书签,或者用于流式传输电影的页面的书签。

在一些实施方式中,为用户设置事件的提醒包括对该事件,生成对用户的通知(748)。事件提醒模块146设置并生成发送给客户端设备102/140的关于该事件的通知。

在一些实施方式中,设置提醒包括确定事件的可用性(750),以及根据确定的可用性来设置事件的提醒(752)。服务器106(例如,可用性模块150)基于例如从第三方主机170获得的信息,诸如门票可用性信息和发行日期信息,确定所识别的事件的可用性。事件提醒模块146基于所确定的可用性设置提醒。例如,对于特定平台上的电影发行,事件提醒模块146对如由发行日期信息确定的发行日期设置提醒。对于现场事件,事件提醒模块146可以对如由门票可用性信息确定的门票仍可获得的现场事件的最早未来迭代设置提醒。

将理解的是虽然在本文中可使用术语“第一”、“第二”等来描述各种元件,但这些元件不应受到这些术语的限制。这些术语仅用来将一个元件与另一个区别开。例如,可以将第一联系人称为第二联系人,并且同样地可以将第二联系人称为第一联系人,其改变描述的意义,只要“第一联系人”的所有出现都被一致地重命名且第二联系人的所有出现都被一致地重命名即可。第一联系人和第二联系人两者都是联系人,并且其并不是同一联系人。

在本文中使用的术语仅仅是出于描述特定实施方式的目的且并不意图限制权利要求。除非上下文以其它方式清楚地指明,如在实施方式的描述和所附权利要求中所使用的单数形式“一”、“一个”和“该”也意图包括复数形式。还将理解的是如本文所使用的术语“和/或”指代并涵盖关联列出的项中的一个或多个的任何和所有可能组合。将进一步理解的是术语“包括”和/或“包含”当在本说明书中使用时指定所述特征、整体、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组的存在或附加。

取决于上下文,如本文所使用的术语“如果”可以理解成意指“当……时”或者“在……后”或者“响应于确定”或者“根据确定”或者“响应于检测到”前面所述条件是真的。同样地,可以将短语“如果确定[前面所述的条件是真的]”或者“如果[前面所述的条件是真的]”或者“当[前面所述的条件是真的]时”理解成意指“在确定后”或者“响应于确定”或者“根据确定”或者“在检测到后”或者“响应于检测到”前面所述的条件是真的,取决于上下文。

现在将详细地考察各种实施方式,在附图中示出其示例。在以下详细描述中,阐述了许多特定细节以便提供本发明和所述实施方式的透彻理解。然而,可以在没有这些特定细节的情况下实施本发明。在其它情况下,并未详细地描述众所周知的方法、程序、组件以及电路以免不必要地使实施方式的各方面含糊难懂。

出于说明的目的,已参考特定实施方式来描述前文的描述。然而,以上说明性讨论并不意图是穷尽的或使本发明局限于所公开的精确形式。鉴于以上讲授内容,可以有许多修改和变更。选择并描述实施方式是为了最好地解释本发明原理及其实际应用,以从而使得本领域的其他技术人员能够最好地利用具有适合于设想的特定用途的各种修改的本发明和各种实施方式。

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