用于分布式媒体的交互式和实时可视化的系统和方法与流程

文档序号:14033792阅读:141来源:国知局
用于分布式媒体的交互式和实时可视化的系统和方法与流程

相关申请

本申请要求于2015年4月24日提交的美国专利申请序列no.14/695,796的优先权,其内容通过引用整体并入本文。



背景技术:
/待解决的问题

存在用于控制显示器上多个媒体源的外观和相对位置/比例(布局)的各种技术。例如,视频墙定标器和切换器允许用户将控制命令注入到影响单个共享显示器上的视频源的呈现的视频路由系统中。视频墙控制命令必要地修改主显示器的共享外观–即,如果媒体源在该显示器上被缩放得更大–则该缩放针对那单个共享显示器的所有观看器。另一方面,一些系统支持与共享观看不同的个别控制。例如,一些视频电话会议软件系统允许各个用户在没有共享观看的情况下在其自己的界面中缩放文档或web相机视图的视频流。

因此,这些现有技术没有解决既包括提供各种媒体流的同步观看的主机显示系统又包括在每个连接的源计算机上的相同系统的各个(但同步)观看的分布式可视化系统的需要。所需要的是一种机制,其允许用户控制共享显示器表面,并且以支持组协作和单独观看每个共享媒体源的方式同时观看连接的设备上的共享显示器,而不修改主共享显示器屏幕。

考虑这种情况,例如,当四个源计算机,每个连接到同时共享媒体源的共享显示器。假设共享显示器是1920x1080分辨率的屏幕。如果每台计算机正在共享单个1920x1080分辨率的媒体流,并且所有四个源均在共享显示器上被显示,那么任何单独源分辨率最多是(1920/2)x(1080/2)=960x540。虽然这对于不同的,通常差别的媒体源的比较性观看是有用的,但是信息必然地丢失。此外,在每个单独的计算机上显示共享显示媒体的复制的系统可能进一步降低每个显示的媒体源的分辨率,使得它在受约束的用户界面内适用。

方案/

技术实现要素:

公开了一种系统和方法,其允许多个用户在一组计算机处使用连接到公共显示系统的各种设备协作地可视化一组媒体源。该系统支持从一个或多个源计算机同时流传输的多个媒体源,并将这些源布置在公共显示器上用于同时可视化。同时,每个源计算机经由用户界面被呈现,呈现共享显示器上的媒体流的当前布置和布局。

本系统和方法引入了允许协作会话中的每个参与者交互地选择和观看特定源媒体的高分辨率视频的技术。由于先前的媒体流传输系统通常支持媒体源从源计算机到共享显示器的单向流传输,但是不支持共享显示器在源计算机上的同时可视化,因此需要该方法。即使在共享显示器的图形表示在源计算机上被描绘的情况下,也必须按比例缩放以匹配源计算机显示器分辨率的约束以及潜在的用户界面的限制。

附图说明

图1是图示本系统的示例性部件的图;

图2是示出在本系统的示例性实施例中执行的一组示例性步骤的流程图;

图3-5图示了其中当四个用户连接到本系统并协作时的示例,其中多个源媒体文件被共享;

图6示出了其中媒体源直接从源计算机传送到目的计算机的示例性实施例;以及

图7示出了其中元数据在客户端计算机之间传送以指示是否正在检查特定源的示例性实施例。

具体实施方式

本系统和方法在其中多个源计算机连接到特定协作会话的环境中操作,来自至少一个源计算机的一个或多个媒体源被显示在中央共享显示器上并且还显示在至少一个源计算机上。该系统允许在特定源计算机上以独立于共享显示器上的当前比例的分辨率来观看媒体源。这个功能提供了共享显示器表面的协作可视化,同时支持各个用户以期望的比例观看单个媒体源。

图1示出了本系统100的示例性部件,其包括主机显示系统102和经由诸如互联网的网络130与系统102通信的一个或多个客户端显示设备106(*)[其中“*”是指示任意设备的通配符]。如图1所示,在示例性实施例中,主机系统102包括主机控制器(数字处理器)104、关联的数据存储器110、共享显示器103和服务器115。耦合到服务器115的主机控制器104执行主机软件105以提供本文描述的媒体缩放功能。数据存储器110用于存储数据,包括源映射101和用于存储用户元数据信息的配置文件121。在一些情况下,用户可以一起观看用于共享观看的单个主机计算机共享显示器103。

每个源(或“客户端”)计算机106可以是具有数字处理器104和显示器108的任何类型的计算机控制设备,诸如台式或膝上型计算机、平板电脑或智能电话等。驻留在每个源计算机106中的存储器111中的客户端软件应用107执行任务,包括提供用于处理和格式化从系统102接收到的信息的用户界面116,以及将控制信息发送到系统,如下面详细描述的。

图2是示出在本系统的示例性实施例中执行的一组示例性步骤的流程图。如图2所示,响应于在步骤203处来自一个或多个源计算机106的请求,主机系统102建立与(一个或多个)请求计算机的会话连接。在示例性实施例的这个步骤中,每个源计算机通过发送元数据来请求发起新的媒体源流,该元数据指示包括流的信息,包括原始分辨率、类型(静止图像或视频流)以及潜在的其它数据,诸如指示视频流如何被编码的数据。系统102可以拒绝新的流(例如,如果超过了可允许的流的最大数量);否则,主机系统在步骤205处确认请求。作为响应,在步骤210处,源计算机106中的一个或多个向主机系统102发送具有初始(原始)分辨率的各自的媒体源流。

在步骤215处,主机系统102通过向每个连接的源计算机发送源映射101向每个连接的源计算机106通知关于当前可从其它连接的源计算机106获得的媒体源流。源映射101可以包括图形表示(即,共享显示状态的图像)、媒体源名称和所有者的列表、或表示共享显示器103的状态的其它信息。

在一个实施例中,在步骤215中,主机系统102以多个“缩略图”的形式向每个连接的源计算机发送源映射101,这些“缩略图”是可用源媒体流的缩放/定位表示。缩略图是描绘源映射的图形方式,其中所有权可以通过与图标对应的缩略图的边界颜色,或者通过在缩略图上显示名称等来显示。在另一个实施例中,源映射101包括不一定以几何形式布置或描绘为缩略图的媒体源列表,例如,具有所有权信息的文本名称列表等。当用户经由源计算机连接到主机系统并且保持连接时,这个源映射传输在不需要用户输入的情况下发生。为了以更高的分辨率观看源媒体流的一个,用户从源映射101中指示为可用的那些源媒体流中“选择”,如下面详细解释的。

源映射101允许用户经由连接到主机显示系统102的每个源计算机106上的用户界面116选择特定媒体源109。例如,在一个实施例中,源映射是用户界面116上的每个可用媒体源的图形表示。例如,当四个媒体源已经被共享给主机显示系统时,这些源的每一个以与每个源媒体的各自的原始分辨率相比相对较低的分辨率和较低的帧速率以缩略图显示在连接的源计算机上。

在步骤217处,系统102以允许在单个显示屏幕上观看每个流的第二分辨率在共享显示器103上显示来自连接的源计算机的媒体流,并且在步骤220处,系统102同样以第二分辨率将流传输媒体从每个连接的用户发送到每个连接的源计算机106。

在步骤225处,为了选择要观看的特定媒体源,在一个实施例中,源计算机106处的用户通过使用界面116在源映射101中与感兴趣的媒体源对应的缩略图上右点击来选择源映射101中的媒体源。在这个实施例中,出现菜单并且用户选择“分离并缩放”选项。在示例性实施例中,源映射101可以包括文件名称的列表、简短描述和媒体源的所有者,在这种情况下,主机系统102不一定初始地将实际媒体流发送到所有连接的用户。该信息初始地被发送到每个用户来代替媒体流本身。在这样的实施例中,源映射101仅包括数据。如下所述,用户可以使用该数据来选择媒体源,并且然后开始接收所选择的媒体源流。注意的是,当以这种方式观看媒体源时,它可能不是原来的源视频流。例如,所观看的媒体可能是比原始媒体源流更低帧速率的一组静止图像(以原始分辨率)。

在步骤225中,在选择媒体源109(*)之后,源计算机106(*)的用户经由用户界面116输入包括重新缩放信息的显示参数,并且源计算机向主机系统102发送包括所选择的媒体源和重新缩放信息的控制命令。

在步骤230处,响应于接收到控制命令,主机系统102然后以第三分辨率向选择的源计算机106(*)传送对应重新缩放的源媒体流。重新缩放的媒体流不受当前在共享显示器上的媒体流(其可以是静止图像)的比例和外观的约束,而是由所选择的媒体源的所选择的显示参数确定。即,新传送的(重新缩放的)源媒体流可以是与共享显示器103上显示的对应媒体流不同的分辨率,并且不受任何连接的源计算机106上的显示外观变化的影响。然后选择的源计算机以第三分辨率显示接收到的源媒体流。

图3-5图示了其中当四个用户连接到本系统并协作时的示例,其中多个源媒体文件被共享。如图3的示例所示,假定三个源计算机106(1)、106(2)、106(3)连接到主机显示系统102。连接到主机显示系统的源计算机可以可选地将媒体流发布到共享显示器。还假定源计算机106(1)将具有分辨率为1080p的两个不同的媒体流(1920x1080的流140(a)和1200x720的流140(b))流传输到共享显示器103。在本示例中,第二源计算机106(2)流传输1024x768媒体流140(c),并且源计算机106(3)流传输1920x1080分辨率媒体流140(d)。

如图2所示,在步骤217处,主机显示系统102缩放和定位传入媒体流以适合共享显示器表面,潜在地将每个源重新缩放为第二分辨率。

如果全部四个媒体源被同时显示,那么每个源被正常重新缩放以适合共享显示器表面上的2x2布置,如在图4的示例中所看到的,其中已经被共享的这组媒体流同时显示在共享显示器103上,并且也显示在每个连接的源计算机106的客户端显示器108上,如图4中的源计算机106(1)的客户端显示器108(1)上所示。这时,每个输入媒体流已在x方向和y方向两者上被重新缩放。这种分辨率重新映射取决于共享显示器本身的分辨率。

分辨率映射可以被定义为:

其中sw和sh是显示器上共享媒体流的分辨率。客户端媒体流原始分辨率为(w,h),共享显示分辨率为(dw,dh),并且布置比例因子为(aw,ah)。布置比例因子考虑由于其它源及其相对尺寸而将源媒体帧重新映射到共享显示器所需的比例变换。在我们的示例中,其中在共享显示器上布置了四个源的情况下,对于源140(d)的分辨率重新映射是:

或960,540

该分辨率是动态的,并且随着源被添加/去除或者控制命令相对于共享显示器上的其它当前发布的流重新缩放流时,该分辨率基于当前的布置因子而改变。它也取决于任何给定媒体源的输入分辨率。

在示例性实施例中,连接到共享显示器的源计算机或能够直接观察共享显示器的用户在媒体源经历初始缩放变换之前初始地不能访问该媒体源。这种访问是通过使用由客户端软件107在客户端显示器108上呈现的用户界面116选择所请求的媒体源以请求来自源计算机106之一的媒体源140(d)来完成的。

例如,如果控制源计算机106(1)的用户想要以比共享显示器103上当前可能(或现有)更高的分辨率观察源140(d)的媒体流,则该用户可以经由用户的源计算机106(1)上的用户界面116指示该需求。

图5绘出了其中主机系统102接收请求并且开始向源计算机106(2)发送重新缩放的媒体流140(dr3)以及其它媒体源的情况。图5图示了图5示例中的初始媒体流d的3个不同水平的分辨率–初始源分辨率[流140(dr1)]、共享显示(默认)分辨率[流140(dr2)]以及重新缩放的分辨率[流140(dr3)]的同时传输。

图6示出了其中媒体源直接从源计算机106传送到目的计算机106而不是从主机计算机系统102本身传送的示例性实施例。这是其中客户端计算机106的用户想要“检查”正在从另一个客户端计算机流传输的媒体源109的情况。这里,主机计算机系统102充当中介,并且媒体不是从主机系统流传输,而是主机系统请求客户端计算机(它是“要被检查的”媒体流的源)将流发送到做出请求的客户端计算机。

如图6所示,在步骤603处,客户端计算机106请求要被检查的特定媒体源109。在步骤605处,主机系统102接收检查媒体源的请求,并向最初传送所请求的媒体流的客户端计算机(该流的所有者或“拥有客户端计算机”)传送对应的请求以将流发送到请求客户端计算机。响应于该请求,在步骤610处,拥有客户端计算机开始将媒体源传送到请求客户端计算机,如箭头611所指示的。可替代地,在步骤610处,拥有客户端计算机将所请求的媒体源传送到主机计算机系统和请求客户端计算机两者,如箭头611和612所指示的。

图7示出了其中在客户端计算机之间传送元数据以指示是否正在检查特定源以及要检查多长时间的示例性实施例。在这个实施例中,用户可以观看指示正在检查特定媒体元素的人数的信息以及可能相关的其它统计信息。

作为示例,考虑已经从其膝上型计算机(源客户端计算机)共享幻灯片演示稿和电子表格的教授。房间里的学生可以连接到主机计算机,并经由其自己的用户界面看到在其自己的源映射中被适当缩放的两个媒体源。初始地,源映射中的那些图像是低分辨率并且被缩放到适合学生的设备–其可能不允许他们例如阅读特定幻灯片中的文本。

学生可以随时从源映射中选择媒体源并以高分辨率、缩放到填充其整个显示器或者允许它们平移/放大到该特定源的原始分辨率附近来看它。

假设,在本示例中,教授已经显示了若干张幻灯片,然后暂停,以继续讨论电子表格中的信息。学生仍然可以使用本文描述的方法观看幻灯片源。所需要的是一种机制,其允许看到班级里是否有些人由于他们仍然正在其自己的设备上研究幻灯片源并且当前没有看电子表格而“落后于”讨论。本系统通过提供可以在教授的客户端计算机用户界面上指示的“参与”度量来解决他的问题。

如图7所示,在步骤703处,客户端计算机106请求特定的源用于“抽出(tear-out)”,主机系统102在数据存储器110中存储指示客户端计算机的请求的元数据121,其中包括用户的名称和唯一id、请求的时间以及请求了哪个媒体源流140(n)。这种元数据信息被称为观看事件。“抽出”是为了更详细地观看而从源映射101选择并因此“抽出”特定媒体源的过程。

在步骤705处,响应于客户端计算机的请求,主机系统102基于该请求向请求客户端计算机106传送适当地重新缩放的(可能以原始分辨率)媒体源流140(n),如以上关于图1-5所描述的。

在步骤710处,当用户不再以重新缩放的分辨率来观看所传送的媒体源(经由客户端计算机用户界面116)时,指示这种情况的元数据121从客户端计算机被传送到主机系统102,指示重新缩放的高分辨率观看不再在用户的客户端计算机上发生。这种情况也是一种观看事件,它与先前当同一客户端计算机开始显示重新缩放的媒体源时发生的观看事件相关。

在步骤715处,通过将各种观看事件组合成存储在数据存储器110中的累积的统计信息122,接收到的元数据信息被主机计算机102变换成观看统计。作为示例,观看统计可以包括:

当前正在观看“抽出”的媒体源的用户的数量;

当前正在观看抽出的媒体源的所有用户的名称;

正在以抽出模式观看任何源与只观看完整的媒体映射图的班级的百分比;

用户已经在抽出模式下观看源的总时间,以及

已经观看源超过特定时间量的用户的数量。

最后,在步骤720处,通过将观看统计传送到一个或多个客户端计算机,并且在步骤725处,使用对应的(一个或多个)用户界面116以某种方式显示那些统计,使得观看统计对客户端计算机或共享显示器或两者是可用的。

例如,如果存在感到困惑并在幻灯片媒体源上“卡住”超过5分钟的学生,则主持人的用户界面可以通过在与该学生对应的图标上绘制指示“困惑”的指示符来描绘该事件。

在一个实施例中,主机系统102监视每个连接的计算机的“观看事件”的开始/停止时间。在系统操作期间,主机系统收集每个连接的用户的数据,包括用户名称、该用户的唯一id、开始观看时间、结束观看时间和媒体id。累积的事件数据然后被变换成指示多少/哪些观看者当前正在观看媒体的信息。然后,这种信息用于指示由于用户正在私下观看所选择的媒体流一个而不再看共享屏幕的用户的百分比。

特征的组合:

(a1)在用于提供媒体的控制和可视化的方法中,所述方法可以包括:从源计算机接收具有初始分辨率的第一媒体源流;重新缩放第一媒体源流以生成具有第二分辨率的第二媒体源流;将第二媒体源流传送到目的计算机;接收来自目的计算机的指示对第二媒体源流的选择的指令和用于所选择的流的重新缩放信息;根据接收到的重新缩放信息重新缩放第二媒体源流以生成具有第三分辨率的第三媒体源流;以及将第三媒体源流传送到目的计算机。

(a2)在以上表示为(a1)的方法中,所述方法可以包括在目的计算机上显示第三媒体源流。

(a3)在以上表示为(a1)或(a2)的任一方法中,所述方法可以包括向目的计算机传送表示共享显示器的状态的源映射。

(a4)在以上表示为(a3)的方法中,所述方法可以包括根据源映射在目的计算机上显示第二媒体源流。

(a5)在以上表示为(a3)或(a4)的任一方法中,源映射可以包括描绘在共享显示器上显示的媒体源流的相对布置的图形表示。

(a6)在以上表示为(a3)至(a5)的任何方法中,源映射可以包括对共享显示器上的每个媒体源的相对尺寸和位置进行编码的图形表示。

(a7)在以上表示为(a1)至(a6)的任何方法中,可以在共享显示器上显示重新缩放后的第一媒体源流。

(a8)在以上表示为(a1)至(a7)的任何方法中,第一媒体源流可以结合一个或多个其它媒体源流显示在共享显示器上。

(a9)在以上表示为(a1)至(a8)的任何方法中,媒体源可以直接从源计算机传送到目的计算机。

(b1)在用于提供媒体的控制和可视化的方法中,所述方法可以包括:从请求客户端计算机接收对源自拥有客户端计算机的媒体源流进行检查的请求;向拥有客户端计算机传送将媒体源流发送到请求客户端计算机的请求;以及响应于接收到发送媒体源流的请求,将媒体源从拥有客户端计算机传送到请求客户端计算机。

(b2)在以上表示为(b1)的方法中,媒体源流可以被传送到请求客户端计算机和执行所要求步骤的主机计算机两者。

(c1)在用于指示特定媒体源是否正在被包括源计算机和目的计算机的多个互连计算机中的一个检查的方法中,所述方法可以包括:从源计算机接收媒体源流;从目的计算机接收指示对媒体源流的选择的指令;通过存储从源计算机发送的指示用户名称、请求的时间和所请求的媒体源的标记的元数据来捕获第一观看事件;将第一媒体源流传送到目的计算机;当一个计算机的用户不再显示所传送的媒体源流时,通过存储从目的计算机接收到的指示媒体源流的显示不再发生的元数据来捕获第二观看事件;通过分析观看事件信息将第一观看事件和第二观看事件的元数据变换成观看统计;以及将观看统计发送到互连计算机的一个。

(c2)在以上表示为(c1)的方法中,所述方法可以包括监视每个互连计算机的每个所述观看事件的开始/停止时间。

(c3)在以上表示为(c1)或(c2)的任一方法中,所述方法可以包括从每个互连计算机收集数据,所述数据包括由计算机的一个选择的每个所述媒体源流的开始观看时间、结束观看时间和媒体id。

(c4)在以上表示为(c3)的方法中,所述方法可以包括将收集到的事件数据变换成指示哪些用户当前正在观看第一媒体源流的观看信息。

(c5)在以上表示为(c4)的方法中,所述方法可以包括使用观看信息来指示正在观看任何所选择的媒体流的用户的百分比。

(c6)在以上表示为(c1)至(c5)的任何方法中,观看统计可以被发送到互连计算机的至少一个以及发送到共享显示器。

(c7)在以上表示为(c1)至(c6)的任何方法中,所述观看统计可以包括当前观看所选择的媒体源流的用户的数量。

(c8)在以上表示为(c1)至(c7)的任何方法中,所述观看统计可以包括当前观看所选择的媒体源流的所有用户的名称。

(c9)在以上表示为(c1)至(c8)的任何方法中,所述观看统计可以包括观看所选择的媒体源流的互连计算机的百分比。

(c10)在以上表示为(c1)至(c9)的任何方法中,所述观看统计可以包括用户已经观看所选择的媒体源的总时间。

(c11)在以上表示为(c1)至(c10)的任何方法中,所述观看统计可以包括已经观看所选择的媒体源流超过预定时间量的用户的数量。

(c12)在以上表示为(c1)至(c11)的任何方法中,从每个互连计算机收集到的数据可以包括用户名称、对应用户的唯一id。

本发明的某些实施例的以上描述不旨在是穷尽的或将本发明限制到所公开的精确形式。权利要求中使用的术语不应该被解释为将本发明限制为说明书中所公开的具体实施例,而是本发明的范围由以下权利要求确定。

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