掌桥专利:专业的专利平台
掌桥专利
首页

交互式查看系统

文献发布时间:2023-06-19 12:19:35


交互式查看系统

背景技术

一些计算系统提供协作环境,以促进两个或更多个参与者之间的通信。提供协作环境的系统可以允许参与者在通信会话中交换实时视频、实时音频和其他形式的数据。协作环境可以采用任何合适的通信会话格式,包括但不限于私人聊天会话、多用户编辑会话、小组会议、广播等。

在促进用户参与方面,某些现有系统存在许多缺点。与协作环境交互的效率低下可能不利于用户的生产力和计算资源的使用。当软件应用程序无法优化用户参与度时,如果参与者无法快速,轻松地查看协作环境并无法选择性地与渲染内容交互,则生产损失和计算资源的效率低下会加剧。例如,现场会议可能涉及显示参与者讨论主题的图像,在会议环境内的显示器上展示资料以及在白板上绘制图形。现有系统缺乏快速,轻松地与此类会议活动进行交互所必需的工具。这样的系统要求用户执行许多菜单驱动的任务以放大感兴趣的区域。例如,当参与者需要有关渲染的会议环境的一部分的更多细节时,参与者必须增加图像的缩放比例。但是,整个渲染的图像会在图像中心周围放大,并且所需的缩放区域可能在或可能不在新的放大图像内。另外,通常会失去保真度。关于这些考虑因素和其他考虑因素,提出了本文进行的公开。

发明内容

本文公开了一种改进的人机界面(“HCI”),用于与各种环境的表示进行交互,所述各种环境例如是现实环境的三维(“3D”),并且在一些实施例中,涉及视频会议会话的场景。在各个实施例中,描述了一种用于与利用视频和其他内容的通信环境进行交互的系统。这样的系统可以被称为交互式查看系统。可以结合视频会议会话来提供交互式查看系统。交互式查看系统可以促进共享通信环境,该共享通信环境促进协作和其他活动。例如,交互式查看系统可以以组控制状态呈现在每个参与者的设备上,该组控制状态提供对查看和编辑功能的组控制,并具有将控制权授予各个用户的选项。渲染的环境可以包括各种查看和编辑工具的视图,在使用工具时,每个参与者都可以查看它们。在一些实施例中,渲染的视频会议会话可以被称为舞台画布。在一个实施例中,查看系统允许用户实时地放大或缩小舞台画布视频会议体验中的细节,并操纵在何处以及如何渲染舞台画布。查看系统可以与但不限于视频、图像、3D模型、办公应用程序、捕获的环境/对象、注释、演示、共享位置、注释、表情或其他共享活动进行交互。在一些实施例中,可以在活动舞台画布上实现对用户或交互组可见的重复舞台画布层,并且将其作为独立注释、图片或其他生产力文件类型进行操作。因此,该系统允许在视频会议会话之外提供任何活动。另外,该系统可以允许任何活动被记录并且在不同时间可用。

在一些实施例中,自由浮动的变焦镜头或窗口可以在舞台画布上移动,从而允许用户放大渲染的屏幕体验的所选部分,并标记所选部分,以通过交互式查看系统进行进一步审查和操作。在一些实施例中,语音和/或手势命令可以用于控制交互式查看系统的动作。此外,缩放窗口可以被移动到所描绘的环境的任何区域。在一些实施例中,缩放窗口可以被附接到渲染环境中的特定对象,并且缩放窗口可以随着对象移动或随着渲染的视角改变而跟随该对象。在重新定位缩放窗口期间,缩放窗口内部的缩放比例可以保持恒定。另外,在重新定位缩放窗口期间,缩放窗口的尺寸可以保持不变。

在一些实施例中,缩放窗口可以被配置为提供用于与渲染的环境交互的控件。用户可以例如与在缩放窗口内渲染的图像进行交互。图像可以作为屏幕摘要或其他多媒体对象进行保存和编辑。控件还可以包括编辑渲染环境的图像源,并更改渲染环境的视角,从而允许提高的缩放窗口内图像的保真度和视角。

用于允许用户手动地与表示进行交互的现有系统要求用户执行许多菜单驱动的任务。用户可能花费大量时间搜索可用项目以查找和更改设置,调用其他应用以执行渲染应用所不具有的功能,以及查找与渲染的活动的特定部分相关的内容。这会导致大量不必要的计算资源消耗。

本文描述的示例是在协作环境的上下文中提供的,例如,私人聊天会话、多用户编辑会话、小组会议、现场广播等。出于说明的目的,可以意识到,管理协作环境的计算机涉及管理其中两个或更多个计算机共享数据的通信会话的任何类型的计算机。为了说明的目的,“事件”是通信会话的特定实例,其可以具有开始时间、结束时间和用于控制如何共享数据并将其显示给参与通信会话的用户的其他参数。

本文公开的技术可以使用户能够有效地管理渲染的视图,诸如真实世界协作环境的3-D表示。与先前的解决方案相比,这可以允许更有效地使用计算资源,例如处理器周期、存储器、网络带宽和功耗。还可以通过所公开的主题的实现方式来实现本文未具体提及的其他技术益处。

应当理解,以上简要描述并且在下文进一步详细描述的主题的各个方面可以被实现为硬件设备、计算机实现的方法、计算机控制的装置或设备、计算系统或制品,例如计算机存储介质。尽管本文描述的主题是在一个或多个计算设备上执行的程序模块的一般上下文中呈现的,但本领域技术人员将认识到,可以结合其他类型的程序模块来执行其他实现方式。通常,程序模块包括例程、程序、组件、数据结构以及执行特定任务或实现特定抽象数据类型的其他类型的结构。

本领域技术人员还将意识到,本文描述的主题的各方面可以在除本文具体描述的那些之外的其他计算机系统配置上或与其他计算机系统配置一起实践,包括多处理器系统、基于微处理器的或可编程的消费电子产品、AR、VR和MR设备、视频游戏设备、掌上电脑、智能手机、智能电视、自动驾驶汽车、智能手表、电子阅读器、平板计算设备、专用硬件设备、网络设备等。

通过阅读下面的详细描述和审阅相关附图,除了上述明确描述的特征和技术益处之外,其他特征和技术益处将变得显而易见。提供本发明内容以简化形式介绍一些概念,这些概念将在下面的详细描述中进一步描述。本发明内容既不旨在标识所要求保护的主题的关键或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

附图说明

图1是示出用于本文公开的实施例的操作环境的各方面的计算系统图。

图2示出了根据本文公开的一个实施例的示例显示器。

图3示出了根据本文公开的一个实施例的示例用户控件。

图4示出了根据本文公开的一个实施例的示例显示器。

图5示出了根据本文公开的一个实施例的具有缩放窗口的说明性显示器。

图6A示出了根据本文公开的一个实施例的具有重新定位的缩放窗口的说明性显示器;

图6B示出了根据本文公开的一个实施例的具有重新定位的缩放窗口的说明性显示器;

图7示出了根据本文公开的一个实施例的具有修改的缩放窗口的说明性显示器;

图8示出了根据本文公开的一个实施例的具有修改的缩放窗口的说明性显示器;

图9A示出了根据本文公开的一个实施例的具有选择的缩放窗口的说明性显示器;

图9B示出了根据本文公开的一个实施例的具有选择的缩放窗口的说明性显示器;

图10示出了根据本文公开的一个实施例的具有编辑窗口的说明性显示器;

图11示出了根据本文公开的一个实施例的具有编辑窗口的说明性显示器;

图12示出了根据本文公开的一个实施例的具有编辑窗口的说明性显示器;

图13示出了根据本文公开的一个实施例的具有编辑窗口的说明性显示器;

图14示出了根据本文公开的一个实施例的具有编辑窗口的说明性显示器;

图15示出了根据本文公开的一个实施例的具有改变的视图的说明性显示器;

图16示出了根据本文公开的一个实施例的具有缩放窗口的说明性显示器;

图17示出根据本文公开的一个实施例的具有缩放窗口的说明性显示器;

图18示出了根据本文公开的一个实施例的例程的各方面;

图19示出了根据本文公开的一个实施例的例程的各方面;

图20示出了根据本文公开的一个实施例的例程的各方面;

图21是示出用于本文公开的技术的说明性操作环境的各方面的计算系统图;

图22是根据在此公开的一个实施例的示出可以实现所公开的技术的各方面的设备的配置和操作的各方面的计算设备图。

具体实施方式

以下详细描述描述了一种改进的HCI,该HCI用于在环境的表示(例如,真实世界环境的3D表示形式)中查看和编辑对象。与依赖于渲染环境和渲染环境中的对象的低效交互、选择和编辑的先前解决方案相比,这可以导致更有效地利用诸如处理器周期、存储器、网络带宽和功率之类的计算资源。除了本文具体描述的那些技术优点之外的技术益处也可以通过所公开的技术的实施来实现。

联网的会议代表利用应用程序的一种流行的电子协作形式(例如,加利福尼亚州圣何塞的CISCO SYSTEMS公司提供的CISCO WEBEX,加利福尼亚州圣克拉拉的CITRIXSYSTEMS公司提供的GOTOMEETING,加利福尼亚州圣何塞的ZOOM视频通信公司提供的ZOOM,由加利福尼亚州山景城的ALPHABET公司提供的GOOGLE HANGOUTS,华盛顿州雷德蒙德的MICROSOFT CORPORATION提供的SKYPE和SKYPE FOR BUSINESS and TEAMS),以促进存在于单独的物理位置的两个或更多个参与者之间的交流。联网会议中通信会话的参与者能够交换实时视频、音频和其他类型的内容,以查看,收听和共享信息。参与者还可以查看可以交换思想的公共空间,例如白板或共享应用。可以使用视频和音频会议、即时消息传递会话或它们的任意组合来补充对公共空间的查看,以使网络会议可以充当面对面会议的近距离替代品。

可以利用各种类型的计算设备来参加网络会议,包括但不限于智能电话、平板计算设备、机顶盒、智能电视、视频游戏系统以及AR、VR和MR设备。

虽然会议参与者可以查看诸如会议空间之类的真实环境,但是与渲染环境交互的能力受到限制。因此,无论馈送的质量和保真度如何,远程参与者通常都必须接受由渲染应用提供的图像和视频馈送。此外,参与者通常必须使用脱机资源来补充他们对会议材料的访问权限,例如,请求提供所呈现的文档和文件的副本,请求会议参与者为感兴趣的项目拍照,等等。所公开的HCI解决了上面提出的技术考虑以及潜在的其他技术考虑,从而为实现所公开的技术的计算系统提供了技术益处。

在各个实施例中,公开了可以与诸如网络会议的协作活动结合使用的查看和编辑系统。这样的系统在本文中也可以被称为工具,但是不应被解释为具有与系统不同或更少的功能。在一个实施例中,查看和编辑工具包括在现场会议的表示形式上渲染的窗口或镜头。窗口或镜头可以移动到表示形式的任何部分,并且可以进一步调整尺寸和/或缩放以放大靠近窗口或镜头的区域。在一些实施例中,可基于旋转输入手势或横向滚动手势来旋转或平移缩放窗口/镜头。可以实现其他功能,以使用户能够更好地与此类功能进行交互。例如,在一些实施例中,可以改变窗口或镜头的边界的厚度或其他属性以指示缩放量。

在一些实施例中,可以捕获,保存和编辑窗口或镜头的内容。在一些实施例中,可以基于窗口内容的上下文,当前会议状态和活动以及用户的角色来确定用于进一步动作的选项。用于进一步动作的选项可以包括例如将内容发送给参与者或其他接收者。

查看和编辑工具可以包括促进用户与内容进行交互以及与渲染活动的其他参与者进行交互的功能。在实况视频流的上下文中,用户可以与视频流本身进行交互,例如与视频流的帧进行交互。另外,查看和编辑工具可以提供与视频流的所描绘内容(诸如所呈现的文档和文件)进行交互的能力。查看和编辑工具可以进一步提供与视频流中所描绘的环境的各个方面进行交互的能力,例如视频流中所描绘的设备或能够向视频流提供输入的设备。启用的用户交互可以包括更新内容,共享内容以及经由内容与其他参与者交互。

在一些实施例中,所描绘的环境(例如,会议)可以被表示为对象,该对象可以被发送给可以访问会议的用户使其与对象进行交互。例如,接收者可以能够单击该对象以加入会议或查看有关会议的详细信息。

在一些实施例中,查看和编辑工具可以促进对正在渲染的对象或其他内容以及对象或内容的源的检测。该对象可以是可由用户识别,搜索,访问,下载和编辑的文档。例如,Powerpoint演示文稿的当前渲染幻灯片可用于标识演示文稿的源文件。在另一示例中,如果渲染的对象是诸如电子白板的设备,则可以识别该设备,并且可以向用户提供选项(如果被授权),以控制或向该设备提供输入,例如向该白板输入注释。在其他实施例中,可以实例化并渲染虚拟白板,该虚拟白板可以由参与者经由查看和编辑工具来编辑。如果该设备是相机,则可以向用户提供改变相机的焦点或改变相机的其他参数的能力。查看和编辑工具可以连续地标识作为所渲染的环境的一部分的内容的原始源数据。这允许用户快速访问原始内容,而不是查看内容的图像并作为单独的任务搜索内容。因此,查看和编辑工具提供了在通信会话过程期间上下文可用于该组的内容的集中视图。

在一些实施例中,当多个视频源可用时,查看和编辑工具可以基于渲染环境内的缩放窗口的位置来确定哪个视频源可以提供最佳保真度。例如,用于主视频馈送的主要视频馈送可能不具有最高可用分辨率。当用户为缩放窗口选择位置时,可以使用更高分辨率的图像源(如果可用)来提供所选区域的更高保真度缩放。

在一些实施例中,可以将诸如会议之类的活动的捕获图像链接到时间窗口。例如,被选择用于编辑的图像可以与诸如30秒的默认时间窗口相关联。查看和编辑工具可以提供时间线工具,以遍历活动发生在其上并且可获得记录的时间范围。以这种方式,用户可以从缩放窗口的角度查看活动的各种时间,并且还可以在可用时间范围内向用户提供各种编辑选项。

在一些实施例中,由用户在编辑/查看会话期间激活的动作和特征可以被记录并且可以由用户重放。

在一些实施例中,可以基于在房间中检测到的活动来动态地更新对于查看和编辑工具可用的动作。例如,如果在渲染环境内的显示器上渲染演示文稿,则查看和编辑工具可以更新用户选项以包括可用于访问和编辑显示器和/或演示文稿源的动作。

在一些实施例中,在查看和编辑工具上可用的动作可以基于为用户分配的角色。例如,某些用户可能被分配了生产者角色,并可以被允许在网络上共享内容之前编辑内容。其他用户可能具有参与者角色或组角色,并且可能被允许控制他们自己的设置或共同控制该组的设置。

现在转向附图(在本文中可能被称为“图”或“各图”),将参考附图提供关于本文公开的改进的HCI的附加细节。这些图通过说明的方式示出了特定的配置或示例。在所有附图中,相同的附图标记表示相同或相似的元件。在附图中,附图标记的最左边的数字通常标识该附图标记首次出现的附图。对多个项目中的单个项目的引用可以使用带有括号内的另一个数字的参考编号(和/或不带括号的字母)来引用每个单个项目。对项目的通用引用可能使用不带字母序列的特定参考编号。这些图未按比例绘制。

图1示出了示例场景,该场景涉及与用于与诸如协作环境之类的渲染环境交互的工具相关联的系统100。渲染环境可以包括工作空间120,该工作空间可以是办公室、会议室、礼堂或其他配置为允许个人聚会和合作的空间。工作空间120可以包括相机111A和11IB。该环境可以包括诸如智能信标131之类的其他设备。其他输入源(图1中未示出)可以包括传感器和其他设备。在一些实施例中,计算设备121可以从相机111A,11IB和11C以及麦克风(图1中未示出)以及其他输入设备接收数据,并将收集到的数据作为输入数据107发送至协作服务器101。

协作服务器101可以处理输入数据107并将交互数据106发送到一个或多个用户设备,例如膝上型计算机102和VR显示器103。交互数据106可以包括可用于渲染可以包括工作空间120的表示的交互式显示器150的数据。交互式数据106可以包括任何图像、文档、视频数据、音频数据或可以用作用于渲染工作空间120的表示和相机111A和11IB捕获的在工作空间120中发生的活动的数据的任何其他信息。交互式数据106还可以包括其他形式的数据,例如会议请求,其可以识别多个与会者,与每个与会者相关联的头衔以及其他相关信息。交互式数据106还可以指示事件的参数,例如开始时间、结束时间和位置。例如,交互式数据106可以包括会议信息,该会议信息指示与会者列表、每个与会者的角色、日期、时间和位置。

交互式数据106可以包括传达与协作环境有关的参数或设置的查看和编辑偏好的任何信息。例如,交互式数据106可以定义特定用户已经使用的用户界面配置、音量水平、相机角度或其他参数。交互式数据106还可以包括历史信息。例如,交互式数据106可以包括会议列表、每个会议的与会者以及在每个会议中使用的UI布局。

输入数据107可以包括对计算设备121可用的硬件的描述。例如,输入数据107可以描述可供计算设备121使用的各种输入设备、传感器、灯、麦克风、声音衰减设备和其他硬件的各方面。输入数据107还可描述显示屏的规格或与系统100通信的计算机的规格。

输入数据107还可描述可用硬件的规格,例如但不限于灵敏度等级、缩放等级等。输入数据107还可描述每个设备的位置和每个设备的范围。例如,输入数据107可以描述特定相机的位置、定位和观看区域,例如,相机可以捕获特定讲台上、舞台上等的扬声器。在另一个示例中,输入数据107可以标识房间麦克风的位置以及定义麦克风范围的坐标。在该示例中,输入数据107指示两个相机111(111A-11B)的可用性。交互式显示器150可以使用设备列表来提供编辑和查看选项,如本文进一步所述。输入数据107还可以指示第一相机111A被定向为第一区域,并且第二相机11IB被定向为第二区域。

图2是示出根据本文公开的一个实施例的示例UI 201的各方面的UI图,该示例UI201使得能够与真实世界环境202的3D表示进行计算上有效的交互。UI 201可以对应于在图1的交互式显示器150上渲染的UI。如以上简要讨论的,本文公开的技术可以与提供用于举行网络会议的功能的应用程序结合使用。这样的应用所呈现的UI 201在图2-17中示出,并在下面描述。

UI 201可以包括例如由图1的计算设备102或VR设备103生成的真实环境202的渲染。以这种方式,计算设备102或VR设备103的用户可以看到真实环境202的视图以及白板210、显示器200和参与者230。还可以呈现控制接口220,其允许用于与UI 201交互。

控制接口220的更多细节在图3中示出。在一个实施例中,控制接口220可以包括具有可选择选项310的圆轮。在一个示例中,可选择选项300可以被配置为引起缩放窗口在UI201中的放置。尽管在此示例中所示的控制接口220被示出为圆轮,可以将接口实现为各种形式,例如选项的矩形列表、下拉菜单和其他形式。

用户可以利用鼠标输入、触摸输入或其他类型的输入来与UI 201交互。在图4所示的例子中,例如,用户已经将鼠标光标221移动到UI控件220上,以便启动如图5所示的缩放窗口500的放置。当用户使用鼠标按钮完成选择动作时,在UI 201上的指定位置、先前位置或默认位置处渲染缩放窗口500。在图5中,缩放窗口500被示为接近显示器200,并且缩放窗口500被示为渲染显示器200的底部的缩放细节。在一些实施例中,缩放窗口500可以包括多个选择性环或区域501、502和503,每个都可以与一个功能或动作相关联。例如,环501可以与重新定位功能相关联,环502可以与尺寸调整功能相关联,并且环503可以与附加菜单选项相关联。

在图6A所示的实施例中,用户可以轻击并拖动缩放窗口500的外环(或与该功能相关联的其他环)并移动缩放窗口500的位置。在一个实施例中,缩放窗口500内的内容的缩放比例可以在缩放窗口500被重新定位时保持不变。如图6A所示,缩放窗口500已经被重新定位在显示器200的右侧,并且缩放窗口500的内容现在正在渲染正在显示器200上渲染的当前内容的文本部分。可用的成像数据,例如可以用作图像源的相机中的成像数据,可以用于在缩放窗口500内的内容被重新定位时为其提供尽可能高的保真度。例如,如果渲染环境201通常被提供有位于渲染环境内的各个位置的多个相机源,则缩放窗口500的内容可以使用不同的相机源以在缩放窗口500的位置被改变时提供最佳的可用保真度。

在一些实施例中,用户可以在缩放窗口500内平移内容,而无需调整窗口的尺寸或改变缩放比例。在图6B所示的实施例中,用户可以通过触摸缩放窗口500内的区域并在所选方向上滑动用户的手指来输入平移手势。如图6B所示,用户已经朝着显示器200的右侧平移。在一些实施例中,用户可以在缩放窗口500内旋转内容而无需调整窗口的尺寸或改变缩放比例。在图6B所示的实施例中,用户可以通过触摸缩放窗口500内的区域以在选择的旋转方向上旋转用户的手指来输入旋转手势。可用的成像数据(例如来自可作为渲染环境的图像源的相机)可用于为缩放窗口500中的平移内容提供尽可能高的保真度。例如,如果渲染环境201通常具有尽管1K相机源但是4K相机可用,则缩放窗口500的内容可以使用4K相机源以在平移缩放窗口500的内容时提供更多的清晰度。

在一些实施例中,用户可以在缩放窗口500内改变缩放比例因子而无需调整窗口的尺寸。在图7所示的实施例中,用户可以通过在两个点700处触摸缩放窗口500并改变两个点700之间的距离以改变缩放窗口500内的缩放比例因子来输入捏合手势。在一个实施例中,当缩放窗口500内的缩放比例改变时,缩放窗口500的尺寸可以保持不变。可用的成像数据(例如来自可作为渲染环境的图像源的相机)可用于为缩放窗口500中的放大内容提供尽可能高的保真度。例如,如果渲染环境201通常具有尽管1K相机源是可用的,但是4K相机可用,则缩放窗口500的内容可以使用4K相机源以在放大缩放窗口500的内容时提供更多的清晰度。

如图8所示,两个点700之间的距离已经增加,并且缩放窗口500内的缩放比例因子已经增加,而缩放窗口500的尺寸保持不变。

在图9A所示的实施例中,用户可以通过例如在内环900处触摸缩放窗口500并改变缩放窗口500的尺寸来输入触摸手势。在一个实施例中,用户可以在触摸环900后向外或向内扩展以调整窗口的尺寸。如图9B所示,用户已经放大了缩放窗口500的尺寸。缩放窗口500因此显示了更多的缩放内容,而不改变缩放比例。在其他实施例中,用户可以使用其他输入动作来调整窗口的尺寸。例如,缩放窗口500可以具有用户可以选择并扩展以调整窗口尺寸的调整尺寸的锚定点。在一实施例中,当对缩放窗口500调整尺寸时,缩放窗口500内的内容的缩放比例可以保持不变。当缩放窗口500中的内容被调整尺寸时,诸如来自可作为图像源的相机的可用成像数据可用于为缩放窗口500中的内容提供最高可能的保真度。例如,如果渲染环境201通常被提供有位于渲染环境内的各个位置的多个相机源,则缩放窗口500的内容可以使用不同的相机源以在缩放窗口500的尺寸被改变时提供最佳的可用保真度。

还可以提供附加控件。例如,如图10所示,UI 201还可以包括UI编辑窗口1000,用于控制网络会议的各个方面,例如但不限于发起或结束网络会议,与网络会议中的其他参与者共享内容,改变捕获设备以及选择和编辑在网络会议上呈现的内容。在其他实施例中,可以在编辑窗口1000上提供其他UI控件。

同样如图10所示,编辑窗口1000还可以包括用于执行与网络会议有关的其他任务的UI控件。例如但不限于,UI编辑窗口1000可以提供以下功能:显示通知,显示用户列表和相关的聊天会话,显示可用的用户组或用户团队,显示一天或其他时间段内的会议,以及显示任何最近共享或使用的文件。在其他实施例中可以提供用于执行其他类型的功能的其他UI控件。在图10所示的例子中,UI控制窗口1000在内容箱1002内包括两个缩放细节,其中一个缩放细节显示了图3至图9B中的缩放窗口500的内容,由缩放细节1指示。在该示例中,缩放细节2描绘了参与者230的图像。在一个实施例中,用户可以用备注对捕获的图像进行注释。用户还可以将捕获的图像发送给一个或多个接收者。

如图11所示,UI 1000可以被扩展以提供用于执行与所渲染的网络会议有关的其他任务的附加UI控件。例如,如图11所示,可以扩展UI编辑窗口1000,除了内容箱1002的两个缩放细节之外,还提供了附加缩放细节1101,在该示例中,附加缩放细节1101示出了内容箱1002的缩放细节2的更大细节。在一个实施例中,用户可以将内容标记为视频或静止图像。编辑窗口1000可以提供对各种滤镜效果和其他菜单工具的访问。例如,举几个例子,编辑窗口1000可以允许用户通过选择文件类型,锐化图像,改变色彩平衡,改变亮度和向量化图像来对所选择的图像进行进一步的改变。在一个实施例中,可以向用户提供时间线1110,以从以缩放细节1101渲染的捕获内容的当前时间向前和向后移动。例如,图像可以与诸如30秒的默认时间窗口相关联。用于编辑窗口1000的时间线1110可以提供遍历活动发生并被记录的时间范围的选项。以这种方式,用户可以从缩放窗口500的角度观看活动的各种时间,并且还可以在时间范围内向用户提供各种编辑选项。在一些实施例中,时间窗口可以与智能成绩单、聊天历史和记录同步。在任何特定的时间戳记下,可以向用户提供与该时间戳记关联的其他活动。

参照图12,查看和编辑工具1000可以促进对内容源或正在渲染的对象的检测。在一个示例中,用户可以选择缩放细节1的内容。源对象可以是可由用户识别,搜索,访问和下载的文档。例如,显示器200上当前渲染的幻灯片可用于识别基础演示文稿的源文件。如源信息窗口1210中所示,示出了源文档的信息。如果用户希望编辑和操作当前渲染的图像而不是源文档,则还可以向用户提供使用屏幕上内容的选项。可以进一步向用户提供搜索附加或相关内容的选项。如图13所示,如果用户选择源文档(在该示例中为“组/会议/演示文稿.ppt”),则内容箱1002提供可用于源文档的其他选项,例如打开文档,发送文档,以及保存文档。

参照图14,查看和编辑工具1000可以促进与UI 201中描绘的设备的远程交互。在一个示例中,用户可以选择白板对象210。可以标识该设备,并且如果有权控制设备或向设备提供输入,可以向用户提供选项以执行操作,例如将注释输入白板。在一些实施例中,虚拟化的白板或白板应用可以被实例化并渲染,可以由参与者经由查看和编辑工具1000来编辑。如果设备是相机,则可以向用户提供改变相机焦距或相机的其他参数的能力。如内容箱1002窗口中所示,示出了源信息,其包括白板设备以及在白板设备上渲染的内容。在一些实施例中,还可以向用户提供编辑屏幕上白板内容的选项。如图14所示,内容箱1002提供附加选项,例如控制白板和/或编辑白板上的图像或独立于白板内当前渲染的内容编辑白板图像。

在一些实施例中,编辑工具1000可以促进另外的组和会议的形成。例如,许多参与者可以组成分组讨论会议来讨论特定主题,然后重新加入更大的小组。

参照图15,当多个视频源可用时,查看和编辑工具1000可以允许选择渲染环境的不同视角。例如,用户可能能够查看和选择用于视频馈送的相机(例如,图1的相机111A或11IB)。如果用户使用的是缩放窗口,则在更改透视图时缩放窗口可以自动且持久地定位在相同的区域。如在图15的示例中所示,用户可以选择中央相机或两个侧相机之一。另外,用户可以在其自己的计算设备上使用诸如相机之类的配套设备(companion device)作为输入成像设备。

查看和编辑工具1000可以被配置为分别选择和编辑渲染的会话的音频部分。

参考图16和17,缩放窗口500被示为位于参与者230附近。在参与者230在渲染环境内移动时,如图17所示,在一个实施例中,缩放窗口500可以随着参与者在渲染空间内移动而移动。例如,如果缩放窗口500被放置为靠近在会议期间移动的参与者,则移动窗口500可以移动。在一些实施例中,即使用户改变视角,缩放窗口500的视角也可以保持恒定。例如,在该示例中,如果用户选择导致从不同角度渲染环境的不同相机视图,则可以定位缩放窗口500以继续提供参与者230的放大视图。在一些实施例中,即使当所渲染环境的视角改变时,也可以标记环境中的焦点并且缩放窗口可以保持在当前位置。这允许用户连续地跟随被标记的活动。

本文公开的技术可以使用户能够基于用户手势与现真实世界环境的3D表示进行交互并控制其真实世界环境的3D表示。在一些实施例中,基于输入手势的定时和方向,计算设备可以确定缩放窗口500的位置和取向。例如,第一类型的用户手势可以包括对按钮的轻击,例如,按住鼠标按钮的时间少于阈值时间。第二种类型的用户手势可以包括按下和保持动作,例如,如果将鼠标按钮保持超过阈值时间段。基于检测到的手势,可以允许用户在缩放窗口500上执行不同的动作,诸如调整尺寸,重新定位和改变放大。

尽管上述示例涉及具有按钮的输入设备,例如鼠标,但是可以理解,本文公开的技术可以利用任何其他合适的输入设备。例如,本文公开的技术可以利用具有触摸屏的计算设备。在这样的实现方式中,一旦用户首先选择UI控件220以用于缩放窗口500的放置,则用户可以在触摸屏上追踪手指或笔,从而允许计算设备监视移动方向。当用户执行输入动作时,例如,用户从触摸表面抬起他或她的手指或笔或提供语音命令时,计算设备可以基于触摸屏和手指或笔之间的接触点的位置来确定位置。虚拟对象的位置可以在用户抬起他或她的手指或笔的位置,并且对象的取向可以基于输入动作之前的方向运动。

图18是示出根据本文公开的一个实施例的用于与渲染环境进行交互的例程1800的各方面的示图。本领域普通技术人员应该理解,本文公开的方法的操作不一定以任何特定顺序呈现,并且以替代顺序进行一些或全部操作是可能的并且可预期的。为了便于描述和说明,已按呈现顺序介绍了操作。在不脱离所附权利要求的范围的情况下,可以添加,省略,一起执行和/或同时执行操作。

还应该理解,所示方法可以在任何时间结束,并且不需要整体执行。如本文所定义,可以通过执行包括在计算机存储介质上的计算机可读指令来执行方法的一些或全部操作和/或基本等同的操作。如说明书和权利要求书中所使用的术语“计算机可读指令”及其变体在本文中被广泛地使用以包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。可以在各种系统配置上实现计算机可读指令,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持计算设备、基于微处理器的可编程消费电子产品、其组合等。

因此,应当理解,本文描述的逻辑操作被实现为:(1)作为在诸如本文所述的那些计算系统上运行的计算机实现的动作或程序模块的序列)和/或(2)作为计算系统内的互连机器逻辑电路或电路模块来实现。该实现是取决于计算系统的性能和其他要求的选择问题。因此,逻辑操作可以以软件、固件、专用数字逻辑及其任何组合来实现。

另外,可以与以上关于图1至图17描述的示例呈现GUI相关联地实现执行图18和其他图所示的操作。例如,本文描述的各种设备和/或模块可以生成,发送,接收和/或显示与通信会话的内容相关联的数据(例如,实时内容,记录的内容,等等)和/或呈现GUI,其包括一个或多个参与者30(例如,用户230)的图像、化身、频道、聊天会话、视频流、图像、虚拟对象和/或与通信会话相关联的应用。

参照图18,操作1801示出了在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的交互式通信会话。操作1801之后可以是操作1803。操作1803示出了接收指示要放置在环境的表示内的缩放窗口的位置的输入数据。操作1803之后可以是操作1805。操作1805响应于输入数据,示出了在表示内的位置处的UI上渲染缩放窗口,该缩放窗口具有基于一个或多个标准确定的尺寸并且具有可用于接收用户输入的多个可选区域。在一个实施例中,缩放窗口具有基于一个或多个标准确定的尺寸。操作1805之后可以是操作1807。操作1807示出了在缩放窗口内渲染接近缩放窗口的位置的表示的一部分的放大视图。在一个实施例中,缩放窗口被配置为响应于经由缩放窗口接收的指示表示的部分的改变的输入来平移放大的视图。操作1807之后可以是操作1809。操作1809示出了接收指示施加到缩放窗口的第一手势的输入数据。在一个实施例中,第一手势指示表示中的缩放窗口的新位置。操作1809之后可以是操作1811。作为响应,第一操作1811示出了响应于第一手势,在UI上将缩放窗口重新定位在新位置。在一个实施例中,在重新定位期间保持缩放窗口的尺寸。操作1811之后可以是操作1813。操作1813示出了在缩放窗口内对表示的接近缩放窗口的新位置的一部分的放大视图进行渲染。在一个实施例中,缩放窗口可移动到表示的任何渲染部分。

图19是示出根据本文公开的一个实施例的用于与渲染的环境进行交互的例程1900的各方面的图。参考图19,操作1901示出了在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的交互式通信会话。操作1901之后可以是操作1903。操作1903示出了接收指示要放置在表示内的缩放窗口的位置的输入数据。操作1903之后可以是操作1905。操作1905示出响应于输入数据,在UI上在表示内的位置处渲染缩放窗口。在一个实施例中,缩放窗口具有基于一个或多个标准确定的尺寸。操作1905之后可以是操作1907。操作1907示出了在缩放窗口内对表示的靠近缩放窗口的位置的一部分的放大视图进行渲染。操作1907之后可以是操作1909。操作1909示出了接收指示施加到缩放窗口的第一手势的输入数据。在一个实施例中,第一手势指示缩放窗口的尺寸调整。操作1909之后可以是操作1911。操作1911示出响应于第一手势,根据第一手势调整UI上的缩放窗口的尺寸,其中,随着缩放窗口被调整尺寸,缩放窗口内的放大视图的比例被保持。操作1911之后可以是操作1913。操作1913示出了接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示缩放窗口内的内容的缩放比例的改变。操作1913之后可以是操作1915。操作1915示出了响应于第二手势,更新表示的靠近UI上的缩放窗口的位置的部分的放大视图。在一个实施例中,在放大视图被更新时维持缩放窗口的尺寸。操作1915之后可以是操作1917。操作1917示出了识别在缩放窗口内渲染的内容的源文件或文档。操作1917之后可以是操作1919。操作1919示出了在交互式通信会话期间允许访问源文件或文档。操作1919之后可以是操作1921。操作1921示出了标识在表示中渲染的用于新内容的附加源文件或文档。

图20是示出根据本文公开的一个实施例的用于与渲染环境进行交互的例程2000的各方面的示图。参照图20,操作2001示出了在用户界面(UI)上对指示多个用户之间的交互式通信会话的环境的同时表示进行渲染。操作2001之后可以是操作2003。操作2003示出了接收第一输入数据,该第一输入数据指示用于放置在表示中的缩放窗口的位置。操作2003之后可以是操作2005。操作2005示出了响应于第一输入数据,在UI上在表示内的位置处渲染缩放窗口。操作2005之后可以是操作2007。操作2007示出了在缩放窗口内对表示的靠近缩放窗口的位置的一部分的放大视图进行渲染。操作2007之后可以是操作2009。操作2009示出了接收指示与缩放窗口的交互的第二输入数据。操作2009之后可以是操作2011。操作2011示出了响应于交互,在UI上呈现了编辑窗格。在一个实施例中,编辑窗格包括缩放窗口的内容的表示。另外,编辑窗格包括一个或多个可选选项,用于将动作应用于内容。操作2011之后可以是操作2013。操作2013示出了接收指示可选选项之一的选择的第三输入数据。操作2013之后可以是操作2015。操作2015示出了响应于该选择对该内容执行编辑动作。在一个实施例中,编辑窗格被配置为发送指示动作的数据。该数据可用于向交互式通信会话渲染动作的共享和同时更新的视图。

应当理解,上述主题可以被实现为计算机控制的装置、计算机过程、计算系统,或者被实现为诸如计算机可读存储介质之类的制品。示例方法的操作在单独的方框中示出并且参考那些方框进行总结。所述方法被说明为框的逻辑流,其每个框可以表示可以以硬件、软件或其组合来实现的一个或多个操作。在软件的上下文中,这些操作表示存储在一个或多个计算机可读介质上的计算机可执行指令,该指令在由一个或多个处理器执行时使一个或多个处理器能够执行所叙述的操作。

通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。描述操作的顺序并不旨在理解为限制,并且可以以任何顺序执行任意数量的所述操作,以任何顺序组合任意数量的所述操作,将任意数量的所述操作细分为多个子操作和/或与之并行执行来实施所描述的过程。可以由与一个或多个设备(例如一个或多个内部或外部CPU或GPU)和/或一个或多个硬件逻辑(例如现场可编程门阵列(“FPGA”)、数字信号处理器(“DSP”)或其他类型的加速器)相关联的资源执行所描述的过程。

以上描述的所有方法和过程可以通过由一个或多个通用计算机或处理器执行的软件代码模块来体现并完全自动化。可以将代码模块存储在任何类型的计算机可读存储介质或其他计算机存储设备中,例如以下所述的那些。这些方法中的一些或全部可以替代地体现在专用计算机硬件中,例如以下所述。

在此描述的和/或在附图中描绘的流程图中的任何常规描述、元素或框应该被理解为潜在地表示模块、代码段或代码的一部分,其包括用于实现例程中的特定逻辑功能或元素的一个或多个可执行指令。替代实现方式包括在本文描述的示例的范围内,其中,根据本领域技术人员所理解的所涉及的功能,元件或功能可以从所示或所讨论中删除或不按显示或所讨论的顺序执行,包括基本上同步或以相反的顺序执行。

图21是示出示例环境2100的示图,在示例环境2100中,系统2102可以操作以用图像108、虚拟对象216和/或其他类型的呈现内容来填充本文所公开的HCI。在一些实现方式中,系统实现的代理可以起到收集和/或分析与示例环境2100相关联的数据的作用。例如,代理可以起到收集和/或分析在与本文公开的GUI链接的通信会话2104中涉及的参与者之间交换的数据的作用。

如图所示,可以在与系统2102相关联或是系统2102的部分的多个客户端计算设备2106(1)至2106(N)之间实现通信会话2104(其中,N是具有二或更大的值的正整数)。客户端计算设备2106(1)至2106(N)使用户(也称为个人)参与通信会话2104。

在此示例中,通信会话2104由系统2102托管在一个或多个网络2108上。也就是说,系统2102可以提供使客户端计算设备2106(1)至2106(N)的用户能够参与通信会话2104(例如,通过实时观看和/或录制的观看)的服务。因此,通信会话2104的“参与者”可以包括用户和/或客户端计算设备(例如,多个用户可以在通过使用单个客户端计算设备的使用而参与通信会话的通信室中),每个其中可以与其他参与者进行交流。作为替代,通信会话2104可以由客户端计算设备2106(1)至2106(N)之一利用对等技术来托管。系统2102还可以主持聊天对话和其他团队协作功能(例如,作为应用套件的一部分)。

在一些实现方式中,这样的聊天对话和其他团队协作功能被认为是不同于通信会话2104的外部通信会话。在通信会话2104中收集参与者数据的计算机化代理能够链接到这样的外部通信会话。因此,计算机化的代理可以接收诸如日期、时间、会话详细信息等的信息,该信息使得能够连接到这种外部通信会话。在一个示例中,可以根据通信会话2104进行聊天对话。另外,系统2102可以主持通信会话2104,该通信会话2104包括至少多个共同位于会议地点例如会议房间或礼堂或位于不同的位置的参与者。

在本文描述的示例中,参与通信会话2104的客户端计算设备2106(1)至2106(N)被配置为接收并渲染以便在显示屏的用户界面上显示通信数据。通信数据可以包括实时内容和/或记录内容的各种实例或流的集合。实时内容和/或记录内容的各种实例或流的集合可以由一个或多个相机(例如摄像机)提供。例如,实况内容或记录的内容的单个流可以包括与由摄像机提供的视频馈送相关联的媒体数据(例如,捕获参与通信会话的用户的外观和语音的音频和视觉数据)。在一些实现方式中,视频馈送可包含此类音频和视觉数据、一个或多个静止图像和/或一个或多个化身。一个或多个静止图像还可以包括一个或多个化身。

单独的实况或记录内容流的另一个示例可以包括媒体数据,该媒体数据包括参与通信会话的用户的化身以及捕获用户语音的音频数据。实况或记录的内容的单个流的另一个示例可以包括媒体数据,该媒体数据包括在显示屏上显示的文件以及捕获用户语音的音频数据。因此,通信数据中的实时内容或记录内容的各种流使得能够在一群人之间促进远程会议以及在一群人中共享内容。在一些实现方式中,通信数据内的实时内容或记录内容的各种流可以源自位于诸如房间之类的空间中的多个并置的摄像机,以记录或流播包括一个或多个呈现的个人和一个或多个消费呈现内容的个人的呈现。

参与者或参加者可以在活动发生时实时查看通信会话2104的内容,或者可替代地,在活动发生后的稍后时间通过记录查看。在本文描述的示例中,参与通信会话2104的客户端计算设备2106(1)至2106(N)被配置为接收并渲染以在显示屏的用户界面上显示通信数据。通信数据可以包括实况和/或记录内容的各种实例或流的集合。例如,单个内容流可以包括与视频馈送相关联的媒体数据(例如,捕获参与通信会话的用户的外观和语音的音频和视觉数据)。单个内容流的另一个示例可以包括媒体数据,该数据包括参与会议会话的用户的化身以及捕获用户语音的音频数据。单个内容流的又一个示例可以包括媒体数据,该媒体数据包括在显示屏上显示的内容项和/或捕获用户语音的音频数据。因此,通信数据内的各种内容流使得能够在分散于远程位置的一群人之间促进会议或广播呈现。

通信会话的参与者或参加者是相机或其他图像和/或音频捕获设备范围内的人,使得在该人正在观看和/或收听经由通信会话共享的内容时产生的该人的动作和/或声音可以被捕获(例如,记录)。例如,参与者可能正坐在人群中,观看现场表演的广播位置现场直播的共享内容。或者,参与者可能坐在办公室会议室中,通过显示屏查看与其他同事的通信会话的共享内容。甚至更进一步,参与者可能坐在或站在个人设备(例如,平板电脑、智能手机、计算机等)的前面,独自在他们的办公室或在家中查看通信会话的共享内容。

系统2102包括设备2110。设备2110和/或系统2102的其他组件可以包括经由一个或多个网络2108彼此之间和/或与客户端计算设备2106(1)至2106(N)通信的分布式计算资源。在一些示例中,系统2102可以是负责管理一个或多个通信会话(例如通信会话2104)的各个方面的任务的独立系统。系统2102可以由诸如SLACK、WEBEX、GOTOMEETING、GOOGLEHangouts等实体管理。

网络2108可以包括例如公共网络(例如因特网)、私有网络(例如机构和/或个人内联网)或私有网络和公共网络的某种组合。网络2108还可以包括任何类型的有线和/或无线网络,包括但不限于局域网(“LAN”)、广域网(“WAN”)、卫星网络、电缆网络、Wi-Fi网络、WiMax网络、移动通信网络(例如3G、4G等)或其任意组合。网络2108可以利用通信协议,包括基于分组和/或基于数据报的协议,诸如互联网协议(“IP”)、传输控制协议(“TCP”)、用户数据报协议(“UDP”)或其他类型的协议。此外,网络2108还可以包括许多有助于网络通信和/或形成网络硬件基础的设备,例如交换机、路由器、网关、接入点、防火墙、基站、转发器、骨干设备等等。

在一些示例中,网络2108可以进一步包括使得能够连接到诸如无线接入点(“WAP”)的无线网络的设备。示例支持通过WAP在各种电磁频率(例如,射频频率)上发送和接收数据的WAP的连通性,包括支持电气和电子工程师协会(IEEE)802.21标准(例如802.21g、802.21h、802.21ac等等)和其他标准。

在各个示例中,设备2110可以包括一个或多个在群集或其他分组配置中操作以共享资源,平衡负载,提高性能,提供故障转移支持或冗余或用于其他目的的计算设备。例如,设备2110可以属于各种类型的设备,例如传统的服务器型设备、台式计算机型设备和/或移动型设备。因此,尽管被示为单一类型的设备或服务器类型的设备,但是设备(一个或多个)2110可以包括各种各样的设备类型,并且不限于特定类型的设备。设备2110可以代表但不限于服务器计算机、台式计算机、web服务器计算机、个人计算机、移动计算机、膝上型计算机、平板计算机或任何其他种类的计算设备。

客户端计算设备(例如,客户端计算设备2106(1)至2106(N)中的一个)可以属于多种类型的设备,它们可以与设备2110相同或不同,例如传统的客户端类型的设备、台式计算机类型的设备、移动类型的设备、专用类型的设备、嵌入式类型的设备和/或可穿戴类型的设备。因此,客户端计算设备可以包括但不限于台式计算机、游戏控制台和/或游戏设备、平板计算机、个人数据助理(“PDA”)、移动电话/平板电脑混合设备、膝上型计算机、电信设备、计算机导航类型客户端计算设备(例如基于卫星的导航系统,包括全球定位系统(“GPS”)设备)、可穿戴设备、虚拟现实(“VR”)设备、增强现实(“AR”)设备、植入式计算设备、汽车计算机、支持网络的电视、瘦客户机、终端、物联网(“IoT”)设备、工作站、媒体播放器、个人视频记录器(“PVR”)、机顶盒、相机,用于包含在计算设备、器具或任何其他种类的计算设备中的集成组件(例如,外围设备)。此外,客户端计算设备可以包括客户端计算设备的较早列出的示例的组合,例如台式计算机型设备或移动型设备与可穿戴设备等的组合。

各种类别和设备类型的客户端计算设备2106(1)至2106(N)可以表示具有例如经由总线2116可操作地连接至计算机可读介质2184的一个或多个数据处理单元2112的任何类型的计算设备,在某些情况下,总线2116可以包括系统总线、数据总线、地址总线、PCI总线、Mini-PCI总线以及任何各种本地、外围设备和/或独立总线中的一种或多种。

存储在计算机可读介质2194上的可执行指令可以包括例如操作系统2119、客户端模块2120、简档模块2122以及可由数据处理单元加载和执行的其他模块、程序或应用2192。

客户端计算设备2106(1)至2106(N)还可以包括一个或多个接口2124,以启用客户端计算设备2106(1)至2106(N)与诸如设备2110的其他联网设备之间通过网络设备2110的通信。这样的网络接口2124可以包括一个或多个网络接口控制器(NIC)或其他类型的收发器设备,以通过网络发送和接收通信和/或数据。此外,一个或多个客户端计算设备2106(1)至2106(N)可以包括输入/输出(“I/O”)接口2126,其允许与输入/输出设备(例如包括外围输入设备(例如,游戏控制器、键盘、鼠标、笔、语音输入设备(如麦克风)、用于获取和提供视频馈送和/或静止图像的摄像机、触摸输入设备、手势输入设备)和/或输出设备(包括外围输出设备(例如,显示器、打印机、音频扬声器、触觉输出设备等)进行通信。图21示出了客户端计算设备2106(1)以某种方式连接到显示设备(例如,显示屏2128(1)),该显示设备可以根据本文所述的技术来显示GUI。

在图21的示例性环境2100中,客户端计算设备2106(1)至2106(N)可以使用它们各自的客户端模块2120彼此连接和/或与其他外部设备连接,以便参与通信会话2104,或者向协作环境贡献活动。例如,第一用户可以利用客户端计算设备2106(1)来与另一客户端计算设备2106(2)的第二用户进行通信。当执行客户端模块2120时,用户可以共享数据,这可能导致客户端计算设备2106(1)通过网络2108连接到系统2102和/或其他客户端计算设备2106(2)至2106(N)。

客户端计算设备2106(1)至2106(N)可以使用它们各自的简档模块2122来生成参与者简档(图21中未示出),并将参与者简档提供给其他客户端计算设备和/或系统2102的设备2110。参与者简档可以包括用户或一组用户的身份(例如,名称、唯一标识符(“ID”)等)、用户数据(例如个人数据)、机器数据(诸如位置(例如,IP地址、建筑物中的房间等))和技术能力等中的一项或多项。参与者简档可用于注册通信会话的参与者。

如图21所示,系统2102的设备2110包括服务器模块2130和输出模块2132。在该示例中,服务器模块2130被配置为从诸如客户端计算设备2106(1)至2106(N)之类的各个客户端计算设备接收媒体流2134(1)至2134(N)。如上所述,媒体流可以包括视频馈送(例如,与用户相关联的音频和视觉数据)、将与用户的化身的呈现一起输出的音频数据(例如,其中不发送用户的视频数据的纯音频体验)、文本数据(例如,文本消息)、文件数据和/或屏幕共享数据(例如,在显示屏上显示的文档、幻灯片、图像、视频等)等等。因此,服务器模块2130被配置为在实时查看通信会话2104期间接收各种媒体流2134(1)至2134(N)的集合(该集合在本文中被称为“媒体数据2134”)。在某些情况下,并非所有参与通信会话2104的客户端计算设备都提供媒体流。例如,客户端计算设备可以仅是消费设备或“收听”设备,使得其仅接收与通信会话2104相关联的内容,而不向通信会话2104提供任何内容。

在各个示例中,服务器模块2130可以选择要与参与客户端计算设备2106(1)至2106(N)中的各个客户端计算设备共享的媒体流2134的各个方面。因此,服务器模块2130可配置为基于流2134生成会话数据2136和/或将会话数据2136传递到输出模块2132。然后,输出模块2132可以将通信数据2138传送到客户端计算设备(例如,参与通信会话实时查看的客户端计算设备2106(1)至2106(3))。通信数据2138可以包括视频、音频和/或其他内容数据,由输出模块2132基于与输出模块2132相关联的内容2150并且基于接收到的会话数据2136来提供。

如所示,输出模块2132将通信数据2138(1)发送到客户端计算设备2106(1),并且将通信数据2138(2)发送到客户端计算设备2106(2),并且发送通信数据2138(3)客户端计算设备2106(3),等等。发送到客户端计算设备的通信数据2138可以相同或不同(例如,用户界面中内容流的位置可能在一个设备与下一个设备之间有所不同)。

在各种实现方式中,设备2110和/或客户端模块2120可以包括GUI呈现模块2140。GUI呈现模块2140可以被配置为分析通信数据2138,该通信数据2138被传递给一个或多个客户端计算设备2106。具体地,在设备2110和/或客户端计算设备2106处的GUI呈现模块2140可以分析通信数据2138,以确定用于在关联客户端计算设备2106的显示屏2128上显示视频、图像和/或内容的适当方式。在一些实现方式中,GUI呈现模块2140可以向呈现在关联客户端计算设备2106的显示屏2128上的呈现GUI 2146提供视频、图像和/或内容。GUI呈现模块2140可以使呈现GUI 2146渲染在显示屏2128上。呈现GUI 2146可以包括由GUI呈现模块2140分析的视频、图像和/或内容。

在一些实现方式中,呈现GUI 2146可以包括可以渲染或包括视频、图像和/或内容的多个部分或网格,以在显示屏幕2128上显示。例如,呈现GUI 2146的第一部分可以包括呈现者或个人的视频馈送,呈现GUI 2146的第二部分可以包括消费由呈现者或个人提供的会议信息的个人的视频馈送。GUI呈现模块2140可以以适当地模仿呈现者和个人可以共享的环境体验的方式来填充呈现GUI 2146的第一部分和第二部分。

在一些实现方式中,GUI呈现模块2140可以放大或提供由视频馈送所代表的个体的缩放视图,以便突出个人对呈现者的反应,例如面部特征。在一些实现方式中,呈现GUI2146可以包括与会议(诸如,一般通信会话)相关联的多个参与者的视频馈送。在其他实现方式中,呈现GUI 2146可以与诸如聊天频道、企业团队频道等的频道相关联。因此,呈现GUI2146可以与不同于一般通信会话的外部通信会话相关联。

图22示出了示出被配置为填充本文公开的HCI的示例设备2200的示例组件的图,该HCI可以包括一个或多个可以渲染或包括视频、图像、虚拟对象116和/或内容的部分或网格,以在显示屏幕1228上显示。设备2200可以表示设备102或104之一。另外,或者替代地,设备2200可以表示客户端计算设备1106之一。

如图所示,设备2200包括一个或多个数据处理单元2202、计算机可读介质2204和通信接口2206。设备2200的组件可操作地连接,例如,通过总线,其可以包括系统总线、数据总线、地址总线、PCI总线、Mini-PCI总线以及任何各种本地、外围和/或独立总线中的一种或多种。

如本文所利用的,诸如数据处理单元2202和/或数据处理单元1182的数据处理单元可以表示例如CPU类型的数据处理单元、GPU类型的数据处理单元、现场可编程门阵列(“FPGA”)、另一类DSP或在某些情况下可能由CPU驱动的其他硬件逻辑组件。例如但不限于,可以利用的示例性类型的硬件逻辑组件包括专用集成电路(“ASIC”)、专用标准产品(“ASSP”)、片上系统(“SOC”)、复杂的可编程逻辑设备(“CPLD”)等。

如本文所利用的,诸如计算机可读介质2204和计算机可读介质1194之类的计算机可读介质可以存储可由数据处理单元执行的指令。计算机可读介质还可以存储可由外部数据处理单元(例如,由外部CPU,外部GPU)执行和/或由外部加速器(例如,FPGA类型加速器,DSP类型加速器或任何其他内部或外部加速器)执行的指令。在各种示例中,在计算设备中并入了至少一个CPU、GPU和/或加速器,而在一些示例中,CPU、GPU和/或加速器中的一个或多个在计算设备的外部。

在这里也可以称为计算机可读介质的计算机可读介质可以包括计算机存储介质和/或通信介质。计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性存储器、非易失性存储器和/或其他持久性和/或辅助计算机存储介质、可移动和不可移动计算机存储介质中的一个或多个。因此,计算机存储介质包括作为设备一部分或在设备外部的设备和/或硬件组件中包括的有形和/或物理形式的介质,包括但不限于随机存取存储器(“RAM”)、静态随机存取存储器(“SRAM”)、动态随机存取存储器(“DRAM”)、相变存储器(“PCM”)、只读存储器(“ROM”)、可擦可编程只读存储器(“EPROM”)、电可擦可编程只读存储器(“EEPROM”)、闪存、光盘只读存储器(“CD-ROM”)、数字多功能磁盘(“DVD”)、光卡或其他光存储介质、磁带盒、磁带、磁盘存储、磁卡或其他磁存储设备或介质、固态存储设备、存储阵列、网络连接存储、存储区域网络、托管计算机存储或任何其他存储内存、存储设备和/或可用于存储和维护供计算设备访问的信息的存储介质。

与计算机存储介质相反,通信介质可以在诸如载波的调制数据信号或其他传输机制中体现计算机可读指令、数据结构、程序模块或其他数据。如本文所定义,计算机存储介质不包括通信介质。即,计算机存储介质本身不包括仅由调制数据信号、载波或传播信号组成的通信介质。

通信接口2206可以代表例如网络接口控制器(“NIC”)或其他类型的收发器设备,以通过网络发送和接收通信。此外,一个或多个通信接口2206可以包括一个或多个摄像机和/或音频设备2222,以使得能够生成视频馈送和/或静止图像等等。

在所示的示例中,计算机可读介质2204包括数据存储区2208。在一些示例中,数据存储区2208包括数据存储,例如数据库、数据仓库或其他类型的结构化或非结构化数据存储。在一些示例中,数据存储区2208包括具有一个或多个表、索引、存储过程等的语料库和/或关系数据库,以使得能够进行包括例如超文本标记语言(“HTML”)表、资源描述框架(“RDF”)表、Web本体语言(“OWL”)表和/或可扩展标记语言(“XML”)表中的一个或多个的数据访问。

数据存储区2208可以存储用于存储在计算机可读介质2204中和/或由数据处理单元2202和/或加速器执行的过程、应用、组件和/或模块的操作的数据。例如,在一些示例中,数据存储区2208可以存储会话数据2210(例如,会话数据836)、简档数据2222(例如,与参与者简档相关联)和/或其他数据。会话数据2210可以包括通信会话中的参与者(例如,用户和/或客户端计算设备)的总数,在该通信会话中发生的活动,该通信会话的被邀请者列表和/或其他与何时以及如何进行或主持通信会话相关的数据。数据存储区2208还可包括内容数据2214,例如包括视频、音频或其他内容的内容850,用于在一个或多个显示屏828上渲染和显示。

可替代地,一些或全部上述参考数据可以存储在一个或多个数据处理单元2202上的单独的存储器2216上,例如CPU型处理器、GPU型处理器、FPGA型加速器、DSP型加速器和/或其他加速器上的存储器。在该示例中,计算机可读介质2204还包括操作系统2218和被配置为向其他设备公开设备2200的功能和数据的应用程序编程接口2210(API)。另外,计算机可读介质2204包括一个或多个模块,诸如服务器模块2230、输出模块2232和GUI呈现模块2240,但是所示模块的数量仅是示例,并且该数量可以更高或更低。即,本文所描述的与所示出的模块相关联的功能可以由一个设备上的较少数量的模块或较大数量的模块来执行或者分布在多个设备上。

应当理解的是,除非另外具体说明,否则在上下文中理解本文所使用的条件语言,例如“会”、“可”、“可能”或“可以”表示某些示例包括但其他示例不包括的某些功能、元素和/或步骤。因此,这种条件性语言通常不旨在暗示一个或多个示例以任何方式要求某些功能、元素和/或步骤,或者一个或多个示例必须包括用于在有或没有用户输入或提示的情况下决定,在任何特定示例中是否包括或将要执行某些特征、元素和/或步骤。除非另有明确说明,否则诸如短语“X、Y或Z中的至少一个”之类的组合语应理解为表示项目、术语等可以是X、Y或Z或它们的组合。

还应当意识到,可以对上述示例进行许多变型和修改,这些示例和示例的要素应被理解为在其他可接受的示例中。所有这些修改和变型旨在被包括在本公开的范围内,并由所附权利要求书保护。

最后,尽管已经用特定于结构特征和/或方法动作的语言描述了各种配置,但是应该理解,所附表示中定义的主题不必限于所描述的特定特征或动作。而是,将特定特征和动作公开为实现所要求保护的主题的示例形式。

示例条款

本文提出的公开内容涵盖以下示例条款中阐述的主题。

示例条款A,一种系统,包括:

一个或多个数据处理单元;以及

计算机可读介质,在其上编码有计算机可执行指令以使所述一个或多个数据处理单元执行以下操作:

在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的交互式通信会话;

接收指示要放置在环境的表示中的缩放窗口的位置的输入数据;

响应于所述输入数据,在UI上在表示内的位置处渲染所述缩放窗口,该缩放窗口具有基于一个或多个标准确定的尺寸,并且具有可用于接收用户输入的多个可选区域;

在所述缩放窗口中渲染所述表示的靠缩放窗口的位置的部分的放大视图,其中所述缩放窗口被配置为响应于经由缩放窗口接收的指示所述表示的部分的改变的输入来平移所述放大视图;

经由所述可选区域,接收指示施加到所述缩放窗口的第一手势的输入数据,所述第一手势指示该缩放窗口在表示内的新位置;

响应于所述第一手势,在UI上将所述缩放窗口重新定位在新位置,其中在重新定位期间保持所述缩放窗口的尺寸;并且

在所述缩放窗口中渲染所述表示的靠近所述缩放窗口的新位置的部分的放大视图;其中所述缩放窗口可移动到所述表示的任何渲染部分。

示例条款B,示例条款A的系统,其中,指令还使一个或多个数据处理单元:

接收指示应用于所述缩放窗口的第二手势的输入数据,该第二手势指示缩放窗口的新尺寸;

响应于所述第二手势,以新尺寸在UI上在真实环境的三维表示内的位置处渲染所述缩放窗口;以及

在所述缩放窗口内渲染三维表示的更新部分的放大视图,该更新部分靠近缩放窗口的位置,其中,更新部分是基于新尺寸确定的。

示例条款C,示例条款A至B中任一项的系统,其中,所述第二手势是调整尺寸的手势,其中两个手指输入经由触敏表面被施加到所述可选区域中的一个。

示例条款D,示例条款A至C中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示三维表示的靠近缩放窗口的位置的部分的新比例因子;以及

响应于所述第二手势,基于新比例因子来更新缩放窗口内的放大。

示例条款E,示例条款A至D中任一项的系统,其中,第二手势是在所述缩放窗口内施加至触敏件的捏合手势。

示例条款F,示例条款A至E中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元修改所述缩放窗口的边界以指示所述新比例因子。

示例条款G,示例条款A至F中任一项的系统,其中,指示第一手势的所述输入数据是语音命令。

示例条款H,示例条款A至G中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示三维表示的靠近缩放窗口的位置的部分的旋转;以及

响应于所述第二手势,基于旋转来更新所述缩放窗口内的渲染内容。

示例条款I,示例条款A至H中任一项的系统,其中,所述缩放窗口的尺寸基于应用于所述表示的第一点和第二点之间的距离。

示例条款J,一种用于与渲染的环境进行交互的方法,该方法包括:

在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的通信会话;

接收指示要放置在所述表示中的缩放窗口的位置的输入数据;

响应于所述输入数据,在UI上在表示内的位置处渲染缩放窗口,该缩放窗口具有可用于接收用户输入的多个可选区域;

在所述缩放窗口内对表示的靠近缩放窗口的位置的部分的放大视图进行渲染;

接收指示施加到缩放窗口的第一手势的输入数据,该第一手势指示在所述表示内的缩放窗口的新位置;

响应于第一手势,在UI上将缩放窗口重新定位在新位置,其中在重新定位期间保持缩放窗口的尺寸;以及

在所述缩放窗口内,渲染所述表示的靠近所述缩放窗口的新位置的部分的放大视图;其中所述缩放窗口能移动到所述表示的任何渲染部分。

示例条款K,示例条款J的方法还包括:

接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示缩放窗口的新尺寸;

响应于第二手势,以新的尺寸在UI上在所述表示中的位置处渲染缩放窗口;以及

在缩放窗口内渲染所述表示的更新部分的放大视图,该更新部分靠近缩放窗口的位置,其中,所述更新部分是基于新尺寸确定的。

示例条款L,示例条款I至示例K中的任一项的方法,其中,第二手势是调整尺寸手势,其中具有两个手指输入被施加到缩放窗口的边缘处的触敏表面。

示例条款M,示例条款I至L中任一项的方法,还包括:

接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示所述表示的靠近所述缩放窗口的位置的部分的新比例因子;以及

响应于所述第二手势,基于所述新比例因子来更新所述缩放窗口内的放大率。

示例条款N,示例条款I至M中的任一项的方法,其中,第二手势是在缩放窗口内施加于触敏件的捏合手势。

示例条款O,示例条款I至N中任一项的方法,还包括修改所述缩放窗口的边界以指示所述新比例因子。

示例条款P,示例条款I至O中任一项的方法,还包括:接收指示施加到所述缩放窗口的第二手势的输入数据,所述第二手势指示所述表示的靠近所述缩放窗口的位置的部分的平移;以及

响应于所述第二手势,基于所述平移来更新所述缩放窗口内的渲染内容。

示例条款Q,一种系统,包括:

用于在用户界面(UI)上渲染环境的表示的单元,该环境指示多个用户之间的通信会话;

用于接收输入数据的单元,该输入数据指示要放置在三个表示中的缩放窗口的位置;

用于在所述UI上在所述表示内的位置处渲染所述缩放窗口的单元,所述缩放窗口具有基于一个或多个标准确定的尺寸,所述缩放窗口具有可用于接收用户输入的多个可选区域;以及

用于在所述缩放窗口内渲染所述表示的靠近缩放窗口位置的部分的放大视图的单元;

用于接收指示施加到缩放窗口的第一手势的输入数据的单元,该第一手势指示所述表示中的缩放窗口的新位置;

用于响应于所述第一手势,在所述UI上将所述缩放窗口重新定位在所述新位置处的单元,其中,在重新定位期间保持所述缩放窗口的尺寸;以及

用于在所述缩放窗口内对所述表示的靠近所述缩放窗口的所述新位置的部分的放大视图进行渲染的单元;其中,所述缩放窗口能移动到所述表示的任何渲染部分。

示例条款R,示例条款Q的系统,还包括:

用于接收指示施加到缩放窗口的第二手势的输入数据的单元,该第二手势指示缩放窗口的新尺寸;

响应第二手势,以新尺寸在UI上在真实环境的三维表示内的位置上渲染缩放窗口的单元;以及

用于在缩放窗口内渲染三维表示的更新部分的放大视图的单元,该更新部分靠近缩放窗口的位置,其中该更新部分是基于新尺寸来确定的。

示例条款S,示例条款Q至R中任一项的系统,其中,指示第一手势的输入数据是语音命令。

示例条款T,示例条款Q至S中任一项的系统,其中,缩放窗口的尺寸基于应用于该表示的第一点和第二点之间的距离。

本文提出的公开内容涵盖以下示例条款中阐述的主题。

示例性条款AA,一种系统,包括:

一个或多个数据处理单元;以及

一种计算机可读介质,在其上编码有计算机可执行指令,以使一个或多个数据处理单元执行以下操作:

在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的交互式通信会话;

接收指示要放置在表示中的缩放窗口位置的输入数据;

响应于输入数据,在UI上在表示内的位置处渲染缩放窗口;

在缩放窗口中对表示的靠近缩放窗口位置的部分的放大视图进行渲染;

接收指示施加到缩放窗口的第一手势的输入数据,该第一手势指示缩放窗口的调整尺寸;

响应于该第一手势,根据第一手势对UI上的缩放窗口调整尺寸,其中,随着缩放窗口的尺寸调整,缩放窗口内的放大视图的比例得以保持;

接收输入指示施加到缩放窗口的第二手势的数据,该第二手势指示缩放窗口内的内容的缩放比例的变化;

响应于第二手势,根据第二手势更新在UI上在表示的靠近缩放窗口位置的部分的放大视图,其中,随着放大视图的更新,缩放窗口的尺寸得以保持;

识别源文件或文档以获取缩放窗口中渲染的内容;

允许在交互式通信会话期间访问源文件或文档;以及

识别其他源文件或文档以获取表示中渲染的新内容。

示例条款BB,示例条款AA的系统,其中,指令还使一个或多个数据处理单元:

接收指示施加到缩放窗口的第三手势的输入数据,第三手势指示表示内的用于缩放窗口的新位置;

响应于第三手势,在UI上将缩放窗口重新定位在新位置,其中在重新定位期间保持缩放窗口的尺寸;

在缩放窗口内,对表示的更新部分的更新的放大视图,该更新部分靠近缩放窗口的新位置进行渲染。

示例条款CC:示例条款AA至BB中的任一项的系统,其中,第一手势是调整尺寸手势,其中两个手指输入被施加到缩放窗口的边缘处的触敏表面。

示例条款DD,示例条款AA至CC中的任一项的系统,其中,第二手势是在缩放窗口内施加到触敏件上的捏合手势。

示例条款EE,示例条款AA至DD中的任一项的系统,其中,指令还使一个或多个数据处理单元修改缩放窗口的边界以指示改变的缩放比例。

示例条款FF,示例条款AA至EE中任一项的系统,其中,表示形式是协作工作环境的视频馈送。

示例条款GG,示例条款AA至FF中的任一项的系统,其中,指令还使一个或多个数据处理单元:

接收指示施加到缩放窗口的第三手势的输入数据,第三手势指示表示的靠近缩放窗口位置的部分的滚动;以及

响应于第三手势,基于滚动来更新缩放窗口内的渲染内容。

示例条款HH,示例条款AA至GG中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

自动重新定位缩放窗口,以在参与者移动时保持接近参与者的新位置。

示例条款II,示例条款AA至HH中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

接收指示所述表示的视角变化的输入数据;并且

响应于视角的变化,自动重新定位缩放窗口,以保持表示的部分的视图。

示例条款JJ,一种用于与渲染环境交互的方法,该方法包括:

在用户界面(UI)上渲染指示多个用户之间的交互通信会话的表示;

接收指示放置在表示中的缩放窗口的位置的输入数据;

响应于输入数据,将缩放窗口呈现在UI上在表示内的位置上,缩放窗口的尺寸基于一个或多个标准确定;

在缩放窗口中对表示的靠近缩放窗口位置的部分的放大视图进行渲染;

接收指示施加到缩放窗口的第一手势的输入数据,该第一手势指示缩放窗口的尺寸调整;

响应于第一手势,根据第一手势在UI上调整缩放窗口的尺寸,其中当对缩放窗口重调整尺寸时,缩放窗口内的放大视图的比例得以保持;

接收指示施加到缩放窗口的第二手势的输入数据,该第二手势指示缩放窗口内的内容的缩放比例的改变;

响应于第二手势,根据第二手势,更新UI上在表示的靠近缩放窗口的位置的部分的放大视图,其中,在放大视图更新时,缩放窗口的尺寸得以保持;

识别源文件或文档以获取缩放窗口内渲染的内容;

允许在交互式通信会话期间访问源文件或文档;并且

识别其他源文件或文档以获取表示中渲染的新内容。

示例条款KK,示例条款JJ的方法还包括:

接收指示施加到缩放窗口的第三手势的输入数据,该第三手势指示表示中的缩放窗口的新位置;

响应于第三手势,在UI上将缩放窗口重新定位在新位置,其中在重新定位期间保持缩放窗口的尺寸;以及

在缩放窗口内,对表示的更新部分的更新的放大视图进行渲染,该更新部分靠近缩放窗口的新位置。

示例条款LL,示例条款II至KK中任一项的方法,其中,第一手势是调整尺寸手势,其中两个手指输入被施加到缩放窗口的边缘处的触敏表面。

示例条款MM,示例条款II到LL中的任一项的方法,其中,第二手势是在缩放窗口内施加到触敏件的捏合手势。

示例条款NN,根据示例条款II到MM中的任一项所述的方法,其中,所述表示是协作工作环境的视频馈送。

示例条款OO,示例条款II到NN中任一项的方法,还包括:

接收指示施加到缩放窗口的第三手势的输入数据,该第三手势指示表示的靠近缩放窗口的位置的部分的滚动;以及

响应于第三手势,基于滚动来更新缩放窗口内的渲染内容。

示例条款PP,一种系统,包括:

用于在用户界面(UI)上呈现真实世界环境的表示的单元;

用于接收指示要放置在表示内的缩放窗口的位置的输入数据的单元;

用于响应于输入数据,在UI上的表示中的位置处渲染缩放窗口的单元,该缩放窗口的尺寸基于一个或多个标准确定;

用于在缩放窗口中对表示的靠近缩放窗口位置的部分的放大视图进行渲染的单元;

用于接收指示施加到缩放窗口的第一手势的输入数据的单元,该第一手势指示缩放窗口的尺寸调整;

用于响应第一手势,根据第一手势对UI上的缩放窗口调整尺寸的单元,其中在缩放窗口调整尺寸时保持缩放窗口内的放大视图的比例;

用于接收指示施加到缩放窗口的第二手势的输入数据的单元,该第二手势指示缩放窗口内内容的缩放比例的变化;

用于响应于该第二手势,根据第二手势更新UI上的表示的靠近缩放窗口的位置的部分的放大视图的单元,其中,随着更新放大视图,保持缩放窗口的尺寸;

用于识别源文件或文档以获取缩放窗口内渲染的内容的单元;

用于在交互式通信会话期间允许访问源文件或文档的单元;

用于识别其他源文件或文档以获取表示中渲染的新内容的单元。

示例条款QQ,示例条款PP的系统,还包括:

用于接收指示施加到缩放窗口的第三手势的输入数据的单元,该第三手势指示表示中的缩放窗口的新位置;

用于响应于第三手势而在UI上将缩放窗口重新定位在新位置的单元,其中在重新定位期间保持缩放窗口的尺寸;以及

用于在缩放窗口内对表示的更新部分的更新的放大视图进行渲染的单元,该更新部分靠近缩放窗口的新位置。

示例条款RR,示例条款PP到QQ中的任一个的系统,还包括用于修改缩放窗口的边框以指示改变的缩放比例的单元。

示例条款SS,示例条款PP至RR中任一项的系统,其中,表示的靠近缩放窗口的位置的部分包括参与者,还包括:

用于自动重新定位缩放窗口以当参与者移动时保持靠近参与者的新位置的单元。

示例条款TT,示例条款PP至SS中任一项的系统,还包括:

用于接收指示表示的视角变化的输入数据的单元;以及

用于响应于视角的改变而自动重新定位缩放窗口以保持三维表示的该部分的视图的单元。

本文提出的公开内容涵盖以下示例条款中阐述的主题。

示例性条款AAA,一种系统,包括:

一个或多个数据处理单元;以及

计算机可读介质,在其上编码有计算机可执行指令,以使一个或多个数据处理单元:

在用户界面(UI)上渲染环境的同期表示,该环境指示多个用户之间的交互式通信会话;

接收指示要放置在表示中的缩放窗口的位置的第一输入数据;

响应于第一输入数据,在UI上在表示内的位置处渲染缩放窗口;

在缩放窗口内对表示的靠近缩放窗口的位置的部分的放大视图进行渲染;

接收指示与缩放窗口的交互的第二输入数据;

响应于交互,在UI上渲染编辑窗格,其中,编辑窗格包括:

缩放窗口的内容的表示;以及

用于施加到内容的动作的一个或多个可选选项;以及

接收指示可选选项之一的选择的第三输入数据;

响应于选择,对内容执行编辑动作;

其中,编辑窗格被配置为发送指示动作的数据,该数据可用于向交互通信会话渲染动作的共享的并且同期更新的视图。

示例条款BBB,示例条款AAA的系统,其中,基于缩放窗口的内容的上下文来确定可选选项。

示例条款CCC,示例条款AAA至BBB中任一项的系统,其中,可选选项包括存储缩放窗口的内容。

示例条款DDD,示例条款AAA至CCC中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

识别源文件以获取所述内容,其中,所述可选选项包括访问所述源文件。

示例条款EEE,示例条款AAA至DDD中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

识别渲染设备以获取所述内容,其中,所述可选选项包括输入一个或多个命令到渲染设备以更新渲染的内容。

示例条款FFF,示例条款AAA至EEE中任一项的系统,其中,所述指令还使所述一个或多个数据处理单元:

识别真实世界环境中可用的图像捕获设备;以及

基于缩放窗口的内容,改变当前的图像捕获设备,以提供三维表示的图像,以提高渲染内容的图像质量。

示例条款GGG,示例条款AAA至FFF中任一项的系统,其中,可选选项包括将内容或源文件发送给选定的接收者。

示例条款HHH,示例条款AAA至GGG中任一项的系统,其中,可选选项包括将内容或源文件发送给选定的接收者。

示例条款III,示例条款AAA至HHH中的任何一项的系统,其中,编辑窗格包括时间线,该时间线可导航至从环境捕获的事件的时间点。

示例条款JJJ,示例条款AAA至III中的任一项,其中,可选选项包括将代表真实世界环境的对象发送给所选用户,其中,该对象可用于加入环境中的当前的协作会话。

示例条款KKK,一种用于与渲染的环境交互的方法,该方法包括:

在用户界面(UI)上渲染环境的表示,该环境指示多个用户之间的交互通信会话;

接收指示要放置在所述表示内的缩放窗口的位置的第一输入数据;

响应于第一输入数据,在UI上在表示内的位置处渲染缩放窗口;

在缩放窗口内对表示的靠近缩放窗口的位置的表示的部分的放大视图进行渲染;

接收指示与缩放窗口交互的第二输入数据;

响应于交互,在UI上渲染编辑窗格,其中,编辑窗格包括:

缩放窗口的内容的表示;以及

要施加到内容的动作的一个或多个可选选项;

接收用于指示对所述可选选项中的一个的选择的第三输入数据;以及

响应于选择,对内容执行编辑动作;

其中,编辑窗格被配置为发送指示动作的数据,该数据可用于向交互通信会话的用户呈现动作的共享的和同期更新的视图。

示例条款LLL,示例条款KKK的方法,其中,基于缩放窗口的内容的上下文来确定可选选项。

示例条款MMM,示例条款KKK至LLL中的任一项的方法,其中,可选选项包括存储缩放窗口的内容。

示例条款NNN,示例条款KKK到MMM中的任何一项所述的方法,还包括:

识别源文件以获取内容,其中,可选选项包括访问源文件。

示例条款OOO,示例条款KKK到NNN中任一项的方法,还包括:

识别渲染设备以获取内容,其中可选选项包括向渲染设备输入一个或多个命令以更新渲染的内容。

示例条款PPP,一种系统,包括:

用于在用户界面(UI)上呈现真实环境的表示的单元;

用于接收指示要放置在真实环境的三维表示中的缩放窗口的位置的第一输入数据的单元;

用于响应于该第一输入数据而在UI上在真实世界环境的表示内的位置处渲染缩放窗口的单元;

用于在缩放窗口内对表示的靠近缩放窗口位置的部分的放大视图进行渲染的单元;

用于接收指示与缩放窗口的交互的第二输入数据的单元;

用于响应于交互而在UI上渲染编辑窗格的单元,其中,编辑窗格包括:

缩放窗口的内容的表示;以及

要施加到内容的动作的一个或多个可选选项;以及

接收指示可选选项中的一个的选择的第三输入数据;以及

响应于选择,对内容执行编辑动作;以及

用于发送指示动作的数据的单元,该数据可用于渲染动作的共享且同期更新的视图。

示例条款QQQ,示例条款PPP的系统,其中,基于编辑窗格的用户的角色来确定编辑窗格的内容和允许动作的许可。

示例条款RRR,示例条款PPP到QQQ中的任一个的系统,还包括:

用于识别真实世界环境中可用的图像捕获设备的单元;以及

用于基于缩放窗口的内容来改变用于为三维表示提供图像以改善渲染内容的图像质量的当前图像捕获设备的单元。

示例条款SSS,示例条款PPP至RRR中的任何一项,其中,可选选项包括将内容或源文件发送给选定的接收者。

示例条款TTT,示例条款PPP至SSS中的任一项,其中,基于编辑窗格的用户的角色来确定编辑窗格的内容和允许动作的许可。

在许多其他技术益处中,与依赖于在3D环境中无效地手动放置虚拟对象的先前解决方案相比,本文的技术能够更有效地利用诸如处理器周期、存储器、网络带宽和功率之类的计算资源。还可以通过所公开的主题的实现方式来实现本文未具体提及的其他技术益处。

尽管已经以特定于结构特征和/或方法动作的语言描述了技术,但是应当理解,所附权利要求书不一定限于所描述的特征或动作。而是,将特征和动作描述为这种技术的示例实现方式。

相关技术
  • 交互式查看和编辑系统
  • 客户端侧代码的中间表示的交互式查看器
技术分类

06120113250419