更新指纹数据库的方法、客户机及服务器的制作方法

文档序号:6431361阅读:188来源:国知局

专利名称::更新指纹数据库的方法、客户机及服务器的制作方法
技术领域
:本发明涉及更新包括许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组的数据库的方法。本发明进一步涉及被安排用于更新这种数据库的文件共享客户机、服务器,并涉及包括至少一个文件共享客户机以及至少一个服务器的文件共享网络。使用人类指纹来识别人已有一百多年了。从概念上讲指纹可被看作简短的概要,它对于每一单个的人都是唯一的。近来可以看到在多媒体处理领域内对计算多媒体对象的指纹的兴趣日增。为了限定两个多媒体对象是相同的,仅比较它们的指纹,而不是比较多媒体对象本身。多媒体对象的指纹是所考虑对象的最相关的可感知特征的表示。此指纹有时候也被称为是“(健壮的)散列”。在使用指纹技术的大多数系统中,大量多媒体对象的指纹连同它们各自相关联的元数据一起被存储在数据库中。术语“元数据”指的是用于多媒体对象的诸如标题、艺术家、类型之类的信息。多媒体对象的元数据通过计算多媒体对象的指纹并使用计算出的指纹作为查找关键字或查询参数来在数据库中执行查找或查询而加以检索。然后,该查找返回与该指纹相关联的元数据。在数据库中存储用于多媒体对象的指纹,而不是存储多媒体内容本身,有着几个优点。举几个例子1.减少了对数据库的内存/外存要求。2.指纹的比较比多媒体对象本身的比较更加有效率,因为指纹基本上比对象短。3.在数据库中搜索匹配的指纹比搜索完整的多媒体对象的效率更高,因为前者涉及匹配更短的条目。4.搜索匹配的指纹更有可能成功,因为多媒体对象的细小的变化(诸如以不同格式进行编码或改变位速率)不影响到指纹。在欧洲专利申请01200505.4号(代理人案卷号为PHNL010110),以及InternationalWorkshoponContent-BasedMultimediaIndexing(在基于内容多媒体索引方面的国际专题学术讨论会),Brescia,2001年9月上发表的由JaapHaitsma、TonKalker和JobOostveen所著的文章“RobustAudioHashingForContentIdentification”中描述了一种为多媒体对象生成指纹的方法的例子。在设计这样的系统方面除了技术上的挑战外,还存在收集要放入数据库中的多媒体对象,或者至少它们的指纹的问题。例如,在音频音乐的情形下,有可能出去到记录塔(TowerReards)购买100,000张CD并直接根据CD计算指纹。这不但是一项开销大的操作,该解决方案还存在其它几种缺陷。首先,购买CD是人工操作,该项操作难以自动操作。特别地,它意味着用最新的指纹保持数据库难以自动操作。其次,人们可能不仅总是对CD的质量感兴趣,而且如果它更适合于应用,对下降的质量也感兴趣。这将意味着在把指纹存储到数据库之前,需要另外的预处理步骤。而且,人们必须获取所有歌曲的元数据,用于这些歌曲的指纹被存入数据库。这与获取指纹本身相比是一项大得多的挑战。美国公司Relatable.com出售一种数字音乐播放机,该播放机根据所播放的音乐“获悉”音乐偏好,并创建有相似的音乐偏好的人们的虚拟社区。为了获悉这些偏好,该音乐播放机搜索用户的计算机以寻找音乐文件,并为它们全体创建指纹。然后把指纹提交给中央服务器,在那里指纹在数据库中与由Relatable.com提供的元数据加以匹配。在因特网上写入http://relatable.com/tech/player.html时可得到关于Rclatable.com系统的信息。Relatable.com系统预期从用户计算机获取的元数据可能是不正确的(引用“如果你记录来自你的CD收集的音乐文件,则元数据(诸如唱片集标题、艺术家或歌曲名称之类的信息可能是不准确的。”),因此,该元数据不被音乐播放机该取。相反,Relatable.com用它自己的元数据来代替从用户收到的指纹,这样它们能够被容易地比较和处理。因此,该系统的缺点是,Relatable.com必须获取它自己的用于所有歌曲的元数据,它为了这些歌曲而从所有客户接收指纹。本发明的一个目的是提供一种符合序言的方法,该方法比已知的方法效率更高。根据本发明,该目的是以这样的方法实现的,该方法包括通过网络从连接到该网络的一文件共享客户机获取一个多媒体对象以及用于该多媒体对象的一个元数据组,根据该多媒体对象计算指纹,以及将计算出的指纹和所获取的元数据组包含到数据库中。使用该方法,不再需要主动地外出购买例如CD上的内容,或是自己找出用于内容的元数据。通过拓展对象以及可通过网络从文件共享客户机获得的元数据,能够以非常高效的方式来收集签名和元数据。这些客户机已经使这些对象可供任何人下载,因此购买这些对象已变得没有必要了。此外,典型地使这些对象与元数据可被一起获得,因此该元数据同样能被使用。在一实施例中,包含该指纹以及该元数据组的步骤包括在服务器中接收所计算出的指纹和所获取的元数据组,确定计算出的指纹是否存在于数据库中,并且如果存在,则将所获取的元数据组与所述指纹相关联,并且如果不存在,则把彼此相关联的、计算出的指纹和所获取的元数据组添加到数据库中。在由服务器维护的数据库中收集指纹以及元数据组所具有的优点在于有一单独的位置,从该位置可获取所有的元数据。在已经将许多指纹以及元数据组包含到数据库中后,中央服务器能够使该数据库的内容是可用的,因此任何人能够用指纹提交查询,以及接收作为应答的适合的元数据。在一个进一步的实施例中,一旦在数据库中足够数目的元数据组被与一特定指纹相关联,则该服务器进一步确定与所述特定指纹相关联的一确切的元数据组。已经从不同的客户机获取了与一特定指纹相关联的元数据组。出于各种原因,预望不是每个人都将为他所共享的所有多媒体对象提供正确的元数据。不过,希望具有一个与一特定指纹相关联的正确元数据的确切的组。一旦足够数目的元数据组在该数据库内是可获得的,就有可能应用过滤机制来确定该正确的元数据。在一个进一步的实施例中,该方法进一步包括把该确切的元数据组提供给至少一个客户机,从该客户机先前已经获取了与该特定指纹相关联的一个元数据组。这样,那些客户机能够更新它们的正在考虑中的歌曲的元数据。通过以这种方式提供反馈,该服务器向文件共享网络上的这些客户机提供有用的服务。本发明进一步提供一种被安排用于更新数据库的文件共享客户机,该数据库包括许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组,包括用于通过网络从连接到该网络的另一文件共享客户机获取一个多媒体对象和用于该多媒体对象的一个元数据组并且根据该多媒体对象计算指纹的装置,以及将计算出的指纹以及所获取的元数据组包含到数据库中的装置。本发明进一步提供一种服务器,该服务器被安排用于更新数据库,该数据库包含许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组,包括联网装置,用于接收计算出的指纹以及元数据组,验证装置,用于确定该计算出的指纹是否存在于数据库中,并且如果存在,则将所获取的元数据组与所述指纹相关联,而如果不存在,则把彼此相关联的所计算出的指纹和所获取的元数据组添加到数据库中。在一个实施例中,该服务器进一步包括过滤装置,用于一旦在数据库中足够数目的元数据组被与一特定指纹相关联,则确定与所述特定指纹相关联的一确切的元数据组。在一个进一步的实施例中,该服务器进一步被安排用于把该确切的元数据组提供给至少一个客户机,从该客户机先前已经获取过与该特定指纹相关联的一个元数据组。本发明还涉及一种文件共享网络,该文件共享网络包括符合本发明的至少一个文件共享客户机以及符合本发明的至少一个服务器。本发明的这些以及其它的方面将从参照附图所示的实施例的阐述中变得明显,其中图1示意性地示出包括多个客户机的文件共享网络;图2示意性地示出连接到服务器上的网络爬行者(crawler);图3更详细地示出服务器;以及图4更详细地示出文件共享客户机。贯穿附图,相同的参考数字表示相似的或对应的特征。图中所表示的一些特征典型地以软件加以实现,并且严格说来表示诸如软件模块或对象之类的软件实体。图1示意地示出包括多个文件共享客户机101、102、103、104和105的文件共享网络100。尽管这里示出的网络100是作为一在客户机101-105之间的直接连接的物理网络,但是该网络100最好被视为一种概念性的或虚拟的网络。也就是说,不必将所有的客户机101-105始终物理地或是按网络方式直接相互连接。所需要的只是一个“网络上的”客户机能够从另一个客户机获取文件或对象。而且,即使当使用直接的客户机到客户机的连接时,也不必将所有的客户机连接到所有其它的客户机上。该网络100可以包括服务器110,其为客户机101-105执行目录服务。为了连接到文件共享网络100上,客户机101向服务器110提交它想要共享的文件(或对象)的清单。服务器110合并它从连接到网络110上的所有客户机接收的清单。然后,其它客户机102-105能够连接到服务器110上并浏览所合并的清单或是搜索该清单上的具体对象。随后它们能够与具有它们所查找的对象的那个客户机联系,并直接从那个客户机获取(下载)该对象。这样,服务器110就不直接参与客户机101-105之间的文件或对象的共享。该方法在世界范围的Napster文件共享网络内是众所周知的。还有可能不用服务器110来实现网络100。在那种情形下,客户机101通过连接到已存在于网络100上的一个或多个其它的客户机102-105而连接到网络100上。客户机通过向它所连接的那些客户机发送搜索请求来搜索该网络。这些客户机检查它们的对象清单,这些对象是它们共享的,如果所请求的对象在那一清单内,则返回一结果。此外,把该请求转发给与这些客户机相连接的其它客户机。这样,该请求被分发遍及整个网络100,直到它被能够完成它的一个客户机接收到为止,或是直到所有的客户机都已经收到它并且没有任何客户机能够完成它为止。从例如Gnutella文件共享网络可以获知这一实施例。该实施例的缺点在于网络100是不可扩展的。例如,Gnutella之类的网络目前不能支持一百万个客户机。此外,如果存在许多“慢”计算机,即具有有限的到网络100的带宽、处理功率和/或内存的计算机,则该网络就变慢,可替换地,客户机101在连接到一个或多个其它客户机102-105之后,能够把它想要共享的文件或对象的清单提交给那些其它客户机102-105。然后,把该清单传递给网络100上的所有客户机。这样,所有客户机都知道了哪些客户机具有哪些可用的文件或对象,并能够直接与那个客户机联系。已知的KaZaa文件共享网络也能够不用服务器110而操作,但是为了克服上述问题而使用了两种类型的客户机超级节点以及“普通”客户机。超级节点是那些具有充足的带宽、处理功率以及内存的客户机。普通客户机通过连接到一个超级节点上从而连接到网络上,并把要共享的文件清单发送到该超级节点。超级节点具有到许多客户机的连接,此外它还连接到许多其它的超级节点上。超级节点同时也是普通的客户机。也就是说,用户的计算机是一个超级节点的事实对他是透明的。当用户想搜索文件时,他的客户机向他的客户机目前所被连接到的超级节点发送请求。该超级节点返回匹配的文件,这些匹配文件在其客户机所发送的清单内。此外,该超级节点将该请求转发给所有的、按照与上述在Gnutella实施例中所描述的方式相类似的方式与之相连接的那些超级节点。然而,由于超级节点之间的连接具有大的带宽,因此该方法比Gnutella网络要快的多。此外它能够被按比例扩展到多达数百万个客户机之多。这样的文件共享网络,典型地被称作对等或P2P文件共享网络,具有相当大的普及性。这些网络的众所周知的例子是Napster、Musiccity、Gnutella、Kazaa、Imesh以及Bearshare。一旦用户已经在其个人计算机上安装了适当的客户机软件,他们就能够共享他们的文件,并且他们能够下载被其它用户共享的文件。客户机101-105可以连接到诸如因特网之类的网络,这就方便了文件共享网络100的建立。客户机能够例如使用到另一客户机的直接TCP/IP连接来获取文件或对象。在最为普及的网络上,通常有500,000以上的人被同时连接。在写的时候,人们主要共享音乐文件(通常以MP3格式),但是电影的共享正得到流行。术语“多媒体对象”将用于表示包含音乐、歌曲、电影、TV节目、图片等等的文件。应当注意,一个多媒体对象可以由数个不同的文件组成。图2示意性地说明连接到服务器210上的网络爬行者(crawler)200。爬行者200被安排成用于获取客户机101-105在文件共享网络100上共享的多媒体对象。在本领域内将这称为“爬行”,因此将执行爬行动作的实体称为“爬行者”。为此爬行者200能被连接到文件共享网络100上。爬行者200还能够与服务器110联系以获取所有可用多媒体对象的清单,因而直接访问所有单独的客户机101-105以下载所有可用的多媒体对象。当爬行网络时,必须小心以便避免使网络100和/或网络100上单独的节点过载。当一特定的客户机使大量对象可用于共享时,爬行者200可以尝试在非常短的时间内下载所有对象。这就引入了使该特定客户机的网络连接过载的严重风险,并可能导致爬行者200被拒绝访问文件共享网络100。爬行者200还从该客户机中获取用于该多媒体对象的一个元数据组,从该客户机中它获取多媒体对象本身。通常这组元数据被包含在该多媒体对象内,或是与该多媒体对象被包含在一起,从而使得在当获取该多媒体对象时,就自动进行获取这个元数据组。例如,具有采用流行的MP3格式的音乐的多媒体对象通常在该对象末尾含有如ID3“标记”的元数据。下载完多媒体对象后,爬行者200就根据该多媒体对象计算指纹。如上所述,在01200505.4号欧洲专利申请(代理人案卷号为PHNL010110)中描述了一种计算指纹的方法,不过当然能够使用任何计算指纹的方法。可替换地,能够将爬行者200实现为安装在一个或多个客户机101-105上的硬件或软件模块,例如实现为运行于客户机101-105上的文件共享软件内的一个插件模块。于是爬行者200能够简单地通过在共享驱动器或目录上访问多媒体对象来获取它们,而不必通过网络下载它们。用于多媒体对象的该元数据组能通过简单地从共享驱动器或目录上的多媒体对象中读取元数据来类似地加以获取还能够在客户机101-105上执行指纹计算。由于为多媒体对象计算指纹可能是CPU集中的(CPU-intensive),因此现在必须小心以避免消耗过多的CPU功率。这样做会使文件共享软件的用户心烦,因为他看到这妨碍了他对系统的正常使用。指纹能够在用户请求时被计算,或者替换地在后台被计算。在后一种情形中,最好周期地扫描共享驱动器或目录以查找尚未为其计算指纹的新的多媒体对象。如果找到了任何这样的对象,则自动计算指纹。如果没有可用于这一对象的元数据,则可以提示用户输入一个元数据组。在任何情况下,一旦爬行者200已为多媒体对象计算出指纹,并且已获取了用于该多媒体对象的一个元数据组,则它将指纹以及元数据组包含到数据库211内。数据库211能够由中央服务器210来维护,如图2的实施例所示。可替换地,能够以分布式的方式来维护该数据库,如参照下面的图4将变得明显的。图3更详细地示出服务器210。在此实施例中,正是由服务器210来维护数据库211的。爬行者200现在把计算出的指纹以及所获取的元数据组提交给服务器210以便包含到数据库211中。服务器210内的联网模块301接收指纹以及元数据组。验证模块302最好是通过向数据库管理系统(DBMS)后端模块303提交查询来检查所收到的指纹是否已存在于数据库211内,模块303解析该查询,从数据库211内检索结果以及把这些结果返回给验证模块302。如果收到的指纹已存在于数据库211内,则验证模块302把元数据组提交给DBMS后端模块303,其更新数据库211以将元数据组与数据库211内已有的指纹关联。如果收到的指纹尚未存在于数据库211内,则验证模块302将计算出的指纹和所获取的元数据组提交给DBMS后端模块303,模块303把彼此相关联的指纹以及元数据组添加到数据库211内。数据库211包含指纹FP1、FP2、FP3、FP4、FP5以及各自相关联的元数据组。在图3给出的例子中,指纹FP1与MDS11组、MDS12组以及MDS13组相关联。指纹FP2与MDS21组、MDS22组以及MDS23组相关联。指纹FP3与MDS31组、MDS32组以及MDS33组相关联。指纹FP4与MDS41组、MDS42组以及MDS43组相关联,以及最后,指纹FP5与MDS51组、MDS52组以及MDS53组相关联。在某个时间点上,数据库211将包含与一个特定指纹相关联的多个元数据组。这些元数据组已经被从不同的客户机101-105获取了。出于各种原因,预望不是每个人都将为他所共享的所有多媒体对象提供正确的元数据。然而,使具有正确的元数据的一个确切的组与一个特定指纹相关联是所希望的。只要只存在一个或两个与一特定指纹相关联的元数据组,就难于确定这些组中的哪一个含有正确的元数据。然而,当为一个特定指纹收集数目足够的组时,就能够使用自动化过程以选择一个确切的组。为此目的,服务器210配备有过滤模块304,该模块被安排成用于一旦在数据库211中足够数目的元数据组与所述特定指纹相关联,则确定与一特定指纹相关联的确切的元数据组。例如,假设数据库211含有下列与一个特定指纹相关联的元数据组1.(艺术家=“Jewwel”,标题=“Hands”)2.(艺术家=“Jewel”,标题=“Hands”)3.(艺术家=“Jewel”,标题=“Hnds”)4.(艺术家=“Jewel”,标题=“Hands”)5.(艺术家=“Jewel”,标题=“Hands”)能够容易地看出,在此例子中,五组中有四组给出的艺术家的名字为“Jewel”,只有一组给出的名字为“Jewwel”。使用多数获胜的简单方法,确切的元数据组将会给出的艺术家的名字为“Jewel”。类似地,五组中有四组给出的歌曲名为“Hands”,因而确定的元数据组也会给出的歌曲名为“Hands”。当然能被对于包含在该组内的其它类型的元数据,诸如唱片集标题、出版年份、类型、艺术家网站的URL等等,相同的方法也可以使用。另外,当然也能够使用更先进的技术来根据从多个候选值中自动确定一确切值。这样的技术在智能代理领域内是常见的,在智能代理领域内它们被用于消除代理收到的信息中的噪声。它们包括决策树的修剪以及交叉验证。由什么来准确地构成“足够的数目”取决于所使用的技术。当使用多数表决时,用至少五组元数据来产生满意的结果。可以观察到,并不是所有的元数据组都必定是完整的。例如,一个元数据组可以只包含一首特定歌曲的标题和艺术家的名字,而另一个元数据组还可以包含从中获取过歌曲的那个唱片集的标题,以及该唱片集的出版年份。因此应该对元数据的单独类型执行上述过程,例如一次是针对基于所有可用的标题的标题,一次是针对基于所有可用艺术家的名字,一次是针对出版年份,等等。这样,就获得了一个确切的尽可能大范围的元数据组,即,该元数据组不仅包括标题和艺术家,而且还包括唱片集的标题以及出版年份。这样的一个大范围的确切的元数据组是最有价值的。一旦该确切的元数据组已经被确定并被与一特定指纹相关联,则与那个特定指纹相关联的其它元数据组将被从数据库211中删除。这就减小了数据库211的大小。当然也可以持续对元数据组运行后台检查。例如,诸如类型分类之类的某些数据随着时间并不总是恒定的。有可能在服务器210内追踪一特定指纹是从哪些客户机获取的。一旦用于那个特定指纹的确切元数据组已被确定,则能够将该确切的元数据组反馈给那些客户机,或者只反馈给从中获取过与该确切元数据组不对应的元数据组的那些客户机。这样,那些客户机能够更新它们的考虑中的歌曲的元数据。这是能被用于提供允许使用用户客户机生成元数据的动机的工具。服务器210能够使数据库211的至少一部分可用于其它。服务器210能够例如通过提供一搜索界面305来使该部分是可用的,客户机能够通过该搜索界面305提交指纹以及接收作为应答的元数据组。优选地,只返回与提交的指纹相关联的确切的元数据组。如果没有可用的确切元数据组,则服务器210可以返回所有与提交的指纹相关联的元数据组,或是报告没有确切的回答能够给予此搜索。从上述01200505.4号欧洲专利申请(代理人案卷号为PHNL010110),以及从01202720.7号欧洲专利申请(代理人案卷号为PHNL010510),01202959.1号欧洲专利申请(代理人案卷号为PHNL010532)中可以得知从数据库检索与提交的指纹相关的元数据组的多种方法。当然也能够使用其它方法。数据库211的内容可以被免费获得,或者只有付费订户可得到。可替换地,可以对在数据库上执行的每项查询收取费用。响应于提交指纹而返回给客户机的元数据量也可以改变免费服务只返回艺术家和标题,而基于预订的服务例如返回数据库内的所有可用元数据。图4更详细地示出文件共享客户机101。如上所述,也可能以分布式方式来维护具有指纹以及元数据组的数据库。这就避免了对服务器,诸如服务器210的需求。于是维护数据库所必需的功能需要整个地或是部分地在文件共享客户机101-105中的一个或多个客户机内实现。最好将文件共享客户机101实现为个人计算机,在其上运行文件共享软件401,如该领域所众所周知的。文件共享软件401典型地利用诸如在现代操作系统中可用的TCP/IP堆栈之类的联网模块402。外存403包含一个或多个被文件共享软件401共享的多媒体对象。这一外存403典型地会作为硬盘上的一个目录。在一些情况下,外存403可以包含一个独立的部分,在此部分内存储有所下载的多媒体对象。此部分-典型地也是一个目录,不必与其中存储了要被共享的多媒体对象的目录相同。根据本发明的此实施例,文件共享客户机101还包含指纹服务器404。这个服务器404按照与图3的服务器210相类似的方式来维护指纹数据库405。如果存储在数据库405内的指纹是从外存403内被共享的多媒体对象所获取的,则能够非常容易地构造和维护数据库405。通过将爬行者200实现为安装在文件共享客户机101上的硬件或软件模块,如上文参照图2所解释的,就能够实现这一点。数据库405将包含指纹以及相关联的元数据组,正如数据库211一样,不过因为此实施例的分布式特性,所以数据库405的内容将最可能比数据库211的内容少。数据库405典型地将为每个共享的多媒体对象包含指纹以及一个相关联的元数据组,当然,除非外存403含有一个特定的多媒体对象的多个副本。另外,能够用由文件共享客户机101从网络100上的其它文件共享客户机下载的多媒体对象的指纹以及元数据来扩展数据库405。当多媒体对象正被下载时,能够计算用于该多媒体对象的指纹,因为计算指纹只需要对象的相对小的一部分。如果用于那个对象的元数据也是可得到的,则在该对象被完全下载之前,将指纹以及元数据包含到数据库405内。如果在此过程期间确定了指纹已存在于数据库405内,很可能用户已经在其所有内有了此特定多媒体对象的副本。可以警示该用户,从而使得他能中止下载。当客户机101正从另一客户机102下载多媒体对象时,客户机101还能够从客户机102下载一个或多个指纹连同相关联的元数据组。这些指纹是相对小的(在十千字节的量级上,与对于典型多媒体对象的数兆字节相对),因而将不影响客户机101的性能。这就提供了以任意方式在网络100内的客户机101-105上分发具有指纹以及元数据的数据库的方法。现在有可能在客户机101上分发数据库。在KaZaa文件共享网络内,超级节点优选地被用于通过在网络100分发指纹以及元数据。在像Napster文件共享网络之类的网络内,它会是分发指纹的中央服务器。也能够用超级节点或中央服务器来协助获取正确的元数据。客户机向它所连接到的超级节点提交对特定指纹的搜索请求。该超级节点将请求传递给其它超级节点。如果不用中央服务器来过滤数据库内的元数据组以确定一确切的组,则该超级节点很可能会接收对于此查询的多个回答。于是,该超级节点能够应用多数表决或另外的技术,如上所解释的,来确定一确切的元数据组,之后该元数据组将被向回提供到提交该请求的那个客户机。随后,该超级节点将用该确切的组来更新它自己的数据库405,以便避免每次在它的一个客户机再次提交那一个查询时,必须再次将该查询传递给所有其它的超级节点。然而,这会冒着这样的风险,即在某些时候他的信息将是过时的。指纹服务器404的大小,即它所维护的那一分布式数据库405部分,可以依赖于它运行于其上的那个个人计算机的性能来作出。例如,将会考虑到带宽限制、CPU速度和/或可用的工作存储器(RAM)。这样,慢的计算机不会负担大的指纹服务器。应当注意,上述实施例是说明而不是限制本发明,本领域的那些技术人员将在不脱离附带的权利要求书的范围情况下能够设计出许多替换的实施例。在权利要求书中,放置在圆括号之间的任何参考标记都将不被构成为限制权利要求。术语“包括”并不排除除了权利要求内所列出的那些元件或步骤之外的元件或步骤的存在。元件前的“一”一词不排除多个这样的元件的存在。能够借助于含有数个不同元件的硬件,以及借助于适当编程的计算机来实现本发明。在列举了几个装置的设备权利要求中,这些装置中的几个能够用一个以及相同的硬件项来体现。仅仅是某些手段以相互不同的从属权利要求来叙述的事实并不表示这些手段的组合不能被作为优势。权利要求1.一种更新数据库的方法,该数据库包含许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组,该方法包括通过网络从连接到该网络的一文件共享客户机获取一个多媒体对象以及用于该多媒体对象的一个元数据组,根据该多媒体对象计算指纹,以及将计算出的指纹以及所获取的元数据组包含到数据库中。2.如权利要求1所述的方法,所述包含指纹以及元数据组的步骤包括在一个服务器中接收计算出的指纹以及所获取的元数据组,确定所计算出的指纹是否存在于数据库内,以及如果存在,则将所获取的元数据组与所述指纹相关联,而如果不存在,则把彼此相关的、所计算出的指纹以及所获取的元数据组添加到数据库中。3.如权利要求2所述的方法,其中,一旦在数据库中足够数目的元数据组被与一个特定指纹相关联,则该服务器进一步确定与所述特定指纹相关联的一个确切的元数据组。4.如权利要求3所述的方法,进一步包括把该确切的元数据组提供给至少一个客户机,从该客户机先前已经获取过与该特定指纹相关联的一个元数据组。5.一种文件共享客户机,该客户机被安排用于更新一个数据库,该数据库含有许多多媒体对象的每个对象的指纹以及用于该每个对象的相关联的元数据组,包括用于通过网络从连接到该网络的另一文件共享客户机获取一个多媒体对象以及用于该多媒体对象的一个元数据组并根据该多媒体对象计算指纹的装置,以及用于把计算出的指纹以及所获取的元数据组包含到数据库中的装置。6.一种服务器,被安排用于更新一个数据库,该数据库含有许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组,包括联网装置,用于接收一个计算出的指纹以及一个元数据组,验证装置用于确定该计算出的指纹是否存在于数据库中,并且如果存在,则将所获取的元数据组与所述指纹相关联,并且如果不存在,则把彼此相关的所计算出的指纹和所获取的元数据组添加到数据库中。7.如权利要求6所述的服务器,进一步包括过滤装置,用于一旦在数据库中足够数目的元数据组被与一特定指纹相关联,就确定与所述特定指纹相关联的一个确切的元数据组。8.如权利要求7所述的服务器,进一步被安排用于把该确切的元数据组提供给至少一个客户机,从该客户机先前已经获取过与该特定指纹相关联的一个元数据组。9.一种文件共享网络,包括符合权利要求6的至少一个文件共享客户机以及符合权利要求6、7或8的至少一个服务器。全文摘要一种更新数据库(211)的方法,该数据库含有许多多媒体对象中的每个对象的指纹以及用于该每个对象的相关联的元数据组。从文件共享客户机(101-105)下载多媒体对象以及用于该多媒体对象的一个元数据组。根据该多媒体对象计算指纹,并将计算出的指纹以及所获取的元数据组包含到数据库(211)中。该数据库(211)可以由中央服务器(210)加以维护,或是由运行于文件共享客户机(101-105)上的服务器(404)以分布式方式来加以维护。该数据库(211)以这种方式来积累与一个特定指纹相关联的多个元数据组。当已收集到足够数目的组时,就能够使用过滤技术来确定一个确切的组。文档编号G06F17/30GK1610903SQ02822618公开日2005年4月27日申请日期2002年10月24日优先权日2001年11月16日发明者A·A·C·M·卡克,J·A·海特斯马申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1