CN105138541B - 音频指纹匹配查询的方法和装置 - Google Patents

音频指纹匹配查询的方法和装置 Download PDF

Info

Publication number
CN105138541B
CN105138541B CN201510399161.7A CN201510399161A CN105138541B CN 105138541 B CN105138541 B CN 105138541B CN 201510399161 A CN201510399161 A CN 201510399161A CN 105138541 B CN105138541 B CN 105138541B
Authority
CN
China
Prior art keywords
audio
popular
frequency
frequency information
model
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.)
Active
Application number
CN201510399161.7A
Other languages
English (en)
Other versions
CN105138541A (zh
Inventor
孔令城
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.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
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 Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201510399161.7A priority Critical patent/CN105138541B/zh
Publication of CN105138541A publication Critical patent/CN105138541A/zh
Priority to PCT/CN2016/083403 priority patent/WO2017005059A1/zh
Application granted granted Critical
Publication of CN105138541B publication Critical patent/CN105138541B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Software Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种音频指纹匹配查询的方法,包括步骤:统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照查询次数从多到少的顺序依次排序;对排序前n个音频信息建立热门音频模型,其中n为正整数,并将热门音频模型装载到热门音频服务器中;当接收到客户端发送的查询请求时,提取查询请求中的音频指纹,在热门音频服务器中的热门音频模型中查找与音频指纹匹配的音频信息;将匹配的音频信息返回给客户端。本发明还公开了一种音频指纹匹配查询的装置。本发明在系统中建立热门音频模型,有利于减小系统的建模压力;在查询由热门音频服务器从热门音频模型中查找音频信息,有利于提高系统吞吐量,提高音频匹配查询的效率和成功率。

Description

音频指纹匹配查询的方法和装置
技术领域
本发明涉及到互联网技术领域,特别涉及到音频指纹匹配查询的方法和装置。
背景技术
随着互联网和多媒体技术的发展,用户可以用音频播放器、浏览器等客户端在网络中搜索需要的音乐,搜索的方式通常是输入音乐的名称、歌手的名字、专辑名等信息。目前,由于音频指纹技术的发展,一种新型的音频检索方式应运而生。用户在音频播放器、浏览器等客户端上播放一段音频时,如果这段音频的来源不是来自于客户端对应服务器中的音频库,在客户端上不会直接显示该音频对应的信息,此时客户端可以从正在播放的音频中提取音频指纹,并发送给服务器进行匹配。另外,如果用户在室内或室外收听到外放设备播放的音乐时,也可以用客户端录制一小段正在播放的音乐,并从录制的音频中提取音频指纹,再上传到服务器进行匹配。服务器在各个音频模型库中查找与音频指纹匹配的信息,并将匹配的信息返回给客户端。
为了满足各种音频匹配查询需求,服务器中需要覆盖尽可能多的音频指纹,增加对音频建模的数量,该音频模型中包括了模型中的每一首歌曲的音频指纹与歌名、歌手、专辑名等信息之间建立的映射关系。但是,即随着建模数量的增加,所需要的服务器资源也会增加。假设目前有700万首歌曲,每40万首歌曲建一个音频模型,需要18个模型。为了达到高效的匹配查询能力,最想的情况是一台服务器部署一个模型,即需要18台服务器,造成资源成本增加。为了节省服务器资源,目前通常是让一台服务器部署多个模型,造成在匹配查询时增加了服务器的工作负担,降低了系统吞吐量,影响音频匹配查询的效率和成功率。
发明内容
本发明实施例提供一种音频指纹匹配查询的方法和装置,在节省服务器资源的同时,提高系统吞吐量,提高音频匹配查询的效率和成功率。
本发明实施例提出一种音频指纹匹配查询的方法,包括步骤:
统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照所述音频信息的查询次数从多到少的顺序依次排序;
对排序前n个所述音频信息建立热门音频模型,其中n为正整数,并将所述热门音频模型装载到热门音频服务器中;
当接收到客户端发送的查询请求时,提取所述查询请求中的音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息;
将匹配的所述音频信息返回给所述客户端。
本发明实施例还提出一种音频指纹匹配查询的装置,包括:
排序模块,用于统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照所述音频信息的查询次数从多到少的顺序依次排序;
建模模块,用于对排序前n个所述音频信息建立热门音频模型,其中n为正整数,并将所述热门音频模型装载到热门音频服务器中;
查询模块,用于当接收到客户端发送的查询请求时,提取所述查询请求中的音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息;
发送模块,用于将匹配的所述音频信息返回给所述客户端。
本发明实施例在建立音频模型时,根据音频信息查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,并将热门音频模型加载到专门的热门音频服务器中,有利于减小系统的建模压力,提高了建模效率;在查询音频信息时,系统将携带音频指纹的查询请求下发给热门音频服务器,由热门音频服务器从热门音频模型中查找与音频指纹匹配的音频信息,由于热门音频服务器中只包括了一个热门音频模型,查询时热门音频服务器的查询处理速度快,且避免了对热门音频服务器带来过大的处理负担,有利于提高系统吞吐量,提高音频匹配查询的效率和成功率。
附图说明
图1为本发明实施例中音频指纹匹配查询的装置所在系统的运行环境图;
图2为本发明实施例中音频指纹匹配查询的装置所在系统中的服务器的总线图;
图3为本发明音频指纹匹配查询的方法的第一实施例的流程图;
图4为本发明音频指纹匹配查询的方法的第二实施例的流程图;
图5为本发明音频指纹匹配查询的方法的第三实施例的流程图;
图6为本发明音频指纹匹配查询的方法的第四实施例的流程图;
图7为本发明音频指纹匹配查询的方法的第五实施例的流程图;
图8为本发明音频指纹匹配查询的方法的第六实施例的流程图;
图9为本发明音频指纹匹配查询的装置的第一实施例的模块示意图
图10为本发明音频指纹匹配查询的装置的第二实施例的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供的音频指纹匹配查询的装置位于音频指纹匹配查询的系统中,如图1所示实施例,该系统可包括一个热门音频服务器100和至少一个冷门音频服务器200。一个热门音频服务器100中只包括了一个热门音频模型,每一个冷门音频服务器200中包括了至少一个冷门音频模型。用户通过安装在终端300上的音频播放器或浏览器等客户端向该系统发起查询请求,系统根据查询请求中的音频指纹,首先在热门音频服务器100中的热门音频模型中查找与音频指纹匹配的音频信息。如果系统在热门音频服务器100中能查找到与音频指纹匹配的音频信息,则将该音频信息返回给客户端所在终端300。如果系统在热门音频服务器100中没有查找到与音频指纹匹配的音频信息,则系统遍历各个冷门音频服务器200,在每一个冷门音频服务器200中遍历各个冷门音频模型,直至查找到与音频指纹匹配的音频信息,并返回匹配的音频信息给客户端所在终端300。此外,上述系统还可以包括用于建立音频模型的建模服务器和用于分发查询指令的查询服务器,建模服务器和查询服务器也可以是同一个服务器,或者是不单独设置额外的服务器,而是由热门音频服务器100代替建模服务器和查询服务器完成建模和查询功能。
参照图2,图2为本发明实施例中音频指纹匹配查询的装置所在系统中的服务器的总线图。系统中的服务器都可以包括:至少一个处理器101,例如CPU,至少一个网络接口104,用户接口103,存储器105,至少一个通信总线102。其中,通信总线102用于实现这些组件之间的连接通信。其中,用户接口103可以包括显示屏(Display)、键盘(Keyboard),还可以包括标准的有线接口、无线接口。网络接口104可以包括标准的有线接口、无线接口(如WIFI接口)。存储器105可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器105还可以是至少一个位于远离前述处理器101的存储装置。作为一种计算机存储介质的存储器105中可以包括操作系统、网络通信模块、用户接口模块以及音频指纹匹配查询程序。
在图2所示的音频指纹匹配查询的装置所在系统中,网络接口104主要用于连接其他服务器或终端,与其他服务器或终端进行数据通信;而用户接口103主要用于接收用户指令,并与用户进行交互;而处理器101可以用于调用存储器105中存储的音频指纹匹配查询程序,并执行以下操作:
统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照音频信息的查询次数从多到少的顺序依次排序;
对排序前n个音频信息建立热门音频模型,其中n为正整数,并将热门音频模型装载到热门音频服务器中;
当通过网络接口104接收到客户端发送的查询请求时,提取查询请求中的音频指纹,在热门音频服务器中的热门音频模型中查找与音频指纹匹配的音频信息;
通过网络接口104将匹配的音频信息返回给客户端。
在一个实施例中,处理器101调用存储器105中存储的音频指纹匹配查询程序还可以执行以下操作:
在下一个统计周期到达后,重新统计各音频信息在所述下一个统计周期内的查询次数,并重新将各音频信息按照所述下一个统计周期内的查询次数从多到少的顺序依次排序;
比较前一次排序前n个所述音频信息与本次排序前n个所述音频信息,获得本次排序新进入前n个的所述音频信息和本次排序未进入前n个的所述音频信息;
将本次排序新进入前n个的所述音频信息对应的模型数据添加到所述热门音频模型中,并从所述热门音频模型中剔除本次排序未进入前n个的所述音频信息对应的模型数据。
在一个实施例中,处理器101调用存储器105中存储的音频指纹匹配查询程序还可以执行以下操作:
对排序前n个之外的其余的音频信息建立多个冷门音频模型;
将多个冷门音频模型装载到至少一个冷门音频服务器中。
在一个实施例中,处理器101调用存储器105中存储的音频指纹匹配查询程序还可以执行以下操作:
当热门音频服务器中没有匹配的音频信息时,在各冷门音频服务器中的冷门音频模型中查找与音频指纹匹配的音频信息。
在一个实施例中,处理器101调用存储器105中存储的音频指纹匹配查询程序还可以执行以下操作:
获取排序前n个音频信息的音频数据;
从每一个音频数据中提取音频指纹;
根据音频指纹与对应的音频信息生成键值对;
将各键值对存储至热门音频哈希表中,获得热门音频模型。
在一个实施例中,处理器101调用存储器105中存储的音频指纹匹配查询程序还可以执行以下操作:
从查询请求中获取待查询的音频指纹;
获取热门音频服务器中的热门音频模型中的热门音频哈希表;
在热门音频哈希表中查找与音频指纹匹配的音频信息。
本实施例图1和图2所描述的音频指纹匹配查询的装置及其所在系统,在建立音频模型时,根据音频查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,并将热门音频模型加载到专门的热门音频服务器中,有利于减小系统的建模压力;在查询音频信息时,系统将携带音频指纹的查询请求下发给热门音频服务器,由热门音频服务器从热门音频模型中查找与音频指纹匹配的音频信息,由于热门音频服务器中只包括了一个热门音频模型,查询时热门音频服务器的查询处理速度快,且避免了对热门音频服务器带来过大的处理负担,有利于提高系统吞吐量,提高音频匹配查询的效率和成功率。
如图3所示,图3为本发明音频指纹匹配查询的方法的第一实施例的流程图。本实施例提到的音频指纹匹配查询的方法,包括:
步骤S10,统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照音频信息的查询次数从多到少的顺序依次排序;
本实施例中实现音频指纹匹配查询的方法的系统在建立热门音频模型前,预先统计各音频信息被查询的次数,还可以统计各音频信息对应的音频数据被下载或在线收听的次数。系统根据统计的次数对各音频信息排序,按照次数从多到少的顺序排序。排在前面的音频信息说明是用户经常搜索或收听的音频,将其归类为热门音频;而排在后面的其他音频信息说明是用户很少或从不搜索或收听的音频,将其归类为冷门音频。考虑到有些音频在过去一段时间内查询次数较多,而在最近一段时间查询次数较少,那么这些音频在近期就不属于热门音频,如果将这些音频信息所有时间段的查询次数全部统计出来,那么这些音频信息的查询次数总数仍然是比较多的,为了避免误将这一类音频信息归属于热门音频,在统计时,只统计设定的统计周期内的查询次数,例如最近一个月内、最近三个月内等,以获得最新的查询热度。
步骤S20,对排序前n个音频信息建立热门音频模型,其中n为正整数;
步骤S30,将热门音频模型装载到热门音频服务器中;
由于音频库中的音频数量非常庞大,可高达几百万个,通常热门音频的数量只占音频总量的一小部分,例如,音频库中的音频总量为800万,排序前1%的8万个音频作为热门音频,就可以满足广大用户的搜索需求。同时,热门音频的搜索率通常占总的音频搜索率的90%以上,系统在建模时,无须对音频库中的所有音频信息建模,可只对排序在前n个音频信息建模,即只对热门音频建模,一个热门音频模型中包括了所有的热门音频信息,大大减小了系统的建模压力,节省服务器资源。由于热门音频的搜索率占总的音频搜索率的90%以上,为了实现高的搜索服务能力,可在一个专门的服务器上加载建模获得的热门音频模型,即在热门音频服务器中只承载一个音频模型,有利于提高搜索效率。此外,在对热门音频建模的同时,还可以也对所有的音频信息建模,并分别在多个音频服务器中加载各音频模型,一个音频服务器中加载多个音频模型,即系统中包括一个热门音频服务器,还包括多个其他的音频服务器,在查询时,系统首先还是在热门音频服务器中查询,如果热门音频服务器中查询不到匹配的音频信息,再遍历其他各音频服务器,直至找到匹配的音频信息。
步骤S40,接收到客户端发送的查询请求;
步骤S50,提取查询请求中的音频指纹,在热门音频服务器中的热门音频模型中查找与音频指纹匹配的音频信息;
步骤S60,将匹配的音频信息返回给客户端。
用户在音频播放器、浏览器等客户端上播放一段音频时,如果这段音频的来源不是来自于客户端对应服务器中的音频库,客户端不会直接获得该音频对应的信息,此时客户端可以从正在播放的音频中提取音频指纹,并发送给服务器进行匹配。另外,如果用户在室内或室外听到感兴趣的音频时,通过安装在终端上的客户端录制一小段音频数据,客户端可将录制的音频数据转换为音频指纹,并将录制的音频指纹封装到查询请求中发送给本系统。此外,为了减轻客户端的工作量,还可以由客户端直接将待查询的音频数据封装到查询请求中发送给本系统,系统在接收到查询请求后,再从查询请求携带的音频数据中提取音频指纹。系统将携带音频指纹的查询请求下发给热门音频服务器,热门音频服务器在热门音频模型中查询匹配的音频信息,如果用户听到的音频属于热门音频,那么在热门音频模型中就能够查询到对应的音频信息。查询到的音频信息可包括音频的名称、歌手信息、专辑名、歌词、地址等。系统将音频信息通过网络返回给客户端所在终端,客户端可在用户界面上显示音频信息,或根据音频信息下载或在线播放对应的完整音频数据,供用户收听完整音频。
本实施例在系统中建立音频模型时,根据音频查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,并将热门音频模型加载到专门的热门音频服务器中,有利于减小系统的建模压力,提高了建模效率;在查询音频信息时,系统将携带音频指纹的查询请求下发给热门音频服务器,由热门音频服务器从热门音频模型中查找与音频指纹匹配的音频信息,由于热门音频服务器中只包括了一个热门音频模型,查询时热门音频服务器的查询处理速度快,且避免了对热门音频服务器带来过大的处理负担,有利于提高系统吞吐量,提高音频匹配查询的效率和成功率。
如图4所示,图4为本发明音频指纹匹配查询的方法的第二实施例的流程图。本实施例包括图3所示实施例的步骤,在步骤S30之后还包括:
步骤S31,在下一个统计周期到达后,重新统计各音频信息在下一个统计周期内的查询次数,并重新将各音频信息按照下一个统计周期内的查询次数从多到少的顺序依次排序;
步骤S32,比较前一次排序前n个音频信息与本次排序前n个音频信息,获得本次排序新进入前n个的音频信息和本次排序未进入前n个的音频信息;
步骤S33,将本次排序新进入前n个的音频信息对应的模型数据添加到热门音频模型中,并从热门音频模型中剔除本次排序未进入前n个的音频信息对应的模型数据。
本实施例的系统还可以根据查询次数统计结果,动态调整热门音频模型和其他音频模型中的音频信息。例如,音频A音频信息对应的建模数据原本并没有在热门音频模型中,但由于近段时间内音频A的查询次数增加,在排序中已经跻身于热门音频行列中,则将音频A的音频信息对应的建模数据调整到热门音频模型中。而音频B的音频信息对应的建模数据原本是在热门音频模型中,但由于近段时间内音频B的查询次数减少,在排序中已经不属于热门音频行列中,则将音频B的音频信息对应的建模数据从热门音频模型中剔除,剔除后的音频信息对应的建模数据可添加到其他音频模型中,以保证在查询时仍然能够查询到该音频信息。本实施例根据查询热度动态调整热门音频模型和其他音频模型中的音频信息,使音频指纹查询能够满足当前时间段的查询需求,同时,在调整音频模型中的数据时,并不是对所有音频信息重新建模,而是只调整排序有变化的部分音频信息,减少了建模压力,提高了建模效率。
如图5所示,图5为本发明音频指纹匹配查询的方法的第三实施例的流程图。本实施例包括图3所示实施例的步骤,在步骤S10之后还包括:
步骤S71,对排序前n个之外的其余的音频信息建立多个冷门音频模型;
步骤S72,将多个冷门音频模型装载到至少一个冷门音频服务器中。
本实施例中,为确保所有音频信息都能被查询处理,系统不单需要对热门音频建模,还需要对热门音频之外的其他音频建模。对于热门音频之外的其他音频,由于查询次数较少,可将其作为冷门音频,并建立冷门音频模型。多个冷门音频建立一个冷门音频模型,再将多个冷门音频模型分为多组,分别加载到多个冷门音频服务器中,即系统中包括一个热门音频服务器,还包括多个冷门音频服务器,一个冷门音频服务器中加载多个冷门音频模型,一个冷门音频模型中包括了多个冷门音频信息。本实施例分别对热门和冷门音频建模,满足了所有音频的查询需求;多个冷门音频模型加载到一个冷门音频服务器中,有利于节约服务器资源。
如图6所示,图6为本发明音频指纹匹配查询的方法的第四实施例的流程图。本实施例包括图5所示实施例的步骤,在步骤S50之后还包括:
步骤S80,当热门音频服务器中没有匹配的音频信息时,在各冷门音频服务器中的冷门音频模型中查找与音频指纹匹配的音频信息。
本实施例在查询音频信息时,系统首先还是在热门音频服务器中查询,如果热门音频服务器中查询不到匹配的音频信息,再遍历各冷门音频服务器,直至找到匹配的音频信息。本实施例将热门和冷门音频分别建模,首先还是在热门音频服务器中查询,有利于快速查找热门音频,提高查询吞吐量和查询效率;在热门音频模型中查询不到匹配音频信息时,再到冷门音频模型中查询,满足了所有音频的查询需求;由于冷门音频模型中不包括热门音频,避免了系统在冷门音频服务器中查询时又查询一次热门音频信息,减少了查询的工作量。
如图7所示,图7为本发明音频指纹匹配查询的方法的第五实施例的流程图。本实施例包括图3所示实施例的步骤,其中的步骤S20包括:
步骤S21,获取排序前n个音频信息的音频数据;
步骤S22,从每一个音频数据中提取音频指纹;
步骤S23,根据音频指纹与对应的音频信息生成键值对;
步骤S24,将各键值对存储至热门音频哈希表中,获得热门音频模型。
本实施例在建模时,从音频库中查找音频信息对应的音频数据,并从音频数据中提取音频指纹,将提取的音频指纹与对应的音频信息进行哈希运算,获得对应的键值对,并将键值对存储至哈希表中,所有的热门音频信息及其对应的音频指纹都存储在热门音频哈希表中,完成热门音频模型建模。对于冷门音频也可以采用同样的方式实现建模。本实施例在建模时,根据音频查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,有利于减小系统的建模压力。
如图8所示,图8为本发明音频指纹匹配查询的方法的第六实施例的流程图。本实施例包括图7所示实施例的步骤,其中的步骤S50包括:
步骤S51,从查询请求中获取待查询的音频指纹;
步骤S52,获取热门音频服务器中的热门音频模型中的热门音频哈希表;
步骤S53,在热门音频哈希表中查找与音频指纹匹配的音频信息。
本实施例的系统在接收到客户端所在终端发送的查询请求后,从查询请求携带的待识别的音频数据中提取待查询的音频指纹,并将音频指纹下发至系统中的热门音频服务器,热门音频服务器计算待查询的音频指纹对应的哈希值,并从热门音频模型中查找匹配的哈希值,获得对应的键值对,从该键值对中获得与待查询音频指纹匹配的音频信息。本实施例的系统在查询音频信息时,首先从热门音频服务器匹配查询,由于热门音频服务器中只包括了一个热门音频模型,有利于提高热门音频服务器的查询处理速度,且有利于提高系统吞吐量,提高了音频匹配查询的效率和成功率。
如图9所示,图9为本发明音频指纹匹配查询的装置的第一实施例的模块示意图。本实施例提出的音频指纹匹配查询的装置,包括:
排序模块110,用于统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照音频信息的查询次数从多到少的顺序依次排序;
建模模块120,用于对排序前n个音频信息建立热门音频模型,其中n为正整数,并将热门音频模型装载到热门音频服务器中;
查询模块130,用于当接收到客户端发送的查询请求时,提取查询请求中的音频指纹,在热门音频服务器中的热门音频模型中查找与音频指纹匹配的音频信息;
发送模块140,用于将匹配的音频信息返回给客户端。
本实施例中音频指纹匹配查询的装置所在的系统在建立热门音频模型前,预先统计各音频信息被查询的次数,还可以统计各音频信息对应的音频数据被下载或在线收听的次数。系统根据统计的次数对各音频信息排序,按照次数从多到少的顺序排序。排在前面的音频信息说明是用户经常搜索或收听的音频,将其归类为热门音频;而排在后面的其他音频信息说明是用户很少或从不搜索或收听的音频,将其归类为冷门音频。考虑到有些音频在过去一段时间内查询次数较多,而在最近一段时间查询次数较少,那么这些音频在近期就不属于热门音频,如果将这些音频信息所有时间段的查询次数全部统计出来,那么这些音频信息的查询次数总数仍然是比较多的,为了避免误将这一类音频信息归属于热门音频,在统计时,只统计设定的统计周期内的查询次数,例如最近一个月内、最近三个月内等,以获得最新的查询热度。
由于音频库中的音频数量非常庞大,可高达几百万个,通常热门音频的数量只占音频总量的一小部分,例如,音频库中的音频总量为800万,排序前1%的8万个音频作为热门音频,就可以满足广大用户的搜索需求。同时,热门音频的搜索率通常占总的音频搜索率的90%以上,系统在建模时,无须对音频库中的所有音频信息建模,可只对排序在前n个音频信息建模,即只对热门音频建模,一个热门音频模型中包括了所有的热门音频信息,大大减小了系统的建模压力,节省服务器资源。由于热门音频的搜索率占总的音频搜索率的90%以上,为了实现高的搜索服务能力,可在一个专门的服务器上加载建模获得的热门音频模型,即在热门音频服务器中只承载一个音频模型,有利于提高搜索效率。此外,在对热门音频建模的同时,还可以也对所有的音频信息建模,并分别在多个音频服务器中加载各音频模型,一个音频服务器中加载多个音频模型,即系统中包括一个热门音频服务器,还包括多个其他的音频服务器,在查询时,系统首先还是在热门音频服务器中查询,如果热门音频服务器中查询不到匹配的音频信息,再遍历其他各音频服务器,直至找到匹配的音频信息。
用户在音频播放器、浏览器等客户端上播放一段音频时,如果这段音频的来源不是来自于客户端对应服务器中的音频库,客户端不会直接获得该音频对应的信息,此时客户端可以从正在播放的音频中提取音频指纹,并发送给服务器进行匹配。另外,如果用户在室内或室外听到感兴趣的音频时,通过安装在终端上的客户端录制一小段音频数据,客户端可将录制的音频数据转换为音频指纹,并将录制的音频指纹封装到查询请求中发送给本系统。此外,为了减轻客户端的工作量,还可以由客户端直接将待查询的音频数据封装到查询请求中发送给本系统,系统在接收到查询请求后,再从查询请求携带的音频数据中提取音频指纹。系统将携带音频指纹的查询请求下发给热门音频服务器,热门音频服务器在热门音频模型中查询匹配的音频信息,如果用户听到的音频属于热门音频,那么在热门音频模型中就能够查询到对应的音频信息。查询到的音频信息可包括音频的名称、歌手信息、专辑名、歌词、地址等。系统将音频信息通过网络返回给客户端所在终端,客户端可在用户界面上显示音频信息,或根据音频信息下载或在线播放对应的完整音频数据,供用户收听完整音频。
本实施例在系统中建立音频模型时,根据音频查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,并将热门音频模型加载到专门的热门音频服务器中,有利于减小系统的建模压力;在查询音频信息时,系统将携带音频指纹的查询请求下发给热门音频服务器,由热门音频服务器从热门音频模型中查找与音频指纹匹配的音频信息,由于热门音频服务器中只包括了一个热门音频模型,查询时热门音频服务器的查询处理速度快,且避免了对热门音频服务器带来过大的处理负担,有利于提高系统吞吐量,提高音频匹配查询的效率和成功率。
如图10所示,图10为本发明音频指纹匹配查询的装置的第二实施例的模块示意图。本实施例包括图9所示实施例的模块,还增加了比较模块150,其中:
排序模块110还用于,在下一个统计周期到达后,重新统计各音频信息在下一个统计周期内的查询次数,并重新将各音频信息按照下一个统计周期内的查询次数从多到少的顺序依次排序;
比较模块150用于,比较前一次排序前n个音频信息与本次排序前n个音频信息,获得本次排序新进入前n个的音频信息和本次排序未进入前n个的音频信息;
建模模块120还用于,将本次排序新进入前n个的音频信息对应的模型数据添加到热门音频模型中,并从热门音频模型中剔除本次排序未进入前n个的音频信息对应的模型数据。
本实施例的系统还可以根据查询次数统计结果,动态调整热门音频模型和其他音频模型中的音频信息。例如,音频A音频信息对应的建模数据原本并没有在热门音频模型中,但由于近段时间内音频A的查询次数增加,在排序中已经跻身于热门音频行列中,则将音频A的音频信息对应的建模数据调整到热门音频模型中。而音频B的音频信息对应的建模数据原本是在热门音频模型中,但由于近段时间内音频B的查询次数减少,在排序中已经不属于热门音频行列中,则将音频B的音频信息对应的建模数据从热门音频模型中剔除,剔除后的音频信息对应的建模数据可添加到其他音频模型中,以保证在查询时仍然能够查询到该音频信息。本实施例根据查询热度动态调整热门音频模型和其他音频模型中的音频信息,使音频指纹查询能够满足当前时间段的查询需求,同时,在调整音频模型中的数据时,并不是对所有音频信息重新建模,而是只调整排序有变化的部分音频信息,减少了建模压力,提高了建模效率。
进一步的,建模模块120还用于:
对排序前n个之外的其余的音频信息建立多个冷门音频模型;
将多个冷门音频模型装载到至少一个冷门音频服务器中。
本实施例中,为确保所有音频信息都能被查询处理,系统不单需要对热门音频建模,还需要对热门音频之外的其他音频建模。对于热门音频之外的其他音频,由于查询次数较少,可将其作为冷门音频,并建立冷门音频模型。多个冷门音频建立一个冷门音频模型,再将多个冷门音频模型分为多组,分别加载到多个冷门音频服务器中,即系统中包括一个热门音频服务器,还包括多个冷门音频服务器,一个冷门音频服务器中加载多个冷门音频模型,一个冷门音频模型中包括了多个冷门音频信息。本实施例分别对热门和冷门音频建模,满足了所有音频的查询需求;多个冷门音频模型加载到一个冷门音频服务器中,有利于节约服务器资源。
进一步的,查询模块130还用于,当热门音频服务器中没有匹配的音频信息时,在各冷门音频服务器中的冷门音频模型中查找与音频指纹匹配的音频信息。
本实施例在查询音频信息时,系统首先还是在热门音频服务器中查询,如果热门音频服务器中查询不到匹配的音频信息,再遍历各冷门音频服务器,直至找到匹配的音频信息。本实施例将热门和冷门音频分别建模,首先还是在热门音频服务器中查询,有利于快速查找热门音频,提高查询吞吐量和查询效率;在热门音频模型中查询不到匹配音频信息时,再到冷门音频模型中查询,满足了所有音频的查询需求;由于冷门音频模型中不包括热门音频,避免了系统在冷门音频服务器中查询时又查询一次热门音频信息,减少了查询的工作量。
进一步的,建模模块120还用于:
获取排序前n个音频信息的音频数据;
从每一个音频数据中提取音频指纹;
根据音频指纹与对应的音频信息生成键值对;
将各键值对存储至热门音频哈希表中,获得热门音频模型。
本实施例在建模时,从音频库中查找音频信息对应的音频数据,并从音频数据中提取音频指纹,将提取的音频指纹与对应的音频信息进行哈希运算,获得对应的键值对,并将键值对存储至哈希表中,所有的热门音频信息及其对应的音频指纹都存储在热门音频哈希表中,完成热门音频模型建模。对于冷门音频也可以采用同样的方式实现建模。本实施例在建模时,根据音频查询的热度对音频信息排序,将排序靠前的多个音频信息作为热门音频建立热门音频模型,有利于减小系统的建模压力。
进一步的,查询模块130还用于:
从查询请求中获取待查询的音频指纹;
获取热门音频服务器中的热门音频模型中的热门音频哈希表;
在热门音频哈希表中查找与音频指纹匹配的音频信息。
本实施例的系统在接收到客户端所在终端发送的查询请求后,从查询请求携带的待识别的音频数据中提取待查询的音频指纹,并将音频指纹下发至系统中的热门音频服务器,热门音频服务器计算待查询的音频指纹对应的哈希值,并从热门音频模型中查找匹配的哈希值,获得对应的键值对,从该键值对中获得与待查询音频指纹匹配的音频信息。本实施例的系统在查询音频信息时,首先从热门音频服务器匹配查询,由于热门音频服务器中只包括了一个热门音频模型,有利于提高热门音频服务器的查询处理速度,且有利于提高系统吞吐量,提高了音频匹配查询的效率和成功率。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种音频指纹匹配查询的方法,其特征在于,包括步骤:
统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照所述音频信息的查询次数从多到少的顺序依次排序;
对排序前n个所述音频信息建立热门音频模型,其中n为正整数,并将所述热门音频模型装载到热门音频服务器中;
当接收到客户端发送的查询请求时,从所述查询请求携带的音频数据中提取音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息;
将匹配的所述音频信息返回给所述客户端;
所述对排序前n个所述音频信息建立热门音频模型的步骤包括:
获取排序前n个所述音频信息的音频指纹,根据所述音频指纹与对应的所述音频信息生成键值对,获得热门音频模型;
所述将热门音频模型装载到热门音频服务器中的步骤之后还包括:
在下一个统计周期到达后,重新统计各音频信息在所述下一个统计周期内的查询次数,并重新将各音频信息按照所述下一个统计周期内的查询次数从多到少的顺序依次排序;
比较前一次排序前n个所述音频信息与本次排序前n个所述音频信息,获得本次排序新进入前n个的所述音频信息和本次排序未进入前n个的所述音频信息;
将本次排序新进入前n个的所述音频信息对应的模型数据添加到所述热门音频模型中,并从所述热门音频模型中剔除本次排序未进入前n个的所述音频信息对应的模型数据。
2.如权利要求1所述的音频指纹匹配查询的方法,其特征在于,所述将各音频信息按照所述音频信息的查询次数从多到少的顺序依次排序的步骤之后还包括:
对排序前n个之外的其余的音频信息建立多个冷门音频模型;
将多个冷门音频模型装载到至少一个冷门音频服务器中。
3.如权利要求2所述的音频指纹匹配查询的方法,其特征在于,所述当接收到客户端发送的查询请求时,提取所述查询请求中的音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息的步骤之后还包括:
当所述热门音频服务器中没有匹配的音频信息时,在各冷门音频服务器中的冷门音频模型中查找与所述音频指纹匹配的音频信息。
4.如权利要求1所述的音频指纹匹配查询的方法,其特征在于,所述对排序前n个所述音频信息建立热门音频模型的步骤包括:
获取排序前n个所述音频信息的音频数据;
从每一个所述音频数据中提取音频指纹;
根据所述音频指纹与对应的所述音频信息生成键值对;
将各键值对存储至热门音频哈希表中,获得热门音频模型。
5.如权利要求4所述的音频指纹匹配查询的方法,其特征在于,所述从所述查询请求携带的音频数据中提取音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息的步骤包括:
从所述查询请求中获取待查询的音频指纹;
获取所述热门音频服务器中的所述热门音频模型中的热门音频哈希表;
在所述热门音频哈希表中查找与所述音频指纹匹配的音频信息。
6.一种音频指纹匹配查询的装置,其特征在于,包括:
排序模块,用于统计各音频信息在设定的统计周期内的查询次数,并将各音频信息按照所述音频信息的查询次数从多到少的顺序依次排序;
建模模块,用于对排序前n个所述音频信息建立热门音频模型,其中n为正整数,并将所述热门音频模型装载到热门音频服务器中;
查询模块,用于当接收到客户端发送的查询请求时,从所述查询请求携带的音频数据中提取音频指纹,在所述热门音频服务器中的所述热门音频模型中查找与所述音频指纹匹配的音频信息;
发送模块,用于将匹配的所述音频信息返回给所述客户端;
所述建模模块还用于,获取排序前n个所述音频信息的音频指纹,根据所述音频指纹与对应的所述音频信息生成键值对,获得热门音频模型;
还包括比较模块;
所述排序模块还用于,在下一个统计周期到达后,重新统计各音频信息在所述下一个统计周期内的查询次数,并重新将各音频信息按照所述下一个统计周期内的查询次数从多到少的顺序依次排序;
所述比较模块用于,比较前一次排序前n个所述音频信息与本次排序前n个所述音频信息,获得本次排序新进入前n个的所述音频信息和本次排序未进入前n个的所述音频信息;
所述建模模块还用于,将本次排序新进入前n个的所述音频信息对应的模型数据添加到所述热门音频模型中,并从所述热门音频模型中剔除本次排序未进入前n个的所述音频信息对应的模型数据。
7.如权利要求6所述的音频指纹匹配查询的装置,其特征在于,所述建模模块还用于:
对排序前n个之外的其余的音频信息建立多个冷门音频模型;
将多个冷门音频模型装载到至少一个冷门音频服务器中。
8.如权利要求7所述的音频指纹匹配查询的装置,其特征在于,所述查询模块还用于,当所述热门音频服务器中没有匹配的音频信息时,在各冷门音频服务器中的冷门音频模型中查找与所述音频指纹匹配的音频信息。
9.如权利要求6所述的音频指纹匹配查询的装置,其特征在于,所述建模模块还用于:
获取排序前n个所述音频信息的音频数据;
从每一个所述音频数据中提取音频指纹;
根据所述音频指纹与对应的所述音频信息生成键值对;
将各键值对存储至热门音频哈希表中,获得热门音频模型。
10.如权利要求9所述的音频指纹匹配查询的装置,其特征在于,所述查询模块还用于:
从所述查询请求中获取待查询的音频指纹;
获取所述热门音频服务器中的所述热门音频模型中的热门音频哈希表;
在所述热门音频哈希表中查找与所述音频指纹匹配的音频信息。
CN201510399161.7A 2015-07-08 2015-07-08 音频指纹匹配查询的方法和装置 Active CN105138541B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510399161.7A CN105138541B (zh) 2015-07-08 2015-07-08 音频指纹匹配查询的方法和装置
PCT/CN2016/083403 WO2017005059A1 (zh) 2015-07-08 2016-05-26 音频指纹匹配查询的方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510399161.7A CN105138541B (zh) 2015-07-08 2015-07-08 音频指纹匹配查询的方法和装置

Publications (2)

Publication Number Publication Date
CN105138541A CN105138541A (zh) 2015-12-09
CN105138541B true CN105138541B (zh) 2018-02-06

Family

ID=54723891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510399161.7A Active CN105138541B (zh) 2015-07-08 2015-07-08 音频指纹匹配查询的方法和装置

Country Status (2)

Country Link
CN (1) CN105138541B (zh)
WO (1) WO2017005059A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138541B (zh) * 2015-07-08 2018-02-06 广州酷狗计算机科技有限公司 音频指纹匹配查询的方法和装置
CN106971736A (zh) * 2016-01-14 2017-07-21 芋头科技(杭州)有限公司 一种提升声纹识别准确度的方法和系统
CN106971732A (zh) * 2016-01-14 2017-07-21 芋头科技(杭州)有限公司 一种基于识别模型提升声纹识别准确度的方法和系统
CN106971725B (zh) * 2016-01-14 2021-06-15 芋头科技(杭州)有限公司 一种具有优先级的声纹识方法和系统
CN106971728A (zh) * 2016-01-14 2017-07-21 芋头科技(杭州)有限公司 一种快速识别声纹方法和系统
CN107239545A (zh) * 2017-06-05 2017-10-10 厦门美柚信息科技有限公司 实现文本信息实时推荐的系统及方法
CN107357901B (zh) * 2017-07-14 2021-01-26 广东工业大学 一种视频文件快速检索方法及系统
CN108198573B (zh) * 2017-12-29 2021-04-30 北京奇艺世纪科技有限公司 音频识别方法及装置、存储介质及电子设备
CN108347652B (zh) * 2018-02-24 2020-01-14 华南理工大学 一种利用人工神经网络推荐iptv直播频道的方法及系统
CN108595521B (zh) * 2018-03-26 2021-08-06 腾讯科技(深圳)有限公司 信息的检索方法、装置、存储介质和电子装置
CN109657093A (zh) * 2018-11-27 2019-04-19 腾讯音乐娱乐科技(深圳)有限公司 音频检索方法、装置及存储介质
CN109857902A (zh) * 2019-03-01 2019-06-07 腾讯音乐娱乐科技(深圳)有限公司 一种音频查询的更新方法、系统及存储介质和服务器
CN113129855A (zh) * 2019-12-30 2021-07-16 阿里巴巴集团控股有限公司 音频指纹提取和建库方法、及音频识别和检索方法与系统
CN112948623B (zh) * 2021-02-25 2022-08-16 杭州网易云音乐科技有限公司 音乐热度预测方法、装置、计算设备以及介质
CN113761232A (zh) * 2021-04-25 2021-12-07 腾讯科技(深圳)有限公司 一种音频库的生成方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101663708A (zh) * 2007-04-17 2010-03-03 韩国电子通信研究院 用于按照索引信息搜索音频指纹的系统和方法
US8959108B2 (en) * 2008-06-18 2015-02-17 Zeitera, Llc Distributed and tiered architecture for content search and content monitoring
CN104636467A (zh) * 2015-02-11 2015-05-20 王磊 离线音频库及相应服务器音频库的构建方法及设备
CN104636474A (zh) * 2015-02-13 2015-05-20 王磊 构建音频指纹库及检索音频指纹的方法和设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100070263A1 (en) * 2006-11-30 2010-03-18 National Institute Of Advanced Industrial Science And Technology Speech data retrieving web site system
CN102388374A (zh) * 2011-09-28 2012-03-21 华为技术有限公司 存储数据的方法和装置
CN102799605B (zh) * 2012-05-02 2016-03-23 天脉聚源(北京)传媒科技有限公司 一种广告监播方法和系统
CN102968464B (zh) * 2012-11-08 2016-07-13 广东电子工业研究院有限公司 一种基于索引的本地资源快速检索系统的检索方法
CN104239306A (zh) * 2013-06-08 2014-12-24 华为技术有限公司 多媒体指纹哈希矢量构建方法及其装置
CN105138541B (zh) * 2015-07-08 2018-02-06 广州酷狗计算机科技有限公司 音频指纹匹配查询的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101663708A (zh) * 2007-04-17 2010-03-03 韩国电子通信研究院 用于按照索引信息搜索音频指纹的系统和方法
US8959108B2 (en) * 2008-06-18 2015-02-17 Zeitera, Llc Distributed and tiered architecture for content search and content monitoring
CN104636467A (zh) * 2015-02-11 2015-05-20 王磊 离线音频库及相应服务器音频库的构建方法及设备
CN104636474A (zh) * 2015-02-13 2015-05-20 王磊 构建音频指纹库及检索音频指纹的方法和设备

Also Published As

Publication number Publication date
CN105138541A (zh) 2015-12-09
WO2017005059A1 (zh) 2017-01-12

Similar Documents

Publication Publication Date Title
CN105138541B (zh) 音频指纹匹配查询的方法和装置
US10853415B2 (en) Systems and methods of classifying content items
US8583791B2 (en) Maintaining a minimum level of real time media recommendations in the absence of online friends
WO2021135701A1 (zh) 一种信息推荐的方法及装置、电子设备、存储介质
US10885107B2 (en) Music recommendation method and apparatus
CN105681821B (zh) 一种音频的播放方法、播放系统及服务器
US20140067827A1 (en) Automatically generating music playlists based on an implicitly selected seed
CN101833570A (zh) 一种移动终端页面推送优化的方法和装置
CN102811371A (zh) 智能电视应用程序推荐的方法、系统及装置
CN102857471A (zh) 多媒体交互方法及系统
CN104636349A (zh) 一种索引数据压缩以及索引数据搜索的方法和设备
CN106202524A (zh) 数据库及其分表装置和方法
CN105279206A (zh) 一种智能推荐方法和系统
CN103473241A (zh) 多媒体对象的推荐方法与推荐装置
CN105243066A (zh) 音频推荐装置及其播放方法
US10394838B2 (en) App store searching
CN107391470A (zh) 一种基于表单设计器的单数据库表操作方法
CN109428774B (zh) 一种dpi设备的数据处理方法及相关的dpi设备
CN105141982A (zh) 一种生成热门节目的epg的方法及装置
CN103399879B (zh) 基于用户搜索日志的兴趣实体获得方法及装置
US20230252011A1 (en) Method and system for data indexing and reporting
US9219900B2 (en) Determine video to play with audio
CN104883619A (zh) 音视频内容推荐系统、方法及装置
CN106254908A (zh) 多媒体资源播放方法和装置
CN105049890B (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20161111

Address after: 510665 Guangzhou City, Tianhe District Province branch Yun Yun Road, No. 16, the construction of the home of the 2 room (the residence of the office for the purpose of the use of) (1301) ()

Applicant after: Guangzhou KuGou Networks Co., Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518000 Zhenxing Road, SEG Science Park 2 East Room 403

Applicant before: Tencent Technology (Shenzhen) Co., Ltd.

GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 510000 Guangzhou City, Guangzhou, Guangdong, Whampoa Avenue, No. 315, self - made 1-17

Patentee after: Guangzhou KuGou Networks Co., Ltd.

Address before: 510665 Guangzhou City, Tianhe District Province branch Yun Yun Road, No. 16, the construction of the home of the 2 room (the residence of the office for the purpose of the use of) (1301) ()

Patentee before: Guangzhou KuGou Networks Co., Ltd.