媒体内容投票、排序以及播放系统的制作方法

文档序号:6497037阅读:224来源:国知局
媒体内容投票、排序以及播放系统的制作方法
【专利摘要】公开了媒体内容投票、排序以及播放系统。所公开的方法、系统以及设备,包括编码在计算机可读介质上的计算机程序,用于接收与多个媒体项目相关联的多个元数据。每一个元数据都包括媒体项目的评分以及资源定位符。基于多个元数据,使媒体项目标识符排队,基于评分来排序队列。检索最高排序的未播放媒体项目的一部分以及向内容播放设备提供该部分。接收对于未播放媒体项目的投票指示。未播放媒体项目的评分是基于接收的投票指示的更新的项目。基于未播放媒体项目的更新的评分,在队列中重新排序未播放媒体项目。检索重新排序的队列中最高排序的未播放媒体项目的一部分以及向内容播放设备提供该部分。
【专利说明】媒体内容投票、排序以及播放系统
[0001]对相关申请的交叉引用
[0002]本申请要求2011年9月26日提交的并且在2012年6月19日作为美国专利N0.8,204, 890颁发的美国专利申请N0.13/245,544的优先权。本申请还要求在2012年6月I日作为美国专利申请N0.13/245, 544的继续申请提交的美国专利申请N0.13/486,913的优先权。此处引用了美国专利申请N0.13/245,544和美国专利申请N0.13/486,913的全部内容作为参考。

【背景技术】
[0003]用户可以访问媒体内容并将媒体内容存储在多个不同设备和/或服务中。一组用户可以使用这些不同设备和/或服务共同地访问他们的内容。可以创建以特定顺序包括媒体内容中的某些或全部的播放列表。可以使用这些播放列表来以特定顺序播放所包括的媒体内容。


【发明内容】

[0004]一般而言,在本说明书中所描述的主题的一个方面能够在用于接收多个元数据的方法中实现。多个元数据包括与多个媒体项目相关联的信息。多个元数据中的每一个元数据都与媒体项目相关联,并包括评分、媒体项目的资源定位符、相关联的用户以及标题。媒体项目标识符基于多个元数据置于队列中。队列部分地基于多个元数据的评分来排序。部分地基于第一资源定位符,检索第一媒体项目的至少一部分。第一媒体项目对应于队列中最高排序的未播放媒体项目标识符。未播放媒体项目标识符对应于以前在队列的迭代过程中没有检索过的媒体项目。第一媒体项目的一部分被提供到一个或多个内容播放设备。从一个或多个用户设备接收对于未播放媒体项目的一个或多个投票指示。未播放媒体项目的评分是部分地基于接收的一个或多个投票指示的更新的项目。基于未播放媒体项目的更新的评分,在队列中重新排序未播放媒体项目。部分地基于第二资源定位符,接收第二媒体项目的至少一部分。第二媒体项目对应于重新排序的队列中最高排序的未播放媒体项目标识符。将所述第二媒体项目的一部分提供到所述一个或多个内容播放设备。此方面的其他实施方式包括被配置成执行方法的操作的对应的系统、设备以及计算机可读介质。

【专利附图】

【附图说明】
[0005]在附图和下面的描述中阐述了在本说明书中所描述的主题的一个或多个实现的详细信息。通过描述和附图以及权利要求,主题的其他特征、方面和优点将变得显而易见。
[0006]图1A示出了根据说明性实施方式的社交点播机在其中播放媒体内容的示例环境的框图。
[0007]图1B示出了根据说明性实施方式的社交点播机在其中播放媒体内容的示例环境的框图。
[0008]图2A-2C示出了根据说明性实施方式的社交点播机的用户界面。
[0009]图3是根据说明性实施方式的基于接收投票指示来重新排序媒体项目标识符的队列的过程的流程图。
[0010]图4是根据说明性实施方式的计算机系统的框图。
[0011 ] 各种附图中的相同的附图标记以及名称表示相同的元件。

【具体实施方式】
[0012]社交点播机可使用户对将由内容播放设备播放的诸如视频或音频文件之类的媒体项目排队并投票。接收与媒体项目相关联的元数据,并基于元数据,使媒体项目排队用于播放。与媒体项目相关联的元数据能够包括内容的标题、资源定位符、相关联的用户以及评分。然而,元数据不一定包括媒体项目本身。通过将媒体项目标识符放在队列中,使媒体项目排队供播放。因此,媒体项目能够基于接收的元数据来排队。媒体项目标识符能够包括对元数据或实际元数据的引用。当内容播放设备正在播放排队的媒体项目时,用户能够基于提交对排队的媒体项目的投票和/或向队列中提交新媒体项目,来修改队列。用户可以向队列中提交任何类型的能够被用户访问的媒体,包括但不限于,音频文件、视频文件等等。媒体项目能够是内容播放设备本地的,与用户相关联的一个或多个设备本地的,或者可以位于远程设备中。内容播放设备从队列中选择并播放最高排序的未播放媒体项目。
[0013]图1A和IB示出了根据说明性实施方式的社交点播机在其中播放媒体内容的示例环境的框图。内容播放设备102接收与媒体项目相关联的元数据。诸如本地设备104或远程设备114之类的用户设备能够向内容播放设备102提供与媒体项目相关联的元数据。元数据基于元数据内包含的资源定位符,与媒体项目相关联。内容播放设备102能够使用资源定位符来定位并检索媒体项目。
[0014]内容播放设备102基于接收的元数据的评分,使从一个或多个本地设备104接收的元数据排队。例如,队列能够显示与媒体项目相关联的接收的元数据的标题,能够基于元数据的评分,排序队列。本地设备104能够包括,但不仅限于,手机、个人数字助理、平板计算设备、个人计算机、个人存储设备、家庭媒体服务器等等。数据使用已知局域网技术,在内容播放设备102和一个或多个本地设备104之间传输。本地设备能够使用局域网来将元数据提交到内容播放设备102。另外,内容播放设备102还能够从一个或多个远程设备114接收元数据,该一个或多个远程设备114能够是备份服务器、云计算机、流式媒体服务,或其他媒体服务或服务器计算机。一个或多个远程设备114能够使用已知广域网技术,发送和从内容播放设备102接收数据。例如,能够使用诸如因特网之类的广域网110,传输和接收数据。如在本领域内已知的,内容播放设备102和设备104和114之间的这样的数据通信可以使用已知安全协议来加密。
[0015]除提交与要由内容播放设备102播放的媒体项目相关联的元数据之外,设备104和114可以提交并且内容播放设备102能够接收对于排队的元数据的投票。内容播放设备102能够包括用于接收投票的其自己的用户输入设备(例如,按钮、方向钮、键盘、触摸屏等等)。投票能够是竖起大拇指或大拇指朝下的指示,或者能够是与媒体项目相关联的数值,例如,零到五星的排序。投票标志改变相关联的媒体项目的评分。例如,赞成票可以提高媒体项目的评分,反对票可以降低媒体项目的评分。在一种实现中,赞成票指示和反对票指示将评分增大和缩小预定数目,诸如I。在另一种实现中,评分是接收的排序的平均。基于相关联的媒体项目的评分,排序队列内的媒体项目标识符。能够以升序或者降序来排序媒体项目标识符。
[0016]与媒体项目相关联的元数据可以包括内容的标题、资源定位符、相关联的用户以及评分。资源定位符标识将由内容播放设备102检索和播放的媒体项目的位置。在一种实现中,资源定位符是指向媒体项目的统一资源定位符(URL)。URL可以引用本地设备104中的一个、远程设备114中的一个、内容播放设备、远程内容播放设备112、远程服务器等等。元数据还能够包括能够被用来访问媒体项目的与媒体项目相关联的用户名和密码。用户凭据能够存储在设备102上和/或从用户接收然后传递到设备104和/或114,以获得对被选择用于播放的内容的授权的访问。
[0017]媒体项目的标题可以来源于资源定位符或可以由用户输入。例如,包括到视频剪辑的URL的媒体项目可以使用与URL相关联的网页的标题作为媒体项目的标题。标题也能够基于网页的内容导出。例如,视频的标题可以位于内容内的已知位置。因此,标题能够基于检索网页的内容来导出。
[0018]通过使用相关联的元数据,媒体项目可以与最初向队列提交了与媒体项目相关联的元数据的用户相关联。在一种实现中,媒体项目与一个以上的用户相关联。例如,媒体项目可以与提交了媒体项目的每个人相关联。元数据还能够包含有关提交了对媒体项目的投票的用户的信息。用户以及用户的投票指示也能够包含在元数据内。
[0019]媒体项目的评分最初能够被设置为预先确定的默认值。例如,可以使用诸如零之类的中性分数或诸如2.5之类的平均分数。如果相关联的媒体项目标识符以前是队列的一部分,则也可以使用以前的评分作为媒体项目的初始评分。相应地,能够存储媒体项目的评分,供以后使用,即使媒体项目不再是队列的一部分。也能够从远程站点或包括媒体项目的某个排序指示的其他播放程序中选择初始评分。在这些情况下,能够将排序值规范化为队列的评分。例如,如果评分基于喜欢或不喜欢某一个媒体项目的用户的数量,则能够将外部评分规范化为-1,0,或+1中的一个。作为示例,如果用户以前将某一个媒体项目评为五星,则能够将此排序规范化为_1,0,或+1的评分。在此示例中,2.5星或更大的评分会导致+1评分,2.5星以下的任何评分都会导致-1投票。可另选地,能够将4或以上的评分规范化为+1评分,能够将2或以下的评分规范化为-1评分,而能够将2和4之间的评分规范化为O评分。
[0020]在一种实现中,与媒体项目相关联的元数据包括指出评分是计算出的或推导的信息。能够以与直接从用户接收的投票指示不同的方式对待计算出的投票指示。例如,媒体项目可以具有基于以前提交的投票信息或来自另一站点或程序的排序信息而计算出的初始评分。然后,用户可以直接提交对特定媒体项目的投票。此直接投票可以替换对于媒体项目的与该用户相关联的以前计算出的投票。在另一种实现中,计算出的评分被给予比直接投票较小的权重。例如,计算出的评分可以具有最大评分,而直接投票指示能够对评分产生影响,影响数量大于计算出的评分的最大评分。例如,计算出的评分可以具有最大值5。直接投票指示会改变评分最大达10。这样的系统确保媒体项目的排序将对直接投票指示给出比计算出的评分更大的权重。
[0021]一开始,内容播放设备102的队列能够是空的。当从一个或多个查看设备接收与媒体项目相关联的新的元数据时,内容播放设备102创建队列,并将与媒体项目相关联的媒体项目标识符插入到队列中。队列基于媒体项目的评分来排序媒体项目标识符。内容播放设备102能够将默认评分设置为与接收的媒体项目相关联的每一个元数据。
[0022]在一种实现中,内容播放设备102基于每个接收的元数据,导出每一个媒体项目标识符,并使它们排队。在另一种实现中,内容播放设备102分析接收的元数据以避免使重复媒体项目标识符排队。作为示例,可以忽略与已经排队的媒体项目标识符具有匹配资源定位符、匹配标题或匹配资源定位符和标题的元数据。在另一种实现中,基于内容播放设备102发现匹配,更新排队的媒体项目标识符的评分。例如,内容播放设备102判断接收的元数据是否匹配队列中存在的媒体项目标识符。如果发现匹配,则匹配的媒体项目,例如通过将分数增大预先确定的量来更新其评分。如果没有发现匹配,则将与元数据相关联的媒体项目标识符添加到队列中。
[0023]在另一种实现中,最初能够通过内容播放设备102向本地设备104和远程设备114广播请求以提交与媒体项目相关联的元数据来填充队列。设备104和114能够将任何选择的内容提交到内容播放设备102。例如,用户可以通过将内容置于特定文件夹中选择了内容,或者能够表明将与社交点播机共享内容。也能够从设备104和114人工地提交元数据。例如,在从内容播放设备102接收对媒体项目的请求时,设备104和114可以提供供用户提交要排队的媒体项目的可视或音响指示。
[0024]在另一种实现中,在接收与媒体项目相关联的元数据时,内容播放设备102能够判断与媒体项目相关联的媒体项目标识符是否已经排队。在一种实现中,当媒体项目标识符匹配时,媒体项目标识符已经在队列中。例如,媒体项目标识符能够包括艺术家和媒体项目标题。如果发现匹配,则匹配的媒体项目的评分可以增大某个量,而不是排队重复媒体项目标识符。这有效地计数了已经提交媒体项目的设备104和114的数量。队列的评分和初始顺序,因此,与提交媒体项目的设备的数量相关联。随着媒体项目的评分变化,内容播放设备102能够重新排序队列。在一定量的时间消逝和/或队列包含预定数量的媒体项目标识符之后,内容播放设备102能够检索和播放与最高排序排队的媒体项目标识符相关联的媒体项目。在某些实现中,当媒体项目标识符匹配时,与匹配的媒体项目标识符相关联的元数据内的资源定位符能够是不同的。在一种实现中,与媒体项目标识符相关联的元数据能够被更新以包括媒体项目的所有可能的资源定位符。当内容播放设备102播放媒体项目时,内容播放设备102能够选择可能的资源定位符中的一个。如果内容播放设备102不能从选择的资源定位符中检索媒体项目,则可以使用第二资源定位符。在另一种实现中,内容播放设备102能够在请求媒体文件之前监测媒体文件的可用性。例如,媒体项目能够存储在两个或更多用户设备上。内容播放设备102能够监测这些设备中的每一个是否可被内容播放设备102访问。与当前不可用的用户设备相关联的任何资源定位符都能够表示为不可访问。然后,内容播放设备102能够使用引用可访问的用户设备的资源定位符。
[0025]当内容播放设备102播放媒体项目时,队列能够被分成已播放内容和未播放内容。标识已播放媒体项目的媒体项目标识符的顺序可以保持不变,直到要求整个队列的重新排序。然而,未播放内容,能够基于内容播放设备102接收与新媒体项目相关联的元数据和/或与排队的媒体项目相关联的投票,不断地重新排序。在一种实现中,一旦播放了全部媒体项目,就重新排序整个队列,内容播放设备102从最高排序媒体项目开始重复队列媒体项目的播放。在另一种实现中,当播放了最后一个媒体项目时,内容播放设备102停止播放。
[0026]本地参加者可以查看内容播放设备102上的队列的至少一部分。内容播放设备102显示当前队列的至少一部分。例如,内容播放设备102能够显示关于预定数量的以前播放的媒体项目、当前正在播放的媒体项目以及预定数量的在当前正在播放的媒体项目之后将播放的媒体项目的信息。在另一种实现中,整个队列显示在内容播放设备102上。因此,本地用户可以在内容播放设备102上直接看到队列的至少一部分。内容播放设备102还能够将队列信息提供到本地设备104。队列信息能够包括关于整个队列的信息或能够包含有关当前正在播放的媒体项目、预定数量的以前播放的媒体项目以及预定数量的即将来临的媒体项目的信息。例如,队列信息能够包括显示在内容播放设备102上的信息。内容播放设备102还能够将此信息提供到远程设备114。还可以给一个或多个远程内容播放设备112提供队列信息。远程内容播放设备112能够与内容播放设备102并行地显示此队列信息,并播放媒体项目。远程内容播放设备112由内容播放设备102控制。例如,能够通过与内容播放设备102的交互,暂停、跳过,快进等等正在播放的媒体项目。内容播放设备102将其状态的指示提供到远程内容播放设备112,远程内容播放设备112采取对应的操作。
[0027]内容播放设备102使用与媒体项目相关联的资源定位符来访问播放的媒体项目。媒体项目能够是通过一个或多个扬声器输出的音频数据。另外,媒体项目还能够是显示在内容播放设备的屏幕上的视频数据。媒体项目能够被流式处理到内容播放设备102,或能够在播放之前全部地请求媒体项目。另外,内容播放设备102还可以缓存媒体项目的副本,用于未来播放。在一种实现中,当内容播放设备102不再能访问内容时,删除媒体项目的缓存的副本。例如,如果本地设备不再能够被内容播放设备102访问,则可以删除本地设备中的缓存的媒体项目。内容播放设备102还能够将媒体流式处理或提供到一个或多个远程内容播放设备112。在另一种实现中,内容播放设备102将资源定位符提供到远程内容播放设备114,该远程内容播放设备114使用资源定位符来访问媒体。
[0028]在另一种实现中,本地设备104和/或远程设备114可以预览队列中的媒体项目。设备能够请求对当前在队列中的任何一个特定媒体项目的预览。在一种实现中,设备响应于对媒体项目的预览请求,接收与媒体项目相关联的资源定位符。另外,设备还可以接收访问媒体项目所需的任何访问信息,诸如用户名和/或密码。设备能够使用资源定位符来请求媒体项目的至少一部分。可另选地,设备能够接收不同于与媒体项目相关联的资源定位符的到媒体文件的一部分的资源定位符。例如,与对媒体项目的预览相关联的资源定位符可以标识媒体项目的一部分。作为示例,媒体项目预览的资源定位符可以标识媒体项目的15s,30s, 60s等等样本。在另一种实现中,设备能够直接从内容播放设备102接收媒体项目的至少一部分。例如,内容播放设备102能够将整个媒体项目或媒体项目的15s,30s, 60s,等等部分传输到设备。能够在设备上与当前在内容播放设备102上正在播放的任何媒体项目独立地预览媒体项目。因此,用户可以预览队列中的媒体项目,而不会中断在内容播放设备102上正在播放的媒体项目。对媒体项目的预览可使用户在对媒体项目投票之前播放媒体项目的至少一部分。例如,用户可能不熟悉特定媒体项目。用户可以请求对媒体项目进行预览,并且在完成预览时,能够提示用户对媒体项目进行投票。
[0029]图2A-2C示出了根据说明性实施方式的社交点播机的用户界面。图2A示出了内容播放设备102播放媒体项目项目3的显示。能够使用指示器208来指出当前正在播放的排队的媒体项目。指示器还可以具有或包括粗体文本、突出显示等等。用户界面200包括标题区域204、排队区206、以及内容查看区域202。内容查看区域202提供涉及当前正在被查看的媒体项目的数据。例如,可以使用内容查看区域202来显示视频剪辑。另外,内容查看区域202还能够包括音频剪辑的可视化,诸如频谱分析仪222。内容查看区域202还能够包括诸如,专辑封面,到有关媒体项目的其他信息的链接等等之类的数据。内容查看区域202还能够包括标准控件以及媒体项目220内的诸如位置指示器224和当前位置之类的信息。标准控件还能够包括快进、倒退、跳到下一排队的媒体项目、返回到以前排队的媒体项日坐坐1=1寸寸ο
[0030]标题区域204能够包括关于当前正在播放的媒体项目的信息。此信息能够包括媒体项目的标题、谁提交了媒体项目以及谁对媒体项目投票了。信息还能够包括关于哪些用户喜欢媒体项目以及哪些用户不喜欢媒体项目的指示、专辑封面、到有关媒体项目的其他信息的链接等等。
[0031]排队区提供有关至少某些排队的媒体项目的信息。能够显示每一个媒体项目的当前评分210。排队区206允许用户看到当前正在播放什么,还提供即将播放的媒体项目的列表。
[0032]如上文所描述的,排队的媒体项目标识符的顺序基于与媒体项目相关联的评分。用户可以在媒体项目的播放过程中投票,而这样的投票可以重新排序队列。例如,在图2A中,项目3当前正在播放,并具有高于项目4和项目5的评分的评分。当媒体项目正在被播放时,用户可以提交对于排队的媒体项目中的任何一个的投票标志。例如,一个或多个用户可以提交改变项目4和项目5的评分的投票标志,以便基于评分的队列的顺序将变化。图2B示出了这样的变化。与项目5相关联的评分增大4,与项目4相关联的评分增大3。队列被重新排序以考虑更新的评分。项目4和项目5仍在队列中排在项目3下面,以确保项目4和项目5在项目3完成之后播放。一旦媒体项目都被播放或播放列表重新启动,媒体项目能够被重新排序。图2C示出了此重新排序。如图2C的排队区206所示,项目5和项目4现在基于相应的评分,被置于项目3之前。
[0033]还能够基于与媒体项目相关联的评分,自动地从队列中删除与媒体项目相关联的媒体项目标识符。例如,能够从队列中删除其评分低于预先确定的分数的媒体项目。在一种实现中,一旦评分低于预定级别,就可以删除媒体项目。在另一种实现中,能够在评分低于预定级别达预先确定时间长度之后删除媒体项目。在再一个实现中,内容播放设备102能够在检索媒体项目数据之前判断评分是否低于预定级别。如果一个媒体项目低于预定级另IJ,则不需要检索该媒体项目。可视指示,诸如但不仅限于指示灯、闪烁文本或字体颜色变化之类,能够表明媒体项目低于预定级别,并可能检索不到或无法播放。作为示例,能够将预定级别设置为50。图2B示出了项目7的评分已经下降到45。在项目7低于50的评分一段时间之后,或在内容播放设备102尝试访问项目7的媒体项目之前,能够删除项目7。图2C示出了项目7已经从队列中删除。
[0034]由于内容播放设备的队列是动态的,因此,当排队的媒体项目正在被播放时,能够将新媒体项目添加到队列中。图2B示出了项目8已经被添加到队列中。与项目8相关联的评分在队列中将项目8置于项目6之后和项目7之前。当媒体项目由设备104和/或114播放并提交与新媒体项目相关联的元数据时可以添加额外的媒体项目。
[0035]图3是根据说明性实施方式的基于接收投票指示来重新排序媒体项目标识符的队列的过程的流程图。过程300能够在计算设备上实现。在一种实现中,过程300编码在计算机可读介质上,该计算机可读介质包含指令,当由计算设备执行时,指令导致计算设备执行过程300的操作。
[0036]接收与多个媒体项目相关联的多个元数据(302)。例如,内容播放设备102能够从设备104和114接收与多个媒体项目相关联的多个元数据。能够基于元数据来创建每一个媒体项目的媒体项目标识符。将媒体项目标识符置于队列中(304)。队列的顺序能够基于与每一个媒体项目相关联的评分。如上文所描述的,能够初始化与媒体项目相关联的评分。内容播放设备102能够选择最高排序的未播放媒体项目,作为下一个要播放的媒体项目。选择最高排序的未播放媒体项目标识符,使用相关联的元数据来检索媒体项目。可以使用资源定位符来检索最高排序的未播放媒体项目的至少一部分(306)。媒体项目被提供到一个或多个内容播放设备(308)。例如,能够将媒体项目的至少一部分提供到内容播放设备102。另外,还能够将媒体项目的至少一部分提供到远程内容播放设备112。内容播放设备102能够作为流来接收媒体项目,并在检索到整个媒体项目之前开始播放媒体项目,或能够在开始播放之前检索整个媒体项目。
[0037]当媒体项目正在被提供给一个或多个内容播放设备时,接收未播放媒体项目的一个或多个投票指示(310)。另外,还可以接收其他已播放或未播放媒体项目的投票指示,并可以更新对应的评分。未播放媒体项目的评分基于一个或多个接收的投票指示来更新(312)。队列中的未播放媒体项目标识符基于更新的评分来重新排序(314)。例如,可以接收关于还没有被播放的媒体项目的三个投票指示。媒体项目的已更新的评分能够将该媒体项目在队列的未播放部分向上移动。在重新排序队列的未播放部分时,媒体项目能够是下一个要被提供的媒体。在重新排序队列之后,基于与最高排序的未播放媒体项目相关联的资源定位符,检索第二媒体项目的至少一部分(316)。例如,能够在播放之前的某个点检索第二媒体项目。第二媒体项目的至少一部分被提供到一个或多个内容播放设备(318)。
[0038]图4是根据说明性实施方式的计算机系统的框图。可以使用计算机系统或计算设备400来实现内容播放设备102和112和/或设备104和114,等等。计算系统400包括总线405或用于传递信息的其他通信组件和用于处理信息的耦接到总线405的处理器410或处理电路。计算系统400还能够包括用于处理信息的耦接到总线的一个或多个处理器410或处理电路。计算系统400还包括耦接到总线405的主存储器415,如随机存取存储器(RAM)或其他动态存储设备,用于存储信息和要由处理器410执行的指令。主存储器415还能够用于在由处理器410执行指令期间存储存储位置信息、临时变量或其他中间信息。计算系统400还能够包括耦接到总线405的只读存储器(ROM) 410或其他静态存储设备,用于为处理器410存储静态信息和指令。存储设备425,诸如固态元件、磁盘或光盘之类,耦接到总线405,用于永久地存储信息和指令。
[0039]计算系统400能够通过总线405耦接到诸如液晶显示器,或有源矩阵显示器之类的显示器435,用于向用户显示信息。诸如包括字母数字及其他键的键盘之类的输入设备430,可以耦接到总线405,用于将信息和命令选择传递到处理器410。在另一种实现中,输入设备430具有触摸屏显示器435。输入设备430能够包括光标控制装置,如鼠标、轨迹球或光标方向键,用于向处理器410传递方向信息和命令选择,并用于控制光标在显不器435上的移动。
[0040]根据各种实现,此处所描述的过程能够通过计算系统400响应于处理器410执行包含在主存储器415中的指令布局来实现。能够从另一个计算机可读介质,如存储设备425,将这样的指令读取到主存储器415中。包含在主存储器415中的指令布局的执行导致计算系统400执行此处所描述的说明性过程。还可以使用多处理布局中的一个或多个处理器来执行主存储器415中包含的指令。在备选实现中,可以使用硬线连接的电路来代替软件指令或与软件指令相结合,来实施说明性实施方式。如此,实现不仅限于硬件电路和软件的任何特定的组合。
[0041]虽然在图4中描述了示例计算系统,但是,在本说明书中所描述的主题和功能操作的各种实现能够以其他类型的数字电子线路,或以计算机软件、固件,或硬件来实现,包括在本说明书中所公开的结构以及它们的结构等价物,或以它们中的一个或多个的组合来实现。
[0042]在本说明书中所描述的主题和操作的各种实现能够以数字电子线路,或以计算机软件、固件,或硬件来实现,包括在本说明书中所公开的结构以及它们的结构等价物,或以它们中的一个或多个的组合来实现。在本说明书中所描述的主题可被实现为一个或多个计算机程序,即,编码在一个或多个计算机存储介质上的供数据处理设备执行,或控制数据处理设备的操作的计算机程序指令的一个或多个模块。可另选地或另外,程序指令可以编码在人工生成的传播信号上,例如,机器生成的电气、光学或电磁信号,生成该信号以编码信息,供传输到合适的接收器设备由数据处理设备执行。计算机存储介质能够是,或包括在,计算机可读取的存储设备中、计算机可读取的存储器衬底中、随机或串行存取存储器阵列或设备,或它们中的一个或多个的组合。此外,尽管计算机存储介质不是传播信号,但是,计算机存储介质能够是以人工生成的传播信号编码的计算机程序指令的源或目的地。计算机存储介质也能够是,或包括在一个或多个单独的物理组件或介质(例如,多个CD、磁盘,或其他存储设备)中。相应地,计算机存储介质两者都是有形的和非瞬时的。
[0043]在本说明书中所描述的操作可被实现为由数据处理设备对存储在一个或多个计算机可读取的存储设备上的或从其他来源接收的数据执行的操作。
[0044]术语“数据处理设备”或“计算设备”包含用于处理数据的各种各样的设备、机器,作为示例包括可编程处理器、计算机、系统芯片,或多个前述的各项,或它们的组合。设备能够包括特殊用途逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除硬件之外,设备还能够包括,为正被讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议堆栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机,或它们中的一个或多个的组合的代码。设备和执行环境可以实现各种不同的计算模型基础结构,诸如web服务、分布式计算以及网格计算基础结构。
[0045]计算机程序(也称为程序、软件、软件应用程序、脚本,或代码)能够以任何形式的编程语言来编写,包括汇编或解释语言、声明性或过程语言,并且它能够以任何形式部署,包括作为独立程序或作为适用于计算环境中的模块、组件、子例程、对象或其他单元来部署。计算机程序可以,但是不是必须对应于文件系统中的文件。程序能够存储在存放其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于正被讨论的程序的单个文件中,或存储在多个协调的文件(例如,存储一个或多个模块、子程序,或代码的某些部分的文件)。计算机程序能够被部署到一台计算机上或位于一个站点的或跨多个站点分布,并通过通信网络互连在一起的多台计算机上运行。
[0046]适合于执行计算机程序的处理器包括,作为示例,一般用途和特殊用途的微处理器以及任何种类的数字计算机的任何一个或多个处理器。一般而言,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于根据指令来执行操作的处理器,以及用于存储指令和数据的一个或多个存储器设备。一般而言,计算机也将包括用于存储数据的一个或多个大容量存储设备,例如,磁盘、磁光盘或光盘,或可操作地与它们连接,以从它们那里接收数据或向它们传输数据,或两者。然而,计算机不是必须具有这样的设备。此外,计算机还可以嵌入在另一设备中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器,或便携式存储设备(例如,通用串行总线(USB)闪存驱动),仅举几个例子而已。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括半导体存储器设备,例如,EPR0M、EEPR0M以及FLASH存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM光盘。处理器和存储器能够通过特殊用途逻辑电路来补充,或集成在特殊用途逻辑电路中。
[0047]为与用户进行交互,能够在计算机上实现在本说明书中所描述的主题的各种实现,计算机具有用于向用户显示信息的显示设备,例如,CRT(阴极射线管)或LCD(液晶显示器)监视器,以及键盘和指示设备,例如,鼠标或轨迹球,用户利用它们可以向计算机提供输入。也可以使用其他种类的设备来与用户进行交互;例如,向用户提供的反馈能够是任何形式的传感反馈,例如,可视反馈、听觉反馈或触觉反馈;用户的输入能够以任何形式接收,包括声音、语音或触觉输入。
[0048]尽管本说明书包含许多特定实现细节,但是,这些不应该被解释为对任何发明的或要求保护的东西的范围的限制,而是作为对特定发明的特定实现特定的特征的描述。在本说明书中在独立实现的上下文中所描述的某些特征也能够在单个实现中组合地实现。相反,在单个实现的上下文中所描述的各种特征也可以独立地或以任何合适的子组合在多个实现中实现。此外,虽然特征在上文可以被描述为以某些组合起作用,甚至最初要求如此,来自要求保护的组合的一个或多个特征能够在某些情况下从组合中删除,要求保护的组合可以被定向到子组合或子组合的变体。
[0049]类似地,尽管操作在附图中是按特定顺序描绘的,但是,这不应该被理解为要求这样的操作以所示出的特定顺序或按先后顺序执行,或所有所示出的操作都被执行,以实现所需要的结果。在某些情况下,多任务和并行处理可能是有利的。此外,在上文所描述的各种实现中各种系统组件的分离不应该被理解为在所有实现中都要求这样的分离,应该理解,所描述的程序组件和系统可以一般性地集成在单个软件产品中或封装到多个软件产品中。
[0050]如此,描述了主题的特定实现。其他实现也在下面的权利要求的范围内。在某些情况下,权利要求中所列举的操作能够以不同的顺序执行,仍能实现所需要的结果。另外,附图中所描绘的过程不一定要求所示出的特定顺序或按先后顺序来实现希望有的结果。在某些实现中下,多任务和并行处理可能是有利的。
【权利要求】
1.一种方法,包括: 接收多个元数据,其中,所述多个元数据包括与多个媒体项目相关联的信息,其中,所述多个元数据中的每一个元数据都与媒体项目相关联,其中,每一个元数据都包括评分、所述媒体项目的资源定位符、相关联的用户以及标题; 基于所述多个元数据,使用处理电路将所述多个媒体项目的媒体项目标识符置于队列中,其中,所述队列部分地基于所述多个元数据的所述评分排序; 部分地基于第一资源定位符,检索第一媒体项目的至少一部分,其中,所述第一媒体项目对应于所述队列中最高排序的未播放媒体项目标识符,其中,未播放媒体项目标识符对应于在所述队列的迭代过程中以前没有检索过的媒体项目; 将所述第一媒体项目的一部分提供到一个或多个内容播放设备; 从一个或多个用户设备接收对于未播放媒体项目的一个或多个投票指示; 部分地基于所接收的一个或多个投票指示,更新所述未播放媒体项目的所述评分; 基于所述未播放媒体项目的所更新的评分,重新排序所述队列中的未播放媒体项目;部分地基于第二资源定位符,检索第二媒体项目的至少一部分,其中,所述第二媒体项目对应于重新排序的队列中最高排序的未播放媒体项目标识符;以及将所述第二媒体项目的一部分提供到所述一个或多个内容播放设备。
2.如权利要求 1所述的方法,还包括: 对于每一个元数据确定多个匹配元数据,其中,所述多个元数据是从一个或多个计算设备接收的; 将所述匹配元数据组合到单个元数据中;以及 将所述单个元数据的所述评分设置为对应于匹配元数据的数量的值。
3.如权利要求2所述的方法,还包括基于所述队列不包含未播放媒体项目标识符的判断来重新排序所述队列。
4.如权利要求3所述的方法,其中,检索媒体项目包括判断与所述媒体项目相关联的评分是否高于预定阈值。
5.如权利要求4所述的方法,还包括一旦所述相关联的媒体项目的所述评分低于预定阈值,就删除所述队列中的媒体项目标识符。
6.如权利要求5所述的方法,还包括将与所述队列相关联的信息发送到一个或多个计算设备。
7.如权利要求6所述的方法,其中,检索所述第一媒体项目包括使用统一资源定位符(URL)从本地计算设备请求所述第一媒体项目。
8.如权利要求7所述的方法,其中,一个或多个资源定位符包括引用存储在远程计算设备上的媒体项目的URL。
9.一种系统,包括: 被配置成执行下列操作的一个或多个处理电路: 接收多个元数据,其中,所述多个元数据包括与多个媒体项目相关联的信息,其中,所述多个元数据中的每一个元数据都与媒体项目相关联,其中,每一个元数据都包括评分、所述媒体项目的资源定位符、相关联的用户以及标题; 基于所述多个元数据,将所述多个媒体项目的媒体项目标识符置于队列中,其中,所述队列部分地基于所述多个元数据的所述评分排序; 部分地基于第一资源定位符,检索第一媒体项目的至少一部分,其中,所述第一媒体项目对应于所述队列中最高排序的未播放媒体项目标识符,其中,未播放媒体项目标识符对应于在所述队列的迭代过程中以前没有检索过的媒体项目; 将所述第一媒体项目的所述的至少一部分提供到一个或多个内容播放设备; 从一个或多个用户设备接收对于未播放媒体项目的一个或多个投票指示; 部分地基于所接收的一个或多个投票指示,更新所述未播放媒体项目的所述评分; 基于所述未播放媒体项目的所更新的评分,重新排序所述队列中的未播放媒体项目;部分地基于第二资源定位符,检索第二媒体项目的至少一部分,其中,所述第二媒体项目对应于重新排序的队列中最高排序的未播放媒体项目标识符;以及 将所述第二媒体项目的所述至少一部分提供到所述一个或多个内容播放设备。
10.如权利要求9所述的系统,其中,所述一个或多个处理电路进一步被配置成: 对于每一个元数据,确定匹配元数据的数量,其中,所述多个元数据是从一个或多个计算设备接收的; 将所述匹配元数据组合为单个元数据;以及 将所述单个元数据的所述评分设置为对应于匹配元数据的数量的值。
11.如权利要求10所述的系统,其中,所述一个或多个处理电路进一步被配置成基于所述队列不包含未播放媒体项目标识符的判断来重新排序所述队列。
12.如权利要求11所述的系统,其中,所述一个或多个处理电路被配置成在检索所述媒体项目之前判断与媒体项目相关联的评分是否高于预定阈值。
13.如权利要求12所述的系统,其中,所述一个或多个处理电路进一步被配置成一旦与媒体项目相关联的所述评分低于预定阈值,就删除所述队列中的媒体项目标识符。
14.如权利要求13所述的系统,其中,所述一个或多个处理电路进一步被配置成将与所述队列相关联的信息发送到一个或多个计算设备。
15.一种其上存储有指令的非瞬时的计算机可读介质,所述指令包括: 接收多个元数据的指令,其中,所述多个元数据包括与多个媒体项目相关联的信息,其中,所述多个元数据中的每一个元数据都与媒体项目相关联,其中,每一个元数据都包括评分、所述媒体项目的资源定位符、相关联的用户以及标题; 基于所述多个元数据将所述多个媒体项目的媒体项目标识符置于队列中的指令,其中,所述队列部分地基于所述多个元数据的所述评分排序; 部分地基于第一资源定位符检索第一媒体项目的至少一部分的指令,其中,所述第一媒体项目对应于所述队列中最高排序的未播放媒体项目标识符,其中,未播放媒体项目标识符对应于在所述队列的迭代过程中以前没有检索过的媒体项目; 将所述第一媒体项目的所述的至少一部分提供到一个或多个内容播放设备的指令; 从一个或多个用户设备接收对于未播放媒体项目的一个或多个投票指示的指令; 部分地基于所接收的一个或多个投票指示,更新所述未播放媒体项目的所述评分的指令; 基于所述未播放媒体项目的所更新的评分,重新排序所述队列中的未播放媒体项目的指令;部分地基于第二资源定位符检索第二媒体项目的至少一部分的指令,其中,所述第二媒体项目对应于重新排序的队列中最高排序的未播放媒体项目标识符;以及 将所述第二媒体项目的所述至少一部分提供到所述一个或多个内容播放设备的指令。
16.如权利要求15所述的非瞬时的计算机可读介质,其中,所述指令还包括: 对于每一个元数据确定匹配元数据的数量的指令,其中,所述多个元数据是从一个或多个计算设备接收的; 将所述匹配元数据组合为单个元数据的指令;以及 将所述单个元数据的所述评分指令设置为对应于匹配元数据的数量的值的指令。
17.如权利要求16所述的非瞬时的计算机可读介质,其中,所述指令还包括基于所述队列不包含未播放媒体项目标识符的判断来重新排序所述队列的指令。
18.如权利要求17所述的非瞬时的计算机可读介质,其中,所述指令还包括在检索所述媒体项目之前判断与媒体项目相关联的评分是否高于预定阈值的指令。
19.如权利要求18所述的非瞬时的计算机可读介质,其中,所述指令还包括一旦与媒体项目相关联的所述评分低于预定阈值,就删除所述队列中的媒体项目标识符的指令。
20.如权利要 求19所述的非瞬时的计算机可读介质,其中,所述指令还包括将与所述队列相关联的信息发送到一个或多个计算设备的指令。
【文档编号】G06Q50/10GK104205152SQ201280054803
【公开日】2014年12月10日 申请日期:2012年9月24日 优先权日:2011年9月26日
【发明者】B·高甘 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1