发明名称 音频指纹检索库的更新方法及系统
摘要 本发明涉及一种音频指纹检索库的更新方法及和系统,所述方法包括:将所有老歌曲的音频指纹和检索索引存入一基本检索库;将新歌曲的音频指纹和检索索引更新入一增量检索库;判断所述增量检索库的大小是否大于或等于预设的阈值,如是,则将所述增量检索库与基本检索库合并生成新的基本检索库,再将新歌曲的音频指纹和检索索引更新入一新的增量检索库;如否,则将新歌曲的音频指纹和检索索引更新入所述增量检索库。本发明针对经常有新歌曲加入的情况,当增量检索库比较小,更新增量检索库的代价非常小时,则每次只对增量检索库进行更新,从而节约了对音频指纹检索库的更新时间,实现了对音频指纹检索库的快速更新。
申请公布号 CN102289518B 申请公布日期 2013.03.27
申请号 CN201110270185.4 申请日期 2011.09.13
申请人 盛乐信息技术(上海)有限公司 发明人 李霄寒;王磊
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 上海思微知识产权代理事务所(普通合伙) 31237 代理人 菅秀君
主权项 一种音频指纹检索库的更新方法,其特征在于,包括:将所有老歌曲的音频指纹和检索索引存入一基本检索库;将新歌曲的音频指纹和检索索引更新入一增量检索库,其中,所述音频指纹包括若干个音频指纹序列,所述音频指纹序列是将固定长度的声音片断转化成的固定位数的整数,所述基本检索库和增量检索库均包括检索索引表和随机指纹库,所述检索索引表存储有每首老歌曲或新歌曲的检索索引,所述随机指纹库存储有每首老歌曲或新歌曲的音频指纹,每个音频指纹包括若干音频指纹序列,所述检索索引表包括顺序索引表和顺序数据表,所述顺序数据表存储有对应于每个所述音频指纹序列的数据块,所述数据块包括ID数据和偏移量数据,所述ID数据记录可能对应于所述音频指纹序列的所有随机指纹库的音频指纹的ID,所述偏移量数据记录有所述音频指纹序列在所述随机指纹库的音频指纹中的偏移量,所述顺序索引表存储有所有音频指纹序列以及指向对应于所述音频指纹序列的数据块的指针,所述顺序索引表是按音频指纹序列的整数值由小到大组成的线性表;判断所述增量检索库的大小是否大于或等于预设的阈值,其中,所述阈值为存储的数据量或存储的歌曲的个数,如是,则将所述增量检索库与基本检索库合并生成新的基本检索库,再将新歌曲的音频指纹和检索索引更新入一新的增量检索库,其中,将所述增量检索库与基本检索库合并生成新的基本检索库的步骤包括:将增量检索库的随机指纹库与基本检索库的随机指纹库合并生成新的基本检索库的随机指纹库;将增量检索库的顺序索引表的与基本检索库的顺序索引表合并生成新基本检索库的顺序索引表;从新的基本检索库的顺序索引表中的第一个音频指纹序列开始逐个根据新的基本检索库的顺序索引表中音频指纹序列的对应的数据块的指针,从所述基本检索库的数据索引表和所述增量检索库的数据索引表中调取并合并对应于新的顺序索引表的音频指纹序列的数据块,并将合并后的数据块存储入新的基本检索库的数据索引表中;再修改所述合并后的数据块中的ID数据和偏移量数据,使所述ID数据为新的基本检索库的随机指纹库的所有可能对应 于所述音频指纹序列的音频指纹的ID,所述偏移量数据为新的基本检索库的随机指纹库中所述音频指纹序列在所述音频指纹中的偏移量,并将新的基本检索库的顺序索引表的对应于所述音频指纹序列的指针修改为指向新的基本检索库的数据索引表的所述合并后的数据块;如否,则将新歌曲的音频指纹和检索索引更新入所述增量检索库,其中,所述将新歌曲的音频指纹和检索索引更新入所述增量检索库的步骤包括:将新歌曲的音频指纹加入增量检索库的随机指纹库;将新歌曲的所有音频指纹的音频指纹序列存储入增量检索库的顺序索引表;将与每个所述音频指纹序列可能对应的所有增量检索库的随机指纹库的音频指纹的ID以及所述音频指纹序列在所述增量检索库的随机指纹库的音频指纹中的偏移量记录入所述增量检索库的顺序数据表;将所述增量检索库的顺序索引表中每个对应于所述音频指纹序列的指针指向所述增量检索库顺序数据表的对应的数据块。
地址 201203 上海市浦东新区张江高科技园区郭守敬路356号3幢102室