用于提供内容给多种类型的客户装置的堆积流 【发明领域】
本发明一般涉及用于从电子学上将媒体文件分配给回放装置的方法和设备,更具体而言,涉及一种用于从电子上以多质量水平将媒体文件分配给回放装置的方法和设备。
【发明背景】
已知在本领域中有许多装置能将原始的经编码的数据流分配或发送给接收装置。接收装置本身能接收原始数据流,将其解码并且产生对应于输入数据流地输出数据流。由接收装置产生的输出数据流可具有与输入数据流相同或较之为低的质量。
这种类型的技术的一个特定实例是由RealNetworksTM用于在互联网上分配音频和视频文件的系统。该系统利用了流动媒体的优点——对用于实时在互联网上回放的诸如音频或视频文件的媒体文件的压缩——以允许用户在互联网上观看视频文件或收听音频文件。压缩通常被用于使互联网带宽的使用最小。在音频文件的情况下,首先使用例如被称为Real EncoderTM的软件包来编码文件以便于在互联网上传输,该软件包使用一系列的压缩/解压缩算法或CODEC以Real AudioTM格式来编码文件。Real AudioTM文件的优点在于它们是相对小的,因此它们的使用需要较小的带宽。
Real EncoderTM软件给了用户为不同调制解调器速度而编码音频文件的选项。一般而言,文件被编码的调制解调器速度越高,数据将流动得越快,并且它将进行流动的质量越高。然而,以特定调制解调器速度被编码的文件将仅可由配备了能以等于或大于文件被编码的速度的速度来操作的调制解调器和互联网连接的人访问。由于目前有各种调制解调器和互联网连接速度在使用,常常有必要以多个速度来编码相同的音频文件以适应公众的不同调制解调器速度。为了允许用户访问文件,Real NetworksTM提供了被称为Real PlayerTM的软件播放器,其可用于互联网上的免费下载。Real PlayerTM软件包括带宽流通算法(bandwidth negotiation algorithm),其根据用户的连接速度来定制流动音频文件的呈现质量。
如以上所述,带宽限制已典型地需要音频和视频文件的传输包含至少一个压缩步骤,在其中原始文件被压缩成较适合于传输的较小大小,这是通过使用一个或多个压缩算法而实现的过程。最常用的压缩算法具有至少一些程度的损失,也就是说,在其被压缩然后被解压缩之后,至少一些数据从原始文件中被损失。尽管一些压缩算法尝试以基本上将不影响随后经解压缩的文件的音频或视频质量的方式来限制数据损失,其它算法接受某种程度的损失以换取提高的数据传递速率。
一个常用的压缩算法是MPEG,由运动图像专家组开发的压缩标准。它最经常地被用于CD-ROM和万维网创作材料(authoringmaterial)。MPEG-1,一个特定的MPEG种类,典型地将未压缩文件的数据大小减小到百分之一,由此大大提高数据传递速率。尽管MPEG-1是相当有损的算法,但它能产生比JPEG和MVC1高的压缩比。MPEG-1很适合于视频出版,其中视频被压缩一次并被解压缩多次以便于回放。
损失亦已在用于商业利益的一些设置中被采用。具体而言,有一些网站具有免费和高级(premium)内容,其中免费内容可由公众访问而高级内容仅可由付费的订户访问。这样的内容可包括图片或视频文件,其可主要在其被发送给用户的损失程度上不同,其中高级内容具有较低程度的损失并因此具有较高程度的分辨率。典型地,使用这种途径的网站在以较高采样速率编码的一个媒体文件集合中建立高级内容,而在以较低采样速率编码的另一个媒体文件集合中建立损失较大的内容,后面集合的文件是可由公众访问而无需预订权利的那些。
尽管被用于适应不同调制解调器速度或互联网用户的不同订户权利的所述方法适用于许多方面,它亦具有一些固有的低效。例如,存储为不同调制解调器速度或订户权利而编码的相同内容的多个媒体文件的当前需要涉及了所存数据中的许多冗余。当考虑到即使平均大小音乐互联网站点亦可包含成千上万的音频和/或视频文件以便由其订户或用户来下载并且这些文件即使被压缩也相当大时,这些冗余转变成对额外数据存储能力的大量需要和对带宽的大浪费。因此在本领域需要一种用于在互联网上或在类似通信介质上分配媒体文件的方法,该方法消除了所述冗余。
有关互联网上媒体文件的传递的另一个问题是由带宽限制产生的。在一些互联网站点,可用于用户的数据流的损失程度或质量不仅是用户调制解调器速度的函数而且是在用户访问该站点时在该站点可用的带宽的函数。如果几个用户碰巧要在相同时间访问该站点,则带宽限制可导致特定用户接收以比该用户否则能接收的低的速度被编码的数据流,即使是在附加带宽在对话期间变得可用(例如,由于一些用户注销)时。这一部分是由于为不同访问速度而编码的相同媒体文件的多个副本存在于所述站点上。因此,一旦用户开始从以特定速度被编码的特定文件接收数据,则目前没有简单的方式可用于用户以使其无缝地转移到以较高采样速率被编码的文件。目前亦没有简单的方法可用于用户以使其在带宽可用性在对话期间降低时无缝地转移到以较低采样速率被编码的文件。因此,在本领域中需要一种系统和方法,其根据当前带宽可用性而无缝地转移流向接受者的数据的质量水平。
如以下所述,这些和其它需要可由本发明来满足。
发明概述
在一个方面中,本发明涉及一种以各种质量水平将诸如音频、视频或复用(multiplexed)的文件的媒体文件分配给回放或流动装置的方法,并且涉及一种适合于实施该方法的系统。依照本发明的这个方面,提供了堆积的数据文件,其可提供用于相同内容的多水平信息质量(例如低、中和高)。优选的是,数据文件的层次是这样的,即通过以下来避免数据冗余:例如依照采样速率、频率或一些其它适当的参数或选择准则将该数据文件分成至少第一和第二数据集合,从而可通过从较高或较低数量的数据集合采样将数据流的质量水平向上调或向下调。这样,在一个特定实施例中,第一数据集合包括以第一采样速率产生的数据点,而第二数据集合包括不是第一数据集合的组成的以第二采样速率产生的数据点。在另一个特定实施例中,第一数据集合对应于属于第一频率范围的数据点,而第二数据集合对应于属于比第一频率范围高的第二频率范围的数据点。第三数据集合亦被提供,其对应于属于比第一频率范围低的第三频率范围的数据点。依照该方法被流向接受者的信息的质量然后可通过简单地改变数据点被获得的数据集合或“堆”的数量来调节。这样,例如,如果接受者在特定时间点正仅从第一数据集合接收数据并且想要增加可用于接受者的信息的质量(例如,由于附加带宽变得可用,由于接受者可接收数据的速率增加,或者由于接受者获得预订权利),则如果有必要,在传输期间可无缝地调节数据流以从第一数据集合和一个或多个附加数据集合或堆发送信息给用户,从而增加数据流的有效采样速率和/或频率带宽并提高其质量。类似地,如果在传输期间由于类似原因而变得有必要降低数据流的质量,则在传输期间可无缝地调节数据流以减小接受者从中接收信息的数据集合的数量。
在另一个方面中,本发明涉及一种媒体文件,如音频、视频或复用文件,其中媒体文件被分成至少第一和第二数据集合。媒体文件被安排以使数据流可从该文件产生,并且该数据流的质量可通过改变被采样的数据集合的数量来改变。优选的是,数据集合相互排斥以避免冗余。可依照采样速率、频率或一些其它适当的参数将媒体数据分成数据集合,从而可通过分别从较高或较低数量的数据集合采样将数据流的质量水平向上调或向下调。如果例如依照采样速率来分离媒体数据,则第一数据集合可包括以第一采样速率产生的数据点,而第二数据集合可包括以第一采样速率产生的数据点和以第二采样速率产生的数据点之间的差异(即,第二数据集合包含不是第一数据集合的组成的以第二采样速率产生的所有数据点)。采样速率的差异可处于任何所需间隔(例如,8位、16位或32位间隔),并且媒体文件可包括任何所需数量的数据集合。这种类型的媒体文件特别很适合于互联网或类似介质上媒体的流动,因此如果有必要,则在传输期间可容易且无缝地调节数据流的质量以反映带宽可用性、接受者在给定时间点以给定采样速率接收数据的能力、和/或接受者的预订权利,如果有的话。
在又一个方面中,本发明涉及一种产生诸如音频、视频或复用文件的媒体文件的方法。依照该方法,提供了媒体数据集合。然后该媒体数据在采样速率、频率或一些其它适当参数的基础上被分成至少第一和第二组数据点。这样,例如,第一和第二组数据可包括分别以第一和第二截然不同的采样速率产生的数据。然后基于第一和第二组数据点产生媒体文件。
在再一个方面中,本发明涉及适合于实施本发明的任何上述方面的软件和包含这种软件的有形介质。
在另一个方面中,本发明涉及做事(do business)的方法,其采用本发明的上述方面。
附图简述
图1是本发明的方法学可在其上实施的系统的示意图;并且
图2是说明本发明方法学的流程图。
详述
值得指出的是,在此对“一个实施例”或“实施例”的任何参考意味着结合实施例所描述的特定特点、结构或者特征被包括在本发明的至少一个实施例中。说明书中在各个地方的短语“在一个实施例中”的出现不一定都指相同的实施例。
依照本发明,提供了一种以各种质量水平将诸如音频、视频或者复用文件的媒体文件分配给回放或流动装置的方法。本发明特别很适合于互联网上音乐文件的分配。适合于实施该方法的系统和软件亦被提供。
本发明的方法有利地利用了一种新型媒体文件,其具有被设计成消除与在互联网上分配媒体文件的现有技术方法关联的冗余的新体系结构。具体而言,在互联网上分配媒体文件的现有技术方法已典型地需要给定媒体文件以各种采样速率被编码,从而适应用户可接收数据的可变速率。这些速率变化是由于调制解调器速度、带宽可用性、预订权利和其它这样的因素而产生的。然而,以不同采样速率编码文件的这个过程固有地包含了大量的冗余。
例如,用于在互联网上流动音频文件的现有技术方案可能需要特定的音频文件以三个不同的位速率被编码:64kbps、96kbps和128kbps。假定音频文件具有近似5分钟的持续时间,这转变成对分别创建大约2、3和5兆字节大小的三个单独文件的需要。文件之间的主要差异是作为较高位速率所需的较高数量采样的结果的附加数据。这样,例如,128kbps的文件是冗余的,因为它包含在64和96kbps的文件中规定(set forth)的相同信息加上一些附加信息,并且96kbps的文件是冗余的,因为它包含在64kbps的文件中规定的相同信息加上一些附加信息。因此,在该实例中总冗余是大约5兆字节(两个较小文件的组合大小),因此总编码数据的大约50%是冗余。当考虑到可能需要为媒体分配而建立的典型互联网网站载有以多个采样速率编码的成千上万的标题时,这些冗余转变成对不必要的带宽和存储介质的过多量的需要。
这些冗余通过使用本发明的专门格式化的媒体文件而消除,所述文件包含依照例如它被获得的采样速率或它所属的频率范围而被分成多个数据集合或“堆”的媒体数据。所述分离优选地被构建以使每个相继数据集合中的数据仅包含在先前数据集合中未发现的数据点,由此消除冗余。这样,例如,媒体文件可包括第一和第二数据集合,其中第一数据集合包括以第一采样速率产生的数据点,而第二数据集合包括未在第一数据集合中发现的以不同于第一采样速率的第二采样速率产生的那些数据点。
各个堆内和/或整个文件内的数据可在时间上被协调或安排以允许在流动期间无缝地转移正被采样的堆的数量。这可通过以下来完成:例如通过依照控制整个文件的时间线来安排数据或通过沿给定时间线安排每个堆内的数据,然后协调所述堆的时间线以允许对数据的适当的顺序回放。可替换的是,文件内的每个数据点可包含时间参数以使能或促进适当的顺序回放。
在依照采样速率来分离媒体文件中的数据的情况下,文件中相继堆之间的采样速率的差异可被设置于任何所需间隔。然而,这些间隔典型地处于2到128位,优选为8到32位,且最优选为8到16位的范围内。而且,产生文件内堆或数据集合的过程中所使用的最小采样速率可根据应用的需要而被选择,但典型地将为至少16kbps,更优选为至少32kbps,最优选为至少64kbps。文件中的堆数将典型地由可用于用户的分辨率的最大量、堆之间的间隔、和所采用的最小采样速率来表示。然而,堆数将典型地处于2到大约50的范围内,优选地处于2到20的范围内,且最优选地处于3到10的范围内。
堆积可依照本发明以各种方式来完成。然而,在一个实施例中,文件中的第一或主数据堆或集合由以所采用的最低采样速率产生的所有数据点组成,其中每个连续的堆由不存在于任何先前堆中的被发现处于下一个最高采样速率的任何数据点组成。尽管被堆积的数据一般将被放到单个文件中,存在于每个堆中的数据被放到单独文件中的实施例也是可以预期的。这些单独文件可仅被主文件或包含具有最低采样速率的数据的文件指向。
在本发明的其它实施例中,可通过提供结合差异文件的第一媒体文件来实施堆积。第一媒体文件可由例如以第一采样速率编码的已知类型的媒体文件组成。第一媒体文件可通过使用一个或多个编码和/或压缩算法而产生。差异文件由尚未被包括在第一媒体文件中的以一个或多个附加采样速率采集的任何信息组成。差异文件中的数据是依照采样速率来分离或堆积的,从而使对应于给定采样速率的堆仅具有未在第一媒体文件中或对应于较低采样速率的任何堆中被发现的信息。当来自所述文件的数据被流动时,数据流包括来自第一媒体文件的数据、来自对应于用户能够进行接收的最高采样速率的堆(或者对应于用户在预订计划之下有权接收数据的最高采样速率的堆)的数据、以及来自任何中间堆的数据。
各种各样的文件格式以及关联的压缩/解压缩算法可结合本发明的这个最后实施例而被使用。它们包括但不局限于MP3、MP3 CBR、MP3VBR、RealAudio、Windows Media、MOD、669、AMS、DBM、FAR、MDL、MTM、OKT、SM3、STM、ULT、XM、AIFF、AU、MID(或MIDI)、AAC、ATRAC、VOC和WAV格式。
各种设置的MP3文件可结合本发明的该方面而被使用。这样,可使用具有9∶1的压缩比的被设置于160kbps的MP3文件,由此创建具有很低压缩和很高声音质量的MP3文件。对于该设置,1分钟的音乐将等于磁盘空间的近似1.5MB。亦可使用被设置于128kbps的MP3文件,由此创建等于CD质量声音的Windows MediaTM文件。对于该设置,1分钟的音乐将等于磁盘空间的近似1MB。亦可使用具有22∶1的压缩比的被设置于96kbps的MP3文件,由此创建具有与FM电台相同的声音质量的MP3文件。对于该设置,1分钟的音乐将等于磁盘空间的近似750k。
WindowsMedia文件亦可有利地结合本发明的该方面而被使用,这是因为这些文件可被定制于各种质量水平。典型地,5到160kbps的编码速率可用于这种文件类型。通常,以128kbps编码的WindowsMedia文件将创建等于CD质量声音的Windows Media文件。在该设置时,1分钟的音乐将等于磁盘空间的近似750k。通过比较,以64kbps编码的Windows Media文件将创建具有与FM电台相同的声音质量的Windows Media文件。
MOD文件亦可结合本发明的该方面而被使用。MOD文件创建被存储在文件本身上作为采样的声音。这些采样然后被调制,由此而得名。S3M格式被证明是最高级的mod格式,其支持变化音调的16位采样。
Real Audio文件亦可结合本发明的该方面而被使用。这些文件提供了好的声音质量,并且比一些其它文件类型如WAVE文件小得多并因此下载得比它们快。这种类型的文件需要Real Audio插件来播放。
本发明的方法学有利地利用了在此所述的新文件体系结构以使媒体文件流向接受者。该过程典型地包含接受者要接收数据的速率的初始确定。该确定可基于各种因素,包括接受者的调制解调器速度、带宽限制、和接受者的预订权利,如果有的话。进行该确定所必要的数据可通过服务器和接受者的装置之间的握手协议和/或通过登录过程来交换,所述登录过程可涉及用户ID和/或口令。接受者然后被流给主数据堆或集合以及适合于为接受者所确定的传递速率的附加堆数。这样,返回到以上讨论的实例,如果该确定仅基于调制解调器速度,则具有128kbps调制解调器的用户将被流给64kbps文件和两个附加的32位堆,而具有96kbps调制解调器的用户将被流给64kbps文件和一个附加的32位堆。如果需要,则接受者要接收数据的速率可在流动过程中被周期性地重新评价,此时可进行传递速率的适当调节。
应指出,为便于说明,对属于分离管理和数据流动所需的开销信息的附加位的可能需要被忽略。然而,本领域的技术人员将理解,使能该功能的附加信息可被构建到文件和/或数据堆中。可替换的是,这个任务可由播放器软件整体或部分地执行。
依照本发明流动数据的方法提供了一种方便的机理,用于操作具有在被提供给用户的分辨率程度上不同的预订和非预订内容的服务器。在适合于互联网预订服务的本发明该方面的一个特定实施例中,提供了被堆积的媒体文件,在其中第一堆是以服务供应商希望以没有成本或减小的成本而可用于公众的质量水平来编码的。本质上提供提高媒体文件分辨率所需的数据的附加数据堆然后仅可用于服务的订户。在该实施例的一些变化中,可用于用户的堆数是用户预订计划的函数,而在其它变化中,单个预订费用保证了用户访问他或她的调制解调器可容纳的最大数量的堆。
可替换的是,系统可被安排以使被流向非订户的堆的最大数量可被方便地限制于某个固定量,而不管用户的调制解调器速度或接收数据的能力,从而产生较低质量的音频或视频输出。相比而言,流向具有预订权利的用户的堆数可仅由订户的调制解调器速度和/或可用于流动的堆的总数来限制。
依照本发明流动数据的方法,亦提供了用于适配于带宽限制和服务器业务量波动的方便方法。具体而言,当服务器业务量低时,数据能以适合于每个用户的调制解调器的最高采样速率而流向他们。然而,随着服务器业务量增加,通过将数据流无缝地过渡到较低采样速率(例如向特定接受者发送较低数量的数据堆)由此保留可用带宽来容纳附加用户。
图1示出本发明的方法可在其上实施的系统的非限制性实例。用户的计算机11通过调制解调器13连接于互联网15。尽管示出了调制解调器,该调制解调器可以是线缆调制解调器、标准拨号调制解调器或网络接口。媒体文件被流动于其上的至服务器19的连接可通过防火墙17来获得。服务器通过内部网27与媒体文件数据库21、23和25联系。尽管示出了多个数据库,该系统可用单个数据库来实施。本发明的堆积文件被存储在数据库中,其可由用户通过标准布尔搜索引擎来查询。响应于查询并且基于用户对查询结果的选择,服务器确定对用户计算机的连接速度并选择用于流向用户的堆积文件的适当部分。一旦缓冲了初始量,用户的计算机开始播放所选的查询结果(即媒体文件)。在对用户的连接速度基于网络堵塞或其它因素而变化时,服务器依照本发明在堆积文件的各个部分之间动态地转换。这些部分的每个都表示媒体文件的不同质量版本(例如,各种采样速率)。例如,假定在建立对用户的连接时服务器的初始确定将所选文件的中等质量水平识别成最适合于用户当前连接速度,则一旦连接速度减小,服务器动态地转换至所选文件的较低质量版本,其现在看来最适合于用户的被减小的连接速度。另外,如果对用户的连接速度从最初确定的速率被提高,服务器将自动转换至较高质量的文件。这样,作为该过程的一部分,服务器监视对用户的瞬时连接速度并作为对用户的瞬时连接速度的函数而改变所选文件的质量版本。由此服务器确保了用户的最佳经历。
图2示出可被用于依照本发明而构建堆积文件的方法学的实例。在开始31处,第一数据集合以第一采样速率被采集33,第二数据集合以第二采样速率被采集35,且第三数据集合以第三采样速率被采集37。第二数据集合然后被比较于第一数据集合并且任何冗余从第二数据集合被去除39。第三数据集合然后被比较于第一和第二数据集合并且任何冗余从第三数据集合被去除41。
依照本发明的这个方面,最低采样速率数据集合表示给定文件的基本质量版本,而其它数据集合表示层次结构中给定文件的接下来较高的质量版本与基本版本之间的差异文件。这样,本发明提供了每媒体文件最小量的存储以及这种文件的数据库的总存储容量的伴随减小。而且,本发明提供了一种方便的技术,用于在给定媒体文件的各种质量水平之间动态转换而无需冗余的存储。
尽管在此具体说明和描述了各种实施例,应理解,本发明的修改和变化被包含在以上所讲中并且处于所附权利要求的权限之内而不背离本发明的精神和预期范围。例如,尽管几个实施例描述了对特定数据格式和协议的使用,任何格式或协议都是满足要求的。而且,尽管一些实施例描述了计算机、客户、服务器等的特定实施例,其它类型亦可由在此所述的发明采用。此外,这些实例不应被理解成限制了权利要求所覆盖的本发明的修改和变化,而仅仅是为了说明可能的变化。