CN102591574A - 与娱乐内容的实时交互 - Google Patents

与娱乐内容的实时交互 Download PDF

Info

Publication number
CN102591574A
CN102591574A CN2011104401939A CN201110440193A CN102591574A CN 102591574 A CN102591574 A CN 102591574A CN 2011104401939 A CN2011104401939 A CN 2011104401939A CN 201110440193 A CN201110440193 A CN 201110440193A CN 102591574 A CN102591574 A CN 102591574A
Authority
CN
China
Prior art keywords
incident
user
content
event data
warning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011104401939A
Other languages
English (en)
Inventor
S·W·Y·劳
K·C·甘米尔
A·加登
S·波特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102591574A publication Critical patent/CN102591574A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/47815Electronic shopping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4882Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Abstract

本申请涉及与娱乐内容的实时交互。一种系统允许用户与传统单向娱乐内容交互。该系统知晓该交互并使用与该娱乐内容相关联的事件数据适当地行动。该事件数据包括多个事件的信息。事件的信息包括对软件指令和该软件指令所使用的音频/视觉内容项目的引用。当事件发生时,调用该软件指令。可对已记录的内容或实况内容、以及已解释的和已编译的应用启用该系统。

Description

与娱乐内容的实时交互
技术领域
本申请涉及与娱乐内容的实时交互。
背景技术
传统上,诸如听音乐、看电影或看电视等娱乐体验是单向体验。内容被播放,与此同时观众坐好并体验它。除了使内容快进和倒退之外,没有办法与该内容交互。
发明内容
提供一种允许用户与传统单向娱乐内容交互的系统。该系统知晓该交互并使用与该娱乐内容相关联的事件数据适当地行动。该事件数据包括多个事件的信息。事件的信息包括软件指令和/或对软件指令的引用,以及该软件指令使用的听觉/视觉内容项目。当事件发生时,通过多个可能机制向用户提供有关该事件的警告。如果用户响应于该警告(或以其他方式与该警告交互时),则调用针对该事件的软件指令来提供交互式体验。此系统可对已记录的和实况的内容可用。
一个实施例包括用于提供与计算系统的交互的方法。该方法包括:使用该计算系统访问并显示节目;标识与该节目相关联的事件数据,其中该事件数据包括多个事件的数据且事件的数据包括对软件指令和音频/视觉内容项目的引用;自动确定第一事件已发生;为第一事件提供第一警告;接收用户与该第一警告的交互;响应于接收到用户与该第一警告的交互而使用与该第一事件相关联的软件指令和音频/视觉内容项目来编程该计算系统;自动确定第二事件已发生;为第二事件提供第二警告;接收用户与该第二事件的交互;以及响应于接收到用户与该第二警告的交互而使用与该第二事件相关联的软件指令和音频/视觉内容项目来编程该计算系统。与该第二事件相关联的软件指令和音频/视觉内容项目不同于与该第一事件相关联的软件指令和音频/视觉内容项目。
一个实施例包括存储代码的非易失性存储、视频接口、通信接口以及与该非易失性存储、视频接口和通信接口进行通信的处理器。该代码的一部分编程该处理器已访问内容以及与该内容相关联并时间同步的多个事件的事件数据。该内容经由该视频接口显示。该处理器显示指示该内容中的时间位置的线性时间显示并在该线性时间显示上添加标识每个事件在该内容中的时间的事件指示符。该事件指示符还可指示要在该时间位置处显示的内容的类型(例如,购物机会、更多信息、用户评论等)。该处理器播放该内容并更新该线性时间显示以指示该内容的当前时间位置。当该内容的当前时间位置等于特定事件指示符的时间位置时,则该处理器为与该特定事件指示符相关联的特定时间提供可见警告。如果该处理器没有接收到对该可见警告的响应,则该处理器移除该可见警告而不提供与该可见警告相关联的附加内容。如果该处理器接收到对该可见警告的响应,则该处理器运行由与该特定事件指示符相关联的事件数据所标识的可见警告相关联的软件指令。运行与该可见警告相关联的软件指令包括提供执行多个功能中的任何一个的选择。警告或事件被存储,并且如果需要可由消耗该内容的个体在稍后的时间取回。此外,可以查看该警告而不消耗该内容(动态事件不包括在内)。
一个实施例包括其上存储有处理器可读代码的一个或多个处理器可读存储设备。该处理器可读取代码用于编程一个或多个处理器已执行一种方法,所述方法包括:标识当前正与第一计算系统进行交互的两个或更多个用户;使用该第一计算系统来访问并显示音频/视觉节目;标识与该音频/视觉节目相关联的事件数据,其中该事件数据包括多个事件的数据且事件的数据包括对软件指令和音频/视觉内容项目的引用;自动确定事件已发生;基于与被标识为当前正与第一计算系统交互的两个或更多个用户中的一个相关联的用户简档数据来向第二计算系统发送第一组指令;基于被标识为当前正与第一计算系统交互的两个或更多个用户中的另一个相关联的用户简档数据来向第三计算系统发送第二组指令。第一组指令允许第二计算系统显示第一内容。第二组指令允许第三计算系统显示不同于第一内容的第二内容。
提供本发明内容以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图说明
图1A-C描绘了用户界面。
图2描绘了三个设备的用户界面。
图3是描绘用于提供交互式内容的系统的各组件的框图。
图4描绘了示例娱乐控制台和跟踪系统。
图5示出娱乐控制台和跟踪系统的一个实施例的更多细节。
图6是描绘示例娱乐控制台的组件的框图。
图7是用于提供交互式内容的系统的一个实施例的软件组件的框图。
图8是可在用于提供交互式内容的系统的一个实施例中使用的层的符号和抽象表示。
图9描绘了各层间的分层关系。
图10提供了定义层的代码的示例。
图11A和11B提供了描述用于提供交互式内容的过程的一个实施例的流程图。
图12提供了用于为事件调用被指向的代码的过程的一个实施例的流程图。
图13提供了用于当多个用户在与伴随设备交互时为事件调用被指向的代码的过程的一个实施例的流程图。
图14提供了描述用于接收数据流的过程的一个实施例的流程图。
图15提供了描述用于在实况编程期间接收层的过程的一个实施例的流程图。
图16提供了描述用于在游戏期间创建事件的过程的一个实施例的流程图。
具体实施方式
提出一种允许用户与传统单向娱乐内容交互的系统。当播放娱乐内容(诸如听觉/视觉节目(program)或基于计算机的游戏)时,事件数据被用来提供与娱乐内容的交互。事件是在娱乐内容中或在娱乐内容期间所发生的事情。例如,电视节目期间的事件可以是信用的存在、歌曲的播放、场景的开始、女演员的出现、项目或位置的出现等。娱乐内容可与多个事件相关联;因此,事件数据包括与该娱乐内容相关联的多个事件的信息。事件的信息包括软件指令和/或对软件指令的引用,以及该软件指令使用的听觉/视觉内容项目。当事件发生时,向用户提供有关该事件的警告。如果用户响应于该警告(或以其他方式与该警告交互时),则调用针对该事件的软件指令来提供交互式体验。
此处描述的技术的特征包括:该事件数据可提供不同类型的内容(例如,图像、视频、音频、链接、服务等)、是模块化的、可任选地是时间同步的、可任选地是事件触发的、分层的、可过滤的、能够被开启/关闭、能够由不同源以不同方式创建并且能够与其他事件数据组合。事件数据的这些特征允许在娱乐内容的呈现期间在进行中(on the fly)动态地编程正在交互的计算系统,以使得该交互式体验是可定制的且动态的体验。可对已记录的内容或实况内容、以及已解释的和已编译的应用启用该系统。
图1示出描绘与娱乐内容(或其他类型的内容)交互的一个示例的用户界面10。在一个实施例中,界面10是高清晰度电视、计算机监视器、或其他音频/视觉设备。或者出于本文的目的,音频/视觉应包括仅音频、仅视觉、或音频和视觉的组合。在本示例中,界面10的区域11正在播放(或以其他方式显示)音频/视觉节目,该节目是能够与之交互的内容的一个示例。可被呈现并交互的内容的类型包括例如电视节目、电影、其他类型的视频、静止图像、幻灯片、音频演示、游戏、或其他内容或应用。此处描述的技术不限于任何类型的内容或应用。
界面10的底部处是时间线12,时间线12是线性时间显示的一个示例。时间线12指示界面10上呈现的节目的当前进程。时间线12的阴影部分14指示该部分内容已经被呈现而时间线12的无阴影部分16指示该部分内容还没有被呈现。在其他实施例中,可使用不同类型的线性时间显示,或者可使用非线性的、用于显示进程和相对事件的其他图形机制。时间线12的紧邻的上方是一组事件指示器,这些事件指示器表现为方框。事件指示符可以是其他形状。出于示例目的,图1A示出了在时间线12的不同部分上分布的9个事件指示符。这些事件指示符中的两个由标号18和20标记。每个事件指示符对应于可在所呈现的节目中或该节目期间发生的事件。每个事件指示符沿时间线12的位置指示相关联的事件将发生的时间。例如,事件指示符18可以与第一事件相关联而事件指示符20可以与第四事件相关联。作为一示例,第一事件可包括特定演员的第一次出现而第四事件可以是该节目期间特定歌曲的播放。观看界面10上的节目的计算系统的用户将从时间线12和事件指示符上看到在该节目期间各种事件何时发生。注意,在一些实施例中,不显示时间线和事件指示符。在其他实施例中,仅在恰在事件发生之前显示时间线和事件指示符。在另一实施例中,按照用户的需要显示时间线和事件指示符(例如,经由遥控器或使用姿势)。
图1B和图1C示出了与界面10的区域11正显示的内容进行交互的一个示例。注意,图1A-1C没有描绘正显示的实际内容以免使这些图混乱。沿时间线12的、阴影区域14和无阴影区域16相交的点表示内容的当前时间位置(例如,电视节目或电影等已过去的相对时间)。当界面10上正显示的内容的当前时间位置等于特定事件的时间位置时(例如,当该电影已经过的时间等于与该事件相关联的时间时),则提供警告。例如,图1B示出了文本泡22(警告)从事件指示符20弹出。在本示例中,该事件是在电视节目或电影期间歌曲被播放。该文本泡可指示歌曲的标题。在其他实施例中,警告可包括仅音频、伴随有文本泡的音频、或能显示文本或图像的其他用户界面组件。警报还可在伴随电子设备上提供,如下面将要描述的。
此处描述的技术不需要是基于时间位置的。如果该系统使用元数据触发器或事件触发器(例如,在作为非线性体验的游戏中),则在满足了某种事件序列的情况下事件可被触发且不是经由一时间标记。
一旦向用户提供了警告,该用户具有可以与该警告进行交互的一段时间。如果该用户不在该预先确定的时间段期间与该警告交互,则移除该警告。如果该用户不与该警告交互,则向该用户提供要进行交互的附加内容。
有许多与警告交互的方式。在一个实施例中,该用户可使用手势(如下面所解释的)、鼠标、不同指点设备、语音或其他手段来选取、选择、确认或以其他方式与该警告交互。
图1C描绘了在用户已与该警告交互或以其他方式确认该警告之后的界面10。如可以看出的,文本泡22现在示出了加阴影(shadowing)以向该用户提供该用户的交互被确认的视觉反馈。在其他实施例中,可使用其他图形确认和/或音频确认。在一些实施例中,不需要确认。响应于用户与警告的交互,在界面10的区域40中提供附加内容。在一个实施例中,使区域11更小以适合区域40。在另一实施例中,区域40覆盖区域11。在另一实施例中,区域40可在所有时间均在界面10中存在。
在图1C的示例中,区域40包括作为菜单的一部分的五个按钮。这些按钮包括“购买歌曲”、“音乐视频”、“艺术家”、“益智游戏”和“艺术家的其他歌曲”。如果用户选择“购买歌曲”,则该用户将被提供购买电视节目或电影上正在播放的歌曲的机会。该用户将被带入电子商务页或站点以进行购买。然后所购买的歌曲将在该用户正在使用的当前计算设备和/或该用户所拥有或操作(可由用户配置)的任何其他计算设备上可用。如果该用户选择“音乐视频”,则该用户将被提供在界面10上观看音乐视频(立即或稍后)、存储该音乐视频以供稍后观看、或向另一个人发送该音乐视频的机会。如果该用户选择“艺术家”,则该用户将被提供有关该艺术家的更多信息。如果该用户选择“益智游戏”,则该用户将被提供与该歌曲相关联或以其他方式与该歌曲相关的、要玩的益智游戏。如果该用户选择“艺术家的其他歌曲”,则该用户将被提供显示与当前正在播放的歌曲相同的艺术家的其他歌曲中的全部或一些的界面。用户将能够倾听、购买、或告诉朋友所描绘的歌曲中的任何一个。
注意,图1C只是可在区域40中提供的内容的一个示例。此处公开的系统是完全可配置且可编程的以提供许多不同类型的交互。
在一个实施例中,响应于用户与警告22交互而通过调用与事件标识符20相关联的一组代码来填充区域40。每个事件与包括代码(或指向代码的指针)和内容的事件数据相关联。该代码和内容被用于实现该交互(例如,区域40的菜单和响应于选择区域40的按钮中的任何一个而执行的其他操作)。
图1A-C示出了多个事件标识符,每个事件标识符指示相关联的事件在界面10上正在显示的内容内的时间位置。这些标识符中的每一个都与不同事件相关联,该事件进而又有其自己的一组代码和内容以用于对与界面10相关联的计算设备进行编程来在区域40内(或其他地方)实现不同组功能。在一个实施例中,每个事件的事件数据是不同的。即,代码对于每个事件不是完全相同的,并且用于每个事件的内容不是完全相同的。可能的是:多个事件将共享一些内容和一些代码,但是一个事件的整组代码和内容很可能不同于另一事件的整组代码和内容。此外,所提供的各内容将是不同介质的(例如,音频、视频、图像等)。
在一个实施例中,用户具有从一个事件指示符跳到另一事件指示符的能力。因此,例如,如果用户错过了警告或者甚至看到了警告但是决定不对其进行响应,则随后在回放体验中,用户可能希望回到之前的警告。该系统将包括在事件指示符间快速跳跃的机制。
图2提供了另一示例,其中界面10(例如,高分辨率电视)与一个或两个伴随设备结合使用。例如,图2示出了伴随设备100和伴随设备102。在一个实施例中,伴随设备100和102是蜂窝电话(例如,智能电话)。在其他实施例中,伴随设备100和102可以是笔记本计算机、平板、或其他无线和/或有线移动计算设备。在一个实施例中,伴随设备100和102两者正由同一用户操作。在另一实施例中,不同用户可以正操作该伴随设备以使第一用户正操作伴随设备100而第二用户正操作伴随设备102。在许多情况下,操作这些伴随设备的用户也正在观看界面10。在一个示例中,两个人正坐在沙发上观看电视(界面10),而每个人也能观看他/她自己的蜂窝电话(100和102)。
在图2的示例中,事件指示符50与女演员进入穿戴特定服装的场景的事件相关联。在此情况下,观看电影的电视节目的两个用户中的任一个可使用此处所述的手段中的任何一个与警告52进行交互。如果第一用户与警告52进行交互,则第一用户的伴随设备100将被配置成显示菜单的各按钮以供用户进行交互。例如,伴随设备100的区域104显示五个按钮以供用户购买电影中所描绘的服装(购买服装)、获得有关该服装的信息(服装信息)、经由因特网选购类似服装(选购类似服装)、经由社交联网即时消息收发、电子邮件等把该服装告诉朋友(告诉朋友)、或张贴有关该服装的评论(张贴)。如果如同上面讨论的第二用户与警告52进行交互,则第二用户的伴随计算设备102将在伴随设备102的区域106上示出菜单的一组按钮。第二用户可选择获得有关该女演员的更多信息(女演员信息)、观看女演员所参与的其他电影或电视节目(观看女演员的其他标题)、把此特定女演员告诉朋友和/或示出(告诉朋友)或张贴评论(张贴)。在一个实施例中,两个设备将针对相同的警告52显示相同的选项(如果这些设备具有相同的能力)。
在一个实施例中,第一用户和第二用户每个将具有他们自己的、被提供界面10的相关计算设备知晓的用户简档。基于该简档、以及与事件指示符50相关联的代码和内容,该计算设备将知晓要向特定用户的相关伴随设备提供哪些按钮和菜单选项。该相关代码和内容将被提供给该特定伴随设备以对该伴随设备进行编程以提供图2中所描绘的交互。注意,显示给该用户的代码和内容也可以基于诸如设备的能力(例如,多个富多媒体选项可被示出给膝上型设备而不是移动电话设备)、用户/设备的时间/日期/位置等,而不仅仅通过用户简档。在一些情况下,可能没有观看该内容的人的简档。
在其他实施例中,区域104和106也可被显示在界面10或其他界面上。该用户可通过此处所讨论的手段中的任何一种来与界面10、104和106交互。在另一替代方案中,该用户可通过在该用户的伴随设备上执行动作来与警告52进行交互。在其他实施例中,时间线12可被描绘在所述伴随设备中的任何一个上而不是描绘在界面10上或同时描绘在界面10上。在另一替代方案中,该系统将不发出警告(例如,警告22和警告52)。相反,当时间线到达事件指示符时,该用户将自动被提供区域40、区域104或区域106,这些区域包括要选择的各种菜单项和/或其他内容以在呈现娱乐内容期间提供交互式体验。
提供该交互的系统可以是完全可编程的以使用许多不同类型的内容提供任何类型的交互。在一个示例中,该系统被部署为其中多于一个实体可提供内容层的平台。在一个示例中,内容层被定义为多个事件的一组事件数据。层中的该组事件可以是相同类型的事件或不同类型的事件。例如,层可包括将提供购物体验的一组事件、提供信息的一组事件、允许用户玩游戏的一组事件等等。替代地,层可包括一组混合类型的事件。层可由电视节目或电影(或其他内容)的拥有者和提供者、观看该内容的用户、广播者、或任何其他实体来提供。该相关系统可组合一个或多个层以使时间线12及其相关联的事件标识符将为所组合的所有层(或这些层的子组)示出标识符。
图3是描绘用于提供此处所述的交互的系统的一种实现的各组件的框图。图3示出了客户端计算设备200,该客户端计算设备可以是桌面计算机、笔记本计算机、机顶盒、娱乐控制台、或能够使用本领域已知的任何手段经由因特网与图3的其他组件进行通信的其他计算设备。在一个实施例中,客户端计算设备200连接到观看设备202(例如,电视机、监视器、投影仪等)。在一种替代方案中,客户端计算设备200包括内置观看设备,因此,具有外部观看设备不是必须的。
图3还示出了内容服务器204、内容存储206、创作设备208和实况插入设备210,所有这些设备经由因特网或其他网络彼此通信并与客户端计算设备200通信。在一个实施例中,内容服务器204包括可提供各种类型的服务(例如,电视节目、电影、视频、歌曲等等)的一个或多个服务器(例如,被配置成服务器的计算设备)。在一些实施例中,一个或多个内容服务器204在本地存储所述内容。在其他实施例中,内容服务器204在内容存储206处存储其内容,该内容存储206可包括用于存储各种形式的内容的一个或多个数据存储设备。内容服务器204和/或内容存储206还可存储各种层,内容服务器204和/或内容存储206可将这些层提供给客户端200以允许用户与客户端200进行交互。创作设备208可包括可用于创建存储在内容服务器204处、内容存储206处或其他地方的一个或多个层的一个或多个计算设备。尽管图3示出了一个创作设备208,然而在其他实施例中,可以有多个创作设备208。该创作设备与内容服务器和/或内容存储直接交互并且可以不需要通过因特网。
图3还示出了实况插入设备210,该实况插入设备可以是用于在实况发生期间实时地、在进行中(on the fly)创建层的一个或多个计算设备。例如,实况插入设备210可用于在体育赛事期间实时地创建事件数据。尽管图3示出了一个实况插入设备210,然而该系统可包括多个实况插入设备。在另一实施例中,创作设备208也可包括实况插入设备210的所有功能。
图3还示出了伴随设备220,该伴随设备经由因特网或直接地(如虚线所描绘的)与客户端200进行通信。例如,伴随设备220可经由Wi-Fi、蓝牙、红外、或其他通信手段直接地与客户端200进行通信。替代地,伴随设备220可经由因特网或经由内容服务器204(或另一服务器或服务)直接地与客户端200进行通信。尽管图3示出了一个伴随设备220,然而系统可包括一个或多个伴随设备(例如,如图2的伴随设备100和伴随设备102)。伴随设备200还可经由因特网或其他网络与内容服务器204、内容存储206、创作设备208和实况插入设备210进行通信。
客户端200的一个示例是可提供视频游戏、电视、视频记录、计算和通信服务的娱乐控制台。图4提供了包括计算系统312的这种娱乐控制台的一个示例实施例。计算系统312可以是计算机、游戏系统或控制台等。根据一个示例实施例,计算系统312可包括硬件组件和/或软件组件,以使计算系统312可被用于执行例如游戏应用、非游戏应用等应用。在一个实施例中,计算系统312可包括可执行存储在处理器可读存储设备上的用于执行此处描述的过程的指令的处理器,如标准化处理器、专用处理器、微处理器等。客户端200还可包括可任选的捕捉设备320,该捕捉设备320可以是,例如可在视觉上监视一个或多个用户从而可以捕捉、分析并跟踪一个或多个用户所执行的姿势和/或移动,来执行应用内的一个或多个控制或动作和/或动画化化身或屏上角色的相机。
根据一个实施例,计算系统312可连接到可向用户提供电视、电影、视频、游戏或应用视觉和/或音频的音频/视觉设备316,如电视机、监视器、高清晰度电视机(HDTV)等。例如,计算系统312可包括诸如图形卡等视频适配器和/或诸如声卡等音频适配器,这些适配器可提供与游戏应用、非游戏应用等相关联的视听信号。音频/视觉设备316可从计算系统312接收音频/视觉信号,然后可向用户输出电视、电影、视频、游戏或应用节目的视觉和/或音频。根据一个实施例,音频/视觉设备316可通过例如,S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆、分量视频电缆等连接到计算系统312。
客户端200可用于识别、分析和/或跟踪一个或多个人类。例如,可使用捕捉设备320来跟踪用户,从而可以捕捉用户的姿势和/或移动来动画化化身或屏幕上角色,和/或可将用户的姿势和/或移动解释为可用于影响计算系统312所执行的应用的控制。因此,根据一个实施例,用户可移动他或她的身体(例如,使用姿势)来控制与音频/视觉设备316上正在显示的节目的交互。
图5示出了具有捕捉设备320的计算系统312的一个示例实施例。根据一示例实施例,捕捉设备320可被配置为通过可包括例如飞行时间、结构化光、立体图像等在内的任何合适的技术来捕捉包括深度图像的带有深度信息的视频,该深度图像可包括深度值。根据一个实施例,捕捉设备320可将深度信息组织为“Z级”或者可与从深度相机沿其视线延伸的Z轴垂直的级。
如图5所示,捕捉设备320可以包括相机组件423。根据一示例实施例,相机组件423可以是或者可以包括可捕捉场景的深度图像的深度相机。深度图像可包括所捕捉的场景的二维(2-D)像素区域,其中2-D像素区域中的每个像素都可以表示深度值,比如所捕捉的场景中的物体与相机相距的例如以厘米、毫米等为单位的距离。
相机组件423可以包括可用于捕捉场景的深度图像的红外(IR)光组件425、三维(3-D)相机426、以及RGB(视觉图像)相机428。例如,在飞行时间分析中,捕捉设备320的IR光组件425可以将红外光发射到场景上,并且然后可以使用传感器(在一些实施例中包括未示出的传感器)、例如使用3-D相机426和/或RGB相机428来检测从场景中的一个或多个目标和物体的表面后向散射的光。在某些实施例中,可以使用脉冲红外光,使得可以测量出射光脉冲和相应的入射光脉冲之间的时间差并将其用于确定从捕捉设备320到场景中的目标或物体上的特定位置的物理距离。另外,在其他示例实施例中,可将出射光波的相位与入射光波的相位进行比较来确定相移。然后可以使用该相移来确定从捕捉设备到目标或物体上的特定位置的物理距离。
根据另一示例实施例,可使用飞行时间分析,通过经由包括例如快门式光脉冲成像在内的各种技术来随时间分析反射光束的强度以间接地确定从捕捉设备320到目标或物体上的特定位置的物理距离。
在另一示例实施例中,捕捉设备320可使用结构化光来捕捉深度信息。在这样的分析中,图案化光(即,被显示为诸如网格图案、条纹图案、或不同图案之类的已知图案的光)可经由例如IR光组件424被投影到场景上。在落到场景中的一个或多个目标或物体的表面上时,作为响应,图案可变形。图案的这种变形可由例如3-D相机426和/或RGB相机428(和/或其他传感器)来捕捉,然后可被分析以确定从捕捉设备到目标或物体上的特定位置的物理距离。在一些实施方式中,IR光组件425与相机425和426分开,使得可以使用三角测量来确定与相机425和426相距的距离。在一些实施方式中,捕捉设备20A将包括感测IR光的专用IR传感器或具有IR滤光器的传感器。
根据另一实施例,捕捉设备320可包括两个或更多物理上分开的相机,这些相机可从不同角度查看场景以获得视觉立体数据,该视觉立体数据可被解析以生成深度信息。也可使用其他类型的深度图像传感器来创建深度图像。
捕捉设备320还可以包括话筒430,所述话筒430包括可以接收声音并将其转换成电信号的换能器或传感器。话筒430可用于接收也可由计算系统312来提供的音频信号。
在一示例实施例中,捕捉设备320还可包括可与图像相机组件423进行通信的处理器432。处理器432可包括可执行指令的标准处理器、专用处理器、微处理器等,这些指令包括用于接收深度图像、生成适当的数据格式(例如,帧)并将数据传送到计算系统312的指令。
捕捉设备320还可包括存储器434,该存储器434可存储由处理器432执行的指令、由3-D相机和/或RGB相机所捕捉的图像或图像帧、或任何其他合适的信息、图像等等。根据一示例实施例,存储器434可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘或任何其他合适的存储组件。如图5所示,在一个实施例中,存储器434可以是与图像捕捉组件423和处理器432进行通信的单独组件。根据另一实施例,存储器组件434可被集成到处理器432和/或图像捕捉组件422中。
捕捉设备320经由通信链路436与计算系统312通信。通信链路436可以是包括例如USB连接、火线连接、以太网电缆连接等的有线连接和/或诸如无线802.11b、802.11g、802.11a或802.11n连接等的无线连接。根据一个实施例,计算系统312可以经由通信链路436向捕捉设备320提供可用于确定例如何时捕捉场景的时钟。附加地,捕捉设备320经由通信链路436将由例如3-D相机426和/或RGB相机428捕捉的深度信息和视觉(例如RGB)图像提供给中枢计算系统12。在一个实施例中,深度图像和视觉图像以每秒30帧的速率来传送,但是可以使用其他帧速率。计算系统312然后可以创建模型并使用模型、深度信息、以及所捕捉的图像来例如控制诸如游戏或文字处理程序等的应用和/或使化身或屏上人物动画化。
计算系统312包括深度图像处理和骨架跟踪模块450,该模块使用深度图像来跟踪可被捕捉设备320的深度相机功能检测到的一个或多个人。深度图像处理和骨架跟踪模块450向应用453提供跟踪信息,该应用可以是视频游戏、生产性应用、通信应用、(执行此处描述的过程的)交互式软件或其他软件应用等。音频数据和视觉图像数据也被提供给应用452和深度图像处理和骨架跟踪模块450。应用452将跟踪信息、音频数据和视觉图像数据提供给识别器引擎454。在另一实施例中,识别器引擎454从深度图像处理和骨架跟踪模块450直接接收跟踪信息,并从捕捉设备320直接接收音频数据和视觉图像数据。
识别器引擎454与过滤器460、462、464、……、466的集合相关联,每一过滤器包括关于可由捕捉设备320检测的任何人或物体执行的姿势、动作或状况的信息。例如,来自捕捉设备320的数据可由过滤器460、462、464、……、466来处理,以便标识一个用户或一组用户何时执行了一个或多个姿势或其他动作。这些姿势可与应用452的各种控制、对象或状况相关联。因此,计算系统312可以将识别器引擎454和过滤器一起用于解释和跟踪物体(包括人)的移动。
捕捉设备320向计算系统312提供RGB图像(或其他格式或色彩空间的视觉图像)和深度图像。深度图像可以是多个观测到的像素,其中每个观测到的像素具有观测到的深度值。例如,深度图像可包括所捕捉的场景的二维(2-D)像素区域,其中该2-D像素区域中的每个像素都可具有深度值,诸如所捕捉的场景中的物体与捕捉设备相距的距离。计算系统312将使用RGB图像和深度图像来跟踪用户或物体的移动。例如,系统将使用深度图像来跟踪人的骨架。可以使用许多方法以通过使用深度图像来跟踪人的骨架。使用深度图像来跟踪骨架的一个合适的示例在Craig等人2009年10月21日提交的美国专利申请12/603,437“Pose Tracking Pipeline(姿态跟踪流水线)”(以下称为’437申请)中提供,该申请的全部内容通过引用结合于此。‘437申请的过程包括:获得深度图像;对数据进行降采样;移除和/或平滑化高方差噪声数据;标识并移除背景;以及将前景像素中的每个分配给身体的不同部位。基于这些步骤,系统将使一模型拟合到该数据并创建骨架。该骨架将包括一组关节和这些关节之间的连接。也可使用用于跟踪的其他方法。在下列四个美国专利申请中还公开了合适的跟踪技术,所述专利的全部内容都通过引用结合于此:于2009年5月29日提交的美国专利申请12/475,308“Device for Identifying and Tracking MultipleHumans Over Time(用于随时间标识和跟踪多个人类的设备)”;于2010年1月29日提交的美国专利申请12/696,282“Visual Based Identity Tracking(基于视觉的身份跟踪)”;于2009年12月18日提交的美国专利申请12/641,788“Motion Detection Using Depth Images(使用深度图像的运动检测)”;以及于2009年10月7日提交的美国专利申请12/575,388“Human Tracking System(人类跟踪系统)”。
识别器引擎454包括多个过滤器460、462、464、……、466来确定姿势或动作。过滤器包括定义姿势、动作或状况以及该姿势、动作或状况的参数或元数据的信息。例如,包括一只手从身体背后经过身体前方的运动的投掷可被实现为包括表示用户的一只手从身体背后经过身体前方的运动的信息的姿势,因为该运动将由深度相机来捕捉。然后可为该姿势设定参数。当姿势是投掷时,参数可以是该手必须达到的阈值速度、该手必须行进的距离(绝对的,或相对于用户的整体大小)、以及识别器引擎对发生了该姿势的置信度评级。用于姿势的这些参数可以随时间在各应用之间、在单个应用的各上下文之间、或在一个应用的一个上下文内变化。支持的姿势的另一示例是指向用户界面上的项目。
过滤器可以是模块化的或是可互换的。在一个实施例中,过滤器具有多个输入(这些输入中的每一个具有一类型)以及多个输出(这些输出中的每一个具有一类型)。第一过滤器可用具有与第一过滤器相同数量和类型的输入和输出的第二过滤器来替换而不更改识别器引擎架构的任何其他方面。例如,可能具有用于驱动的第一过滤器,该第一过滤器将骨架数据作为输入并输出与该过滤器相关联的姿势正在发生的置信度和转向角。在希望用第二驱动过滤器来替换该第一驱动过滤器的情况下(这可能是因为第二驱动过滤器更高效且需要更少的处理资源),可以通过简单地用第二过滤器替换第一过滤器来这样做,只要第二过滤器具有同样的输入和输出——骨架数据类型的一个输入、以及置信度类型和角度类型的两个输出。
过滤器不需要具有参数。例如,返回用户的高度的“用户高度”过滤器可能不允许可被调节的任何参数。备选的“用户高度”过滤器可具有可调节参数,比如在确定用户的高度时是否考虑用户的鞋、发型、头饰以及体态。
对过滤器的输入可包括诸如关于用户的关节位置的关节数据、在关节处相交的骨所形成的角度、来自场景的RGB色彩数据、以及用户的某一方面的变化速率等内容。来自过滤器的输出可包括诸如正作出给定姿势的置信度、作出姿势运动的速度、以及作出姿势运动的时间等内容。
识别器引擎454可以具有向过滤器提供功能的基本识别器引擎。在一个实施例中,识别器引擎454实现的功能包括:跟踪所识别的姿势和其他输入的随时间输入(input-over-time)存档;隐马尔可夫模型实施方式(其中所建模的系统被假定为马尔可夫过程-其中当前状态封装了用于确定将来状态的任何过去状态信息,因此不必为此目的而维护任何其他过去状态信息的过程-该过程具有未知参数,并且隐藏参数是从可观察数据来确定的);以及求解姿势识别的特定实例的其他功能。
过滤器460、462、464、……、466在识别器引擎454之上加载并实现,并且可利用识别器引擎454提供给所有过滤器460、462、464、……、466的服务。在一个实施例中,识别器引擎454接收数据来确定该数据是否满足任何过滤器460、462、464、……、466的要求。由于这些所提供的诸如解析输入之类的服务是由识别器引擎454一次性提供而非由每个过滤器460、462、464、……、466提供的,因此这样的服务在一段时间内只需被处理一次而不是在该时间段对每个过滤器处理一次,因此减少了确定姿势所需的处理。
应用452可使用识别器引擎454所提供的过滤器460、462、464、……、466,或者它可提供其自己的、插入到识别器引擎454中的过滤器。在一个实施例中,所有过滤器具有启用该插入特性的通用接口。此外,所有过滤器可利用参数,因此可使用以下单个姿势工具来诊断并调节整个过滤器系统。
关于识别器引擎454的更多信息可在2009年4月13日提交的美国专利申请12/422,661“Gesture Recognizer System Architecture(姿势识别器系统架构)”中找到,该申请的全部内容通过引用结合于此。关于识别姿势的更多信息可在2009年2月23日提交的美国专利申请12/391,150“Standard Gestures(标准姿势)”;以及2009年5月29日提交的美国专利申请12/474,655“Gesture Tool(姿势工具)”中找到,这两个申请的全部内容都通过引用结合于此。
上面参考图5和图6描述的系统允许用户通过使用姿势以用用户的手指向泡而不碰触计算机鼠标或其他计算机定点硬件来进行交互或选择警告(例如,图1B和图1C的泡22)。该用户还可使用一个或多个姿势来与图1的区域40(或其他用户界面)进行交互。
图6示出了可用于实现计算系统312的计算系统的示例性实施例。如图6所示,多媒体控制台500具有带有一级高速缓存502、二级高速缓存504和作为非易失性存储的闪存ROM(只读存储器)506的中央处理单元(CPU)501。一级高速缓存502和二级高速缓存504临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPU 501可以被配备为具有一个以上的核,并且由此具有附加的一级和二级高速缓存502和504。闪存ROM 506可存储在多媒体控制台500通电时在引导过程初始化阶段加载的可执行代码。
图形处理单元(GPU)508和视频编码器/视频编解码器(编码器/解码器)514形成用于高速和高分辨率图形处理的视频处理流水线。经由总线从图形处理单元508向视频编码器/视频编解码器514运送数据。视频处理流水线向A/V(音频/视频)端口540输出数据,用于传输至电视或其他显示器。存储器控制器510连接到GPU 508以方便处理器访问各种类型的存储器512,诸如但不局限于RAM(随机存取存储器)。
多媒体控制台500包括优选地在模块518上实现的I/O控制器520、系统管理控制器522、音频处理单元523、网络(或通信)接口524、第一USB主控制器526、第二USB控制器528和前面板I/O子部件530。USB控制器526和528用作外围控制器542(1)-542(2)、无线适配器548(通信接口的另一示例)、和外置存储器设备546(例如闪存、外置CD/DVD ROM驱动器、可移动介质等,其中任何一个可以是非易失性存储)的主机。网络接口524和/或无线适配器548提供对网络(例如,因特网、家庭网络等)的访问,并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中任何一种。
提供系统存储器543来存储在引导过程期间加载的应用数据。提供媒体驱动器544且其可包括DVD/CD驱动器、蓝光驱动器、硬盘驱动器、或其它可移动媒体驱动器等。(其中任何一个可以是非易失性存储)。媒体驱动器144可以内置或外置于多媒体控制台500。应用数据可经由媒体驱动器544访问,以由多媒体控制台500执行、回放等。媒体驱动器544经由诸如串行ATA总线或其他高速连接(例如IEEE 1394)等总线连接到I/O控制器520。
系统管理控制器522提供涉及确保多媒体控制台500的可用性的各种服务功能。音频处理单元523和音频编解码器532形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元523与音频编解码器532之间传输。音频处理流水线将数据输出到A/V端口540以供外部音频用户或具有音频能力的设备再现。
前面板I/O子部件530支持暴露在多媒体控制台100的外表面上的电源按钮550和弹出按钮552以及任何LED(发光二极管)或其他指示器的功能。系统供电模块536向多媒体控制台100的组件供电。风扇538冷却多媒体控制台500内的电路。
CPU 501、GPU 508、存储器控制器510、和多媒体控制台500内的各个其他组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。作为示例,这些架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。
当多媒体控制台500通电时,应用数据可从系统存储器543加载到存储器512和/或高速缓存502、504中并在CPU 501上执行。应用可呈现在导航到多媒体控制台500上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,媒体驱动器544中包含的应用和/或其他媒体可从媒体驱动器544启动或播放,以向多媒体控制台500提供附加功能。
多媒体控制台500可通过将该系统简单地连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台500允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口524或无线适配器548可用的宽带连接的集成,多媒体控制台500还可作为较大网络社区中的参与者来操作。附加地,多媒体控制台500可以通过无线适配器548与处理单元4通信。
当多媒体控制台500通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括存储器、CPU和GPU周期、网络带宽等等的保留。因为这些资源是在系统引导时保留的,所以所保留的资源从应用的角度而言是不存在的。具体而言,存储器保留优选地足够大,以包含启动内核、并发系统应用程序和驱动程序。CPU保留优选地为恒定,使得若所保留的CPU用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。
对于GPU保留,显示由系统应用程序生成的轻量消息(例如,弹出窗口),所述显示是通过使用GPU中断来调度代码以将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图优选地与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而消除了对改变频率并引起TV重新同步的需求。
在多媒体控制台500引导且系统资源被保留之后,执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源中执行的一组系统应用中。操作系统内核标识是系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPU 501上运行,以便为应用提供一致的系统资源视图。进行调度是为了把由在控制台上运行的游戏应用所引起的高速缓存中断最小化。
当并发系统应用需要音频时,则由于时间敏感性而将音频处理异步地调度给游戏应用。多媒体控制台应用程序管理器(如下所述)在系统应用程序活动时控制游戏应用程序的音频水平(例如,静音、衰减)。
任选的输入设备(例如,控制器542(1)和542(2))由游戏应用和系统应用共享。输入设备不是保留资源,而是在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器优选地控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维护有关焦点切换的状态信息。捕捉设备320可以通过USB控制器526或其他接口来为控制台500定义附加的输入设备。在其他实施例中,计算系统312可以使用其他硬件架构来实现。没有一种硬件架构是必需的。
在图3-6描述了用于实现与此处描述的娱乐内容的交互的各个硬件组件的同时,图7提供了用于提供交互的系统的一个实施例的软件组件中的一些的框图。播放引擎600是在客户端200上运行的软件应用,其呈现此处描述的交互式内容。在一个实施例中,播放引擎600还可播放适当的电影、电视节目等。播放引擎600将根据下面描述的过程使用各组层来提供交互。
这些层可来自不同的源。各层的一个源包括底层内容的源610。例如,如果被提供给用户的底层内容是电影,则该底层内容的源是该电影的创造者、工作室或分发者。该内容源610将提供内容本身612(例如,电影、电视节目……)和嵌入该内容中的一组一个或多个层614。如果层被流传输到播放引擎600,则所嵌入的层614可以与内容12在相同的流中。如果内容612是在DVD上,则所嵌入的层614可以与该电影或电视节目存储在相同的DVD上和/或相同的MPEG数据流中。这些层还可被与该内容(例如,电影、电视节目等)分开地流传输、传送、存储或以其他方式提供。内容源610还可提供实况或动态层16。实况层会是在实况发生(例如,体育赛事)期间创建的层。动态层是由内容源、由播放引擎或其他实体在内容呈现期间在进行中动态地创建的层。例如,在视频游戏期间,如果某个事件在视频游戏中发生,则可为该事件生成事件数据从而用户可以响应于该事件而与该系统进行交互。该事件数据可由播放引擎600基于该视频游戏中所发生的事件动态地生成。例如,如果视频游戏中的化身在问答中获胜,则可提供允许用户获得有关该问答和/或该化身的更多信息的交互式内容。
层的另一源可以是第三方。例如,图7示出了包括层1、层2、层3……的附加层618,这些层可以来自能够免费地或以一定费用(预先支付、进行中支付、订阅等)向播放引擎600提供这些层的一个或多个第三方。
此外,可以存在与播放引擎600相关联的系统层。例如,播放引擎600可包括嵌入在播放引擎600或运行播放引擎600的计算设备的操作系统中的某些系统层。一个示例与即时消息收发有关。即时消息收发引用可以是计算设备或操作系统的一部分并且可以被预先配置成具有一个或多个层从而当用户接收到即时消息时,响应于该即时消息(和/或该即时消息的内容)生成事件并且可提供交互。
图7还示出了用户简档数据622,这些用户简档数据可以是针对一个或多个用户的。每个用户可包括其自己的用户简档。用户简档可包括与用户有关的私人和人口统计信息。例如,用户简档可包括(但不限于)姓名、年龄、生日、地址、喜好、厌恶、职业、雇主、家庭成员、朋友、购买历史、体育参与历史、偏好等等。
向层过滤器630提供不同类型的层610、616、618和620。此外,向层过滤器630提供用户简档信息622。在一个实施例中,层过滤器630基于用户简档数据来过滤所接收的层。例如,如果正在观看的特定电影与20个层相关联,则层过滤器630可基于与和播放引擎600交互的用户相关联的用户简档数据来过滤这20个层从而只向播放引擎600提供12个层(或另一数目的层)。在一个实施例中,层过滤器630和播放引擎600是在客户端200上实现的。在另一实施例中,层过滤器630是在内容服务器204中或在另一实体处实现的。
内容612(例如,电影、电视节目、视频、歌曲等)和各层可在相同的流(或其他分组)中被提供到播放引擎600。替代地,这些层中的一个或多个可在与向播放引擎600提供内容612的流不同的一组一个或多个流中提供给播放引擎600。各个层可与内容612在相同时间、在内容612之前或在内容612被提供给播放引擎600之后被提供给播放引擎600。例如,一个或多个层可被本地预存储到播放引擎600。在其他实施例中,一个或多个层可被存储在伴随引擎632上,该伴随引擎632也与播放引擎600和层过滤器630进行通信,从而伴随引擎632可向播放引擎600提供这些层并从过滤器630接收层。
图8是描绘层的示例结构的框图。如可以看出的,该层包括多个事件(事件i、事件i+1、事件i+2……)的事件数据。在一个实施例中,每个事件与其自己的一组代码相关联。例如,事件i与代码j相关联,事件i+1与代码k相关联,而事件i+2与代码m相关联。每组代码还将包括一个或多个内容项目(例如,视频、图像、音频等)。例如,代码j被描绘为具有包括网页、音频内容、视频内容、图像内容、用于执行进一步交互的附加代码、游戏(例如,视频游戏)、或其他服务在内的内容项目。在一个示例实现中,每个事件标识符(参见图1A-1C)将包括到相关联的代码的一个或多个指针或其他引用,且该相关联代码将包括到该内容项目的一个或多个指针或其他引用。每组代码(例如,代码j、代码k、代码m)包括可创建图1C的区域40、图2的区域104和图2的区域106的用户界面的一个或多个软件模块,以及被执行以响应于用户选择区域40、104或106中的界面项目中的任何一个而执行功能的一个或多个模块。这些组代码可以是本领域的任何计算机语言的,包括高级编程语言和机器级编程语言。在一个示例中,这些组代码是使用Java代码编写的。
如同上面解释的,可以构想,特定程序(音频、视频、电视、电影等)可包括多个层。在一个实现中,这些层可以是分层的。图9提供了分层的一组层的示例。每个层具有对其父层的引用以使该分层结构可被播放引擎600或另一实体理解。例如,播放引擎600会标识特定分层结构中的所有的层,然后确定该分层结构中的哪一部分涉及即将被观看的特定程序。
在图9的示例中,在该分层结构的顶端处是“提供者”层本层可由制造者、工作室、生产公司、广播者或电视台创建。该层旨在与来自该提供者的每个节目一起播放。可以预期,该提供者将分发许多不同的电视系列(例如,系列1、系列2……)。该“提供者”层将被用来与该提供者的每个系列的每个节目进行交互。该分层结构还示出了许多“系列”层(例如,系列1、系列2……)。每个“系列”层是要被用于该系列中的每个节目的交互的一组事件。在“系列”下方,每个系列的每一集将具有其自己的一组一个或多个层。图9示出了剧集层(例如,剧集1层、剧集2层、剧集3层……)。在一个示例中,剧集2(使用图9的分层结构)将包括三个层。第一层是专门用于并且只用于剧集2的层。第二层是用于系列1中的所有剧集的层。要使用的第三层是用于由该特定提供者分发的每个系列的每个剧集的层。
图10提供了用于定义层的样本代码。在一个实施例中,用于定义层的代码是用XML格式提供的;但是,可使用其他格式。XML代码被流传输到或以其他方式存储在播放引擎600上或其附近。图10的代码为播放引擎600提供足够的信息来创建图1A-C和2中描绘的各个事件标识符。看图10的代码,第一行提供层ID。这是该层的全局唯一标识符。如所预期的,层可随时间演进,代码的第二行提供该层技术的版本号。第三行指示层的类型。如所讨论的,某些层可以是特定类型的层(例如,购物、信息、游戏等)。另一种层类型可以是混合层(例如,购物以及信息和游戏,等等)。第四行指示人口统计值。可将该人口统计值与和该特定程序交互的用户的用户简档的内容进行比较,以确定该层是否应当被过滤掉或过滤到该交互。在一个实施例中,用户简档的所有可能排列,或一组排列的子集,被分配标识或代码号(诸如图10中描绘的那一个)。一些层被时间同步,而其他的没有。图10的代码指示该层是否被时间同步(时间同步=“Y”)。该层还可指示该层能够在什么软件和/或硬件平台上操作。该层还将包括指示该父层在各层的分层结构中的全局或唯一ID的“父”字段。该层创建者还可使用这些字段来指定它们对该层在何处出现的偏好——所以如果在该生态系统中存在主要设备和伴随设备,则该创建者可指定他们希望该特定事件只出现在该主要屏幕上或只出现在该次要屏幕上(例如,该创建者可能想要像益智游戏这样的东西出现在除了公共屏幕外的更私人的屏幕上)。
上面讨论的图10的数据被参考作为应用于层的所有事件的头部信息。在头部信息之后,将定义一系列事件。每个事件对应于一事件标识符(如图1和图2所描绘的)。图10的代码只示出了一个具有等于“0305E82C-498A-FACD-A876239EFD34”的事件ID的事件的代码。图10的代码还指示该事件是否是可操作的。如果事件是可操作的,则将提供警告,并且如果该警告被交互,则将使用该“事件ID”来访问与该事件ID相关联的代码。在一个实施例中,与该事件相关联的警告将是具有该“描述字段”所定义的文本的文本泡(或其他形状)。事件可以是可见或不可见的,如“可见”字段所指示的。
在一个实施例中,表格将存储事件ID到代码的映射。在另一实施例中,该事件ID将是存储该代码的文件的名称。在另一实施例中,存储该代码的文件还将存储该事件ID。还可使用用于将事件ID关联到代码的其他手段。
图11A和11B提供了描述用于提供与此处描述的内容进行的过程的一个实施例的流程图。图11A和11B的步骤由播放引擎600执行或在播放引擎600的方向上执行。在一些实施例中,附加组件也可用于执行图11A和图11B的一个或多个步骤。在图11A的步骤640中,该系统将启动内容的回放。例如,用户可按需预订电视节目或电影、调谐到一频道上的节目或电影中、从网站或内容提供方请求视频或音频等等。该用户所请求的适当的内容将被访问。任何必须的许可证将被获得。任何必须的解密将被执行以使得所请求的内容将准备好回放。在步骤640的一个实施例中,客户端计算设备200将请求要被流传输的内容。
在步骤642中,该系统将搜索该内容内的层。例如,如果该内容正被流传输,则该系统将确定是否任何层在相同的流中。如果该内容在DVD上、在本地硬盘上、或在其他数据结构上,则该系统将查找以看是否存在嵌入该内容中的任何层。在步骤644中,该系统将寻找与该内容分开地存储在本地存储中的任何层。例如,该系统将查找本地硬盘驱动器、数据库、服务器等等。在步骤646中,该系统将从一个或多个内容服务器204、创作设备208、实况插入设备210、内容存储206或其他实体请求层。在步骤642-646中,该系统正使用该内容(例如,电视节目、电影、视频、歌曲等)的唯一ID来表示与该内容相关联的层。在给出内容ID的情况下,存在多种找到这些层的方法(例如,查找表等等)。如果对于该特定内容没有找到层(步骤648),则在步骤650中,在步骤640中启动的内容被回放而不带任何层。
如果该系统的确找到了与将要向用户播放的内容相关的层,则在步骤652中该系统将访问与客户端设备200交互的一个或多个用户的用户简档。通过确定什么用户已登录(例如,使用用户名和密码或其他认证手段)、通过使用上面描述的跟踪系统来基于可见特征或跟踪来自动标识用户、基于已知与某些用户相关联的伴随设备的出现的自动检测、或其他自动或手动手段,该系统可标识在与客户端设备200交互的用户。基于在步骤652中访问的用户简档,在步骤642-646中收集的所有层被过滤以标识满足该用户简档数据的那些层。例如,如果该用户简档指示该用户厌恶购物,则被标识为购物层的任何层将被从所收集的组中过滤出。如果该用户是儿童,则具有成人内容的任何层将被过滤出。如果在所述过滤之后,没有层剩下(步骤654),则在步骤640中启动的内容在步骤650中被回放而不带任何层(例如,没有交互)。如果没有找到用户简档,则将使用默认数据。注意,过滤也可以基于设备能力、一天中的时间、季节、日期、物理位置、IP地址和默认语言设置中的任何一个或组合来执行。
如果过滤的结果的确包括层(步骤654),则在步骤656中播放引擎600将枚举这些层。即,播放引擎600将在该XML代码(或其他描述)中对所有层读取。如果这些层中的任何一个是持久层(步骤658),则在步骤660中这些层将被立即实现。持久层是不被时间同步的层。因此,与该层相关联的代码被立即执行而不等待任何事件发生。对于并非持久的那些层(步骤658),则在步骤662中将那些层与该内容同步。如同上面讨论的,那些层包括时间戳。在一个实施例中,时间戳是相对于电影的开头的。因此,为了将层的事件同步到电影(或其他内容),该系统必须标识该电影的开始时间并使得所有其他时间戳相对于该开始时间。在其中该内容为非线性(例如,游戏)的情况下,可针对事件触发器而不是时间戳来同步层事件。在步骤664中,所有层被组合成数据结构(“层数据结构”)。层数据结构可以用本领域的普通技术人员已知的任何形式来实现。不要求用于该数据结构的任何特定的结构或方案。层数据结构的目的是允许播放引擎600准确地将事件标识符添加到上面描绘的时间线(或其他用户界面)上。
在步骤666中,播放引擎600将创建并渲染该时间线(例如,在图1A-C中描绘的时间线)。作为步骤666的一部分,对于在步骤664中被添加到该数据结构的每个层的每个事件,事件标识符将被添加到时间线。在一些实施例中,这些事件中的一些将不包括事件指示符。在其他实施例中,将没有时间线和/或将没有事件标识符。在步骤668中,由用户初始请求的内容的回放开始。在步骤670中,内容的一部分被呈现给用户。例如,一定数量的视频帧被提供给用户。在该部分在步骤670中被提供之后,时间线在步骤672中被更新。例如,时间线12的阴影部分14将被放大(参见图1A)。在步骤674中,该系统将确定是否存在与时间线的当前位置相关联的事件标识符。即,该系统将自动确定是否存在具有与被提供给用户的内容的当前流逝时间相对应的时间戳的事件。在一个示例实现中,基于与该层相关联的事件数据中的时间戳,为每个事件生成中断。因此,播放引擎600可自动确定事件已发生。
如果没有事件已发生,则在步骤676中确定该内容的回放是否完成。如果回放完成,则在步骤678中,结束回放。如果回放没有完成,则该过程循环回步骤670并且呈现该内容的下一部分。
如果播放引擎600的确自动确定事件发生(在步骤674中),则在步骤680中,该回放引擎将试图更新该层。有可能的是:层自从被下载到播放引擎600之后已被更新。因此,如果更新的版本存在,则播放引擎600将试图下载该更新的版本。在步骤682中,该系统将为刚刚发生的事件提供警告。例如,文本泡将被提供在电视屏幕上。在步骤684中,确定用户是否与警告交互。例如,用户可使用鼠标来点击该文本框、使用姿势来指向该文本框、说出预定义单词、或使用其他手段来指示对该警告的选择。如果用户没有与该警告交互(在步骤684中),则在步骤686中在预定时间量之后将该警告移除并且该过程循环回步骤670以呈现该内容的另一部分。
如果客户端200确定该用户的确与该警告交互(步骤684),则该客户端将使用事件ID来获得与该事件ID相关联的代码并调用该代码来对该客户端进行编程以实现该交互式内容(参见图1C的区域40、图2的区域104和/或图2的区域106)。在步骤690中调用代码以后,该过程将循环回步骤670以呈现内容的下一部分。在一个实施例中,如同上面解释的,用户所原始请求的内容将继续被播放,同时用户有能力与该代码交互。在另一实施例中,当用户与该代码交互时该内容将被暂停。在另一替代方案中,作为对主客户端计算设备200的附加或替代,该代码被用于编程伴随设备。在任一情况下,响应于接收到用户与该警告的交互,使用该代码以及与该代码相关联的任何音频/视觉内容项目来对将提供交互的计算设备进行编程。将提供交互的计算设备或者生态系统中的任何其他计算设备可受影响。例如,用户可能正在使用伴随设备来进行益智游戏但是主屏幕上显示时钟以向观众中的其他人显示该用户在必须用答案来响应之前还剩下多少时间。在此情况下,该主屏幕不是将提供该交互的计算设备(该用户接收了益智游戏并将经由他们的移动电话伴随设备玩该游戏),但是该主屏幕受该用户的交互的影响。基本上,该生态系统中的任何屏幕可受影响。
可以构想,一层将具有多个事件。每个事件将具有不同代码以及与那些事件相关联的不同组音频/视觉内容项目。在一个示例中,该系统可自动确定第一事件已发生、提供针对该第一事件的第一警告并接收针对该第一警告的用户交互。响应于接收到与该第一警告的用户交互,将使用该代码和与该第一事件相关联的音频/视觉项目来对客户端设备200(或一个或多个伴随设备)进行编程。随后,该系统将自动确定第二事件已发生并提供针对该第二事件的第二警告。响应于接收到与该第二警告的用户交互,该系统将使用该代码和与该第二事件相关联的音频/视觉内容来对客户端设备200(或伴随设备)进行编程。在许多(而不是全部)情况下,与第二事件相关联的软件和音频/视觉内容(以一种或多种方式)不同于与第一事件相关联的软件指令和音频/视觉内容项目。
在一个实施例中,该系统将显示来自叠加在时间线上的同一时间位置处的不同层的多个事件指示符。该用户将获取指示该多个事件可用的警告并且他们将能够在各事件之间切换(例如,经由图1C的区域40或伴随设备的区域104或106)。在此情况下,该系统控制那些区域中的用户界面并且不必然控制与所触发的事件相关联的代码。
图12是参考包括伴随设备的实施例,描述用于为事件调用被指向的代码的过程的一个实施例的流程图。图12的过程提供图11B的步骤690的一个实施例的更多细节。在图12的步骤730中,该系统将访问当前正在与该系统交互的用户的用户简档。在步骤732中,该系统将基于该用户简档来标识选项的子集。例如,与事件相关联的代码可包括用于实现交互式用户界面的多个选项(例如,图1C的区域40)。该系统可基于该用户简档选择一选项。例如,看图2,如果用户指示对于选购女士服装的偏好,则可提供用于选购与电影中的服装相关联的服装的界面。如果该用户简档表达了对男演员和女演员的偏好,则可提供有关所显示的女演员而不是服装的信息。在步骤734中,该系统将基于代码和用户简档来配置并渲染适当的用户界面。该用户界面将用于与客户端设备200的界面10(图1和图2)相关联的主屏幕。
在图12的步骤736中,该系统将基于该用户简档中的信息和与该事件相关联的代码来配置该伴随设备的用户界面。例如,该代码可具有针对主屏幕的不同选项和针对伴随设备的不同选项并且将使用该用户简档来为主屏幕选择所述选项之一并且为该伴随设备选择所述选项之一。在一个示例中,可能需要更加分立的用户界面可被显示在该伴随设备上。在步骤738中,客户端设备200将向伴随设备220发送指令(例如,软件)以对该伴随设备进行编程以实现该用户界面并提供此处描述的交互。即,一组按钮可被显示并且每个按钮与响应于选择该按钮(由该伴随设备或经由该伴随设备)所执行的功能相关联。该指令可被经由因特网(例如,使用服务器或服务)间接发送到该伴随设备或者经由Wi-Fi、蓝牙、红外、有线传输等直接发送到该伴随设备。
在步骤740中,该系统在该主屏幕、该伴随设备或两者上接收用户选择。在步骤742中,接收到该用户交互的所有一个或多个设备都将使用用于该事件的代码(例如,软件指令)来执行所请求的功能。注意,在一些实施例中将没有伴随设备,而在其他实施例中可能有多个伴随设备。在图12的示例过程中,该伴随设备(其可以是与客户端计算设备200分开的无线计算设备)被基于该代码和与响应于接收到上面讨论的与警告的用户交互而被自动检测的事件相关联的音频/视觉内容项目编程。
图13是描述用于在多个用户正与伴随设备交互或多个用户正与同一客户端设备200交互时调用由事件指向的一组或多组代码的过程的一个实施例的流程图。在图13的步骤760中,该系统将使用前面讨论的手段中的任何一种来自动标识当前正在并且同时在与该系统交互的一组用户。在一个实施例中,例如,上面讨论的深度相机可被用于自动检测在房间内观看或倾听节目的两个或更多个用户。在步骤762中,这两个用户的用户简档将被访问。在步骤764中,在用于该事件的代码中标识的可能选项的子集被基于该用户简档来确定(例如,作为过滤器的结果)。在一个示例中,每个用户将被分配不同的选项。在另一示例中,这两个用户可被分配相同的选项以用于与该内容进行交互。
在步骤766中,该系统将在该主屏幕(客户端设备200)上配置或渲染该用户界面。例如,可能有两个用户可同时一起做出的交互。在步骤768中,该系统将基于该第一用户的简档中的信息来配置该第一伴随设备的用户界面。在步骤770中,用于第一伴随设备的指令被从客户端设备200发送到该第一伴随设备。在步骤772中,该系统将基于该第二用户的简档中的信息来配置该第二伴随设备的定制的用户界面。在步骤774中,指令被从客户端设备200发送到该第二伴随设备来实现该第二伴随设备的定制的用户界面。被发送到该伴随设备的指令包括上面讨论的代码和音频/视觉项目。响应于该代码和音频/视觉项目,这两个伴随设备将实现各个用户界面,如在图2中例示的。
在步骤776中,该第一伴随设备的用户将对所描绘的项目中的一个做出选择。在步骤778中,响应于该第一伴随设备上的用户选择功能被在该第一伴随设备上执行。在步骤780中,该第二伴随设备的用户将对显示在该第二伴随设备上的项目中的一个做出选择。响应于该选择,功能将基于在该第二伴随设备处的用户选择而被执行。
图14提供了描述用于接收数据流的过程的一个实施例的流程图。图14的过程可作为步骤640、642和/或646的一部分被执行。在图14的步骤810中,数据流被接收。在步骤812中,确定该数据流中是否存在任何层。如果该数据流中没有层,则在步骤820该数据流的内容被存储在缓冲区中以供最终回放。如果该数据流中有层(步骤812),则在步骤814中,将这些层与该内容分离。在步骤816中,这些层被存储在上面讨论的层数据结构中。如果该内容已经在被呈现(例如,该数据流是在呈现该内容的同时接收的),则当前正被描绘的时间线在步骤818中被更新以反映所接收的新的一个或多个层。所接收的内容然后在步骤820中被存储在缓冲区中以供最终回放。
图15是描述用于在实况编程期间接收层的过程的一个实施例的流程图。实况编程的一个挑战在于:在该实况发生(live occurrence)发生之前,事件(例如,第一事件和/或第二事件)的定时是未知的。因此,该系统可在进行中接收事件信息。在一些实现中,事件的代码和音频/视频和内容项目在实况发生之前被预先存储,而在其他实例中该信息可在进行中生成和/或提供。当其被预先存储时,该层的提供者只需提供图10中描绘的数据,其占用更少的带宽并且可以被更快地传送到客户端200。
在图15的步骤850中,媒体和代码在实况编程之前被传送到该客户端设备并被存储在该客户端设备上。在步骤852中,事件在实况编程之前被创建。例如,对于足球赛,电视网络可在赛事期间为各个层创建事件数据(例如,图10的代码)并将该事件数据存储在广播者的计算机上。在步骤854,在实况节目期间操作者将识别事件发生,并且作为响应,传送适当的事件。例如,操作者所观看的足球赛期间的特定播放将具有与其相关联的事件,并且该事件将响应于操作者识别该足球赛中的该播放而被提供到客户端200。在步骤856中,在客户端设备200处实时接收该事件,并将其存储在上面讨论的事件数据结构中并用其来更新该时间线(如同上面讨论的)。在一个实施例中,该内容可向用户表现得略微延迟(比如说,几秒),因为在看到内容前需要进行一定量的处理。该时间延迟应当不很大。图15的过程可在图11A-B的过程的执行期间的任何期间执行以提供事件的实时生成。
图16提供了描述用于在视频游戏(或其他活动)期间动态创建事件的过程的一个实施例的流程图。在步骤880中,在运行游戏之前,该系统将把游戏逻辑、事件数据、媒体(音频/视觉内容项目)和用于该事件数据的代码加载到客户端设备200。在步骤882中,该游戏引擎将执行该游戏。作为步骤882的一部分,该游戏引擎将识别游戏期间的发生并动态创建适当的事件来添加到该层数据结构并适当地更新时间线。在一个实施例中,新的事件指示符可被添加到该时间线中的当前时间,以使该事件立即发生。该事件是动态的,因为该游戏引擎确定与刚发生的事件有关的数据并基于刚发生的事件来配置该事件数据。例如,如果在某个游戏中化身到达高原,则有关该高原的信息可被添加到该事件数据。用于交互的选项中的一个可以是找到有关该特定高原或该特定游戏的更多信息,或标识多少其他人已经到达了该高原等等。
在另一示例中,两个化身可在视频游戏中搏斗。如果所述化身中的一个被打败,则事件可被动态生成以提供与赢得战争的化身、为什么该化身赢得战争、输给赢得战争的相同化身的其他化身等有关的信息。替代地,一选项可以是失败的玩家购买用于教导失败的玩家成为更好的视频玩家的内容。存在许多用于提供动态生成的事件的不同选项。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。本发明的范围由所附的权利要求进行定义。

Claims (15)

1.一种用于提供与计算系统的交互的方法,包括:
使用所述计算系统访问并显示节目(640,668);
标识与所述节目相关联的事件数据(642-662),所述事件数据包括多个事件的数据,所述事件的所述数据包括对软件指令和音频/视觉内容项目的引用;
自动确定第一事件已发生(674);
为所述第一事件提供第一警告(682);
接收用户与所述第一警告的交互(684);
响应于接收到用户与所述第一警告的交互,使用与所述第一事件相关联的软件指令和音频/视觉内容项目来编程(690)所述计算系统;
自动确定第二事件已发生(674);
为所述第二事件提供第二警告(682);
接收用户与所述第二警告的交互(684);以及
响应于接收到用户与所述第二警告的交互,使用与所述第二事件相关联的软件指令和音频/视觉内容项目来编程(690)所述计算系统,与所述第二事件相关联的软件指令和音频/视觉内容项目不同于与所述第一事件相关联的软件指令和音频/视觉内容项目。
2.如权利要求1所述的方法,其特征在于:
响应于接收到用户与所述第一警告的交互使用与所述第一事件相关联的软件指令和音频/视觉内容项目来编程所述计算系统包括显示由与所述第一事件相关联的软件指令配置的选项的菜单,每个选项对应于由与所述第一事件相关联的软件指令配置的要执行的功能。
3.如权利要求1或2所述的方法,其特征在于:
与所述第一事件相关联的音频/视觉内容项目是和与所述第二事件相关联的音频/视觉内容项目不同介质的。
4.如权利要求1、2或3所述的方法,其特征在于:
所述节目描绘实况发生;以及
所述第一事件和所述第二事件的定时在所述实况发生之前是未知的。
5.如权利要求1、2、3或4所述的方法,其特征在于:
与所述节目相关联的事件数据包括所述第一事件的事件数据和所述第二事件的事件数据;
所述第一事件的事件数据包括与所述第一事件相关联的软件指令和音频/视觉内容项目;
所述第二事件的事件数据包括与所述第二事件相关联的软件指令和音频/视觉内容项目;
所述第一事件的事件数据还包括指示在所述节目期间所述第一事件何时发生的时间标识符;
所述第二事件的事件数据还包括指示在所述节目期间所述第二事件何时发生的时间标识符;以及
在启动所述节目的显示之后,在所述计算系统处接收指示在所述节目期间所述第一事件何时发生的时间标识符和指示在所述节目期间所述第二事件何时发生的时间标识符。
6.如权利要求1-5中的任一项所述的方法,其特征在于,还包括:
在显示所述节目的同时由所述计算系统动态生成所述第一事件的事件数据,所述第一事件的事件数据包括与所述第一事件相关联的软件指令和音频/视觉内容项目。
7.如权利要求1-6中的任一项所述的方法,其特征在于:
事件数据包括事件数据的组的分层结构;
标识与所述节目相关联的事件数据包括确定事件数据的组的所述分层结构的哪一部分与所述节目相关联。
8.如权利要求1-7中的任一项所述的方法,其特征在于,所述事件数据包括多组事件数据,标识与所述节目相关联的事件数据包括:
标识与所述计算系统进行交互的用户;
访问所述用户的用户简档信息;以及
基于所述用户简档信息和所述组事件数据中的信息来过滤所述多组事件数据,与所述节目相关联的所标识的事件数据是所述过滤的结果。
9.如权利要求1-8中的任一项所述的方法,其特征在于,标识与所述节目相关联的事件数据包括:
访问与所述节目在共同流中的事件数据;
在接收具有所述节目的所述共同流之前,访问存储在所述计算系统上的事件数据;以及
经由在具有所述节目的所述共同流之外的网络通信来从远程位置获取事件数据。
10.如权利要求1-9中的任一项所述的方法,其特征在于:
所述第一警告是视觉显示;
与所述第一警告的用户交互包括物理姿势;
所述计算系统包括深度相机;
响应于接收到与所述第一警告的用户交互使用与所述第一事件相关联的软件指令和音频/视觉内容项目来编程所述计算系统包括使用所述深度相机来自动识别所述姿势。
11.如权利要求1-10中的任一项所述的方法,其特征在于,还包括:
响应于接收到用户与所述第一警告的交互,基于与所述第一事件相关联的软件指令和音频/视觉内容项目来与所述计算系统分开地编程无线设备。
12.如权利要求1-11中的任一项所述的方法,其特征在于,还包括:
标识与所述计算系统进行交互的第一用户;
访问所述第一用户的用户简档信息;
标识与所述计算系统进行交互的第二用户;
访问所述第二用户的用户简档信息;
基于与所述第一事件和所述第一用户的用户简档信息相关联的软件指令来与所述计算系统分开地编程第一伴随电子设备;
基于与所述第一事件和所述第二用户的用户简档信息相关联的软件指令来与所述计算系统分开地编程第二伴随电子设备。
13.一种计算系统,包括:
存储代码(450,452,454,460-466,6000,632)的非易失性存储(543,544);
视频接口(540);
通信接口(548);以及
与所述非易失性存储、所述视频接口和所述通信接口进行通信的处理器(501);
所述代码的一部分编程所述处理器以访问内容以及与所述内容相关联并时间同步的多个事件的事件数据,所述内容是经由所述视频接口显示的,所述处理器显示指示所述内容中的时间位置的线性时间显示(12)并将标识每个事件在所述内容中的时间的事件指示符(18,20)添加到所述线性时间显示上,,所述处理器播放所述内容并更新所述线性时间显示以指示所述内容的当前时间位置,当所述内容的当前时间位置等于特定事件指示符的时间位置时,随后所述处理器提供与所述特定事件指示符相关联的特定事件的可见警告(22),如果所述处理器没有接收到对所述可见警告的响应则所述处理器移除所述可见警告而不提供与所述可见警告相关联的附加内容,如果所述处理器接收到对所述可见警告的响应则所述处理器运行由与所述特定事件指示符相关联的事件数据所标识的可见警告相关联的软件指令,运行与所述可见警告相关联的软件指令包括提供执行多个功能中的任何一个的选择。
14.如权利要求13所述的计算系统,其特征在于:
在经由所述视频接口(540)显示(316)所述内容的同时,由所述计算系统经由所述通信接口(548)接收所述内容的一部分和所述软件指令。
15.如权利要求13或14所述的系统,其特征在于:
与由同所述特定事件指示符相关联的事件数据所标识的可见警告(22)相关联的软件指令不同于与由同不同事件指示符相关联的事件数据所标识的不同警告相关联的软件指令。
CN2011104401939A 2010-12-16 2011-12-15 与娱乐内容的实时交互 Pending CN102591574A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/969,917 US20120159327A1 (en) 2010-12-16 2010-12-16 Real-time interaction with entertainment content
US12/969,917 2010-12-16

Publications (1)

Publication Number Publication Date
CN102591574A true CN102591574A (zh) 2012-07-18

Family

ID=46236133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104401939A Pending CN102591574A (zh) 2010-12-16 2011-12-15 与娱乐内容的实时交互

Country Status (5)

Country Link
US (1) US20120159327A1 (zh)
CN (1) CN102591574A (zh)
AR (1) AR084351A1 (zh)
TW (1) TW201227575A (zh)
WO (1) WO2012082442A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699296A (zh) * 2013-12-13 2014-04-02 乐视网信息技术(北京)股份有限公司 一种智能终端及剧集序号提示方法
CN104714996A (zh) * 2013-12-13 2015-06-17 国际商业机器公司 动态更新实况呈现中的内容
CN110020765A (zh) * 2018-11-05 2019-07-16 阿里巴巴集团控股有限公司 一种业务流程的切换方法和装置
CN110851130A (zh) * 2019-11-14 2020-02-28 成都西山居世游科技有限公司 一种数据处理的方法和装置

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2963524B1 (fr) * 2010-07-29 2012-09-07 Myriad France Telephone mobile comportant des moyens de mise en oeuvre d'une application de jeu lors de la restitution d'une plage sonore
US9047005B2 (en) 2011-02-03 2015-06-02 Sony Corporation Substituting touch gestures for GUI or hardware keys to control audio video play
US8990689B2 (en) * 2011-02-03 2015-03-24 Sony Corporation Training for substituting touch gestures for GUI or hardware keys to control audio video play
US20120233642A1 (en) * 2011-03-11 2012-09-13 At&T Intellectual Property I, L.P. Musical Content Associated with Video Content
US8497942B2 (en) 2011-04-07 2013-07-30 Sony Corporation User interface for audio video display device such as TV
EP2961184A1 (en) * 2011-08-15 2015-12-30 Comigo Ltd. Methods and systems for creating and managing multi participant sessions
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US8867106B1 (en) 2012-03-12 2014-10-21 Peter Lancaster Intelligent print recognition system and method
US9301016B2 (en) 2012-04-05 2016-03-29 Facebook, Inc. Sharing television and video programming through social networking
US9262413B2 (en) * 2012-06-06 2016-02-16 Google Inc. Mobile user interface for contextual browsing while playing digital content
TWI498771B (zh) * 2012-07-06 2015-09-01 Pixart Imaging Inc 可辨識手勢動作的眼鏡
US10455284B2 (en) 2012-08-31 2019-10-22 Elwha Llc Dynamic customization and monetization of audio-visual content
US20140040039A1 (en) * 2012-08-03 2014-02-06 Elwha LLC, a limited liability corporation of the State of Delaware Methods and systems for viewing dynamically customized advertising content
US9699485B2 (en) 2012-08-31 2017-07-04 Facebook, Inc. Sharing television and video programming through social networking
EP2941897B1 (en) * 2013-01-07 2019-03-13 Akamai Technologies, Inc. Connected-media end user experience using an overlay network
WO2015003206A1 (en) * 2013-07-08 2015-01-15 Ruddick John Raymond Nettleton Real estate television show format and a system for interactively participating in a television show
US10218660B2 (en) * 2013-12-17 2019-02-26 Google Llc Detecting user gestures for dismissing electronic notifications
US9665251B2 (en) 2014-02-12 2017-05-30 Google Inc. Presenting content items and performing actions with respect to content items
US10979249B1 (en) * 2014-03-02 2021-04-13 Twitter, Inc. Event-based content presentation using a social media platform
US10427055B2 (en) 2014-04-07 2019-10-01 Sony Interactive Entertainment Inc. Game video distribution device, game video distribution method, and game video distribution program
US10210885B1 (en) * 2014-05-20 2019-02-19 Amazon Technologies, Inc. Message and user profile indications in speech-based systems
US10257549B2 (en) * 2014-07-24 2019-04-09 Disney Enterprises, Inc. Enhancing TV with wireless broadcast messages
US10834480B2 (en) * 2014-08-15 2020-11-10 Xumo Llc Content enhancer
US9864778B1 (en) * 2014-09-29 2018-01-09 Amazon Technologies, Inc. System for providing events to users
KR102369985B1 (ko) * 2015-09-04 2022-03-04 삼성전자주식회사 디스플레이 장치, 디스플레이 장치의 배경음악 제공방법 및 배경음악 제공 시스템
US10498739B2 (en) 2016-01-21 2019-12-03 Comigo Ltd. System and method for sharing access rights of multiple users in a computing system
US10419558B2 (en) 2016-08-24 2019-09-17 The Directv Group, Inc. Methods and systems for provisioning a user profile on a media processor
US11134316B1 (en) * 2016-12-28 2021-09-28 Shopsee, Inc. Integrated shopping within long-form entertainment
US10848819B2 (en) 2018-09-25 2020-11-24 Rovi Guides, Inc. Systems and methods for adjusting buffer size
US11265597B2 (en) * 2018-10-23 2022-03-01 Rovi Guides, Inc. Methods and systems for predictive buffering of related content segments
US11202128B2 (en) * 2019-04-24 2021-12-14 Rovi Guides, Inc. Method and apparatus for modifying output characteristics of proximate devices
US10639548B1 (en) * 2019-08-05 2020-05-05 Mythical, Inc. Systems and methods for facilitating streaming interfaces for games
CN110958481A (zh) * 2019-12-13 2020-04-03 北京字节跳动网络技术有限公司 视频页面显示方法、装置、电子设备和计算机可读介质
US11301906B2 (en) 2020-03-03 2022-04-12 BrandActif Ltd. Method and system for digital marketing and the provision of digital content
SG10202001898SA (en) 2020-03-03 2021-01-28 Gerard Lancaster Peter Method and system for digital marketing and the provision of digital content
US11593843B2 (en) 2020-03-02 2023-02-28 BrandActif Ltd. Sponsor driven digital marketing for live television broadcast
US11854047B2 (en) 2020-03-03 2023-12-26 BrandActif Ltd. Method and system for digital marketing and the provision of digital content
US11617014B2 (en) * 2020-10-27 2023-03-28 At&T Intellectual Property I, L.P. Content-aware progress bar

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101297549A (zh) * 2005-09-06 2008-10-29 诺基亚公司 在服务指南中的预配置交互消息的增强信号传送
US20090018898A1 (en) * 2007-06-29 2009-01-15 Lawrence Genen Method or apparatus for purchasing one or more media based on a recommendation
CN101502117A (zh) * 2006-08-14 2009-08-05 阿尔卡特朗讯公司 将广告补充信息与视频节目关联的方法
US20100199228A1 (en) * 2009-01-30 2010-08-05 Microsoft Corporation Gesture Keyboarding
US20100215334A1 (en) * 2006-09-29 2010-08-26 Sony Corporation Reproducing device and method, information generation device and method, data storage medium, data structure, program storage medium, and program

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000050108A (ko) * 2000-05-16 2000-08-05 장래복 영상매체의 전자상거래에 있어서 정보제공방법과소품판매방법
US20050132420A1 (en) * 2003-12-11 2005-06-16 Quadrock Communications, Inc System and method for interaction with television content
KR100982517B1 (ko) * 2004-02-02 2010-09-16 삼성전자주식회사 이벤트 정보가 포함된 동영상 데이터가 기록된 저장 매체 및 재생 장치
US9554093B2 (en) * 2006-02-27 2017-01-24 Microsoft Technology Licensing, Llc Automatically inserting advertisements into source video content playback streams
US20080037514A1 (en) * 2006-06-27 2008-02-14 International Business Machines Corporation Method, system, and computer program product for controlling a voice over internet protocol (voip) communication session
US8813118B2 (en) * 2006-10-03 2014-08-19 Verizon Patent And Licensing Inc. Interactive content for media content access systems and methods
US9843774B2 (en) * 2007-10-17 2017-12-12 Excalibur Ip, Llc System and method for implementing an ad management system for an extensible media player
US8510661B2 (en) * 2008-02-11 2013-08-13 Goldspot Media End to end response enabling collection and use of customer viewing preferences statistics
US8499247B2 (en) * 2008-02-26 2013-07-30 Livingsocial, Inc. Ranking interactions between users on the internet
US8091033B2 (en) * 2008-04-08 2012-01-03 Cisco Technology, Inc. System for displaying search results along a timeline
US8355678B2 (en) * 2009-10-07 2013-01-15 Oto Technologies, Llc System and method for controlling communications during an E-reader session
US20110136442A1 (en) * 2009-12-09 2011-06-09 Echostar Technologies Llc Apparatus and methods for identifying a user of an entertainment device via a mobile communication device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101297549A (zh) * 2005-09-06 2008-10-29 诺基亚公司 在服务指南中的预配置交互消息的增强信号传送
CN101502117A (zh) * 2006-08-14 2009-08-05 阿尔卡特朗讯公司 将广告补充信息与视频节目关联的方法
US20100215334A1 (en) * 2006-09-29 2010-08-26 Sony Corporation Reproducing device and method, information generation device and method, data storage medium, data structure, program storage medium, and program
US20090018898A1 (en) * 2007-06-29 2009-01-15 Lawrence Genen Method or apparatus for purchasing one or more media based on a recommendation
US20100199228A1 (en) * 2009-01-30 2010-08-05 Microsoft Corporation Gesture Keyboarding

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699296A (zh) * 2013-12-13 2014-04-02 乐视网信息技术(北京)股份有限公司 一种智能终端及剧集序号提示方法
CN104714996A (zh) * 2013-12-13 2015-06-17 国际商业机器公司 动态更新实况呈现中的内容
CN104714996B (zh) * 2013-12-13 2018-08-28 国际商业机器公司 动态更新实况呈现中的内容
CN110020765A (zh) * 2018-11-05 2019-07-16 阿里巴巴集团控股有限公司 一种业务流程的切换方法和装置
CN110020765B (zh) * 2018-11-05 2023-06-30 创新先进技术有限公司 一种业务流程的切换方法和装置
CN110851130A (zh) * 2019-11-14 2020-02-28 成都西山居世游科技有限公司 一种数据处理的方法和装置
CN110851130B (zh) * 2019-11-14 2023-09-01 珠海金山数字网络科技有限公司 一种数据处理的方法和装置

Also Published As

Publication number Publication date
TW201227575A (en) 2012-07-01
WO2012082442A3 (en) 2012-08-09
US20120159327A1 (en) 2012-06-21
AR084351A1 (es) 2013-05-08
WO2012082442A2 (en) 2012-06-21

Similar Documents

Publication Publication Date Title
CN102591574A (zh) 与娱乐内容的实时交互
US11482192B2 (en) Automated object selection and placement for augmented reality
US8990842B2 (en) Presenting content and augmenting a broadcast
US11050977B2 (en) Immersive interactive remote participation in live entertainment
CN105210373B (zh) 向用户提供个性化频道指南的方法及系统
US11563998B2 (en) Video distribution system for live distributing video containing animation of character object generated based on motion of distributor user, video distribution method, and video distribution program
US9026596B2 (en) Sharing of event media streams
US10257490B2 (en) Methods and systems for creating and providing a real-time volumetric representation of a real-world event
JP2020036334A (ja) ヘッドマウントディスプレイによって提示されるパーソナル空間コンテンツの制御
CN102595212A (zh) 与多媒体内容的模拟组交互
CN102346898A (zh) 自动定制广告生成系统
CN105430455A (zh) 信息呈现方法及系统
JP2019197961A (ja) 視聴ユーザからのメッセージを含む動画を配信する動画配信システム
US20130324247A1 (en) Interactive sports applications
CN107079186B (zh) 增强的交互式电视体验
CN102243650A (zh) 基于场景图像检测生成特制的内容
US10264320B2 (en) Enabling user interactions with video segments
CN103020842A (zh) 跨电视生态系统的奖励和成就
JP2021007199A (ja) 動画配信システム、サーバ、サーバの動画配信方法、動画配信プログラム及びユーザ装置の動画配信方法
JP2013026878A (ja) 情報処理装置、情報処理方法、及びプログラム
WO2014189840A1 (en) Apparatus and method for holographic poster display
CN111277866B (zh) 一种控制vr视频播放的方法及相关装置
US20130125160A1 (en) Interactive television promotions
CN112261482B (zh) 互动视频的播放方法、装置、设备及可读存储介质
JP6498832B1 (ja) 視聴ユーザからのメッセージを含む動画を配信する動画配信システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1171538

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150730

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150730

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120718