一种多媒体播放系统和方法
技术领域
本发明涉及一种多媒体播放系统,特别是涉及一种可以对播放或者录制的音视频进行分析,并按照分析结果,搜寻与该音视频相关的信息,并反馈给用户的多媒体播放系统。这种系统可以是电子硬件装置,也可以是软件系统。此外,本发明还涉及一种多媒体播放方法。
背景技术
目前市场上有很多的播放软件,可以播放音频、视频等各种多媒体文件。某些播放软件可能会提供一些用户感兴趣的信息(比如正在播放的歌曲的歌词)。但是有两个问题:第一个问题是提供这些用户感兴趣的信息需要识别多媒体文件。识别多媒体文件常用的方法是通过该文件的tag信息。Tag在中国并没有统一的中文名称,有的称之为“分类”,也有的称之为“开放分类”或“大众分类”,还有的称之为“标签”;Tag(标签)是一种更为灵活、有趣的日志分类方式,可以为每篇日志添加一个或多个Tag(标签),然后可以看到BlogBus上所有和您使用了相同Tag的日志,并且由此和其他用户产生更多的联系和沟通。如果多媒体文件没有tag信息,则无法识别。另一种识别多媒体文件常用的方法是通过该文件的MD5码。MD5码是message-digest algorithm 5(信息-摘要算法)的缩写,它可以说是文件的“数字指纹”,任何一个文件都有且只有一个独一无二的MD5信息码。但是,由于一个文件被修改过后,它的MD5码也将随之改变,使用这种方法就不能有效识别出内容相同而压缩比不同的多媒体文件,因为两者的MD5码不同。因此,这种基于MD5码的识别方法具有局限性。第二个问题是对于用户录制的已公开发行的多媒体无法识别。例如,车上的广播正在放一首流行歌曲,用户希望知道该歌曲的某些信息。对于这种情况,普通的播放软件无法处理。
发明内容
本发明要解决的技术问题是提供一种多媒体播放系统。这种系统可以播放或者录制音频、视频等,可以对播放或者录制的音视频片段或韵律进行分析,将分析结果放到数据库或者网络中,搜寻与该音视频片段或韵律相关的信息,并反馈给用户,用户可以选择下载、播放等等。这种系统可以是电子硬件装置,也可以是软件系统。为此,本发明还提供一种多媒体播放方法。
为解决上述技术问题,本发明采用如下技术方案:
本发明提供一种多媒体播放系统,其步骤为:
(1)在服务器端构建一个多媒体信息数据库;
(2)客户端播放或者录制多媒体,并将该多媒体进行分析,将分析结果发送给服务器端;
(3)服务器端接收客户端发来的分析结果,从服务器端的多媒体信息数据库里搜索与所述分析结果相关的多媒体信息,并将搜索到的相关多媒体信息发送给所述客户端。
步骤(1)具体为:收集各种多媒体及其相关信息,从这些多媒体中计算其指纹信息,与这些多媒体的相关信息一起构成一个多媒体信息数据库,并以指纹信息作为索引;所述多媒体包括音频和视频;所述多媒体的相关信息包括该多媒体的名称,创作者,发行日期,制作公司,歌词,字幕及创作者的其他作品。
步骤(2)中所述将该多媒体进行分析具体为:提取该多媒体的指纹信息,将提取的指纹信息作为分析结果;对于音频媒体,提取音频指纹信息;对于视频媒体,提取其音频流的音频指纹信息,或者提取其视频流的视频指纹信息,或者提取音频指纹和视频指纹的综合信息。所述提取该多媒体的指纹信息的方法为:设置一个时间窗,计算该时间窗内多媒体的某种特征并作处理,得到该时间窗的指纹,然后按时间顺序移动该时间窗,按照上述处理方法,得到一串指纹序列,作为该段多媒体的指纹信息。
步骤(3)中,所述从服务器端的多媒体信息数据库里搜索与所述分析结果相关的多媒体信息,具体步骤为:将提取的多媒体的指纹信息与多媒体信息数据库中的各个指纹信息进行查找比对,如果与多媒体信息数据库中某个指纹信息的差值小于等于设定的阈值,则搜索到;如果与多媒体信息数据库中所有指纹信息的差值都大于阈值,则多媒体信息数据库中不包含该多媒体。所述将提取的多媒体的指纹信息与多媒体信息数据库中的各个指纹信息进行查找比对,具体为:首先对提取的多媒体的指纹信息,取一个窗函数,然后计算多媒体中某个时刻的窗函数中的指纹信息与数据库中另一时刻的窗函数中的指纹信息的差值。所述设定阈值的方法为:预先准备一批已知多媒体信息的音视频数据,作为开发集,计算该开发集数据的指纹信息与数据库中指纹信息的差值;根据差值的分布,设置一个阈值,使得通过该阈值可以得到准确的搜索结果。所述将提取的多媒体的指纹信息与多媒体信息数据库中的各个指纹信息进行查找比对采用倒排算法或hash表法;所述倒排算法源于实际应用中需要根据属性值来查找记录,这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址,它不是由记录来确定属性值,而是由属性值来确定记录的位置,采用指纹信息作为属性值;所述Hash表定义了一种将字符组成的字符串转换为更短的固定长度的数值或索引值的方法,通过更短的哈希值比用原始值进行数据库搜索更快,采用对指纹信息作哈希处理。
所述多媒体包括音频和视频。
与所述分析结果相关的多媒体信息包括该多媒体的名称,创作者,发行日期,制作公司,歌词,字幕及创作者的其他作品。
此外,本发明还提供一种多媒体播放系统,该系统包括客户端以及服务器端,
所述客户端用以播放多媒体或者录制多媒体,并提取该多媒体的指纹信息进行分析,并将分析结果发送给服务器端;
所述服务器端包括多媒体信息数据库,该服务器端用以接收客户端发来的分析结果,从所述多媒体信息数据库里搜索与所述分析结果相关的多媒体信息,并将搜索到的相关多媒体信息发送给所述客户端。
所述客户端包括播放单元、采集单元、分析单元以及下载单元;其中:
播放单元用以播放多媒体;
采集单元用以对所述播放多媒体进行采集或者录制;
分析单元用以对采集或者录制的多媒体进行分析,并将分析结果发送给服务器端;
下载单元用以将服务器端的检索单元检索到的相关多媒体信息下载到客户端。
所述分析单元用于提取该多媒体的指纹信息,将提取的指纹信息作为分析结果送给服务器端;所述提取该多媒体的指纹信息的方法为:设置一个时间窗,计算该时间窗内多媒体的某种特征并作处理,得到该时间窗的指纹,然后按时间顺序移动该时间窗,按照上述处理方法,得到一串指纹序列,作为该段多媒体的指纹信息。
所述多媒体包括音频和视频;所述多媒体信息包括该多媒体的名称,创作者,发行日期,制作公司,歌词,字幕和创作者的其他作品。
所述服务器端包括:多媒体信息数据库、检索单元和反馈单元,其中,多媒体信息数据库用以存储多媒体信息;检索单元用以对客户端发来的分析结果在多媒体信息数据库进行对比分析,并搜寻到相关的多媒体信息;反馈单元用以将搜寻到的相关多媒体信息发送到客户端。所述检索单元进行对比分析的方法为:首先对客户端发来的提取的多媒体指纹信息,取一个窗函数,然后计算多媒体中某个时刻的窗函数中的指纹信息与数据库中另一时刻的窗函数中的指纹信息的差值,如果该差值小于设定的阈值,则搜索到;如果与数据库中所有指纹信息的差值都大于阈值,则数据库中不包含该多媒体。所述设定阈值的方法为:预先准备一批已知多媒体信息的音视频数据,作为开发集,计算该开发集数据的指纹信息与数据库中指纹信息的差值;根据差值的分布,设置一个阈值,使得通过该阈值可以得到准确的搜索结果。所述检索单元进行对比分析的方法采取倒排算法或hash表法;所述倒排算法源于实际应用中需要根据属性值来查找记录,这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址,它不是由记录来确定属性值,而是由属性值来确定记录的位置,采用指纹信息作为属性值;所述Hash表定义了一种将字符组成的字符串转换为更短的固定长度的数值或索引值的方法,通过更短的哈希值比用原始值进行数据库搜索更快,采用对指纹信息作哈希处理。
本发明的有益效果在于:本发明的多媒体播放系统,通过将客户端的多媒体音视频指纹与服务器端的多媒体信息数据库中的多媒体音视频指纹进行比对查找,能够使用户迅速获得播放或者录制多媒体的信息,并且信息的准确性最高可以达到99%。与现有技术相比,本发明的方法更迅速和准确。
附图说明
图1是本发明多媒体播放系统的结构示意图;
图2是本发明多媒体播放方法的流程示意图。
具体实施方式
为对本发明的技术内容、特点与功效有更具体的了解,现结合图示的实施方式,详述如下:
如图1所示,本发明的多媒体播放系统,包括:
一客户端,用以播放多媒体或者录制多媒体,并提取该多媒体的指纹信息进行分析,并将分析结果发送给服务器端;
一服务器端,用以接收客户端发来的分析结果,从服务器端多媒体信息数据库里搜索与分析结果相关的多媒体信息,并将搜索到相关的多媒体信息发送给所述客户端。
服务器端包括:多媒体信息数据库、检索单元和反馈单元。其中:
多媒体信息数据库用以存储多媒体信息;
检索单元用以对客户端发来的分析结果在多媒体信息数据库进行对比分析,并搜寻到相关的多媒体信息;对比方法可以将客户端提取的多媒体的指纹信息与多媒体信息数据库中的各个指纹信息进行查找比对,如果与数据库中某个指纹信息的差值小于设定的阈值(设定阈值的方法可以通过开发集的方法:预先准备一批已知多媒体信息的音视频数据,作为开发集,计算该开发集数据的指纹信息与数据库中指纹信息的差值;根据差值的分布,设置一个阈值,使得通过该阈值可以得到准确的搜索结果),则搜索到;如果与数据库中所有指纹信息的差值都大于阈值,则数据库中不包含该多媒体。为了提高搜索速度,可以采取倒排算法,hash表等方法。倒排算法源于实际应用中需要根据属性值来查找记录,这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址,它不是由记录来确定属性值,而是由属性值来确定记录的位置。在本发明中可以采用指纹信息作为属性值。Hash表定义了一种将字符组成的字符串转换为固定长度(一般是更短长度)的数值或索引值的方法,称为散列法,也叫哈希法。通过更短的哈希值比用原始值进行数据库搜索更快。本发明中可以对指纹信息作哈希处理。
反馈单元用以将检索单元搜寻到相关的多媒体信息发送到客户端。多媒体信息包括该多媒体的名称,创作者,发行日期,制作公司,歌词,字幕,创作者的其他作品等各种信息。
客户端包括播放单元、采集单元、分析单元、以及下载单元;其中:
播放单元用以播放多媒体;
采集单元用以对所述播放多媒体进行采集或者录制;
分析单元用以对采集或者录制的多媒体进行分析,并将分析结果发送给服务器端。分析的方法可以采用提取音视频指纹的方法。对于音频媒体,提取音频指纹信息。对于视频媒体,可以提取其音频流的音频指纹信息,可以提取其视频流的视频指纹信息,也可以是音频指纹和视频指纹的综合信息。将提取的音视频指纹作为分析的结果;
下载单元用以将服务器端的反馈单元反馈的相关信息(即从检索单元检索到的相关信息)下载到客户端。
音视频指纹是指音频指纹和视频指纹。音频指纹是可以代表一段音频的重要声学特征的基于内容的紧致的数字签名。视频指纹是可以代表一段视频的重要视学特征的基于内容的紧致的数字签名。音视频指纹技术通常包括两个部分:即一个计算听觉或视觉重要特征的指纹提取算法(听觉或视觉指纹是指可以代表一段多媒体重要特征的基于内容的紧致的数字签名;提取指纹没有统一的方法,但基本的方法都是设置一个时间窗,计算该时间窗内多媒体的某种特征,例如共振峰,频谱,普能量等,并作处理,得到该时间窗的指纹;然后按时间顺序移动该时间窗,按照上述处理方法,可得到一串指纹序列,作为该段多媒体的指纹)和一个在指纹数据库中进行有效搜索的指纹比对算法(指纹对比的方法首先对测试数据提取指纹,取一个窗函数,然后计算测试数据中某个时刻的窗函数中的指纹与数据库中另一时刻的窗函数中的指纹的差值,如果该距离小于某个阈值,则认为这两个时刻的多媒体是一样的)。当要识别一段未知音视频时,首先按照指纹提取算法计算其音视频指纹,然后和指纹数据库中存储的大量音视频指纹按照指纹比对算法进行比对,识别出对应的音视频。一个有效的音视频指纹技术能够在数据库中正确识别出可能经受各种信号处理的、失真的未知音视频的原始版本。本发明的多媒体播放系统,就是利用了音视频指纹技术,通过客户端和服务器端的交互以获得播放或者录制音频、视频的相关信息。
本发明系统可以播放或者录制音频、视频等,可以对播放或者录制的音视频片段或韵律进行分析,将分析结果放到数据库或者网络中,搜寻与该音视频片段或韵律相关的信息,并反馈给用户,用户可以选择下载、播放等等。
如图2所示,本发明的多媒体播放方法,包括如下步骤:
1.在服务器端需要构建一个多媒体数据库。服务器端首先收集市面上大量的多媒体及其对应的各种信息,如歌曲名、歌手名、专辑名、专辑出版年代、专辑封面、发行时间、出版公司、影片字幕、演员等,从这些多媒体中计算其音视频指纹(即图2中的指纹提取),与这些多媒体对应的其他各种信息一起构成一个多媒体数据库,并以音视频指纹作为相应的各种多媒体信息的索引。
2.对于客户端播放器播放或录制的多媒体文件(即音视频),将这些音视频通过音视频指纹技术提取指纹信息。将提取的指纹信息传送到服务器端。
3.服务器端接收客户端发来的分析结果(即提取的指纹信息),与服务器端的多媒体信息数据库中的指纹信息进行查找比对(即图2中的匹配),如果两者差值小于等于设定的阈值,则找到该音视频,返回给客户端此音视频的各种信息;如果两者的差值大于设定的阈值,则表示多媒体信息数据库中没有该音视频。
以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出音频指纹和视频指纹的生成和检索算法做出许多变形和改进,这些也应视为本发明的保护范围。