CN103841429A - 媒体文件的各个段的非时序缓冲 - Google Patents

媒体文件的各个段的非时序缓冲 Download PDF

Info

Publication number
CN103841429A
CN103841429A CN201310612679.5A CN201310612679A CN103841429A CN 103841429 A CN103841429 A CN 103841429A CN 201310612679 A CN201310612679 A CN 201310612679A CN 103841429 A CN103841429 A CN 103841429A
Authority
CN
China
Prior art keywords
media file
section
user
ftp
time
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
CN201310612679.5A
Other languages
English (en)
Other versions
CN103841429B (zh
Inventor
J·H·班克
L·M·W·布拉德雷
孙琳
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103841429A publication Critical patent/CN103841429A/zh
Application granted granted Critical
Publication of CN103841429B publication Critical patent/CN103841429B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • 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
    • 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

Abstract

处理媒体文件包括从客户端系统接收对于媒体文件的请求,并使用处理器根据用于媒体文件的多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲。将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统。该非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。

Description

媒体文件的各个段的非时序缓冲
技术领域
本发明一般地涉及处理媒体文件,更详细地,本发明涉及媒体文件的各段的非时序缓冲。
背景技术
当客户端系统通过诸如因特网的网络来访问媒体文件时,该媒体文件通常被缓冲。媒体文件被按照通过从媒体文件的开头进行缓冲而开始的时间顺序被缓冲。例如,当尝试观看视频媒体文件或收听音频媒体文件时,媒体文件的一部分被缓冲在客户端系统内。被缓冲的部分是媒体文件的开始以及更具体地是来自媒体文件的重放材料的前几秒。
当使用客户端系统的用户希望快速跳过媒体文件至感兴趣的特定位置时,使得媒体文件的被缓冲部分无用,因为用户可能已跳过媒体文件的被缓冲部分。结果,用户在从媒体文件中的新选择位置重新开始重放时经历延迟。
发明内容
一种方法包括从客户端系统接收对于媒体文件的请求,并使用处理器根据用于媒体文件的多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲。该方法还包括将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统。该非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。
另一方法包括使用处理器包括对网页内的媒体文件的参考,其中,所述媒体文件具有多个段,以及在该参考内包括指示媒体文件的各个段将被按照非时间顺序缓冲的参数。
一种系统包括被编程为发起可执行操作的处理器。该可执行操作包括从客户端系统接收对于媒体文件的请求,根据用于媒体文件的所述多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲。该可执行操作还包括将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统。所述非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。
另一种系统包括被编程为发起可执行操作的处理器。该可执行操作包括将参考包括在对网页内的媒体文件中,其中,所述媒体文件具有多个段,以及在参考内包括指示媒体文件的各个段将按照非时间顺序被缓冲的参数。
一种计算机程序产品包括具有用其来实施的程序代码的计算机可读存储介质。该程序代码可被处理器执行以执行一种方法。该方法包括使用处理器从客户端系统接收对于媒体文件的请求,使用处理器根据用于媒体文件的多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲。该方法还包括使用处理器将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统。该非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。
附图说明
图1是用于媒体文件的重放的示例性计算环境。
图2是图1中所示的媒体服务器的示例性实施方式。
图3是图示出用于导出历史重放数据和用户特定数据的处理技术的示例的框图。
图4是图示出用于媒体文件的历史重放数据的示例的表。
图5是图示出处理媒体文件的示例性方法的流程图。
图6是图示出用于媒体文件的重放的示例性用户界面的框图。
具体实施方式
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等)、或硬件和软件方面结合的实施方式。这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码,实施,例如存储在其上。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是-—但不限于-—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘驱动器(HDD)、固态驱动器(SSD)、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、数字通用光盘(DVD)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或器件使用或者与其结合使用。
计算机可读信号介质可以包括具有例如用基带或作为载波的一部分在其中体现的计算机可读程序代码的传播数据信号。此类传播信号可以采取多种形式中的任何一个,包括但不限于电磁、光或其任意适当的组合。计算机可读信号介质可以是任何计算机可读介质,其并非计算机可读存储介质且能够发送、传播或传输程序以供指令执行系统、装置或设备使用或与之结合使用。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括—但不限于—无线、有线、光纤、电缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如JavaTM、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络-—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令通过计算机或其它可编程数据处理装置的处理器执行,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品(manufacture)。
还可以将计算机程序指令加载到计算机、其他可编程数据处理装置或其他设备上以促使一系列操作步骤在计算机、其他可编程装置或其他设备上执行以产生计算机实现过程,使得在计算机或其他可编程设备上执行的指令提供用于实现在流程图和/或框图方框中指定的功能/动作的过程。
为了图示和简单和明了,图中所示的元件不一定按比例描绘。例如,为了明了起见可以将某些元件的尺寸相对于其他元件而放大。此外,在认为适当的情况下,在各图中重复附图标记以指示相应、类似或相同的特征。
在本说明书内公开的一个或多个实施例涉及缓冲媒体文件。更具体地,一个或多个实施例涉及按非时间顺序出于重放的目的缓冲媒体文件的各部分。根据在本说明书内公开的发明装置,用于媒体文件的历史重放数据能够被处理以确定、例如预测用户感兴趣的媒体文件的各段。这些段能够根据至少部分地基于用于媒体文件的历史重放数据的用户对于每个段的兴趣水平而被排序。该段然后按照所确定的非时间顺序被缓冲、例如发送到客户端系统。
图1是用于媒体文件的重放的示例性计算环境100。计算环境100包括通过网络125与媒体服务器10通信链接的客户端系统105。客户端系统105和媒体服务器110中的每一个被实现为执行适当操作软件、例如程序代码的数据处理系统。该程序代码在被执行时对每个相应的数据处理系统进行编程以执行或发起在本说明书内描述的各种功能和/或操作。网络125能够实现为或包括多种不同网络中的任意网络,诸如WAN、LAN、无线网络、移动网络、虚拟专用网络(VPN)、因特网等。
如图1中所示,媒体服务器110被配置成通过网络125向客户端系统105提供媒体文件115。“媒体文件”指的是作为文件被数字地存储在数据存储设备内的数字化音频、数字化视频、数字化视听内容等。媒体文件115包括在图1内表示为段1、2、3和4的两个或更多不同段。媒体文件115的各段的特定数目并不意图作为在本说明书内公开的实施例的限制。在一方面,各段是静态的。在另一方面,各段是动态确定的。在任何情况下,媒体文件115与历史重放数据120相关联。在一方面,历史重放数据120被实现为用于媒体文件115的元数据。
历史重放数据120被示为与媒体文件115分离。在一方面,用于媒体文件的历史重放数据能够与媒体文件分开地存储,例如在如图1中所示的数据库或其他文件和/或数据结构中。然而,在另一方面,历史重放数据120的一个或多个或所有部分能够被存储在媒体文件115内或作为其一部分。
历史重放数据120指定用于媒体文件115的各种段、即段1-4中的每一个的信息。在图示中,并且如图1中所示,历史重放数据120包括表示为区段1-4的不同区段。历史重放数据120的区段1指定用于媒体文件115的段1的历史重放数据。区段2指定用于段2的历史重放数据。区段3指定用于段3的历史重放数据。区段4指定用于段4的历史重放数据。
历史重放数据120能够指定关于媒体文件115的多种不同类型的信息。能够基于每个段来指定历史重放数据120。在一个示例中,历史重放数据120包括消费数据。消费数据指示用户如何消费、例如观看或收听媒体文件115。消费数据能够被指定为统计信息,并且能够指示例如哪些用户观看媒体文件115的给定段、哪些用户跳过(例如,并未观看)媒体文件115的给定段、用户在哪里停止消费(例如,观看或收听)媒体文件115的特定段、用户在媒体文件115的一个段内的哪里开始快进、在媒体文件115的一个段内的哪里停止快进、媒体文件115的哪些段被观看不止一次等。
在另一示例中,历史重放数据120包括诸如每个用户是否“喜欢”、“不喜欢”、“欣赏”特定段的情绪指示符。情绪指示符还能够指定用户对给定段没有评论。在另一示例中,历史重放数据包括指示媒体文件115的内容或主题的关键字。该关键字能够被实现为标签或加标签系统,其中一个或多个关键字与媒体文件115和/或其一个或多个段相关联。
能够跨多个不同的用户、跨所有用户、仅跨特定的用户群组等将历史重放数据120聚合。在一个示例中,历史重放数据120能够包括用于跨各群组的许多用户的数据,但是能够根据特定群组和/或子群组被过滤。在另一示例中,能够对历史重放数据120进行过滤,使得仅考虑与客户端系统105的用户在同一社交网络中的用户的重放信息。客户系统105、例如请求媒体文件115的客户端系统的用户有时在本说明书内被称为“请求用户”。在任何情况下,所讨论的历史重放数据120的各种示例能够基于每个段来详细说明。下面参考本说明书内的其余图来更详细地描述历史重放数据120及其使用。
在图1中所示的示例中,媒体服务器110对用于媒体文件115的段1-4中的每一个的历史重放数据120执行分析。在一方面,将关于客户端系统105、例如客户端系统105的用户的一个或多个属性结合到历史重放数据120的分析中。术语“用户”指的是正在操作诸如客户系统105的数据处理系统的人。响应于该分析,媒体服务器110出于缓冲的目的确定将提供给客户端系统105的段1-4的顺序。
术语“缓冲”指的是将数据预加载到数据处理系统的存储器(例如,缓冲器)中。例如,当将媒体文件115从媒体服务器110流式传输到客户端系统105时,缓冲指的是下载一定量的媒体文件115。在一个方面,媒体文件115的一个或多个段在在客户系统105内或由客户端系统105播放媒体文件115的任何部分之前被下载到客户端系统105。在存储器中始终具有各段或各段的一部分、例如在音频媒体文件情况下的音频样本或在视频媒体文件情况下的视频帧的提前供应,防止在正在播放媒体文件115的同时在传输中存在瞬间延迟的情况下的中断。
术语“流式传输”指的是一种其中媒体文件115能够在该媒体文件115仍由媒体服务器110提供的同时由客户端系统105来播放的技术。被流式传输的媒体文件能够在该媒体文件仍从诸如媒体服务器110的提供者输送的同时不断地被用户接收或被呈现给用户。同样地,客户端系统105能够在该媒体文件115从媒体服务器110接收结束之前开始媒体文件115的重放。
常规系统按时间顺序来缓冲媒体文件的各部分。随着客户端系统继续播放媒体文件,各段被按顺序下载到客户端系统,例如第一段1、后面是段2、后面是段3、后面是段4。在每个段内,所提供的样本也被按时间顺序提供给客户端系统,其假定最终用户将在不违背材料的时间顺序(例如媒体文件的自然时间线)的情况下从头到尾重放媒体文件。用于缓冲的媒体文件的各部分的时间排序假定用户将不会使用诸如快进的功能或者尝试向前跳跃至媒体文件的不同部分。实际上,时序缓冲假定媒体文件的从头到尾的不中断和连续播放,其有效地将各段按时间排序1-4以用于缓冲。
参考图1,媒体服务器110已确定非时间地用于段1-4被缓冲的不同顺序。该顺序是:段3、段1、段4以及段2。媒体服务器110按照非时间的确定顺序将媒体文件115的各段发送到客户端系统105。根据递降的兴趣水平,被缓冲的各段的顺序是首先发送被预测为用户最感兴趣的段、后面是被预测为用户其次最感兴趣的段,以此类推。在一方面,用户对各段的兴趣的预测和根据用户兴趣水平的各段的排序是基于历史重放数据120的。在另一方面,该预测是基于与用户特定数据、例如用户和/或客户端系统属性相组合的历史重放数据120,在本文中将更详细地描述。
图2是图1的媒体服务器110的示例性实施方式。媒体服务器110包括通过系统总线215或其他适当电路被耦合到存储元件210的至少一个处理器(例如,中央处理单元)。同样地,媒体服务器110能够将程序代码存储在存储元件210内。处理器205执行经由系统总线215从存储元件210访问的程序代码。在一方面,例如,媒体服务器10被实现为计算机或适合于存储和/或执行程序代码的其他可编程数据处理装置。然而,应认识到能够以任何系统的形式来实现媒体服务器110,该系统包括处理器和存储器,其能够执行和/或发起在本说明书内描述的功能和/或操作。
存储元件210可以包括一个或多个物理存储器件,诸如,例如本地存储器220和一个或多个大容量存储器件225。本地存储器220指的是一般在程序代码的实际执行期间所使用的RAM或其他非持久性存储器件。大容量存储器件225能够被实现为HDD、SSD或其他持久性数据存储器件。媒体服务器110还可以包括一个或多个高速缓冲存储器(未示出),其提供至少某些程序代码的临时存储,以便减少在执行期间必须从大容量存储器件225取回程序代码的次数。
诸如键盘230、显示器235以及指向设备240的输入/输出(110)设备可选地能够被耦合到媒体服务器110。I/O设备能够直接地或通过插入110控制器而被耦合到媒体服务器110。一个或多个网络适配器245也能够被耦合到媒体服务器110以使得媒体服务器110能够通过插入专用或公用网络被耦合到其他系统、计算机系统、远程打印机和/或远程存储设备。调制解调器、电缆调制解调器以及以太网卡是能够用于媒体服务器110的不同类型的网络适配器245的示例。
如图2中所示,存储元件210存储服务器应用程序250和适当的操作软件(例如,操作系统—未示出)。以可执行程序代码形式实现的服务器应用程序250被媒体服务器110执行,并且同样地被视为媒体服务器110的组成部分。出于图示的目的,服务器应用程序250被描述成单个应用程序。然而,应认识到,服务器应用程序250能够由一个或多个部件或应用程序组成,其协同地操作以提供在本说明书内所述的功能。
当被媒体服务器110执行时,服务器应用程序250对媒体服务器110进行编程以分析与一个或多个媒体文件相关联的历史重放数据并确定要缓冲的媒体文件的各段的顺序,例如非时间顺序。媒体服务器110然后将各段发送到客户端系统以便按照所确定的非时间顺序缓冲。同样地,服务器应用程序250、历史重放数据以及在分析关于客户端系统的历史重放数据时所使用的任何其他属性是当被采用为媒体服务器110的一部分时赋予功能的功能性数据结构。
虽然图2的架构被描述为媒体服务器110的示例性实施方式,但该架构还能够用来实现客户端系统105。然而,客户端系统105能够具有多种不同形式因数中的任何一个,例如,诸如因特网使能移动电话或移动通信设备的便携式计算设备、膝上型计算机、台式计算机、平板计算设备等。
当使用图2的架构来实现客户端系统105时,包含在其中且被执行的程序代码将是客户端操作系统和诸如浏览器、插件等的一个或多个客户端应用程序,其相互协同地操作。相应地,在确定段排序时所使用的任何客户端应用程序、历史重放和/或用户特定数据是当被采用为客户端系统105的一部分时赋予功能的功能性数据结构。
图3图示出用以导出历史重放数据335和用户特定数据340的处理技术的示例的框图。如所示,示出了一个或多个数据源。数据源包括标签数据305、评论数据310、消费数据315、日历和通信数据320、简档数据325以及社交媒体330。
一般地,标签数据305、评论数据310以及消费数据315被处理、例如聚合和/或分析而形成历史重放数据335。同样地,标签数据305、评论数据310以及消费数据315中的每一个是媒体文件特定的,并且相对于特定媒体文件是段特定的。
标签数据305包括一个或多个标签。每个标签与一般地特定媒体文件或特定媒体文件的特定段相关联。“标签”指的是分配给诸如一段媒体文件的一片信息的非分级关键字或术语(term)。采取元数据形式的标签帮助描述标签被分配到的项目。如所讨论的,标签可以是讨论标签被关联到的项目的主题或内容的关键字。相应地,例如,可以由各种用户基于每个媒体文件和/或每个段来施加一个或多个标签。加标签向统计数据提供另一维度,因为媒体服务器能够跨所有用户、某些用户等地过滤统计数据,其可以包括标签。
作为标签数据305的一部分,用于给定媒体文件和/或段的每个标签还可以与分配该标签的特定用户相关联。这允许标签与特定用户、用户群组等相关联。在另一方面,每个标签能够与媒体文件内的特定时间或位置或者特定的时间跨度相关联。时间和/或时间跨度可以具有也可以不具有与段相同的开始和结束时间。
评论数据310包括已经与特定媒体文件和/或媒体文件的段相关联的一个或多个文本评论。评论可以由用户手动地输入,例如经由客户端系统的媒体播放器,用户通过该媒体播放器来消费媒体文件。在另一方面,能够通过社交网络来提供评论,其包括例如博客、tweet、个人社交网页上的条目等。在一个示例中,评论能够明确地提供为例如喜欢或不喜欢类型的情绪指示符--通过提供这种功能的界面。在另一示例中,情绪指示符可以从评论的文本的上下文分析导出。
如所讨论的,消费数据315指定每个媒体文件和/或其段如何被一个或多个其他用户播放。
能够跨用户、用户群组以及媒体文件来处理标签数据305、评论数据310以及消费数据315以形成历史重放数据335。在一方面,历史重放数据335被媒体服务器聚合并处理。在另一方面,一个或多个其他系统能够聚合和处理历史重放数据335并使得此类数据可用于媒体服务器。
一般地,将日历和通信数据320、简档数据325以及社交数据330聚合以形成用户特定数据340,在本文中也称为用于请求用户和/或请求用户的客户端系统的“属性”。日历和通信数据320可以包括从用户的日历获取的信息,诸如过去和/或未来的会议、事件、任务等。日历和通信数据320还可以包括电子邮件消息、文本和/或即时消息等。还可以包括由个人信息管理系统所管理的其他形式的数据。可以使用上下文分析来处理各种形式的数据以施加标签、确定情绪指示符等。
简档数据325指的是用于请求用户的简档。该简档可以指定例如用户在组织内的角色、用户的职称、涉及感兴趣的主题或专业知识的一个或多个偏好等的信息。社交媒体330指的是能够从用户可以属于的一个或多个社交网络获得的帖、tweet及其他信息。在一个示例中,用户能够将用于一个或多个社交网络的证书存储在简档数据325内。具有聚合用户特定数据和/或历史重放数据的任务的特定数据处理系统能够访问社交网络以获得用于请求用户的博客帖、tweet及其他信息。
在另一示例中,存储的证书能够用来从用户所属的社交网络内的其他用户获得其他信息,诸如标签(标签数据305)、评论(评论数据310)和/或消费数据315。以这种方式,历史重放数据335能够根据用户所属的群组或社交网络来被进一步处理,这与跨所有用户被一般地观看相反。
在一方面,诸如日历和通信数据320、简档数据325和/或社交媒体330的信息能够由用户正在通过其进行工作的客户端系统、例如由被执行以播放所请求媒体文件的特定客户端侧程序异步地针对请求用户收集。以这种方式,客户端系统能够保持到诸如日历系统、社交联网站点等的一个或多个其他系统的连接以收集上述类型的数据。该数据能够被本地地存储在客户端系统内和/或与媒体服务器共享,因为它们可能被需要用于确定媒体的各段的顺序和/或用于确定媒体文件的分段。
诸如媒体服务器115和/或客户端系统105的数据处理系统生成段缓冲顺序345。在一方面,数据处理系统(无论是媒体服务器115还是客户端系统105)处理历史重放数据335以生成用于所请求媒体文件的段缓冲顺序345。此类分析能够在不考虑关于请求用户的任何用户特定数据340的情况下执行。在另一方面,数据处理系统与用户特定数据340相组合地处理历史重放数据335以处理用于所请求媒体文件的段缓冲顺序345。
在使用历史重放数据335和用户特定数据340两者时,数据处理系统能够使请求媒体文件的用户的兴趣与已经消费所请求媒体文件的其他用户的兴趣匹配。可以将诸如职称、过去会议、电子邮件、主题(例如,从过去会议、通信、任务、tweet、帖等导出的主题)的信息与来自已消费所请求媒体文件的其他用户的段特定标签数据和段特定评论数据相比较。
例如,所请求媒体文件的段具有与请求用户一样的历史重放数据的最大数目的项目指示该请求用户可能将对该段具有最高的兴趣水平且可能希望首先观看该段。在那种情况下,段缓冲顺序345将指示具有历史重放数据的最高数目的匹配项目的段将首先被缓冲。
在另一示例中,数据处理系统能够通过基于诸如博客、电子邮件、文本等用户通信内容的上下文分析来选择在此类通信中常常提到且被用户好意地关心的主题,来确定用户最感兴趣的段。能够关于社交联网数据来进行此类过程,并且其能够另外结合情绪指示符,无论是明确地定义还是通过文本评论和/或其他通信的上下文分析而确定。
图4是图示出用于媒体文件的历史重放数据400的示例的表。历史重放数据400出于图示的目的以表格形式图示出,但能够使用多种不同格式和/或数据结构中的任意一种来存储。在图4内,每行对应于历史重放数据400的一个区段。如所述,每个区段与历史重放数据400被关联到的媒体文件的一个段相关联。
在图4中所示的示例中,历史重放数据400所描述的媒体文件包括被表示为段1-6的6个段。第一列指示历史重放数据400的行所对应的特定段。在第二列中指定了用于媒体文件的每个段的时间。出于图示的目的,可以假设时间是以分钟为单位指定的,但是能够以秒、分钟的秒的组合为单位或使用另一时间基准来指定。一般地,由用于每个段的开始时间和结束时间来指定段。参考图4,第一段在时间0开始并在1分钟处结束。第二段在1分钟处开始并在2分钟处结束等等。包括全部的六个段的整个媒体文件从时间0运行至6分钟。
第三列包括关于用于媒体文件的每段的重放的统计信息。虽然聚集在单列中,但应认识到能够根据所使用的文件和/或数据结构出于存储和/或分析的目的视情况而定将统计信息的各种项目分成单独的列或字段。在图4中提供的表示并不意图作为在这方面的限制。
该统计信息是基于每个段指定的。在一个示例中,各段可以是,例如由媒体文件或另一第三方的创作者预定的。如所示,各段可以是相等时间间隔的。在另一方面,各段可以具有不同的时间间隔。例如,第一段可以是40秒,而第二段可以是两分钟。在另一示例中,可以根据主题来确定各段,其中,每段对应于不同的主题、介绍、结束、结束鸣谢等。
图4中所示的统计信息包括用于访问媒体文件的所有用户和/或用于一个或多个特定群组的历史重放数据。在所示的示例中,统计信息包括用于请求用户所属的特定社交网络的历史重放数据。例如,作为用于媒体文件的请求的一部分,该请求能够指定识别该用户的属性。根据用户的身份,媒体服务器能够确定用户所属的一个或多个群组,例如社交网络。该统计信息能够基于用户的群组或社交网络来分类或被过滤。相应地,当被过滤时,当确定请求用户的兴趣时仅考虑用于与客户端系统的用户属于同一群组、例如社交网络的其他用户的统计信息。
在图示中,在一个方面,根据用于请求用户所属的社交网络的历史重放数据来确定要缓冲的媒体文件的各段的排序。在此类示例中,媒体服务器将选择如下段顺序:段3;段2、段5;段4;段1;以及段6。由媒体服务器确定的顺序并不遵循时间顺序,而是基于哪些段被请求用户的社交网络的成员观看的预测顺序。由于该用户的社交网络的100%的成员观看了段3,所以段3是被发送以用于缓冲的第一段。被该用户的社交网络的成员其次观看最多的媒体文件段是处于90%的段2、后面是处于80%的段5等。请求用户的社交网络的成员中没有人观看段1或段6。其余数据间接地表明段6与段1相比更不受欢迎,因为用户停止观看段6,从而将段6放在最后。
在另一方面,与仅仅是与请求用户同一社交网络的成员相反,根据跨两个或更多用户群组或所有用户的历史重放数据来将媒体文件的各段排序以用于缓冲。在这种情况下,各段的顺序仍不可能是按时间的,但是可以不同于在仅考虑请求媒体文件的用户的同一社交网络时所确定的顺序。例如,当考虑用于所有用户的统计信息时,被发送用户缓冲多媒体文件的第一段是被所有用户的98%观看的段5。被发送用户缓冲的下一段是段3,其被所有用户的95%观看,后面是段2等。
在另一方面,能够根据用于请求用户的社交网络的所选群组、成员以及所有用户的历史重放数据的混合来计算由媒体服务器确定的各段的顺序。例如,正在观看一个段的社交网络或其他群组的用户的百分比可以被乘以加权因数,如正在观看该段的所有用户的百分比可以的那样。该加权因数可以是不同的。可以将两个乘积求和以确定指示对于每个段请求用户的感兴趣水平的总分数。最高得分段被媒体服务器确定为最高兴趣的段,并且将首先被缓冲,后面是具有第二最高分数的段等。
在另一方面,能够根据公式将媒体文件的各段排序,所述公式取决于观看媒体文件的至少一部分的用户的数目和用户基于每个段所表达的情绪。可以将消费(或已消费)该段的用户的百分比加上对该段表达出正面情绪的用户的百分比求和。参考图3,段2将首先被缓冲,因为95%观看且75%喜欢+5%欣赏。这将意味着段2具有173的收视率(95+73+5)。
参考段6,可以使用用户在仅10秒之后停止观看该视频段的统计信息作为用户不可能观看该段的指示符,从而促使该段被朝着用于缓冲的段顺序的结尾放置或在结尾处放置。另外,可以使用段6不具有评论的事实来减少该段的分数。评论的缺少被解释为意指段6被认为对于其他人且同样地对于请求用户而言不那么令人感兴趣。
如所讨论的,历史重放数据300可以包括一个或多个标签。在一方面,可以仅考虑来自一个或多个特定的其他用户或被指定为与请求该媒体文件的用户具有相同专门技术的其他用户的标签。当媒体文件包括具有与请求用户的简档所共有的标签的段时,媒体服务器能够确定用户对该段具有高兴趣水平。
图4图示出媒体文件的各种段和历史重放数据的各相应区段。在一方面,各段能够以静态的方式确定并保持。在那种情况下,例如,对请求该媒体文件的每个不同用户使用媒体文件的相同分段。
在另一方面,能够动态地确定媒体文件的分段。在一个示例中,基于历史重放数据来执行媒体文件的分段。在图示中,可以使历史重放数据的每个项目与开始和结束时间相关联。例如,可以使每个标签或属性与其自己的开始和结束时间相关联,从而允许媒体服务器使用历史重放数据出于缓冲的目的确定媒体文件的分段。通过确定用历史重放数据的类似或相同的开始和结束时间或间断性来确定与历史重放数据的项目相关联的媒体文件的各部分,能够确定媒体文件的分段。历史重放数据能够跨越结果得到的分段被分割。
在图示中,考虑其中所有用户中的40%观看从0至20秒且所有用户中的50%观看从20秒至1分钟的示例。一个段可以由0至20秒形成,并且另一个段由20秒至1分钟形成。可以使用观看统计或历史重放数据的项目之间的差作为段边界,无论是标签、评论消费数据等。在本示例中,边界是从跨所有用户的40%至50%的观看方面的差异导致段边界。因此,媒体文件的各段的长度和数目两者能够改变。
在另一示例中,媒体文件的分段是动态的且用户特定的。在那种情况下,特定段、例如长度和数目将根据请求该媒体文件的特定用户和用户特定数据与历史重放数据的比较而改变。如所述,与预定段相反,可以使历史重放数据的项目与开始和结束时间相关联。
在图示中,考虑其中请求用户的社交网络的40%的成员观看从0至20秒且50%的成员观看从20秒至1分钟的情况。一个段可以由0至20秒形成且另一个段由20秒至1分钟形成。在本示例中,使用与请求用户在同一社交网络内的观看用户的百分比的变化作为两个段之间的边界。因此,类似于前一示例,媒体文件的各段的长度和数目两者能够改变。
图5是图示出处理媒体文件以用于流式传输的示例性方法500的流程图。可以用参考本说明书的图1和2所述的媒体服务器来实现方法500。方法500可以在其中从多种源收集用于一个或多个媒体文件的历史重放数据并与媒体文件相关联地存储的状态下开始。
在方框505中,媒体服务器从客户端系统接收对于媒体文件的请求。通过客户端系统工作的用户例如能够选择对于特定媒体文件或具有在其中包括或参考的媒体文件的网页的链路,例如超链接。“网页”指的是由在客户端系统中执行的浏览器呈现、例如显示的一个或多个文件。网页通常被格式化为标记语言,诸如超文本标记语言(HTML),但是可以使用其他标记语言来格式化,参考其他程序部件等。
在方框510中,媒体服务器可选地确定用户特定的数据(例如,关于客户端系统的用户和/或客户端系统的一个或多个属性)。在一方面,媒体服务器获得可以作为从客户端系统接收到的请求的一部分接收的一个或多个属性。该请求可以包括例如指示操作客户端系统的请求用户的身份的标识符。在本说明书内所讨论的用户特定数据的任何项目可以被获得并包括在此请求内。
在另一方面,请求用户的客户端系统能够在操作期间将用户特定数据异步地聚合。可以不时地、周期性地等将数据发送到媒体服务器。响应于来自用户的请求,先前发送的用户特定数据可以被调用以便在将请求媒体文件的各段进行排序以用于缓冲时使用。
在方框515中,媒体服务器获得用户媒体文件的历史重放数据。媒体服务器访问参考本说明书内的图1、3和4所述的历史重放数据。如所述,从一个或多个不同的源获得历史重放数据。
在方框520中,媒体服务器可选地确定媒体文件的分段。该分段响应于对于媒体文件的请求而动态地执行。如前所述,该分段可以是也可以不是用户特定的。在方框520未被执行的情况下,所请求媒体文件的默认或预定分段存在且被使用。
在方框525中,媒体服务器确定所请求媒体文件的各段的顺序以用于缓冲。所确定的顺序是非时间顺序,其中首先提供由媒体服务器预测的对于请求用户而言将最感兴趣的段。在一方面,非时间排序在发送媒体文件的任何段之前被确定。例如,非时间排序在发送媒体文件的开头以用于重放之前被确定(且随后遵循)。
在一方面,所确定的顺序是在不考虑用户的身份或可以根据从客户端系统接收到的请求而确定的任何其他属性的情况下基于历史重放数据而确定的。例如,非时间顺序根据用于已播放媒体文件的大多数用户的重放数据被确定。
在另一方面,所确定的顺序在包括根据请求而确定的属性的同时基于历史重放数据。例如,如所讨论的,用户的身份能够被确定。该身份能够用来确定用户所属的社交网络、用户所属的其他群组、与用户相关联的标签等。可以将历史重放数据过滤成仅包括根据从其接收到请求的用户社交网络的成员而确定的用于媒体文件的历史重放数据或根据属于同一群组的其他用户确定的用于媒体文件的历史重放数据。
在另一示例中,媒体服务器能够通过识别与请求用户的类似或相同标签相关联的其他人所观看的各段或具有先前已被请求用户识别为特别感兴趣的标签的各段,来确定感兴趣的各段。匹配标签的数目越大,预测的用户对段的兴趣水平越高。如所述,可以使用算法方案,其用标签对统计播放数据加权以计算用户对各段的预测兴趣水平。如所述,被预测为具有最大兴趣的段被排序为首先用于缓冲。
应认识到的是可以使用在本说明书内被描述为用于对各段评分和/或确定用户兴趣水平的任意的各种技术,以出于缓冲的目的对各段进行排序。
在方框530中,媒体服务器按照在方框525中确定的顺序将媒体文件的各段发送到客户端系统。如所述,该顺序是非时间的。在一方面,在客户端系统并未开始媒体文件重放的情况下执行用于缓冲的各个段排序的确定以及根据该确定排序的各段的发送。由于媒体文件的重放并不是实现在本说明书内所述的技术所必需的,所以针对各段确定的顺序可以以除媒体文件的第一段之外的一个段开始。媒体服务器可以在客户端系统并未开始重放或请求重放的情况下按照非时间顺序来发送或开始发送各段以用于缓冲。
图6是图示出用于媒体文件重放的示例性用户界面(接口)(UI)600的框图。如所示的UI600本质上是图形的,并且能够在客户端系统内使用。UI600可以包括用于媒体文件的视觉内容的重放的窗口605。UI600还包括一个或多个控制,诸如倒回控制610、播放控制615以及快进控制620。
沿着右侧部分,UI600包括多个指示符625、630、635以及640。在一方面,提供了用于被请求的媒体文件的每个段的指示符。在另一方面,提供了用于被缓冲的前“N”个段的指示符,其中,“N”是整数值。指示符625-640每个指定媒体文件的特定段。各段的排序对应于其中媒体文件的各段被发送到客户端系统以用于缓冲的顺序。在本示例中,媒体文件的各段被按照以下顺序缓冲:段3、后面是段1、后面是段4、后面是段2。在一方面,用户可以例如通过选择指示符625-640中的相应一个来选择一个段以开始重放,这允许用户选择性地重放所确定的媒体文件的不同部分,并且借助于由媒体服务器确定的呈现的排序。
图6是出于图示的目的而提供的,并且并不意图作为本文公开的一个或多个实施例的限制。在另一方面,指示符625-640中的每一个可以包括每个相应段的内容的描述。该描述可以包括历史重放数据的一个或多个项目,诸如用于每个段的主题或标签、消费信息,无论是跨所有用户还是用于特定群组和/或社交网络。该描述还可以包括图解内容的媒体文件的一个或多个缩略图或图像。该描述允许请求用户确定一个段的主题。
图6还包括控制645。在所请求媒体文件的重放并未自动地开始重放的情况下,控制645的选择促使媒体文件根据其中段被缓冲的顺序来开始重放。相应地,媒体文件按照以下顺序来播放各段:段3、段1、段4,然后是段2。虽然提供了控制645,但在另一方面,可以将根据缓冲器顺序的重放设置为默认。此外,重放可以自动地开始。
在另一方面,能够直接在为媒体文件提供的请求内指定媒体文件的各段的顺序。作为图示,考虑参考用于媒体文件的链接、即超链接的网页。在链接中可以包括促进用于媒体文件的将被缓冲的各段的排序的详述(specification)的参数。例如,可以将诸如“&buffer”的参数提供为查询串参数。
在一方面,可以将该参数指定为“&buffel=bufferArray”。可以根据以下格式来指定阵列“bufferArray”:
bufferArray=<0,20,120,180,60,120,240,300,300,310,20,60,310,360>
该值指示将被缓冲的媒体文件的第一段是0秒至20秒。将被缓冲的媒体文件的下一段是从120秒至180秒。按照开始和结束时间对给出的要缓冲的后续各段是按照以下(非时间)顺序:60-120;240-300;300-310;20-60;310-360。
在一方面,可以在从媒体服务器接收到且由客户端系统再现、例如在显示器上呈现的网页中指定用于“bufferArray”的值,例如硬编码。在那种情况下,能够从媒体服务器自动地或用由“bufferArray”指定的排序响应于客户端系统请求来开始按指定顺序的各段的缓冲。
在另一方面,能够由客户端系统来确定用于“bufferArray”的值。例如,可以将用于媒体文件的历史重放数据提供为页面的一部分或者嵌入实际媒体文件内。已加载网页的客户端系统能够检测参数“&buffer”。响应于检测该参数,客户端系统确定如在本说明书内所讨论的用于缓冲的段排序。该客户端系统例如确定用于“bufferArray”的值以指定所确定的排序。如参考媒体服务器所讨论的,针对“bufferArray”所确定的值能够由客户端系统仅基于历史重放数据或存储在客户端系统中的用户特定数据与历史重放数据的组合来确定,从而导致用户特定的段的排序以用于缓冲。该值可以被提供给媒体服务器,例如一旦确定则自动地、响应于用户选择用于媒体文件的链接、作为后台进程等被提供。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在此使用的术语仅是为了描述特定实施例,且不旨在限制本发明。如在此使用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另外清楚地指明。还将理解,当在说明书中使用时,术语“包括”和/或“包含”指明存在所述的特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件和/或组件。
遍及本说明书的对“一个实施例”、“实施例”或类似语言的参考意指结合实施例所述的特定特征、结构或特性被包括于在本说明书内公开的至少一个实施例中。因此,短语“在一个实施例中”、“在实施例中”或类似语言遍及本说明书的出现可以但不一定全部参考同一实施例。
本文所使用的术语“多个”被定义为两个或超过两个。本文所使用的术语“另一”被定义为至少第二或更多。本文所使用的术语“耦合”被定义为连接,无论是在没有任何中间元件的情况下直接地还是用一个或多个中间元件间接地,除非另外指明。还可以将两个元件机械地、电气地耦合或通过通信信道、路径、网络或系统通信地链接。本文所使用的术语“和/或”指的是且涵盖相关联的所列项目中的一个或多个的任何和所有可能组合。还将理解的是虽然在本文中可以使用术语第一、第二等来描述各种元件,但这些元件不应受到这些术语的限制,因为这些数据仅仅用来将一个元件与另一个区别开,除非另外说明或上下文另外指明。
根据上下文,可以将术语“如果”理解为意指“当...时”或“在...时”或“响应于确定”或“响应于检测到”。同样地,根据上下文,可以将短于“如果确定”或“如果检测到[一个所述条件或事件]”理解成意指“当确定...时”或“响应于确定”或“当检测到[所述条件或事件]时”或“响应于检测到[所述条件或事件]”。
以下权利要求中的所有装置或步骤加功能元件的相应结构、材料、动作以及等效物(如果有的话)意图包括用于与其他权利要求要素相结合地执行功能的任何结构、材料或动作,如具体地要求保护的那样。在本说明书内公开的实施例的描述是出于举例说明和描述的目的而提出的,但并不意图是排他性的或局限于公开的本发明的形式。在不脱离本发明的实施例的范围和精神的情况下,许多修改和变更对于本领域的技术人员而言将是显而易见的。选择并描述实施例是为了最好地解释本发明的原理和实际应用,并且使得本领域的技术人员能够针对具有适合于预期的特定用途的各种修改的各种实施例来理解本发明的布置。

Claims (20)

1.一种方法,包括:
从客户端系统接收对于媒体文件的请求;
使用处理器根据用于媒体文件的多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲;以及
将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统;
其中,所述非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。
2.如权利要求1的方法,其中,发送到客户端系统的第一段不是媒体文件的按时间顺序的第一段。
3.如权利要求1的方法,还包括:
确定来自所述请求的用户特定的数据;
其中,确定媒体文件的所述多个段的非时间排序是根据来自所述请求的用户特定数据而进一步执行的。
4.如权利要求3的方法,其中,所述用户特定的数据包括客户端系统的用户的标识符,其中,只有来自属于客户端系统的用户的社交网络的其他用户的媒体文件的所述多个段的历史重放数据被用来确定所述非时间排序。
5.如权利要求1的方法,其中,各段的非时间排序是根据被分配给媒体文件的所述多个段中的至少一个段的至少一个标签而确定的。
6.如权利要求1的方法,其中,各段的非时间排序是根据被分配给媒体文件的所述多个段中的至少一个段的至少一个情绪指示符而确定的。
7.如权利要求1的方法,还包括:
响应于所述请求而确定媒体文件的分段。
8.如权利要求1的方法,其中,所述媒体文件的至少第一段的发送是在没有发起客户端系统内的媒体文件重放的情况下执行的。
9.如权利要求1的方法,还包括:
向客户端系统提供媒体文件的所述多个段的可视化,其中,所述可视化指示要被缓冲的各段的所确定的非时间排序。
10.一种方法,包括:
使用处理器将对媒体文件的参考包括在网页内,其中,所述媒体文件包括多个段;和
在该参考内包括用于指示媒体文件的各段将按照非时间顺序被缓冲的参数。
11.如权利要求10的方法,还包括:
确定用于该参数的值,其中,所述值指示媒体文件的单独段,并且其中,所述值的顺序指定媒体文件的各个段的非时间顺序以用于缓冲。
12.如权利要求11的方法,其中,所述客户端系统确定用于参数的值。
13.一种系统,包括:
处理器,被编程为发起可执行操作,所述操作包括:
从客户端系统接收对于媒体文件的请求;
根据用于媒体文件的所述多个段中的每一个段的历史重放数据来确定媒体文件的多个段的非时间排序以进行缓冲;以及
将由所述多个段的非时间排序指定的用于缓冲的媒体文件的第一段发送到客户端系统;
其中,所述非时间排序是在将媒体文件的任何段发送到客户端系统之前确定的。
14.如权利要求13的系统,其中,发送到客户端系统的第一段不是媒体文件的按时间顺序的第一段。
15.如权利要求13的系统,其中,所述处理器还被编程为发起可执行操作,包括:
确定来自所述请求的用户特定的数据;
其中,确定媒体文件的所述多个段的非时间排序是根据来自所述请求的用户特定的数据而进一步执行的。
16.如权利要求15的系统,其中,所述属性是客户端系统的用户的标识符,其中,只有来自属于客户端系统的用户的社交网络的其他用户的媒体文件的所述多个段的历史重放数据被用来确定非时间排序。
17.如权利要求13的系统,其中,所述媒体文件的至少第一段的发送是在未在客户端系统内发起媒体文件的重放的情况下执行的。
18.如权利要求13的系统,其中,所述处理器还被编程为发起可执行操作,包括:
向客户端系统提供媒体文件的所述多个段的可视化,其中,所述可视化指示要被缓冲的各个段的所确定的非时间排序。
19.一种系统,包括:
处理器,被编程为发起可执行操作,所述操作包括:
在网页内包括对媒体文件的参考,其中,所述媒体文件包括多个段;以及
在该参考内包括用于指示媒体文件的各个段将按照非时间顺序被缓冲的参数。
20.如权利要求19的系统,其中,所述处理器还被编程为发起可执行操作,包括:
确定用于该参数的值,其中,所述值指示媒体文件的单独段,并且其中,所述值的顺序指定媒体文件的各个段的非时间顺序以用于缓冲。
CN201310612679.5A 2012-11-27 2013-11-27 用于媒体文件的各个段的非时序缓冲的方法和系统 Active CN103841429B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/686,275 US10841352B2 (en) 2012-11-27 2012-11-27 Non-chronological buffering of segments of a media file
US13/686,275 2012-11-27

Publications (2)

Publication Number Publication Date
CN103841429A true CN103841429A (zh) 2014-06-04
CN103841429B CN103841429B (zh) 2018-03-09

Family

ID=50774274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310612679.5A Active CN103841429B (zh) 2012-11-27 2013-11-27 用于媒体文件的各个段的非时序缓冲的方法和系统

Country Status (2)

Country Link
US (4) US10841352B2 (zh)
CN (1) CN103841429B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454983B2 (en) 2012-11-27 2019-10-22 International Business Machines Corporation Non-chronological buffering of segments of a media file
CN110740374A (zh) * 2019-10-31 2020-01-31 广州市网星信息技术有限公司 一种多媒体数据的处理方法、装置、计算机设备和存储介质

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9665339B2 (en) 2011-12-28 2017-05-30 Sonos, Inc. Methods and systems to select an audio track
US10225300B2 (en) 2012-06-10 2019-03-05 Apple Inc. Unified playback position
US11368760B2 (en) 2012-08-17 2022-06-21 Flextronics Ap, Llc Applications generating statistics for user behavior
US8863198B2 (en) 2012-08-17 2014-10-14 Flextronics Ap, Llc Television having silos that animate content source searching and selection
US20160119675A1 (en) 2012-09-06 2016-04-28 Flextronics Ap, Llc Programming user behavior reporting
US9179199B2 (en) * 2013-03-14 2015-11-03 Apple Inc. Media playback across multiple devices
JP5306555B1 (ja) * 2013-03-26 2013-10-02 株式会社 ディー・エヌ・エー 複数のデジタルコンテンツを提供可能なシステム及びこれを用いた方法
WO2014209305A1 (en) * 2013-06-26 2014-12-31 Intel Corporation Checkpoints for media buffering
US9672213B2 (en) 2014-06-10 2017-06-06 Sonos, Inc. Providing media items from playback history
US9807436B2 (en) * 2014-07-23 2017-10-31 Rovi Guides, Inc. Systems and methods for providing media asset recommendations for a group
US11190821B2 (en) * 2016-03-02 2021-11-30 International Business Machines Corporation Methods and apparatus for alerting users to media events of interest using social media analysis
US20170366860A1 (en) * 2016-06-21 2017-12-21 Thomson Licensing Apparatus and Method for Recording Transition History and Selecting Next Playback from the Transition History
CN108334509A (zh) * 2017-01-19 2018-07-27 上海掌门科技有限公司 一种获取信息流的热门程度的方法及设备
US10798446B2 (en) * 2018-01-04 2020-10-06 International Business Machines Corporation Content narrowing of a live feed based on cognitive profiling
CN108632676B (zh) 2018-05-11 2022-02-22 腾讯科技(深圳)有限公司 图像的显示方法、装置、存储介质及电子装置
CN110545469B (zh) * 2018-05-29 2021-07-06 北京字节跳动网络技术有限公司 非流媒体文件的网页播放方法、装置及存储介质
US10848819B2 (en) * 2018-09-25 2020-11-24 Rovi Guides, Inc. Systems and methods for adjusting buffer size
US11265597B2 (en) * 2018-10-23 2022-03-01 Rovi Guides, Inc. Methods and systems for predictive buffering of related content segments
US11636855B2 (en) 2019-11-11 2023-04-25 Sonos, Inc. Media content based on operational data
US11303617B2 (en) * 2020-03-11 2022-04-12 Huawei Technologies Co., Ltd. Methods and apparatuses for oblivious transfer using trusted environment
US20220417594A1 (en) * 2021-06-29 2022-12-29 Rovi Guides, Inc. Methods and systems for generating a playlist of content items and content item segments

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010044850A1 (en) * 1998-07-22 2001-11-22 Uri Raz Method and apparatus for determining the order of streaming modules
CN1855279A (zh) * 2005-04-04 2006-11-01 恩益禧电子股份有限公司 数据记录/重放装置和方法
US20070094405A1 (en) * 2005-10-21 2007-04-26 Zhang Xinyan System and method for presenting streaming media content
CN101110844A (zh) * 2007-08-21 2008-01-23 华为技术有限公司 一种节目片段预取方法及一种对等网络节点
CN101217638A (zh) * 2007-12-28 2008-07-09 深圳市迅雷网络技术有限公司 视频文件分段下载的方法、系统及装置
US20080289006A1 (en) * 2007-05-18 2008-11-20 Musicrypt Inc. Media file distribution system and method
CN101447994A (zh) * 2008-12-30 2009-06-03 深圳市迅雷网络技术有限公司 多媒体文件的下载播放方法及设备
CN101471919A (zh) * 2007-12-29 2009-07-01 突触计算机系统(上海)有限公司 基于点对点传输协议的设备中用于下载分片的方法及装置
CN101605242A (zh) * 2008-06-13 2009-12-16 阿尔卡特朗讯公司 用于实现视频点播服务的方法、装置和系统
US20100293581A1 (en) * 2009-05-06 2010-11-18 Disney Enterprises , Inc. ( Burbank , Ca ) System and method for providing a personalized media consumption experience
US20110010421A1 (en) * 2009-07-13 2011-01-13 International Business Machines Corporation List Passing in a Background File Sharing Network
US20110145428A1 (en) * 2009-12-10 2011-06-16 Hulu Llc Method and apparatus for navigating a media program via a transcript of media program dialog
CN102447973A (zh) * 2011-10-10 2012-05-09 华为技术有限公司 一种缓存调整的方法、装置和系统
CN102546716A (zh) * 2010-12-23 2012-07-04 中国移动通信集团公司 一种缓存区管理方法、装置及流媒体点播系统

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233389B1 (en) * 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US7284033B2 (en) * 1999-12-14 2007-10-16 Imahima Inc. Systems for communicating current and future activity information among mobile internet users and methods therefor
US7327761B2 (en) * 2000-02-03 2008-02-05 Bandwiz Inc. Data streaming
US7650376B1 (en) * 2000-03-27 2010-01-19 Blumenau Trevor I Content distribution system for distributing content over a network, with particular applicability to distributing high-bandwidth content
US6701316B1 (en) * 2000-04-07 2004-03-02 Nec Corporation Method and apparatus for intelligent network bandwidth and system resource utilization for web content fetch and refresh
US6959320B2 (en) * 2000-11-06 2005-10-25 Endeavors Technology, Inc. Client-side performance optimization system for streamed applications
US7904814B2 (en) * 2001-04-19 2011-03-08 Sharp Laboratories Of America, Inc. System for presenting audio-video content
US20030114138A1 (en) * 2001-12-13 2003-06-19 Kumar Ramaswamy Apparatus, methods and articles of manufacture for wireless communication networks
US6789123B2 (en) * 2001-12-28 2004-09-07 Microsoft Corporation System and method for delivery of dynamically scalable audio/video content over a network
US7146434B2 (en) * 2002-05-15 2006-12-05 Hewlett-Packard Development Company, L.P. Method for downloading data via the internet to a browser enabled computer
US20080177994A1 (en) * 2003-01-12 2008-07-24 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows
US7324555B1 (en) * 2003-03-20 2008-01-29 Infovalue Computing, Inc. Streaming while fetching broadband video objects using heterogeneous and dynamic optimized segmentation size
US20150341812A1 (en) * 2003-08-29 2015-11-26 Ineoquest Technologies, Inc. Video quality monitoring
JP4718122B2 (ja) * 2004-04-06 2011-07-06 株式会社日立製作所 メディア配信装置
US9143572B2 (en) * 2004-09-17 2015-09-22 About, Inc. Method and system for providing content to users based on frequency of interaction
US7733868B2 (en) * 2005-01-26 2010-06-08 Internet Broadcasting Corp. Layered multicast and fair bandwidth allocation and packet prioritization
US11258531B2 (en) * 2005-04-07 2022-02-22 Opanga Networks, Inc. System and method for peak flow detection in a communication network
US8719399B2 (en) 2005-04-07 2014-05-06 Opanga Networks, Inc. Adaptive file delivery with link profiling system and method
US8214516B2 (en) * 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
FR2903259A1 (fr) * 2006-06-29 2008-01-04 Thomson Licensing Sa Procede de gestion de demandes d'acces a distance a des contenus multimedia
US8656421B2 (en) * 2006-08-21 2014-02-18 Centurylink Intellectual Property Llc System and method for controlling a network
US8498628B2 (en) * 2007-03-27 2013-07-30 Iocast Llc Content delivery system and method
US7802006B2 (en) 2007-06-13 2010-09-21 Microsoft Corporation Multi-location buffering of streaming media data
US10277956B2 (en) 2007-10-01 2019-04-30 Cabot Communications Method and apparatus for streaming digital media content and a communication system
FR2922401B1 (fr) * 2007-10-10 2010-04-16 Sagem Comm Dispositif de reception en continu de paquets de donnees audio et/ou video
US9060208B2 (en) * 2008-01-30 2015-06-16 Time Warner Cable Enterprises Llc Methods and apparatus for predictive delivery of content over a network
ATE554367T1 (de) * 2008-05-09 2012-05-15 Research In Motion Ltd Vorausschauendes herunterladen von kartendaten
US8028081B2 (en) 2008-05-23 2011-09-27 Porto Technology, Llc System and method for adaptive segment prefetching of streaming media
US8589541B2 (en) * 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US9167007B2 (en) * 2008-06-06 2015-10-20 Amazon Technologies, Inc. Stream complexity mapping
US9626363B2 (en) * 2008-06-08 2017-04-18 Apple Inc. System and method for placeshifting media playback
US20100205628A1 (en) * 2009-02-12 2010-08-12 Davis Bruce L Media processing methods and arrangements
US8271413B2 (en) * 2008-11-25 2012-09-18 Google Inc. Providing digital content based on expected user behavior
EP2457355B1 (en) * 2009-07-23 2018-08-29 Telefónica, S.A. Tracker in p2p systems with dvd functionalities
US8239495B2 (en) * 2009-11-02 2012-08-07 Broadcom Corporation Media player with integrated parallel source download technology
US8233408B2 (en) * 2009-12-10 2012-07-31 Wei Lu Mobile cloud architecture based on open wireless architecture (OWA) platform
US8774190B2 (en) * 2010-02-08 2014-07-08 Qualcomm Incorporated Enhanced resequencing of data received over a wireless communication system
WO2011139305A1 (en) * 2010-05-04 2011-11-10 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
EP2426923A1 (en) * 2010-09-02 2012-03-07 British Telecommunications Public Limited Company Adaptive streaming of video at different quality levels
US20120221382A1 (en) * 2010-09-28 2012-08-30 Adam Kidron Influence based discovery platform apparatuses, methods and systems
US9247312B2 (en) * 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
US8543454B2 (en) * 2011-02-18 2013-09-24 Bluefin Labs, Inc. Generating audience response metrics and ratings from social interest in time-based media
US9154826B2 (en) * 2011-04-06 2015-10-06 Headwater Partners Ii Llc Distributing content and service launch objects to mobile devices
JP2013009298A (ja) * 2011-05-26 2013-01-10 Sony Corp 無線通信装置、情報処理装置、通信システムおよび無線通信装置の制御方法
EP3633918B1 (en) * 2011-06-14 2021-12-08 ViaSat, Inc. Transport protocol for anticipatory content
CN102857483B (zh) * 2011-06-30 2016-06-29 国际商业机器公司 预取数据的方法、设备和装置
US9384297B2 (en) * 2011-07-28 2016-07-05 Hewlett Packard Enterprise Development Lp Systems and methods of accelerating delivery of remote content
US9253282B2 (en) * 2011-10-18 2016-02-02 Qualcomm Incorporated Method and apparatus for generating, using, or updating an enriched user profile
US8996661B1 (en) * 2012-02-09 2015-03-31 Instart Logic, Inc. Smart packaging for mobile applications
US20130275685A1 (en) * 2012-04-16 2013-10-17 International Business Machines Corporation Intelligent data pre-caching in a relational database management system
US20130282890A1 (en) * 2012-04-18 2013-10-24 Azuki Systems, Inc. In-stream collection of analytics information in a content delivery system
US9310217B2 (en) * 2012-06-12 2016-04-12 Qualcomm Incorporated Methods and systems for managing content delivery
US8849942B1 (en) * 2012-07-31 2014-09-30 Google Inc. Application programming interface for prefetching map data
US9479890B2 (en) * 2012-07-31 2016-10-25 Michael Lu Open wireless architecture (OWA) mobile cloud infrastructure and method
US9043135B2 (en) * 2012-08-31 2015-05-26 Apple Inc. Navigation system acquisition and use of cellular coverage map data
US9137125B1 (en) * 2012-10-01 2015-09-15 Google Inc. Video content pre-fetching from mobile browser
US10841352B2 (en) 2012-11-27 2020-11-17 International Business Machines Corporation Non-chronological buffering of segments of a media file
US9357021B2 (en) * 2013-03-14 2016-05-31 Comcast Cable Communications, Llc Delivery of content
US9197581B2 (en) * 2013-06-28 2015-11-24 Verizon Patent And Licensing Inc. Method and apparatus for diverting operational load on networks through entitlement profile incentives
US9197687B2 (en) * 2013-10-17 2015-11-24 Verizon Patent And Licensing Inc. Prioritized blocking of on-demand requests
US9871740B2 (en) * 2013-10-29 2018-01-16 Citrix Systems, Inc. Methods and systems for optimal delivery of internet video over wireless networks

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010044850A1 (en) * 1998-07-22 2001-11-22 Uri Raz Method and apparatus for determining the order of streaming modules
CN1855279A (zh) * 2005-04-04 2006-11-01 恩益禧电子股份有限公司 数据记录/重放装置和方法
US20070094405A1 (en) * 2005-10-21 2007-04-26 Zhang Xinyan System and method for presenting streaming media content
US20080289006A1 (en) * 2007-05-18 2008-11-20 Musicrypt Inc. Media file distribution system and method
CN101110844A (zh) * 2007-08-21 2008-01-23 华为技术有限公司 一种节目片段预取方法及一种对等网络节点
CN101217638A (zh) * 2007-12-28 2008-07-09 深圳市迅雷网络技术有限公司 视频文件分段下载的方法、系统及装置
CN101471919A (zh) * 2007-12-29 2009-07-01 突触计算机系统(上海)有限公司 基于点对点传输协议的设备中用于下载分片的方法及装置
CN101605242A (zh) * 2008-06-13 2009-12-16 阿尔卡特朗讯公司 用于实现视频点播服务的方法、装置和系统
CN101447994A (zh) * 2008-12-30 2009-06-03 深圳市迅雷网络技术有限公司 多媒体文件的下载播放方法及设备
US20100293581A1 (en) * 2009-05-06 2010-11-18 Disney Enterprises , Inc. ( Burbank , Ca ) System and method for providing a personalized media consumption experience
US20110010421A1 (en) * 2009-07-13 2011-01-13 International Business Machines Corporation List Passing in a Background File Sharing Network
US20110145428A1 (en) * 2009-12-10 2011-06-16 Hulu Llc Method and apparatus for navigating a media program via a transcript of media program dialog
CN102546716A (zh) * 2010-12-23 2012-07-04 中国移动通信集团公司 一种缓存区管理方法、装置及流媒体点播系统
CN102447973A (zh) * 2011-10-10 2012-05-09 华为技术有限公司 一种缓存调整的方法、装置和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454983B2 (en) 2012-11-27 2019-10-22 International Business Machines Corporation Non-chronological buffering of segments of a media file
US10841352B2 (en) 2012-11-27 2020-11-17 International Business Machines Corporation Non-chronological buffering of segments of a media file
US10986151B2 (en) 2012-11-27 2021-04-20 International Business Machines Corporation Non-chronological buffering of segments of a media file
US11206296B2 (en) 2012-11-27 2021-12-21 International Business Machines Corporation Non-chronological buffering of segments of a media file
CN110740374A (zh) * 2019-10-31 2020-01-31 广州市网星信息技术有限公司 一种多媒体数据的处理方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
US10841352B2 (en) 2020-11-17
US20190373037A1 (en) 2019-12-05
US11206296B2 (en) 2021-12-21
US10454983B2 (en) 2019-10-22
US20210120056A1 (en) 2021-04-22
US10986151B2 (en) 2021-04-20
US20140149555A1 (en) 2014-05-29
CN103841429B (zh) 2018-03-09
US20140149553A1 (en) 2014-05-29

Similar Documents

Publication Publication Date Title
CN103841429A (zh) 媒体文件的各个段的非时序缓冲
US11055340B2 (en) System and method for creating synopsis for multimedia content
US20150186368A1 (en) Comment-based media classification
US20140289241A1 (en) Systems and methods for generating a media value metric
US9450771B2 (en) Determining information inter-relationships from distributed group discussions
US20160105700A1 (en) Using second screen devices to augment media engagement metrics
US9552399B1 (en) Displaying information about distributed group discussions
US9158850B2 (en) Personal trends module
US9582167B2 (en) Real-time management of presentation delivery
US10796339B2 (en) Detecting expired content within slots in a user interface
US11636367B2 (en) Systems, apparatus, and methods for generating prediction sets based on a known set of features
US10044973B2 (en) Method and apparatus for providing engaging experience in an asset
US11170059B2 (en) Personalized content selection for time-constrained sessions
JP2017167752A (ja) 決定装置、決定方法及び決定プログラム
US11257000B2 (en) Systems, apparatus, and methods for generating prediction sets based on a known set of features
CN106899879B (zh) 一种多媒体数据的处理方法和装置
CN105706409B (zh) 用于增强用户对于服务的参与度的方法、设备及系统
JP5813052B2 (ja) 情報処理装置、方法及びプログラム
US20230052033A1 (en) Systems and methods for recommending content using progress bars
WO2014174913A1 (ja) 端末装置および装置のプログラム
US10856053B1 (en) Midroll breaks feedback system
US8949712B1 (en) Assigning slots to content in a pipeline
JP6069245B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6436951B2 (ja) 広告付与装置、広告付与装置の処理方法、及びプログラム
CN110555157A (zh) 内容推荐方法、内容推荐装置和电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant