CN106416263A - 媒体的智能自动高速缓存 - Google Patents

媒体的智能自动高速缓存 Download PDF

Info

Publication number
CN106416263A
CN106416263A CN201580025006.7A CN201580025006A CN106416263A CN 106416263 A CN106416263 A CN 106416263A CN 201580025006 A CN201580025006 A CN 201580025006A CN 106416263 A CN106416263 A CN 106416263A
Authority
CN
China
Prior art keywords
media item
user
media
cache
item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201580025006.7A
Other languages
English (en)
Other versions
CN106416263B (zh
Inventor
布兰登·比林斯基
亚历山大·柯林斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN106416263A publication Critical patent/CN106416263A/zh
Application granted granted Critical
Publication of CN106416263B publication Critical patent/CN106416263B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4143Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4826End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4828End-user interface for program selection for searching program descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

提供允许在由用户选择任意媒体项以用于回放之前高速缓存媒体项的部分的技术、系统和计算机可读介质。基于一个或多个高速缓存因素,确定将要高速缓存的媒体项的部分,所述高速缓存因素诸如用户将选择该媒体项用于回放的可能性。因此,可以在由用户选择媒体项之后,能够在没有任何显著的缓冲或高速缓存的情况下,立即开始回放媒体项。

Description

媒体的智能自动高速缓存
背景技术
很多媒体提供服务包括各种搜索功能,例如允许用户从具体艺术家、作曲者、制作方、专辑或其它源寻找在服务上可用的内容。通常以列表呈现这样的搜索的结果,该列表允许用户播放每个结果的内容的部分或全部。例如,来自在音乐服务上执行的搜索的每个结果可以包括链接,用户能够选择该链接以开始回放匹配该用户的搜索的歌曲。然而,在用户选择这样的链接的时刻和在内容开始在用户的设备上播放的时刻之间可能有延时。不管在完成搜索和用户选择内容的项之间已流逝的时间量,延时可能是真的。这样的延时对于用户可能是不期望的,且可能减少该服务和/或该搜索功能针对用户的有用性。
发明内容
本公开主题的实施例包括用于在由用户回放前高速缓存媒体项的技术、系统和计算机可读介质。可以获取将要呈现给用户的媒体项列表且将该媒体项列表呈现给所述用户。列表可以是例如针对由用户在内容服务处执行的搜索的搜索结果。可以在用户的设备处高速缓存一个或多个媒体项的一个或多个部分。可以基于一个或多个高速缓存因素,确定每个高速缓存的部分的持续时间和定位。示例高速缓存因素包括:所述用户将选择所述第一媒体项的所确定的可能性;当所述第一媒体项的声音方面开始时的时间戳;在所述第一媒体项的波形中的显著变化的时间戳;具有幅值在阈值以上的波形的所述第一媒体项的部分;所述媒体项的评分;所述媒体项的播放计数、包含所述媒体项的播放列表数量、所述媒体项的节奏、在与所述媒体项相关联的评论字段存储的值、所述媒体项的制作方、所述媒体项的作曲者、以及与所述媒体项相关联的歌词内容。可以单独或组合使用高速缓存因素,且可以同时或连续高速缓存媒体项。可以在从用户接收对于媒体项的选择以用于回放之前高速缓存每个部分。一旦接收到这样的选择,可以播放所述媒体项的高速缓存的部分。可以诸如通过流传输(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、闪存存储器、硬盘、或能够存储电子信息的任意其它设备。存储器可以存储适合于被所述处理器执行以实现根据本公开主题的实施例的技术的指令。
已参考特定实施例为了解释的目的描述上述说明。然而,上文的示例性讨论并非旨在是排除性的或旨在将本公开主题的实施例限制到公开的精确形式。关于上述教导可以有很多修改和变体。为了解释本公开主题的实施例和其实践应用的原则而选择和描述所述实施例,以由此使得本领域技术人员能够利用这些实施例以及如可能适用于所预期的具体使用的具有各种修改的各种实施例。

Claims (20)

1.一种方法,包括:
接收将要呈现给用户的媒体项列表;
将所述媒体项列表呈现给所述用户;
针对将要呈现给用户的所述媒体项列表中的至少第一媒体项,在所述用户的设备处高速缓存所述第一媒体项的部分,其中,至少基于第一高速缓存因素而确定所述第一媒体项的所述部分,所述第一高速缓存因素从由以下组成的群组中选择:所述用户将选择所述第一媒体项的所确定的可能性;当所述第一媒体项的声音方面开始时的时间戳;在所述第一媒体项的波形中的显著变化的时间戳;以及具有幅值在阈值以上的波形的所述第一媒体项的部分;
接收来自所述用户的用以播放在所述媒体项列表中的所述第一媒体项的请求;以及
响应于来自所述用户的用以播放所述第一媒体项的所述请求,从所述媒体项的所高速缓存的部分开始,播放所述第一媒体项。
2.根据权利要求1所述的方法,其中,针对在所述媒体项列表中的至少第二媒体项,至少基于第二高速缓存因素而进一步确定在所述用户的所述设备处高速缓存的所述第二媒体项的所述部分,所述第二高速缓存因素从由以下构成的群组中选择:当所述第二媒体项的声音方面开始时的时间戳;在所述第二媒体项的波形中的显著变化的时间戳;以及具有幅值在阈值以上的波形的所述第二媒体项的部分。
3.根据权利要求1或2所述的方法,其中,针对在所述媒体项列表中的所述第一项,至少基于第二高速缓存因素而进一步确定在所述用户的所述设备处高速缓存的所述第一媒体项的所述部分,所述第二高速缓存因素从由以下组成的群组中选择:所述用户将选择所述媒体项的所确定的可能性;当所述第一媒体项的声音方面开始时的时间戳;在所述第一媒体项的波形中的显著变化的时间戳;以及具有幅值在阈值以上的波形的所述第一媒体项的部分;
其中,所述第二高速缓存因素与所述第一高速缓存因素不同。
4.根据权利要求1所述的方法,其中,针对在所述媒体项列表中的至少一个媒体项,至少基于第二高速缓存因素而进一步确定在所述用户的所述设备处高速缓存的所述媒体项的所述部分,所述第二高速缓存因素从由以下组成的群组中选择:所述媒体项的评分;所述媒体项的播放计数、包含所述媒体项的播放列表数量、所述媒体项的节奏、在与所述媒体项相关联的评论字段存储的值、所述媒体项的制作方、所述媒体项的作曲者、以及与所述媒体项相关联的歌词内容。
5.根据权利要求1、2、3或4中的任一项所述的方法,其中,将要呈现给所述用户的所述媒体项列表包括由所述用户执行的搜索的多个搜索结果。
6.根据前述权利要求中的任一项所述的方法,进一步包括:
继所述媒体项的所高速缓存的部分之后,接收所述第一媒体项的附加部分;
继所述媒体项的所高速缓存的部分之后,在连续回放中播放所述第一媒体项的所述附加部分。
7.根据权利要求1所述的方法,其中,所述媒体项的所述部分是所述媒体项的初始部分。
8.根据前述权利要求中的任一项所述的方法,其中,所述媒体项的所述部分以第一比特率被高速缓存,并且其中,所述媒体项的随后部分以不同于所述第一比特率的第二比特率被播放。
9.根据前述权利要求中的任一项所述的方法,进一步包括:
识别被确定为所述用户可能请求回放的媒体项的预计集合;
针对在所述媒体项的所述预计集合中的至少第二媒体项,在所述用户的所述设备处高速缓存所述第二媒体项的部分。
10.根据权利要求9所述的方法,其中,至少基于第二高速缓存因素而确定在所述第二媒体项内的所述部分的位置,所述第二高速缓存因素从由以下构成的群组中选择:所述用户将选择所述第二媒体项的所确定的可能性;当所述第二媒体项的声音方面开始时的时间戳;在所述第二媒体项的波形中的显著变化的时间戳;以及具有幅值在阈值以上的波形的所述第二媒体项的部分。
11.根据前述权利要求中的任一项所述的方法,其中,基于所述用户将选择所述第一媒体项的所确定的可能性,选择所述第一媒体项的所述部分的持续时间。
12.根据权利要求1所述的方法,其中,基于所述第一媒体项的所述波形的属性而确定所述第一媒体项内的所述第一媒体项的所述部分的位置。
13.根据前述权利要求中的任一项所述的方法,其中,在来自所述用户的用以播放所述第一媒体项的所述请求之前,所述第一媒体项的所述部分被高速缓存在所述用户的设备处。
14.根据权利要求13所述的方法,其中,在来自所述用户的用以播放所述第一媒体项的所述请求之前,在所述媒体项列表中的多个媒体项的部分被高速缓存在所述用户的所述设备处。
15.根据权利要求14所述的方法,其中,基于所述用户将选择所述媒体项的所确定的可能性,独立地确定所述多个媒体项中的每个媒体项的所述部分的持续时间。
16.一种计算设备,包括:
计算机可读存储器;
处理器,所述处理器被配置为:
接收将要呈现给用户的媒体项列表;
将所述媒体项列表呈现给所述用户;
针对将要呈现给用户的所述媒体项列表中的至少第一媒体项,在所述计算机可读存储器上高速缓存所述第一媒体项的部分,其中,至少基于第一高速缓存因素而确定所述第一媒体项的所述部分,所述第一高速缓存因素从由以下组成的群组中选择:所述用户将选择所述第一媒体项的所确定的可能性;当所述第一媒体项的声音方面开始时的时间戳;所述第一媒体项的波形中的显著变化的时间戳;以及具有幅值在阈值以上的波形的所述第一媒体项的部分;
接收来自所述用户的用以播放在所述媒体项列表中的所述第一媒体项的请求;以及
响应于来自所述用户的用以播放所述第一媒体项的所述请求,在所述设备上从所述媒体项的所述高速缓存的部分开始,播放所述第一媒体项。
17.根据权利要求16所述的设备,其中,针对在所述媒体项列表中的至少一个媒体项,至少基于第二高速缓存因素而进一步确定在所述设备处高速缓存的所述媒体项的所述部分,所述第二高速缓存因素从由以下组成的群组中选择:所述媒体项的评分;所述媒体项的播放计数、包含所述媒体项的播放列表数量、所述媒体项的节奏、在与所述媒体项相关联的评论字段存储的值、所述媒体项的制作方、所述媒体项的作曲者、以及与所述媒体项相关联的歌词内容。
18.根据权利要求16或17所述的设备,其中,将要呈现给所述用户的所述媒体项列表包括由所述用户执行的搜索的多个搜索结果。
19.根据权利要求16、17或18中的任一项所述的设备,所述处理器被进一步配置为:
识别被确定为所述用户可能请求回放的媒体项的预计集合;
针对在所述媒体项的预计集合中的至少第二媒体项,在所述计算机可读存储器上高速缓存所述第二媒体项的部分。
20.一种计算机可读存储设备,所述计算机可读存储设备包括指令,所述指令在被计算设备执行时,使所述计算设备执行如权利要求1至15中的任一项所述的方法。
CN201580025006.7A 2014-05-15 2015-05-11 用于媒体的智能自动高速缓存的方法和设备 Active CN106416263B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/278,156 US20150334204A1 (en) 2014-05-15 2014-05-15 Intelligent auto-caching of media
US14/278,156 2014-05-15
PCT/US2015/030173 WO2015175417A1 (en) 2014-05-15 2015-05-11 Intelligent auto-caching of media

Publications (2)

Publication Number Publication Date
CN106416263A true CN106416263A (zh) 2017-02-15
CN106416263B CN106416263B (zh) 2019-11-08

Family

ID=53180901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580025006.7A Active CN106416263B (zh) 2014-05-15 2015-05-11 用于媒体的智能自动高速缓存的方法和设备

Country Status (4)

Country Link
US (1) US20150334204A1 (zh)
EP (1) EP3143769A1 (zh)
CN (1) CN106416263B (zh)
WO (1) WO2015175417A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111417009A (zh) * 2019-01-04 2020-07-14 苹果公司 预测媒体路由

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2924688A4 (en) * 2012-10-26 2016-09-14 Sony Corp DEVICE, METHOD, PROGRAM, AND INFORMATION PROCESSING SYSTEM
US9195432B2 (en) 2013-02-26 2015-11-24 Sonos, Inc. Pre-caching of audio content
US9423998B2 (en) * 2014-03-28 2016-08-23 Spotify Ab System and method for playback of media content with audio spinner functionality
US9606620B2 (en) 2015-05-19 2017-03-28 Spotify Ab Multi-track playback of media content during repetitive motion activities
JP6574974B2 (ja) * 2015-09-29 2019-09-18 Run.Edge株式会社 動画像再生装置、動画像配信サーバ、動画像再生方法、動画像配信方法、動画像再生プログラム、及び動画像配信プログラム
US9798514B2 (en) 2016-03-09 2017-10-24 Spotify Ab System and method for color beat display in a media content environment
US10205989B2 (en) 2016-06-12 2019-02-12 Apple Inc. Optimized storage of media items
CN110830535B (zh) * 2018-08-10 2021-03-02 网宿科技股份有限公司 一种超热文件的处理方法、负载均衡设备及下载服务器
CN110225393A (zh) * 2019-05-29 2019-09-10 阿里巴巴集团控股有限公司 视频缓存方法以及装置
US20220210488A1 (en) * 2020-12-30 2022-06-30 Comcast Cable Communications, Llc Method and system for detecting and managing similar content
US11837229B1 (en) * 2021-06-30 2023-12-05 Amazon Technologies, Inc. Interaction data and processing natural language inputs

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1860545A (zh) * 2003-09-30 2006-11-08 皇家飞利浦电子股份有限公司 用于改善技巧播放性能的高速缓冲管理
CN101310252A (zh) * 2005-09-15 2008-11-19 数字层公司 用于传送媒体层的方法、系统和装置
US20100020895A1 (en) * 2007-03-06 2010-01-28 Huawei Technologies Co., Ltd. Method and device for reducing signal peak value and transmitting device
CN101834801A (zh) * 2010-05-20 2010-09-15 哈尔滨工业大学 基于缓冲池的数据缓存排序在线处理方法
US20120144099A1 (en) * 2009-04-30 2012-06-07 Velobit, Inc. Device driver deployment of similarity-based delta compression for use in a data storage system
US20120151539A1 (en) * 2010-12-09 2012-06-14 John Funge Pre-Buffering Audio Streams
WO2012172360A2 (en) * 2011-06-16 2012-12-20 Light Blue Optics Ltd Touch-sensitive display devices
US20140059156A1 (en) * 2012-08-23 2014-02-27 Amazon Technologies, Inc. Predictive caching for content

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7467137B1 (en) * 1994-09-02 2008-12-16 Wolfe Mark A System and method for information retrieval employing a preloading procedure
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server
US6067565A (en) * 1998-01-15 2000-05-23 Microsoft Corporation Technique for prefetching a web page of potential future interest in lieu of continuing a current information download
US6233682B1 (en) * 1999-01-22 2001-05-15 Bernhard Fritsch Distribution of musical products by a web site vendor over the internet
US6850970B2 (en) * 2001-04-04 2005-02-01 Nktomi Corporation Approach for caching electronic products
US7386357B2 (en) * 2002-09-30 2008-06-10 Hewlett-Packard Development Company, L.P. System and method for generating an audio thumbnail of an audio track
US7797064B2 (en) * 2002-12-13 2010-09-14 Stephen Loomis Apparatus and method for skipping songs without delay
US20090013260A1 (en) * 2007-07-06 2009-01-08 Martin Keith D Intelligent music track selection in a networked environment
US20090112975A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Pre-fetching in distributed computing environments
US8677018B2 (en) * 2008-08-25 2014-03-18 Google Inc. Parallel, side-effect based DNS pre-caching
US9406341B2 (en) * 2011-10-01 2016-08-02 Google Inc. Audio file processing to reduce latencies in play start times for cloud served audio files
US8826153B2 (en) * 2011-10-04 2014-09-02 Google Inc. Speculative actions based on user dwell time over selectable content
US9344515B2 (en) * 2013-12-10 2016-05-17 Cisco Technology, Inc. Social-driven precaching of accessible objects
US9971844B2 (en) * 2014-01-30 2018-05-15 Apple Inc. Adaptive image loading

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1860545A (zh) * 2003-09-30 2006-11-08 皇家飞利浦电子股份有限公司 用于改善技巧播放性能的高速缓冲管理
CN101310252A (zh) * 2005-09-15 2008-11-19 数字层公司 用于传送媒体层的方法、系统和装置
US20100020895A1 (en) * 2007-03-06 2010-01-28 Huawei Technologies Co., Ltd. Method and device for reducing signal peak value and transmitting device
US20120144099A1 (en) * 2009-04-30 2012-06-07 Velobit, Inc. Device driver deployment of similarity-based delta compression for use in a data storage system
CN101834801A (zh) * 2010-05-20 2010-09-15 哈尔滨工业大学 基于缓冲池的数据缓存排序在线处理方法
US20120151539A1 (en) * 2010-12-09 2012-06-14 John Funge Pre-Buffering Audio Streams
WO2012172360A2 (en) * 2011-06-16 2012-12-20 Light Blue Optics Ltd Touch-sensitive display devices
US20140059156A1 (en) * 2012-08-23 2014-02-27 Amazon Technologies, Inc. Predictive caching for content

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111417009A (zh) * 2019-01-04 2020-07-14 苹果公司 预测媒体路由
US11234051B2 (en) 2019-01-04 2022-01-25 Apple Inc. Predictive media routing
US11729470B2 (en) 2019-01-04 2023-08-15 Apple Inc. Predictive media routing based on interrupt criteria

Also Published As

Publication number Publication date
EP3143769A1 (en) 2017-03-22
CN106416263B (zh) 2019-11-08
WO2015175417A1 (en) 2015-11-19
US20150334204A1 (en) 2015-11-19

Similar Documents

Publication Publication Date Title
CN106416263B (zh) 用于媒体的智能自动高速缓存的方法和设备
JP5232304B2 (ja) 類似性データに基づいてプレイリストを生成するシステム及び方法
CN1967695B (zh) 信息处理装置、再现装置、通信方法、再现方法及计算机程序
US10333876B2 (en) Method and system for communicating between a sender and a recipient via a personalized message including an audio clip extracted from a pre-existing recording
CN110175245A (zh) 多媒体推荐方法、装置、设备及存储介质
US11709583B2 (en) Method, system and computer program product for navigating digital media content
US10560410B2 (en) Method and system for communicating between a sender and a recipient via a personalized message including an audio clip extracted from a pre-existing recording
US20120296908A1 (en) Appapatus and method for generating a collection profile and for communicating based on the collection profile
US20070038672A1 (en) Single action media playlist generation
US20090005141A1 (en) Personalized Multiplayer Media Game or Quiz
WO2014039396A1 (en) Automatically generating music playlists based on an implicitly selected seed
JP2007164078A (ja) 楽曲再生装置および楽曲情報配信サーバ
CN102473183A (zh) 内容推荐系统、内容推荐方法、内容推荐设备以及信息存储介质
US20100287071A1 (en) Computer based media access method and system
US20130024547A1 (en) Information processing apparatus, information processing system, information processing method, and program
US20140229828A1 (en) Creating playlists
US9299331B1 (en) Techniques for selecting musical content for playback
CN102163220B (zh) 歌曲过渡元数据
CN108920585A (zh) 音乐推荐的方法及装置、计算机可读存储介质
CN105898426A (zh) 多媒体内容处理方法、装置及服务器
CN106599059A (zh) 一种添加歌曲的方法和装置
US20110066554A1 (en) Methods of media asset distribution by employing electronic apparatus
JP6326917B2 (ja) サーバ装置、会議振り返りシステム、及び会議振り返り方法
CN114390299A (zh) 歌曲点播方法、装置、设备及计算机可读存储介质
KR20100137658A (ko) 모바일 단말의 음원 재생 시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

GR01 Patent grant
GR01 Patent grant