媒体的智能自动高速缓存的制作方法

文档序号:11142993阅读:274来源:国知局
媒体的智能自动高速缓存的制造方法与工艺

很多媒体提供服务包括各种搜索功能,例如允许用户从具体艺术家、作曲者、制作方、专辑或其它源寻找在服务上可用的内容。通常以列表呈现这样的搜索的结果,该列表允许用户播放每个结果的内容的部分或全部。例如,来自在音乐服务上执行的搜索的每个结果可以包括链接,用户能够选择该链接以开始回放匹配该用户的搜索的歌曲。然而,在用户选择这样的链接的时刻和在内容开始在用户的设备上播放的时刻之间可能有延时。不管在完成搜索和用户选择内容的项之间已流逝的时间量,延时可能是真的。这样的延时对于用户可能是不期望的,且可能减少该服务和/或该搜索功能针对用户的有用性。



技术实现要素:

本公开主题的实施例包括用于在由用户回放前高速缓存媒体项的技术、系统和计算机可读介质。可以获取将要呈现给用户的媒体项列表且将该媒体项列表呈现给所述用户。列表可以是例如针对由用户在内容服务处执行的搜索的搜索结果。可以在用户的设备处高速缓存一个或多个媒体项的一个或多个部分。可以基于一个或多个高速缓存因素,确定每个高速缓存的部分的持续时间和定位。示例高速缓存因素包括:所述用户将选择所述第一媒体项的所确定的可能性;当所述第一媒体项的声音方面开始时的时间戳;在所述第一媒体项的波形中的显著变化的时间戳;具有幅值在阈值以上的波形的所述第一媒体项的部分;所述媒体项的评分;所述媒体项的播放计数、包含所述媒体项的播放列表数量、所述媒体项的节奏、在与所述媒体项相关联的评论字段存储的值、所述媒体项的制作方、所述媒体项的作曲者、以及与所述媒体项相关联的歌词内容。可以单独或组合使用高速缓存因素,且可以同时或连续高速缓存媒体项。可以在从用户接收对于媒体项的选择以用于回放之前高速缓存每个部分。一旦接收到这样的选择,可以播放所述媒体项的高速缓存的部分。可以诸如通过流传输(stream)或者以其它方式获取媒体项的剩余部分,播放媒体项的附加部分。

根据本公开主题的实施例,提供用于接收将要呈现给用户的媒体项列表和用于将所述媒体项呈现给用户的装置。提供用于基于一个或多个高速缓存因素,高速缓存在所述列表中的一个或多个媒体项的部分的装置。也提供用于接收来自用户的用以播放已被高速缓存的媒体项的请求、和用于在用户选择所述媒体项之后播放所述媒体项的高速缓存的部分的装置。

本公开主题的实施例可以允许在由用户选择之后,在没有对用户来说明显的缓冲或高速缓存的情况下,立即播放媒体项。本公开主题的附加特征、优点和实施例可以从下述具体实施方式、附图和权利要求中阐述或显而易见。另外,应理解前述发明内容和下述具体实施方式均为示例性的,且旨在不限制权利要求的范围的情况下提供进一步解释。

附图说明

包括附图以对本公开主题提供进一步的理解,附图被并入本说明书且组成说明书的一部分。附图也图示本公开主题的实施例,且与具体实施方式一起用于解释本公开主题的实施例的原理。未试图比可能对本公开主题和其可以被实践的各种方式的基本理解所必要的详细程度更加详细地示出结构细节。

图1示出根据本公开主题的实施例的用于高速缓存媒体项的示例过程。

图2示出根据本公开主题的实施例的示例系统配置。

图3示出根据本公开主题的实施例的示例计算设备。

具体实施方式

根据本公开主题的实施例,当向用户呈现用户可能想要播放的诸如歌曲的媒体项列表时,可以在用户选择任意项以用于回放之前,高速缓存(cache)一个或多个项的各种部分。多数媒体播放器将在用户选择播放内容之后尽快开始缓冲(buffer)项。本公开主题的实施例可以在用户选择具体项以用于回放之前积极地高速缓存用户可能想要播放的内容,使得不需要缓冲。可以基于一个或多个高速缓存因素,在用户的设备高速缓存每个项的部分。相似地,可以基于一个或多个高速缓存因素,选择被高速缓存的每个项内的具体定位。例如,可能期望高速缓存歌曲中的以下部分:包括声音,或包括歌曲中被识别为特别有趣的部分,诸如渐强、副歌等。在一些情况中,高速缓存可能对用户可用的每个项的大部分可能是不期望或者不可行的,尤其是在不能提前知道被呈现给用户的项的情景下。例如,较之于其中提前知道被呈现给用户的内容的“推荐歌曲”的界面,当用户在诸如音乐商店的内容服务中搜索内容时,可能更难预知用户在搜索之后可能播放的歌曲或歌曲类型。本公开主题的实施例提供用于当项集合被呈现给用户时,在用户选择任何项以用于回放以前,识别将高速缓存的媒体项的部分和量的改进的技术。

在传统的内容分发系统(诸如音乐或电影商店)中,当用户执行搜索时,多数应用将会在艺术家、专辑、歌曲、流派、播放列表等的语料库中搜索,且将返回匹配结果的集合。该结果可能具有基础元数据(专辑封面、标题、艺术家)、指向任一个导览页面(在艺术家、专辑、流派或播放列表的情况下)的链接、和指向第一音频或视频文件的链接。在一些情况下,当搜索结果返回到用户界面时,该界面可以开始高速缓存结果中的第一项,以使如果用户选择播放它们的话其更容易可用。然而,例如如果用户未选择初始结果中的一个,这可能是低效的。根据本公开主题的实施例,可以从最相关的项开始,高速缓存在结果中返回的每个媒体文件的部分。高速缓存的部分可以在媒体项的起始,或可以位于媒体项的中间的某个位置。

可以以若干方式确定将要高速缓存的每个媒体项的持续时间。例如,一种技术可以尝试高速缓存被呈现给用户的项列表(诸如,搜索结果列表)中的每个项的部分。为此,可以诸如基于该用户或用户群组的历史平均选择时间,确定用户选择列表中的项所花费的时间量。随后可以将选择前预期的时间量在呈现给用户的列表中的项之间平均分割。例如,如果用户平均花费5秒来选择项以用于回放,且被呈现给用户的项列表包括10个项,列表中每个项可以花最多500ms的时间高速缓存。

作为另一个示例,可以基于在用户的设备上媒体播放器使用的缓冲区的大小,确定将要高速缓存的每个媒体项的量。多数媒体播放器将在回放开始前在特定秒数内缓冲歌曲或视频。如在本文进一步详细公开的,从最相关的项开始,且在相关性方面逐步下降,可以高速缓存与该媒体播放器的缓冲区相等的每个媒体项的量。因此,当选择媒体项中的一个时,可以在没有对用户来说明显的初始缓冲的情况下开始回放。

另一个技术是高速缓存最可能被用户选择的那些媒体项。可以基于例如与查询有联系的用户对项的选择来确定用户选择具体项的可能性,其中所述查询与生成被呈现给用户的媒体项列表的查询相似。作为特定示例,如果当用户搜索歌曲“Wrecking Ball”时,他们有80%的可能性播放Miley Cyrus的歌曲,15%的可能性播放卡拉OK版本,且5%的可能性播放器乐版本,则可以以这个顺序高速缓存歌曲的对应版本。相似地,用户选择具体歌曲的可能性可以基于该个体用户的历史行为。例如,用户可能先前已选择对应于电影预告片(Movie Trailer)的若干媒体项。如果用户对“Iron Man”执行搜索,搜索结果可能包括歌曲“Iron Man”版本、电影“Iron Man”和电影“Iron Man 2”的预告片。基于该用户的历史,相比于歌曲和电影可以更优先地高速缓存“Iron Man 2”的预告片。

另一个技术是当用户正在完成对一个或多个内容项的购买时,高速缓存内容。例如,如果用户正在通过内容提供服务购买歌曲或视频,在用户正在完成付款时,可以高速缓存正被购买的内容的开头。因此,当用户完成购买之后,可以在没有对用户来说明显的任何延迟的情况下,尽快开始回放该内容。

关于媒体项的持续时间,可以基于若干因素确定将要高速缓存的媒体项的特定部分。例如,可能期望高速缓存这样的媒体项的部分,其包括被认为对用户来说有趣的项的部分,诸如包括歌词的歌曲的部分、歌曲中特别大声或快速的部分等。可以通过例如基于对歌曲的音频内容的分析、歌曲内的已知歌词和/或时间暗示等,确定包括歌词的歌曲片段的起始和结束,来识别这样的媒体项的部分。作为另一个示例,可以分析媒体项的波形以识别波形中在短时间段内有很多变化或具有显著变化的、或具有诸如相对于媒体项的平均幅值超过阈值的幅值的项的部分。

可以使用其它的高速缓存因素来确定将高速缓存的媒体项的定位和/或持续时间。例如,可以使用媒体服务中与媒体项相关的元数据,诸如评分、播放计数、和/或包含媒体项的播放列表的数量。通常地,可以确定由该用户或由其它用户的更流行的或更高评分的媒体项,用户更可能选择该项以用于回放。因此,更高的流行度或评分可以指示应该在更不流行或更低评分的项以前高速缓存该媒体项,和/或应该高速缓存该媒体项的更多部分。也可以使用与所述媒体项的内容有关的其它元数据,诸如媒体项的节奏、制作方、作曲家或艺术家、媒体项中的歌词的内容、和/或在与该媒体项相关联的评论字段中存储的值。例如,可以更早和/或更大量地高速缓存具有基于历史用户选择指示该媒体项更可能被播放的元数据的媒体项。

总体上,可以单独使用或与其它高速缓存因素结合使用一个或多个高速缓存因素以确定在具体的列表中将要高速缓存的媒体项的范围和顺序。也可以顺序地使用不同的高速缓存因素。例如,可以基于用户将选择媒体项的可能性高速缓存一个或多个媒体项的初始部分。如果当该初始高速缓存完成后,用户尚未选择媒体项以用于回放,基于项的流行度或任意其它高速缓存因素,可以进一步高速缓存该一个或多个媒体项,或可以部分或完全地高速缓存附加的媒体项。

图1示出用于高速缓存诸如通过内容提供服务呈现给用户的媒体项列表中的媒体项的示例技术。在110,可以获取将要呈现给用户的媒体项列表。该列表可以是例如由用户在内容提供服务执行的搜索的搜索结果列表,或已被用户访问的诸如“推荐的”媒体项、现有的播放列表等的自动生成的项列表。在120,可以诸如经由被用户访问的用户界面,将列表呈现给用户。在一些配置中,该列表可以被传送给用户的设备,诸如移动电话、平板、膝上型或桌面型计算机等,媒体播放器被安装在该设备上或在该设备上被呈现给该用户。作为特定示例,用户可以经由用户设备上的web浏览器或类似应用,访问该列表和随后的回放特征,所述用户设备与远程内容服务通信,所述远程内容服务提供媒体项列表,且用户设备可以从所述远程内容服务获取和高速缓存内容。

在130,可以高速缓存列表中的一个或多个媒体项的部分。在一些配置中,可以在列表被呈现给用户之前高速缓存媒体项。然而,典型地,列表将相对快地被呈现,使得在该列表被呈现给用户之前可能很少或没有执行高速缓存。注意,在用户选择媒体项中的任何一个以用于在设备上回放之前,可以在用户的设备上部分地或完整地高速缓存一个或多个媒体项。因此,当用户选择具体媒体项以用于回放时,该媒体项将在从用户的视角没有任何明显的缓冲的情况下,立即开始在用户的设备上播放。如先前描述的,可以基于多个因素确定将要高速缓存的每个媒体项的每个部分的持续时间和定位。通常,每个高速缓存的部分可以具有在媒体项内的持续时间和定位,该持续时间和定位基于一个或多个高速缓存因素被选择。用于选择媒体项的高速缓存的部分的持续时间和定位的示例高速缓存因素可以包括:用户将选择媒体项以用于回放的可能性、媒体项的声音方面的时间戳、在媒体项的波形中显著的音频变化或其他变化、和具有在阈值量以上的波形幅值的媒体项的定位。可以使用一个或多个高速缓存因素,以针对高速缓存媒体项的部分而选择每个媒体项的部分,以及选择被高速缓存的特定媒体项和其被高速缓存的顺序。在一些配置中,可以例如基于可用于高速缓存的带宽、各个媒体项的持续时间和比特率等,连续地或同时地高速缓存在列表中的多个媒体项。

在140,可以从用户接收对于回放媒体项的请求,诸如对媒体项的选择或与媒体项相关联的用户界面元素。作为响应,可以从该媒体项的高速缓存的部分开始,播放所选择的媒体项。随后,在本领域中已知,当正在播放该高速缓存的部分时,可以获取该媒体项的附加部分,且当到达高速缓存的部分的结束时,将其“缝合”在一起。在一些配置中,可以以比初始高速缓存的部分更高的比特率,获取该媒体项的随后部分。例如,如果附加带宽可用,或如果确定附加部分可以无干扰地从远程内容服务流传输(stream),可以在初始高速缓存的部分已经完成播放之后流传输或以其他方式播放高品质版本的媒体项。

图2示出根据本公开主题的实施例的示例系统。诸如智能电话、平板、膝上型计算机等的用户设备210可以与诸如音乐和/或视频商店220的媒体服务通信。设备210可以经由诸如因特网的网络201,使用任何传统协议和网络连接,与所述服务通信。内容服务220可以与一个或多个媒体源230通信,或可以包括一个或多个媒体源230。例如,服务220可以通过市场或相似服务使得来自各个内容制作方的内容对用户设备210可用。媒体230可以包括如前述的各种元数据,诸如描述内容、质量、音频和/或视频属性、和由服务220提供给用户设备210的媒体项的其它属性的元数据。

用户设备210可以提供能够向用户显示媒体项列表的界面240。在本领域中容易理解,这样的列表可以包括识别每个媒体项的图形和/或文字。列表中的每个项可以被用户选择,诸如经由允许用户轻敲、点击或以其它方式选择每个项的触摸屏幕或传统计算机界面。如前述,在列表240被呈现给用户之后,且在用户选择列表240中的一个媒体项以用于回放之前,可以高速缓存一个或多个媒体项的部分。例如,如果确定与“Party Chicken”相比该用户更可能播放歌曲“交响乐1”,可以首先高速缓存“交响乐1”,和/或可以高速缓存“交响乐1”的较多部分。可以由用户设备210、服务220或其组合作出要高速缓存哪些媒体项的哪个部分的确定。例如,媒体服务220可以提供如前述的元数据,设备210可以使用这些元数据来确定要高速缓存哪些媒体项、以什么顺序、和/或要高速缓存该媒体项的哪个部分。相似地,媒体服务220可以提供向设备210指示应高速缓存哪些媒体项、以什么顺序、和/或要高速缓存每个媒体项的部分的指示,该指示诸如针对在界面240中列出的每个媒体项的排名。作为特定示例,在设备210或服务220上操作的搜索过程或其它过程可以返回列表中的媒体项的指示,诸如URL。可以以相关性顺序返回项,诸如首先返回最相关的结果,其中基于先前描述的高速缓存因素确定该相关性顺序。作为特定示例,相关性顺序可以指示用户将选择列表中的每个媒体项的可能性。可以创建包括指向搜索结果的指针和高速缓存的媒体项的部分的键值对的列表,且可以将其提供给用户设备210。如果用户开始在搜索结果页面上播放歌曲,可以将高速缓存的媒体项、指向完整项的URL、和所述项的持续时间提供给媒体播放器。该媒体播放器可以随后基于该部分的持续时间,将高速缓存的部分与完整媒体项缝合在一起。当用户正选择要播放列表中的哪个项时,可以在设备210获取和高速缓存列表中媒体项的附加部分。这样,当用户选择另一个媒体项以用于回放时,该项可以直接开始且在没有缓冲的情况下继续。更一般地,用户设备210可以接收媒体项列表以及相关联的排名和高速缓存数据,这允许设备210在用户选择一个或多个媒体项以用于回放之前,从媒体服务220高速缓存所述媒体项的部分。

在此处讨论的系统收集关于用户的个人信息、或利用个人信息的场景中,可以向用户提供控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社会行为或活动、职业、用户偏好或用户的当前定位的信息)、或控制是否和/或如何从内容服务器接收可能与用户更相关的内容的机会。另外,某些数据在其被存储或使用前可以以一种或多种方式处理,使得个人可识别信息被移除。例如,可以处理用户的身份和/或搜索历史使得没有可以针对该用户而确定的个人可识别信息,或用户的媒体偏好可以被一般化使得不能确定用户的具体购买历史。这样,用户可以对此处公开的系统怎样关于用户收集和使用信息进行控制。

本公开主题的实施例可以在各种组件和网络架构中实现,且与各种组件和网络架构一起使用。图3是适合于实现本公开主题的实施例的示例计算设备20,诸如便携式计算设备或如此处公开的媒体服务。计算设备20可以是例如桌面型或膝上型计算机、或诸如智能手机、平板等的移动计算设备。计算设备20可以包括总线21,该总线21将计算设备20的主要组件互相连接,该主要组件诸如中央处理器24、存储器27(诸如随机存取存储器(RAM)、只读存储器(ROM)、闪存RAM等)、用户显示器22(诸如显示屏幕)、用户输入接口26、固定储存器23(诸如硬盘驱动、闪存存储等)、可移除媒体组件25和网络接口29,该用户输入界面26可以包括一个或多个控制器和诸如键盘、鼠标、触摸屏幕等的相关联的用户输入设备,该可移除媒体组件25可操作以控制和接收光盘、闪存驱动等,该网络接口29可操作以经由合适的网络连接与一个或多个远程设备通信。

总线21允许在中央处理器24和一个或多个存储器组件之间的数据通信,存储器组件如前述可以包括RAM、ROM和其它存储器。典型地,RAM是主存储器,操作系统和应用程序被载入其中。ROM或闪存存储器组件可以除其它代码之外包括基本输入输出系统(BIOS),BIOS控制诸如与外围组件的交互的基本硬件操作。位于计算设备20的应用通常被存储在计算机可读介质上且经由计算机可读介质被访问,该计算机可读介质诸如硬盘驱动(例如,固定储存器23)、光驱、软盘或其它存储介质。

固定储存器23可以与计算设备20集成,或可以分离且通过其它接口访问。网络接口29可以经由有线或无线连接提供对远程服务器的直接连接。本领域技术人员容易理解,网络接口29可以使用任意合适的技术和协议,包括数字蜂窝电话、WiFi、蓝牙(R)、近场等,以提供这样的连接。例如,如将在下文被更详细地描述,网络接口29可以允许计算设备经由一个或多个局域网、广域网或其它通信网络与其它计算机通信。

更普遍地,本公开主题的各种实施例可以包括计算机实现的过程和用于实践这些过程的装置或以计算机实现的过程和用于实践这些过程的装置的形式被实施。实施例也可以以计算机程序产品的形式被实施,所述计算机程序产品具有计算机程序代码,所述计算机程序代码包含实施在非暂时性和/或易失性介质(诸如,软盘、CD-ROM、硬盘驱动、USB(通用串行总线)驱动、或任何其它机器可读存储介质)中的指令,使得当所述计算机程序代码被载入计算机且被计算机执行时,该计算机成为用于实践本公开主题的实施例的装置。实施例也可以以计算机程序代码的形式被实施,例如,无论在存储介质中存储、被载入计算机和/或被计算机执行、或在一些传输介质上被传送,诸如通过电力线或电缆、通过光纤、或经由电磁辐射,使得当计算机程序代码被载入计算机且被计算机执行时,该计算机成为用于实践本公开主题的实施例的装置。当在通用微处理器上被实现时,计算机程序代码片段配置该微处理器以创建专用逻辑电路。

在一些配置中,存储在计算机可读存储介质上的计算机可读指令集合可以被通用处理器实现,其可以将通用处理器或包括通用处理器的设备转换成被配置为实现或执行所述指令的专用设备。可以使用可以包括处理器(诸如,通用微处理器和/或专用集成电路(ASIC))的硬件实现实施例,处理器以硬件和/或固件实施根据本公开主题的实施例的技术的全部或部分。处理器可以被耦合到存储器,诸如RAM、ROM、闪存存储器、硬盘、或能够存储电子信息的任意其它设备。存储器可以存储适合于被所述处理器执行以实现根据本公开主题的实施例的技术的指令。

已参考特定实施例为了解释的目的描述上述说明。然而,上文的示例性讨论并非旨在是排除性的或旨在将本公开主题的实施例限制到公开的精确形式。关于上述教导可以有很多修改和变体。为了解释本公开主题的实施例和其实践应用的原则而选择和描述所述实施例,以由此使得本领域技术人员能够利用这些实施例以及如可能适用于所预期的具体使用的具有各种修改的各种实施例。

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