产生一个或多个媒体项的有序列表的方法、系统和计算机可读媒体的制作方法

文档序号:6554304阅读:116来源:国知局
专利名称:产生一个或多个媒体项的有序列表的方法、系统和计算机可读媒体的制作方法
技术领域
本发明各实施例涉及从媒体项的一个或多个集合(即库)产生媒体项的有序列表的领域,尤其涉及能基于用户-关联选择过滤器和用户-关联排序过滤器产生媒体项或播放列表的有序列表的方法和系统。
背景技术
因为技术上的最新进步,计算机用户现在能享受提供经改进用户体验的许多特征,诸如在个人、膝上型或手持式计算机、以及手机和其它便携式媒体设备上播放各种媒体和多媒体内容。例如,当今大多数计算机能播放光盘(CD)并具有能流动和下载音频和视频的因特网连接,因此用户能在计算机上工作时收听他们喜欢的媒体。许多计算机还装有使用户能观看电影的数字多功能盘(DVD)。
在一些多媒体环境中,计算机可访问存储诸如活动图片专家组音频层-3(MP3)文件和WINDOWS MEDIA技术音频(WMA)和视频文件的计算机可读媒体。当经压缩的媒体文件在计算机上播放时,计算机通常将媒体文件组织成播放列表。
通常,用户必须花大量的时间和精力来建立任何复杂度的媒体项(例如视频文件、音乐文件、图像等)列表。媒体项可分别被选择并添加到每个播放列表中。除了所需精力外,用户还难以构建包括他们所需要的每个媒体项的播放列表。例如,记住要包括在播放列表中的每个特定媒体项的名称(或艺术家、类、创建者、创建日期、样式等)是困难的。不能再次调用每个所需媒体项可导致仅包括一些用户熟悉的普通媒体项的用户创建播放列表。这样的播放列表是寻常的、重复的、通常甚至创建用户也不合意的。
再次调用感兴趣媒体项的问题随着在线媒体库的出现而加剧,诸如音乐和其它音频、电影和其它视频等。例如,单个用户可订购超过一百万可用媒体项的媒体服务(例如订购服务)。这种订购简单地向单个用户提供过多选择,用于查看播放列表并为之作考虑。
除了没有足够时间和不能再次调用特定媒体项之外,其它问题还会阻碍特定用户制作他们自己的播放列表。例如,对计算机不太熟练的用户不了解可创建其特定集合或多个集合(即库)的这样一个分组。其它人可能只是不具有有关媒体的知识,来制作这种播放列表。这些用户仍然具有有关媒体的喜好,并在看到不同媒体项时表达强烈的看法,即使他们并不知道谁写了或演奏了这些项。无线电广播通过根据特定收听类型编程收听体验,来迎合这些收听者,诸如舒适收听、爵士、节奏和布鲁斯、乡村、摇摆舞等。
不幸地是,这些问题不能通过任何传统系统解决。常规技术仅向用户提供创建播放列表的有限帮助,诸如根据媒体类型或艺术家排序。这些常规技术基于用户设置的或基于用户相对于播放列表的动作确定的过滤器,不提供自动的播放列表形成。常规技术还需要向服务器揭示来自用户的很多个人信息,使服务器能建立播放列表。因为这些信息是个人的,所以更需要将这种用户信息保留在客户侧,而不是服务器侧。因此,需要能够产生适应用户需要的媒体项的播放列表的系统或方法,这些用户需要基于新的用户喜好和存储在用户设备上的动作反馈而持续更新。换言之,该系统或方法帮助用户进行媒体项(例如音乐)选择。因此,需要一种基于允许由用户直接或间接设置的过滤器的播放列表创建的方案。

发明内容
因此,需要一种用于产生从媒体项的库中选择的一个或多个媒体项的有序列表的方法(或系统),以解决这些和其它缺点的一个或多个。该方法包括根据用户-关联选择过滤器从该库中选择媒体项的分组,并根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。例如,本发明的各个实施例可适于向用户提供在用户一方仅用最少精力创建高度复杂的易于响应的播放列表的帮助。有利的是,本发明的各方面允许基于用户选择和用户动作反馈来创建播放列表。
在本发明的一方面中,揭示了一种用于产生从媒体项的库中选择的一个或多个媒体项的有序列表的系统。该系统包括用于从库中产生媒体项分组的用户-关联选择过滤器,以及用于将媒体项分组的至少一部分排序成有序列表的用户-关联排序过滤器。
在本发明的另一方面中,揭示了一种产生从媒体项的库中选择的一个或多个媒体项的有序列表的方法。该方法包括根据用户-关联选择过滤器从该库中选择媒体项的分组,并根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
在本发明的又一方面中,揭示了一种具有计算机可执行指令的计算机可读媒体,这些计算机可执行指令用于产生从媒体项的库中选择的一个或多个媒体项的有序列表。用于执行这些步骤的计算机可执行指令包括根据用户-关联选择过滤器从该库中选择媒体项的分组,并根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
或者,本发明可包括各种其它方法、系统、计算机可读媒体和装置。
部分其它特征将在此后指出并变得显而易见。


图1示出本发明的用于产生一个或多个媒体项的有序列表的系统。
图1A示出用于音乐媒体项的播放列表的用户界面的示例性屏幕截图。
图2示出图1系统的播放列表引擎的细节;以及图3是示出其中可实现本发明的适当计算系统环境的一个示例的框图。
附图中相应标号表示相应部件。
具体实施例方式
用于产生媒体项的有序列表的系统现在参看图1,揭示了通常示为21的一种系统,用于产生从媒体项的一个或多个集合(即库)中选择的和由用户23订购消费的一个或多个媒体项的有序列表或播放列表。当在此使用时,术语播放列表表示用户23要播放(在音乐或视频的情形中)或访问(在图像或文本文件的情形中)的媒体项的有序列表。当在此使用时,术语媒体项包括多种格式的媒体文件,包括音乐、语音、录音书籍、新闻报告、电影、电视剧、情景喜剧、照片、家庭录像、在线媒体项、音乐视频、电影预告片、音频blog(博客)、直播广播电台等。在一示例中,用户23可利用计算机130(参见图3)上的媒体播放机程序,以通过播放列表访问媒体项的库。这种媒体播放机的一个示例是华盛顿州Redmond的微软公司的Windows Media Player。
图1所示的系统21包括若干组件,包括通常示为25的用户界面,用于向用户23传送信息并接收来自用户的指令;查询形式的媒体项库27;所提交的播放列表31;以及播放列表引擎35。每个这些组件的细节都在以下更详细地说明。
特别地,可包括单个或多个集合的库27,存储众多由用户23使用的媒体项(例如在本地计算机上)、或提供可用媒体项列表、如何访问用户使用的这些媒体项(例如到分布在网络或因特网上的集合的数据链接)。在一示例中,库27中包含的媒体项由用户23定义。这种库可存储在用户的计算机130上(参见图3)、便携式媒体播放设备(例如MP3播放机)、存储设备(例如闪存存储器设备)、或实质上任何其它数据源。在另一示例中,服务供应商(例如订购服务)在独立存储设备(例如服务器)上保存一个大的媒体项库27,用于根据请求流向用户。在又一示例中,库27可由用户的个人媒体项库和由服务供应商提供的媒体项定义。然而,在任何情形中,库27用作用户23可能感兴趣的媒体项的储存库。这种媒体项库27可以非常大,包括数十、数百、数千、或数百万的媒体项,使它们不用相当精力就难以组织成有意义的播放列表。
一旦对媒体项库27的访问通过用户界面25得到建立,媒体项的库就可进一步处理成提交播放列表31。该提交播放列表包括来自库27的媒体项的一部分,并构成来自该库的一部分媒体项的第一粗略选择。例如,通常媒体项库27可通过仅选择满足一个或多个基本标准(诸如共同类别或共同的创建年份)的那些媒体项来减至提交播放列表31。基于基本分类标准提交包括库27的一部分是本领域众所周知的。尽管该第一粗略选择可用来减少播放列表引擎35所考虑的媒体项数量,但在一示例中可跳过该减少,从而所提交的播放列表31包含所有来自库27的媒体项。
在此应注意,本系统21创建的提交播放列表31并不是固定的,而是其容量随时间改变的。在一示例中,所提交的图像播放列表31通过仅查询在等于“今天”的日期创建的那些图像创建。在今天之前创建的图像并不包括在提交播放列表31中。因而,这种提交播放列表31内的媒体项的成员将随着日期的改变而改变。此外,系统21的另一个示例在所提交的播放列表得到更新时向用户23提供改变通知,使用户知道播放列表引擎35在接收已作修订的提交播放列表。
提交播放列表31被转发给播放列表引擎35,作为播放列表引擎的输入。播放列表引擎35考虑所提交播放列表31的每个媒体项,以确定该媒体项是否将是通过用户界面25传送给用户23的媒体项播放列表的一部分。如以下更详细描述的,播放列表引擎35包括用于确定引擎输出的用户-关联选择过滤器41和用户-关联排序过滤器45(参见图2)。(当在此使用时,术语“用户-关联”表示与特定用户23的喜好相关。)在考虑所提交播放列表31的媒体项之后,播放列表引擎35产生通过包括在引擎中的过滤器41、45的媒体项播放列表49。播放列表49包括两个唯一的播放列表-“随后”(Up Next)播放列表53和“现在播放”(Now Playing)播放列表55,如以下更详细讨论的。特别地,播放列表引擎35选择提交播放列表31的哪些媒体项将置于播放列表49上。换言之,播放列表引擎31用作媒体项的提交播放列表31的处理器。
如在以上图1中引入并示出的,用户界面25通过提供播放列表49的内容列表与用户23通信。用户界面25支持用于查看播放列表49和库27的媒体项的各种格式。如图1和1A所示示例中,用户界面25被分成3个区域,播放列表视图61、“随后”视图63、和“现在播放”视图65。用户界面25的“随后”视图63显示媒体项的“随后”播放列表53的至少一部分,从而用户23能看到哪些媒体项即将播放。“随后”播放列表53的“随后”视图63包括至少安排要访问的下个媒体项,但可包括“随后”播放列表53的若干媒体项。类似地,用户界面25的“现在播放”视图65显示用户23当前访问或显示的媒体项。如本领域技术人员所易于理解的,在本发明的范围内可期望其它用户界面25。
如以上所介绍的,用户界面包括两个部分播放列表“随后”播放列表53和“现在播放”播放列表55。“随后”列表可包括若干媒体项(例如10个),而“现在播放”列表包括单个媒体项-现在正在媒体播放机上播放的媒体项。这些播放列表53、55由一些在库27中发现的相同媒体项组成,有以下特定约束。当“现在播送”播送列表55的媒体项播送完毕时,“现在播送”播送列表变成包括来自“随后”播送列表53的下一媒体项。然后“随后”播送列表得到更新以移除现在出现在“现在播送”播放列表55中的媒体项。此外,“随后”播放列表53中剩余媒体项的每一个前进一位,而另一个媒体项被添加到“随后”播放列表的末端。“随后”播放列表53可包括任何数量的媒体项,且在一示例中是约3个到10个媒体项之间的列表。不是所有包括在“随后”播放列表53中的媒体项都必须包括在“随后”视图63中,尽管在一示例中播放列表和该视图共享相同的媒体项。“随后”播放列表53和“随后”视图63在每当移除一媒体项时就改变,或者如果播放列表引擎35指示“随后”播放列表改变其内容时改变,如以下将详细讨论的。换言之,“随后”播放列表53是播放列表引擎35产生的媒体项的响应请求的动态列表。
此外,用户界面25可向用户23提供与库27和播放列表53、55的媒体项相关的属性,包括各个库或播放列表中媒体项的数量、每个媒体项的持续时间、以及库和播放列表中媒体项的其它属性。除了通过用户界面提供给用户23的数据之外,用户还可通过提供有关喜好的一些动作反馈67,影响播放列表引擎35的动作并对系统实施一些控制。通常用户界面25提供基本的播放列表操纵命令,诸如能手动地从库27或播放列表53、55中添加或删除一个或多个媒体项。特别地,用户23可通过输入通道71与用户界面25的播放列表视图61交互,这提供了向库27添加媒体项、从库中删除媒体项、并更新媒体项的属性(例如元数据)的能力。用户23还可通过输入通道75与用户界面25的“随后”视图63和“现在播放”视图65交互,这提供了更改“随后”视图和“现在播放”视图中媒体项的属性、跳过“随后”视图中一个或多个媒体项、混洗“随后”视图中的各媒体项、提供当前播放媒体项的全部操作(即,播放、停止、暂停、快进、快倒、向前搜索、向后搜索、静音等),并评定“现在播放”视图的媒体项。如本领域技术人员所易于理解的,在本发明范围中可预期其它输入通道。
播放列表引擎现在参看图2,将描述播放列表引擎35的细节。系统21的播放列表引擎35包括用户-关联选择过滤器41,用来基于该过滤器产生来自所提交播放列表31的媒体项的分组43。如上所述,术语“用户-关联”表示与特定用户23的喜好相关。换言之,播放列表引擎35的过滤器41、45作特别调整,以捕捉特定用户23的喜好并使用那些喜好来指示播放列表53、55的内容和形式。用户-关联选择过滤器41可根据对过滤参数的用户23选择、确定过滤器参数的用户动作,或用户选择和用户动作的组合来配置。特别地,用户动作可包括有关选择、访问、并播放媒体播放机中媒体项的一个或多个的用户23动作。
更特别地,用户-关联选择过滤器41可包括两个或多个过滤器79。在图2所示实施例中,包括5个过滤器79。每个过滤器79都被赋予一权重,从而每个过滤器根据其相应权重影响媒体项的过滤。用户-关联选择过滤器41的加权过滤器79对提交播放列表31的每个媒体项评分,从而分组43基于所提交播放列表中每个媒体项的得分产生。在一示例中,用户-关联选择过滤器41包括空过滤器、内容过滤器和频率过滤器的至少之一。空过滤器对加权没有影响,并允许所有媒体项通过该选择过滤器41。这种空过滤器对想要使整个提交播放列表31通过播放列表引擎35到分组43的用户是有用的。选择过滤器41所包括的内容过滤器根据其内容(例如类别、艺术家等)过滤每个媒体项。在一些情形中,内容过滤器完全可根据播放列表引擎35的进一步分析移除特定媒体项。这种过滤器79被视为二元过滤器,因为仅允许两种结果,滤除媒体项或保留媒体项。例如,像“不再播放Frank Sinatra”的过滤器79会立即滤除由Frank Sinatra演奏的任何媒体项,即使所有其它过滤器已对该媒体项评分并允许其为分组43的一部分。最后,选择过滤器41所包括的频率过滤器根据播放的期望频率确定特定媒体项应多频繁地在分组43中重复。频率过滤器可增加喜欢媒体项的播放次数,并减少不喜欢媒体项的播放次数。如本领域技术人员所易于理解的,在本发明范围内可预期除上述空、内容和频率类之外的其它过滤器类。
除上述用户-关联选择过滤器41之外,系统21的播放列表引擎35还包括用户-关联排序过滤器,用于将媒体项分组43的至少一部分排序成有序列表或播放列表49(例如“随后”播放列表53和“现在播放”播放列表55)。使用选择过滤器41,用户-关联排序过滤器45可包括两个或多个过滤器83。在图2所示实施例中,包括两个过滤器83。用户-关联排序过滤器45的每个过滤器83都被赋予一权重,从而两个过滤器的每一个根据其相应权重影响媒体项的过滤。用户-关联排序过滤器45的两个加权过滤器83对分组43的每个媒体项评分。因而,分组43的至少一部分媒体项基于分组中每个媒体项的得分,被排列成有序播放列表49。播放列表引擎35将该有序播放列表49输出给用户界面25,作为“随后”播放列表53和“现在播放”播放列表55。
重要的是要注意,并非分组43中的所有媒体项需要在“随后”播放列表53中排序。例如,如果分组43包含1000个媒体项,则没有必要考虑将每一个媒体项排入播放列表,那些媒体项如果考虑重复则播放列表可达百万数量级。相反,本系统2 1根据上述过滤器41、45估算每个媒体项,并将那些具有最高评分的媒体项置入“随后”播放列表53中。“随后”播放列表53中的媒体项随后可连续重新估算,以确保播放列表包括基于过滤器41、45最适合的媒体项。这样,播放列表引擎35无需在每次重新估算“随后”播放列表53的内容时对整个播放列表排序。相反,播放列表引擎35将提交播放列表31中每个媒体项估算为“随后”播放列表53的可能候选项,然后只对将组成“随后”播放列表的媒体项的一部分排序。
使用用户-关联选择过滤器41的过滤器79,用户-关联排序过滤器45可包括空过滤器、媒体项匹配过滤器、和收听体验过滤器的至少之一。空过滤器对加权没有影响,并允许分组43的所有媒体项保持相同顺序。媒体项匹配过滤器想要增进“随后”播放列表53中相邻媒体项之间的特定关系。该关系可以是多种关系之一,包括在一示例中将相似媒体项相邻放置,或者在另一示例中将不同媒体项相邻放置。最后,可包括任何数量的收听体验过滤器,以形成用户23的整体收听体验。这种过滤器可有意地随时间改变收听体验的基调或类别、控制相邻媒体项的节奏以创建媒体项之间的愉悦转换,或者将极为不同的媒体项排序为彼此相邻,以创建折衷的或另类的收听体验。在本发明范围内也可预期除以上空、媒体项匹配、和收听体验过滤器之外的其它媒体项匹配过滤器和收听体验过滤器。
使用时,选择过滤器41适合连续重新产生分组43,而排序过滤器45适合在有序分组中的至少一个媒体项正由用户23访问时连续重新排列该分组的至少一部分。选择过滤器41和排序过滤器45的过滤器成员、过滤器顺序、和/或过滤器加权的任何改变(诸如通过用户输入或监视的动作反馈)将启动对“随后”播放列表53的重新估算。如果用户提供任何反馈67,或在回放期间以其它方式改变对特定媒体项的喜好,则可进行类似的重新估算。在一示例中,用户将“随后”播放列表53中媒体项的等级从五颗星降为两颗星,可使播放列表引擎35将等级下降的媒体项从“随后”播放列表中移除。除了响应用户23的输入之外,播放列表引擎35还可不必与用户输入相关联地在定期间隔上重新产生和重新排序,诸如在播放每个媒体项以及下一媒体项从“随后”播放列表53移到“现在播放”播放列表55之后。在另一示例中,在用户23或系统21控制的周期性间隔上可进行重新估算(例如在每天特定时间示出图片媒体项)。定期重新估算有助于确保播放列表53、55保持与用户23的喜好一致。在又一示例中,这些更新功能可在回放期间关闭,从而对分组43的更新只在各回放期之间进行。
再参看图2,更详细地示出示例性播放列表引擎35的细节。播放列表引擎35包括安排为上述选择过滤器41和排序过滤器45的一列过滤器79、83。选择过滤器41通过滤除根据过滤器79组认为是本播放列表53、55不太期望的那些媒体项,提议用于回放的媒体项。重要的是,通常并非所提交播放列表31的全部媒体项都被提议由播放列表引擎35回放。排序过滤器45确定实际播放分组43的媒体项的顺序。换言之,第一过滤步骤选择媒体内容,而第二过滤步骤分类媒体内容。结果是选定用于回放的媒体项的慎重选择和排序的播放列表49。
如上所述,过滤器79、83向播放列表引擎35提供用于选择和排序媒体项的方法。可使用任何数量的过滤器79、83而不背离本发明的范围。在图2所示示例中,选择过滤器41包括如以下表格中所示加权的5个过滤器79

这些过滤器79的每一个都具有不同的目的。“不再播放”过滤器79的目的是不管其它过滤器如何评分媒体项都完全阻止特定媒体项通过播放列表引擎35。在一示例中,这种过滤器可体现为数据库中标注为“不再播放”的字段。“少播放听起来像‘U2’的歌曲”过滤器79的目的是压低听起来像U2的媒体项目的权重,或滤除它们,从而偏向于听起来不像艺术家U2的媒体项。“随机”过滤器79被包括在内以增加包括在“随后”播放列表53内的媒体多样性。“偏向于喜欢的”过滤器79被定义为基于其用户星级偏向回放媒体项。在一示例中,这种过滤器79将在播放列表的每次完整播放中播放五星级媒体项五次、四星级内容四次、三星级内容三次、两星级内容两次、以及一星级内容一次。对于五个媒体项A、B、C、D和E的示例组,每个媒体项分别具有五到一星的不同星级,这种过滤器79将创建五个媒体项的播放列表,从而每个媒体项播放对应其星级的次数。例如,过滤器79将产生作为播放列表一部分播放的以下无序媒体项A-A-A-A-A-B-B-B-B-C-C-C-D-D-E的分组43。在这种方案中,系统21更频繁地播放较高星级的媒体项,这应当使用户23更为愉悦。随着媒体项的数量从5增加到20、到几百,特别高星级的媒体项重复之间的时间间隔增大,这也是使用户23更为愉悦的。最后,“非近期播放的”过滤器79将把这些非近期播放的媒体项评分得比近期播放的更高,以有助于避免用户23不期望发生的不当重复。
使用以上示例性过滤器79,考虑以下示例。在第一示例中,来自所提交播放列表31的媒体项是由Frank Sinatra演奏的歌曲“Come Fly With Me”。在前面,系统21就已将媒体项“Come Fly With Me”标识为“不再播放”媒体项。该标识可基于明确的用户选择、媒体项的低用户级别、或者从先前对该媒体项的用户动作反馈67(例如用户总是跳过“Come Fly With Me”)的推断。因为“不再播放”内容过滤器实质上是二元的,播放列表引擎35将不再估算该媒体项,从而将“Come FlyWith Me”从分组43中滤除。
在另一示例中,由艺术家“The Alarm”演奏的媒体项“The Stand”被包括在提交播放列表31中,并被转发给播放列表引擎35以参照选择过滤器41的5个过滤器79作考虑。在该情形中,媒体项“The Stand”未包括在“不再播放”过滤器79中,所以该过滤器的评分为100。然而,歌曲“The Stand”听起来与艺术家U2相似,所以第二过滤器79产生较低的17分(总分为100)。换言之,该媒体项比所考虑的其它媒体项的83%更类似于U2。两个音乐媒体项之间能感受的相似度可通过采用众所周知的音乐比较技术来简便地确定,诸如受让给华盛顿州Redmond的微软公司的美国专利6,545,209中所述的那些技术。然后,媒体项“The Stand”与最近播放的其它歌曲作比较,并赋予随机分值23(总分为100),表示包括该媒体项将比提交播放列表31中其它媒体项的77%更好地保留播放列表的随机性。以下表格列出了“The Stand”的剩余分值,以及播放列表引擎所考虑的其它媒体项B、C、D和E的分值

播放列表引擎35参照每个过滤器79对每个媒体项评分。在媒体项“The Stand”的情形中,对每个管理器79分别返回100、17、23、50和55的分值。这些分值然后如下进行加权并累加在一起,产生总分值为169.5总分=100×100%+17×25%+23×50%+50×80%+55×25%=169.5其它媒体项B、C、D和E的每一个都类似地加以评分,其结果在表格中示出。一旦计算了每个媒体项的分值,各分值就可用众多方法作比较。在一示例中,每个媒体项基于其相应加权分值除以最大可能分值的百分比赋予一百分位等级。在本示例中,最大可能分值为280,从而最高得分媒体项(即项C)通过取其分值223.25除以最大可能分值280被赋予百分位等级80。因而,在上述示例中,媒体项C被赋予百分位等级80,媒体项“The Stand”被赋予百分位等级61,而剩下的三个媒体项取决于其相关分值被赋予等级63、69和78。在一示例中,那些超过某最低阈值百分位等级的媒体项将被包括在提议候选分组43中。在另一示例中,每个媒体项被传送给排序过滤器45,其中先前计算的内容分值与相关于排序的附加分值相组合。
在又一示例中,每个分类器79的各个分值可不总计成如上所述的单个总分值。特别地,可能需要将一个或多个过滤器保存在与其它过滤器分开的一个或多个组中。例如,通过将全部过滤器79组合成如上所述的单个总分值,不同过滤器的分值可有效地彼此抵消,使得两个媒体项因极为不同的原因得到相似的分值。如上所述的控制过滤器权重通常对提高特定过滤器相对其它的重要性是有效的。但除了这种加权之外,特定的过滤器或过滤器类型可完全从总分值计算中移除,使得那些不同过滤器的影响不会因为总分值的总计而丢失。播放列表引擎35然后可查看组合过滤器的总分值,以及未组合过滤器的各个分值。特定过滤器的分离确保关联于这些过滤器的信息不因为来自许多过滤器的数据的总计而被忽视。例如,将关联于“喜欢”和“不喜欢”媒体项的过滤器分开可向播放列表引擎35提供附加信息。使用根据上述总计方法类似地评分的两个媒体项(但其中一个已被具体选为不喜欢项),播放列表引擎可选择“不喜欢”的媒体项,并将其排列在具有相同分值但不是“不喜欢”的媒体项之下。这提高了播放列表引擎35的灵敏度,使相似分值媒体项之间有了更大的选择度。在另一示例中,每个媒体项目分别进行如上详述的总计,然后具有相似分值(例如±10百分位等级)的那些媒体项再次根据一个或多个过滤器的特定重要性(例如“不喜欢”)进行考虑,这可进一步对相似分值的媒体项作选择和排序。
相似的计算应用于排序过滤器45,用于排序提议候选分组43的媒体项。特别地,提议候选分组43通过系统21的初始排序包括在有序播放列表49中首先考虑的种子媒体项的选择,所有其它媒体项都与该种子媒体项作比较。该种子媒体项可使用已安装过滤器的不依赖于有序播放列表49中相邻媒体项比较的结果而智能地产生,因为还尚未有有序播放列表。例如,图2中所示的“Beat Match”过滤器适合确保选择过滤器41选择的媒体项被排序为当前播放的媒体项的最后节奏类似于选定为接着回放的媒体项的开始节奏。
还值得注意的是,播放列表引擎35的过滤器79、83可在每个用户基础上考虑动作和喜好。例如,甚至在库27相同时,由第一用户使用的播放列表引擎35的一个配置和由第二用户使用的播放列表引擎的另一个配置可产生不同的结果。这是因为一些过滤器79、83会考虑每个用户数据,诸如每个用户的播放计数、所引用的喜好、以及自动评级系统使用的统计信息等。
本领域技术人员应容易理解,可使用其它评分和加权算法而不背离本发明的范围。特别地,可使用标准化分值(使得来自不同组合和数量的过滤器的结果之间的分值可作比较)、未经加权组合、以及组合值。例如,组合过滤器可在与另一过滤器(例如“播放更多听起来相像的歌曲”过滤器)组合使用时增加它自己的权重。或者,如果使用若干其它过滤器(例如若干“少播放听起来相像的歌曲”过滤器),组合过滤器的权重可降低。
在另一示例中,系统21可向用户23提供一选择元素(未示出),向用户提供“保存为要播放的”的机会。该选项存储用户23的媒体项的有序播放列表49,从而用户能在系统21上、或在不能根据本发明的在回放期间重新排序该分组的另一个媒体播放机上(例如,便携式媒体播放机(加州Santa Clara的Digital NetworksNorth America Inc.的Rio Carbon Player、加州Cupertino的Apple的Ipod)或流数字媒体播放机(Roku的Roku Soundbridge))利用该有序播放列表。然而,当在不利用在此所述系统21的排序功能的另一媒体播放机上使用有序播放列表49时,该有序播放列表将简单地以在一时间点上各媒体项的顺序来播放,没有在此所述的重新排序的优点。
用于产生媒体项的有序列表的过滤器映射选择过滤器41的过滤器79可以是各种类型的,包括以下过滤器(及其使用的相应解释)



本领域技术人员将理解,可使用其它过滤器79而不背离本发明的范围。
排序过滤器83是各种类型的,包括以下过滤器(及其使用的相应解释)


本领域技术人员将容易理解,可使用其它选择和/或排序过滤器41、45而不背离本发明的范围。
用于产生媒体项的有序列表的方法本发明还包括用于产生从媒体项库中选择的一个或多个媒体项的有序列表的方法。该方法包括根据用户-关联选择过滤器从该库中选择媒体项的分组。本方法还包括根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
在一个示例中,本方法还包括根据对过滤器参数的用户选择、确定过滤器参数的用户动作、或其组合来配置每个过滤器。
该方法还包括响应于对过滤器参数的用户选择和确定过滤器参数的用户动作的至少之一,重复上述选择和排序之一。该方法还包括在用户界面上显示有序列表的至少一部分。
在另一示例中,该方法的用户-关联选择过滤器和用户-关联排序过滤器的每一个包括两个或多个过滤器。选择和排序的每一个还包括用两个或多个过滤器过滤媒体项的每一个,向两个或多个过滤器的每一个分配权重,并根据加权过滤器对库的每个媒体项评分。该分组基于库中每个媒体项的分值产生。
用于产生媒体项的有序列表的计算机可读介质本发明还包括具有计算机可执行指令的计算机可读介质,这些计算机可执行指令用于产生从媒体项库中选择的一个或多个媒体项的有序列表。这些计算机可执行指令用于执行步骤,包括(i)根据用户-关联选择过滤器从该库中选择媒体项的分组,以及(ii)还根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。这些计算机可执行指令还包括响应于对过滤器参数的用户选择和确定过滤器参数的用户动作的至少之一,重复选择和排序之一。
通用计算设备图3示出计算机130形式的通用计算装置的一个示例。在本发明一实施例中,诸如计算机130的计算机适用于在此示出和描述的其它附图。在一示例中,上述系统3 1可体现为计算机130。计算机130还具有一个或多个处理器或处理单元132和系统存储器134。在一示例中,用于产生上述媒体项的有序列表的播放列表引擎35可体现为处理器或处理单元132。在所示实施例中,系统总线136将包括系统存储器134的各个系统组件耦合到处理器132。总线136表示若干总线结构类型中任一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用各种总线架构的任一种的处理器或本地总线。作为示例,而非限制,这些架构包括工业标准架构(ISA)总线、微信道架构(MCA)总线、扩展ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和也称为Mezzanine总线的外围部件互连(PCI)总线。
计算机130通常具有至少某些形式的计算机可读介质。包括易失性和非易失性介质、可移动和不可移动介质的计算机可读介质可以是能被计算机130访问的任何可用介质。作为示例,而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现、用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的易失性和非易失性介质、可移动和不可移动介质。在一示例中,计算机存储介质包括RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能光盘(DVD)或其它光学存储技术、磁盒、磁带、磁盘存储或其它磁性存储装置、或任何其它可用于存储所需信息并可由计算机130访问的介质。通信介质通常包括诸如载波或其它传输机制的调制数据信号中的计算机可读指令、数据结构、程序模块、或其它数据,且包括任何信息输送介质。本领域技术人员都熟悉已调制数据信号,即在信号中以对信息编码的方式设置或改变其一个或多个特征的信号。诸如有线网络或直接连线的有线介质,和诸如声学、射频、红外线和其它无线介质的无线介质是通信介质的示例。以上任何介质的组合也可包括在计算机可读介质的范围中。
系统存储器134包括可移动和/或不可移动的、易失性和/或非易失性存储器形式的计算机存储介质。在所示实施例中,系统存储器134包括诸如只读存储器(ROM)138和随机存取存储器(RAM)140。包含帮助计算机130如在起动时在元件间传送信息的基本例程的基本输入/输出系统(BIOS)142通常存储在ROM 138中。RAM 140通常包含可被处理单元132立即访问和/或现时操作的数据和/或程序模块。作为示例,而非限制,图3示出了操作系统144、应用程序146、其它程序模块148、和程序数据150。
计算机130还可包括其它可移动/不可移动、易失性/非易失性计算机存储介质。例如,图3示出了读取和写入不可移动、非易失性介质的硬盘驱动器154。图3还示出读取和写入可移动、非易失性磁盘158的磁盘驱动器156,读取和写入可移动、非易失性光盘162,诸如CD ROM或其它光学介质的光盘驱动器160。其它也可用在示例性计算环境中的可移动/不可移动、易失性/非易失性计算机存储介质包括,但不限于,如盒式磁带、闪存卡、数字多功能光盘、数字视频带、固态RAM、固态ROM等等。硬盘驱动器154、磁盘驱动器156和光盘驱动器160通常通过诸如接口166的非易失性存储器接口与系统总线136连接。
如上所述并如图3所示的驱动器或其它大容量存储装置及其相关联的计算机存储介质为计算机130提供计算机可读指令、数据结构、程序模块、和其它数据的存储。在图3中,例如,硬盘驱动器154被示为存储操作系统170、应用程序172、其它程序模块174、和程序数据176。注意这些组件可以与操作系统144、应用程序146、其它程序模块148、和程序数据150相同或不同。在此给予操作系统170、应用程序172、其它程序模块174、和程序数据176的不同序号至少说明他们是不同的副本。
用户可通过诸如键盘180和定位装置182(例如鼠标、跟踪球、笔或触摸板等)的输入装置或用户界面选择装置向计算机130输入命令和信息。其它输入装置(未示出)可包括话筒、游戏杆、游戏垫、卫星接收器、扫描仪等等。这些和其它输入装置常常通过与系统总线136耦合的用户输入接口184与处理单元132相连,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)的其它接口和总线结构连接。监视器188或其它类型的显示装置也可通过诸如视频接口190的接口与系统总线136相连。除了监视器188,计算机还可包括诸如打印机和扬声器的其它输出装置(未示出),它们通过输出外围接口(未示出)相连。在一示例中,上述用户界面25可由这类设备与显示器实现。
计算机130可以在使用与一台或多台远程计算机,诸如远程计算机194的逻辑连接的网络化环境中运行。远程计算机194可以是个人计算机、服务器、路由器、网络PC、对等装置或其它公共网络节点,而且通常包括上述与计算机130相关的许多或全部组件。图3中所描绘的逻辑连接包括局域网(LAN)196和广域网(WAN)198,但也可包括其它网络。LAN 196和WAN 198可以是有线网络、无线网络及其组合等。这样的网络化环境在办公室、企业范围计算机网络、内联网和全球计算机网络(例如因特网)上是常见的。
当用于LAN网络化环境中时,计算机130通过网络接口或适配器186与局域网196连接。当用于WAN网络化环境中时,计算机130通常包括调制解调器178或其它用于在广域网198,诸如因特网中建立通信的装置。可以是内置式或外置式的调制解调器178与系统总线136通过用户输入接口184或其它适当机制连接。在网络化环境中,与计算机130相关的程序模块或其一部分可存储在远程存储器存储装置中。作为示例,而非限制,图3示出了驻留于存储装置中的远程应用程序192。应当理解,所示网络连接是示例性的,且也可以使用其它用于在计算机间建立通信连接的技术。
通常,计算机130的数据处理器通过不同时间在计算机的各种计算机可读存储介质中存储的指令来编程。程序和操作系统通常是分布式的,例如分布于软盘或CD-ROM。从那里,它们被安装或载入到计算机的次级存储器中。执行时,它们至少部分地被载入计算机的主电子存储器。在此所述的本发明包括这些和其它各类的计算机可读存储介质,其中这些介质包含用于结合微处理器或其它数据处理器实现所述步骤的指令或程序。
为了进行说明,诸如操作系统的程序和其它可执行程序组件在此被视为离散框。然而,可以理解这种程序和组件在不同时间驻留于计算机的不同存储组件,并由计算机的数据处理器执行。
尽管结合包括计算机的示例性计算系统环境进行了描述,本发明可用多个其它通用或专用计算系统环境或配置来操作。计算系统环境并非旨在提出对本发明的使用范围或功能的任何限制。此外,计算系统环境不应解释为对示例性操作环境中示出的任一组件或其组合有任何依赖性和要求。适用于本发明的众所周知的计算系统、环境、和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持式或膝上型装置、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电器、移动电话、网络PC、小型计算机、大型计算机、包括任一上述系统或装置的分布式计算环境等。
在操作时,计算机130执行诸如上述的用于产生从媒体项的库中选择的一个或多个媒体项的有序列表。计算机130(或其组件)根据用户-关联选择过滤器从该库中选择媒体项的分组。计算机130根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
本领域技术人员将注意到,在此所示和所述的方法的执行或实行顺序不是必需,除非以其它方式指定。即,本发明人可预期,各方法的元素可以任何顺序执行,除非以其它方式指定,且这些方法可包括比在此揭示的更多或更少的元素。
当引入本发明元素或其实施例时,术语“一”、“该”以及“所述”旨在表示有一个或多个该元素。术语“包括”、“包含”和“具有”旨在内含的,并表示除了例示元素外还可有其它元素。
从以上内容可见,可实现本发明的若干目标并得到其它有利结果。
因为可在以上产品和方法中作各种改变而不背离本发明的范围,所以所述说明书中包含并在附图中示出的所有主题应解释为说明性的,并且不具有限制意义。
权利要求
1.一种用于产生从媒体项的库中选择的一个或多个媒体项的有序列表的系统,所述系统包括用于从库中产生媒体项分组的用户-关联选择过滤器;以及用于将媒体项分组的至少一部分排序成有序列表的用户-关联排序过滤器。
2.如权利要求1所述的系统,其特征在于,所述用户-关联过滤器的每一个可根据以下至少之一来配置对过滤器参数的用户选择,以及确定过滤器参数的用户动作。
3.如权利要求2所述的系统,其特征在于,所述用户动作包括与选择、访问和播放媒体项的至少之一相关的用户动作。
4.如权利要求1所述的系统,其特征在于,所述系统还包括包含所述媒体项库的数据源。
5.如权利要求1所述的系统,其特征在于,所述有序列表是“随后”播放列表。
6.如权利要求1所述的系统,其特征在于,所述用户-关联选择过滤器和所述用户-关联排序过滤器的每一个包括两个或多个过滤器,其中所述两个或多个过滤器的每一个被赋予权重,从而所述两个或多个过滤器的每一个根据其相对权重影响媒体项的过滤。
7.如权利要求6所述的系统,其特征在于,所述用户-关联选择过滤器的所述两个或多个过滤器根据加权过滤器对所述库的每个媒体项评分,从而所述分组基于所述库中每个媒体项的分值而产生。
8.如权利要求7所述的系统,其特征在于,所述库的每个媒体项基于其加权分值被赋予百分位等级。
9.如权利要求8所述的系统,其特征在于,最高得分媒体项被赋予百分位分值100,最低得分媒体项被赋予百分位分值0,且剩余媒体项的每一个基于其加权分值被赋予在所述最高得分媒体项和最低得分媒体项之间均匀分布的百分位分值。
10.如权利要求7所述的系统,其特征在于,所述用户-关联排序过滤器的所述两个或多个过滤器根据加权过滤器对所述分组的每个媒体项评分,从而所述分组的媒体项基于所述分组中每个媒体项的分值排列在有序列表中。
11.如权利要求1所述的系统,其特征在于,所述用户-关联选择过滤器包括以下至少之一空过滤器,内容过滤器,以及频率过滤器。
12.如权利要求1所述的系统,其特征在于,所述用户-关联排序过滤器包括以下至少之一空过滤器,媒体项匹配过滤器,以及收听体验过滤器。
13.如权利要求1所述的系统,其特征在于,所述过滤器适合在用户访问所述有序分组中媒体项的至少之一时,继续重新产生所述分组并对所述分组的至少一部分连续重新排序。
14.一种用于产生从媒体项库中选择的一个或多个媒体项的有序列表的方法,所述方法包括根据用户-关联选择过滤器从该库中选择媒体项的分组;以及根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
15.如权利要求14所述的方法,还包括根据对过滤器参数的用户选择以及确定过滤器参数的用户动作的至少之一来配置每个所述过滤器。
16.如权利要求15所述的方法,还包括响应于对过滤器参数的用户选择和确定过滤器参数的用户动作的至少之一,重复所述选择和排序的至少之一。
17.如权利要求14所述的方法,其特征在于,所述用户-关联选择过滤器和用户-关联排序过滤器的每一个包括两个或多个过滤器,且其中所述选择和排序的每一个包括用所述两个或多个过滤器过滤所述媒体项的每一个;向所述两个或多个过滤器的每一个分配权重;以及根据加权过滤器对库的每个媒体项评分,其中所述分组基于库中每个媒体项的分值产生。
18.如权利要求14所述的方法,还包括在用户界面上显示所述有序列表的至少一部分。
19.一种具有计算机可执行指令的计算机可读介质,所述计算机可执行指令用于产生从媒体项库中选择的一个或多个媒体项的有序列表,所述计算机可执行指令用于执行以下步骤根据用户-关联选择过滤器从该库中选择媒体项的分组;以及根据用户-关联排序过滤器将媒体项分组的至少一部分排序成有序列表。
20.如权利要求19所述的计算机可读介质,其特征在于,所述计算机可执行指令还执行下列步骤,响应于对过滤器参数的用户选择和确定过滤器参数的用户动作的至少之一,重复所述选择和排序的至少之一。
全文摘要
一种用于产生从媒体项的库中选择的一个或多个媒体项的有序列表的系统。该系统包括用于从库中产生媒体项分组的用户-关联选择过滤器。该系统还包括用于将媒体项分组的至少一部分排序成有序列表的用户-关联排序过滤器。
文档编号G06F17/30GK1838120SQ200610004200
公开日2006年9月27日 申请日期2006年2月24日 优先权日2005年3月25日
发明者D·普拉斯迪纳, J·M·凯恩, M·J·诺瓦克 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1