CN106649642A - 一种歌曲搜索方法、***及相关设备 - Google Patents

一种歌曲搜索方法、***及相关设备 Download PDF

Info

Publication number
CN106649642A
CN106649642A CN201611124314.8A CN201611124314A CN106649642A CN 106649642 A CN106649642 A CN 106649642A CN 201611124314 A CN201611124314 A CN 201611124314A CN 106649642 A CN106649642 A CN 106649642A
Authority
CN
China
Prior art keywords
song
fragment
coding
target
target song
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.)
Pending
Application number
CN201611124314.8A
Other languages
English (en)
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.)
Tencent Music Entertainment Technology Shenzhen Co Ltd
Original Assignee
Tencent Music Entertainment Technology Shenzhen 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 Tencent Music Entertainment Technology Shenzhen Co Ltd filed Critical Tencent Music Entertainment Technology Shenzhen Co Ltd
Priority to CN201611124314.8A priority Critical patent/CN106649642A/zh
Publication of CN106649642A publication Critical patent/CN106649642A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content

Landscapes

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

Abstract

本发明实施例提供了一种歌曲搜索方法、***及相关设备,其中一种歌曲搜索方法包括:终端接收按照预设规则输入的目标歌曲片段的特征信息;所述终端根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码;所述终端向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合;所述终端接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。通过本发明实施例可以快速完成歌曲搜索,并提高歌曲搜索的精准度。

Description

一种歌曲搜索方法、***及相关设备
技术领域
本发明涉及互联网技术领域,尤其涉及一种歌曲搜索方法、***及相关设备。
背景技术
目前,用户在搜索歌曲时可以通过输入相关的关键字或者输入一段哼唱的方式实现,还可以通过输入一段歌曲片段的简谱的方式实现。其中,简谱是指通过音符数字1~7表征歌曲的基本信息,服务器将输入的一段简谱串与歌曲库中歌曲的完整简谱串进行匹配,并将匹配到的歌曲作为歌曲搜索结果。然而,现有的通过简谱搜索歌曲的方案由于简谱包括的歌曲信息较为简单,导致歌曲搜索结果较为杂乱很不精准,歌曲搜索结果中经常会出现完全不相关的歌曲,并且直接利用简谱串进行匹配的方式通常效率较低,耗时较长。
发明内容
本发明实施例提供了一种歌曲搜索方法、***及相关设备,可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
本发明实施例第一方面提供了一种歌曲搜索方法,包括:
终端接收按照预设规则输入的目标歌曲片段的特征信息。
所述终端根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
所述终端向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述终端接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
本发明实施例第二方面提供了一种歌曲搜索方法,包括:
服务器接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的。
所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述服务器向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
本发明实施例第三方面提供了一种终端,包括:
接收模块,用于接收按照预设规则输入的目标歌曲片段的特征信息。
获取模块,用于根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
发送模块,用于向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述接收模块,还用于接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
本发明实施例第四方面提供了一种服务器,包括:
接收模块,用于接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的。
确定模块,用于根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
发送模块,用于向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
本发明实施例第五方面提供了一种歌曲搜索***,包括:上述第三方面所述的终端和上述第四方面所述的服务器。
本发明实施例中,终端接收按照预设规则输入的目标歌曲片段的特征信息,根据该目标歌曲片段的特征信息,获取该目标歌曲片段的编码,并向服务器发送该目标歌曲片段的编码,以指示服务器根据该目标歌曲片段的编码,确定与该目标歌曲片段相匹配的歌曲集合,终端接收服务器发送的该歌曲集合,并输出该歌曲集合包括的各个歌曲的歌曲标识,可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种歌曲搜索方法的流程示意图;
图2是本发明实施例提供的一种终端的结构示意图;
图3是本发明实施例提供的另一种终端的结构示意图;
图4是本发明实施例提供的一种服务器的结构示意图;
图5是本发明实施例提供的另一种服务器的结构示意图;
图6是本发明实施例提供的一种歌曲搜索***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
其中,本发明实施例所描述的终端具体可以为智能手机、平板电脑、笔记本电脑、台式电脑、车载终端、智能可穿戴设备等。
请参阅图1,为本发明实施例提供的一种歌曲搜索方法的流程示意图。本实施例中所描述的歌曲搜索方法,包括以下步骤:
101、终端接收按照预设规则输入的目标歌曲片段的特征信息。
其中,特征信息具体可以包括简谱和/或五线谱,简谱是指通过音符数字1~7表征歌曲的基本信息,而五线谱相比于简谱还包括节拍、音调高低等更加丰富的歌曲信息,便于提高歌曲搜索结果的精确度。
具体实现中,用户可以通过输入字符串输入目标歌曲片段的特征信息,预设规则可以是:音符用数字1~7表示;x分音符用数字x表示,例如,4表示1/4音符,8表示1/8音符;加/减八度用字符A(或a)/B(或b)表示(当然也可以用其它字符表示),例如,A表示加一个八度,AA表示加两个八度,B表示减一个八度,BB表示减两个八度,标准音时加/减八度的字符省略。例如,用户通过输入法输入的字符串为“14A”,则终端根据上述预设规则确定字符串“14A”表示的目标歌曲片段的特征信息是:音符为1,1/4音符,加一个八度。
在一些可行的实施方式中,用户还可以输入包括目标歌曲片段的特征信息的图片,无论特征信息是简谱还是五线谱,由于图形都比较单一,终端可以利用图像识别技术精准地识别出图片包括的目标歌曲片段的特征信息,从而可以更加便捷地完成目标歌曲片段的特征信息的输入,图片可以是用户利用终端实时拍摄的图片,也可以是终端本地存储的图片,还可以是用户从网络下载的图片,本发明实施例不做限定。可见,通过本发明实施例不仅可以输入歌曲信息较为简单的简谱,还可以输入包括丰富歌曲信息的五线谱,并且输入方式高效、灵活。
102、所述终端根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
其中,目标歌曲片段的特征信息无论是简谱还是五线谱都可以包括以下属性特征:每分钟的节拍数(beats per minute,BMP),占用一个字节8比特bit;音符,简谱是数字1~7,五线谱是五线四间隔,占用3bit;x分音符,指音符的快慢,例如1/4音符、1/8音符、1/16音符等,占用4bit;分节符,占用1bit;升音和降音,在五线谱中用上加点和下加点表示,共有7个,占用3bit。
具体实现中,终端从目标歌曲片段的特征信息中,提取目标歌曲片段包括的每个小节的特征信息,对每个小节的特征信息进行编码,针对每个小节的特征信息生成哈希hash值,具体可以是使用可执行链接格式(Executable and Linking Format,ELF)hash算法生成hash值,得到包括hash值的目标歌曲片段的编码。
以每个小节是4个节拍为例,则目标歌曲片段的编码情况如表1所示:
表1
终端对目标歌曲片段进行编码时,将BMP放在目标歌曲片段编码的最后,用户在搜索歌曲时,如果不知道BMP,可以不输入,针对每个小节的特征信息(按照表1即为4*(3+4+3)bit=40bit)生成一个hash值,通过对目标歌曲片段的特征信息进行上述高效编码实现对特征信息的优化和压缩,即使在目标歌曲片段较长时也能大大减少后续的数据传输量。
103、所述终端向服务器发送所述目标歌曲片段的编码。
104、所述服务器接收所述目标歌曲片段的编码,并根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
其中,服务器侧存储有后台歌曲库,对于后台歌曲库中的热门歌曲(例如近期搜索量/播放量超过预设阈值的歌曲)可以存储在缓存(例如高性能分布式key-value缓存服务内存持久化存储CMEM)中,对于后台歌曲库中的较冷门歌曲可以存储在数据库中,歌曲在录入后台歌曲库时,将歌曲的简谱、五线谱等特征信息也加入到后台歌曲库中,并利用步骤102中描述的编码方式对歌曲进行编码,即针对歌曲中的每个小节生成hash值,BMP也可以放在歌曲编码的最后。服务器还可以建立每个小节的hash值与歌曲编号(也可以是歌曲标识)的索引关系,以加速后续的查询。
具体实现中,服务器将目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定后台歌曲库中hash值与目标歌曲片段的编码中包括的hash值相同的第一歌曲集合,并获取第一歌曲集合中各个歌曲与目标歌曲片段的相似度,具体是将第一歌曲集合中各个歌曲的音符、升降音和x分音符分别与目标歌曲片段的音符、升降音和x分音符进行比对,获取音符、升降音和x分音符各自的匹配度,再对音符、升降音和x分音符赋予相应的权重,一般地,由于音符的作用较大可以分配较大的权重,将匹配度与对应权重取乘积再求和作为相似度,再将相似度按照从大到小的顺序进行排序,将相似度排在前面的预设数量(例如10个)的歌曲作为与目标歌曲片段相匹配的歌曲集合,根据hash值与歌曲编号的索引关系即可确定歌曲集合包括了哪些歌曲。
在一些可行的实施方式中,如果目标歌曲片段的编码中包括BMP,则服务器可以先将BMP与后台歌曲库中歌曲的编码中包括的BMP进行匹配,确定后台歌曲库中BMP匹配成功(例如与目标歌曲片段的编码中包括的BMP偏差不超过50%可认为匹配成功)的第二歌曲集合,再将目标歌曲片段的编码中包括的hash值与第二歌曲集合中歌曲的编码中包括的hash值进行匹配,以确定第二歌曲集合中hash值匹配成功的第一歌曲集合,通过先匹配BMP可以确定出一个较小的歌曲范围(即第二歌曲集合),再在第二歌曲集合中进行hash值的匹配,可以有效减少计算量,加快歌曲搜索速度。
在一些可行的实施方式中,服务器在进行hash值匹配时,可以将目标歌曲片段的编码中包括的hash值先与后台歌曲库中缓存歌曲的编码中包括的hash值进行匹配,如果匹配成功,则服务器从缓存歌曲中确定hash值匹配成功的第一歌曲集合。如果匹配不成功,则服务器再将目标歌曲片段的编码中包括的hash值与后台歌曲库中数据库歌曲的编码中包括的hash值进行匹配,并从数据库歌曲中确定hash值匹配成功的所述第一歌曲集合,由于缓存歌曲是近期的热门歌曲,且缓存的读取速度性能较好,先从缓存歌曲中匹配编码的hash值可以大大加快歌曲的匹配速度,提高用户的歌曲搜索体验。
在一些可行的实施方式中,服务器具体可以包括web服务器和后台服务器,web服务器接收终端发送的目标歌曲片段的编码,web服务器向后台服务器转发目标歌曲片段的编码,具体由后台服务器完成步骤104所描述的实施方案。此外,web服务器还可以用于对终端发送的目标歌曲片段的编码(即歌曲搜索请求)进行过滤,防止恶意攻击,同时还可以起到限制流量的作用,防止后台服务器因访问量过大导致服务瘫痪,从而服务器侧采用web服务器和后台服务器组合的方式可以进一步保证歌曲搜索服务的流畅和稳定。
105、所述服务器向所述终端发送所述歌曲集合。
106、所述终端接收所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
具体实现中,服务器将匹配得到的歌曲集合(即歌曲搜索结果)返回给终端,终端即可向用户输出歌曲集合包括的各个歌曲的歌曲标识,例如,歌曲名称,歌手等,还可以同时输出歌曲的简谱和/或五线谱,以丰富歌曲搜索结果的表现形式。
本发明实施例中,终端接收按照预设规则输入的目标歌曲片段的特征信息,并根据该目标歌曲片段的特征信息,对该目标歌曲片段进行编码,以获取该目标歌曲片段的编码,再向服务器发送该目标歌曲片段的编码,服务器接收到该目标歌曲片段的编码后,根据该目标歌曲片段的编码,从后台歌曲库的缓存歌曲或者数据库歌曲中确定与该目标歌曲片段相匹配的歌曲集合,并向终端发送该歌曲集合,进而终端输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
请参阅图2,为本发明实施例提供的一种终端的结构示意图。本实施例中所描述的终端,包括:
接收模块201,用于接收按照预设规则输入的目标歌曲片段的特征信息。
获取模块202,用于根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
发送模块203,用于向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述接收模块201,还用于接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
在一些可行的实施方式中,所述接收模块201,具体用于:
接收按照预设规则针对目标歌曲片段输入的字符串。
根据所述字符串确定所述目标歌曲片段的特征信息。
在一些可行的实施方式中,所述接收模块201,具体用于:
接收针对目标歌曲片段输入的图片。
对所述图片进行解析,获取所述目标歌曲片段的特征信息。
在一些可行的实施方式中,所述获取模块202包括:
提取单元2020,用于从所述目标歌曲片段的特征信息中,提取所述目标歌曲片段包括的每个小节的特征信息。
生成单元2021,用于针对所述每个小节的特征信息生成hash值,得到包括所述hash值的所述目标歌曲片段的编码。
可以理解的是,本实施例的终端的各功能模块、单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本发明实施例中,终端接收按照预设规则输入的目标歌曲片段的特征信息,根据该目标歌曲片段的特征信息,获取该目标歌曲片段的编码,并向服务器发送该目标歌曲片段的编码,以指示服务器根据该目标歌曲片段的编码,确定与该目标歌曲片段相匹配的歌曲集合,终端接收服务器发送的该歌曲集合,并输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
请参阅图3,为本发明实施例提供的另一种终端的结构示意图。本实施例中所描述的终端,包括:处理器301、用户接口302、网络接口303及存储器304。其中,处理器301、用户接口302、网络接口303及存储器304可通过总线或其他方式连接,本发明实施例以通过总线连接为例。
其中,处理器301(或称CPU(Central Processing Unit,中央处理器))是终端的计算核心以及控制核心,其可以解析终端内的各类指令以及处理终端的各类数据,例如:CPU可以用于解析用户向终端所发送的开关机指令,并控制终端进行开关机操作;再如:CPU可以在终端内部结构之间传输各类交互数据,等等。用户接口302是实现用户与终端进行交互和信息交换的媒介,其具体体现可以包括用于输出的显示屏(Display)以及用于输入的键盘(Keyboard)等等,需要说明的是,此处的键盘既可以为实体键盘,也可以为触屏虚拟键盘,还可以为实体与触屏虚拟相结合的键盘。网络接口303可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等),受处理器301的控制用于收发数据。存储器304(Memory)是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器304既可以包括终端的内置存储器,当然也可以包括终端所支持的扩展存储器。存储器304提供存储空间,该存储空间存储了终端的操作***,可包括但不限于:Windows***(一种操作***)、Android***、IOS***等等,本发明对此并不作限定。
在本发明实施例中,处理器301通过运行存储器304中的可执行程序代码,执行如下操作:
处理器301,用于接收按照预设规则输入的目标歌曲片段的特征信息。
所述处理器301,还用于根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
网络接口303,用于向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述网络接口303,还用于接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
在一些可行的实施方式中,所述处理器301,具体用于:
通过用户接口302接收按照预设规则针对目标歌曲片段输入的字符串。
根据所述字符串确定所述目标歌曲片段的特征信息。
在一些可行的实施方式中,所述处理器301,具体用于:
接收针对目标歌曲片段输入的图片。
对所述图片进行解析,获取所述目标歌曲片段的特征信息。
在一些可行的实施方式中,所述处理器301,具体用于:
从所述目标歌曲片段的特征信息中,提取所述目标歌曲片段包括的每个小节的特征信息。
针对所述每个小节的特征信息生成hash值,得到包括所述hash值的所述目标歌曲片段的编码。
具体实现中,本发明实施例中所描述的处理器301、用户接口302、网络接口303及存储器304可执行本发明实施例提供的一种歌曲搜索方法的流程中所描述的实现方式,也可执行本发明实施例提供的一种终端中所描述的实现方式,在此不再赘述。
本发明实施例中,终端接收按照预设规则输入的目标歌曲片段的特征信息,根据该目标歌曲片段的特征信息,获取该目标歌曲片段的编码,并向服务器发送该目标歌曲片段的编码,以指示服务器根据该目标歌曲片段的编码,确定与该目标歌曲片段相匹配的歌曲集合,终端接收服务器发送的该歌曲集合,并输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
请参阅图4,为本发明实施例提供的一种服务器的结构示意图。本实施例中所描述的服务器,包括:
接收模块401,用于接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的。
确定模块402,用于根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
发送模块403,用于向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
在一些可行的实施方式中,所述确定模块402包括:
匹配单元4020,用于将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合。
获取单元4021,用于获取所述第一歌曲集合中各个歌曲与所述目标歌曲片段的相似度。
排序单元4022,用于将所述相似度按照从大到小的顺序进行排序,将所述相似度排在前面的预设数量的歌曲作为与所述目标歌曲片段相匹配的歌曲集合。
在一些可行的实施方式中,所述匹配单元4020,具体用于:
若所述目标歌曲片段的编码中包括BMP,则将所述BMP与后台歌曲库中歌曲的编码中包括的BMP进行匹配。
确定所述后台歌曲库中BMP匹配成功的第二歌曲集合,并将所述目标歌曲片段的编码中包括的hash值与所述第二歌曲集合中歌曲的编码中包括的hash值进行匹配,确定所述第二歌曲集合中hash值匹配成功的第一歌曲集合。
在一些可行的实施方式中,所述匹配单元4020,具体用于:
将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中缓存歌曲的编码中包括的hash值进行匹配。
若匹配成功,则从所述缓存歌曲中确定hash值匹配成功的第一歌曲集合。
若匹配不成功,则将所述目标歌曲片段的编码中包括的hash值与所述后台歌曲库中数据库歌曲的编码中包括的hash值进行匹配,并从所述数据库歌曲中确定hash值匹配成功的所述第一歌曲集合。
可以理解的是,本实施例的服务器的各功能模块、单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本发明实施例中,服务器接收终端发送的目标歌曲片段的编码,该目标歌曲片段的编码是终端根据该目标歌曲片段的特征信息获取的,服务器根据该目标歌曲片段的编码,确定与该目标歌曲片段相匹配的歌曲集合,并向终端发送该歌曲集合,以指示终端输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
请参阅图5,为本发明实施例提供的另一种服务器的结构示意图。本实施例中所描述的服务器,包括:处理器501、网络接口502及存储器503。其中,处理器501、网络接口502及存储器503可通过总线或其他方式连接,本发明实施例以通过总线连接为例。
其中,处理器501(或称中央处理器(Central Processing Unit,CPU))是服务器的计算核心以及控制核心。网络接口502可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等),受处理器501的控制用于收发数据。存储器503(Memory)是服务器的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器503可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器501的存储装置。存储器503提供存储空间,该存储空间存储了服务器的操作***和可执行程序代码,可包括但不限于:Windows***(一种操作***)、Linux(一种操作***)***等等,本发明对此并不作限定。
在本发明实施例中,处理器501通过运行存储器503中的可执行程序代码,执行如下操作:
网络接口502,用于接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的。
处理器501,用于根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述网络接口502,还用于向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
在一些可行的实施方式中,所述处理器501,具体用于:
将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合。
获取所述第一歌曲集合中各个歌曲与所述目标歌曲片段的相似度。
将所述相似度按照从大到小的顺序进行排序,将所述相似度排在前面的预设数量的歌曲作为与所述目标歌曲片段相匹配的歌曲集合。
在一些可行的实施方式中,所述处理器501,具体用于:
若所述目标歌曲片段的编码中包括BMP,则将所述BMP与后台歌曲库中歌曲的编码中包括的BMP进行匹配。
确定所述后台歌曲库中BMP匹配成功的第二歌曲集合,并将所述目标歌曲片段的编码中包括的hash值与所述第二歌曲集合中歌曲的编码中包括的hash值进行匹配,确定所述第二歌曲集合中hash值匹配成功的第一歌曲集合。
在一些可行的实施方式中,所述处理器501,具体用于:
将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中缓存歌曲的编码中包括的hash值进行匹配。
若匹配成功,则从所述缓存歌曲中确定hash值匹配成功的第一歌曲集合。
若匹配不成功,则将所述目标歌曲片段的编码中包括的hash值与所述后台歌曲库中数据库歌曲的编码中包括的hash值进行匹配,并从所述数据库歌曲中确定hash值匹配成功的所述第一歌曲集合。
具体实现中,本发明实施例中所描述的处理器501、网络接口502及存储器503可执行本发明实施例提供的一种歌曲搜索方法的流程中所描述的实现方式,也可执行本发明实施例提供的一种服务器中所描述的实现方式,在此不再赘述。
本发明实施例中,服务器接收终端发送的目标歌曲片段的编码,该目标歌曲片段的编码是终端根据该目标歌曲片段的特征信息获取的,服务器根据该目标歌曲片段的编码,确定与该目标歌曲片段相匹配的歌曲集合,并向终端发送该歌曲集合,以指示终端输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
请参阅图6,为本发明实施例提供的一种歌曲搜索***的结构示意图。本实施例中所描述的歌曲搜索***,包括:终端601和服务器602,其中:
终端601,用于接收按照预设规则输入的目标歌曲片段的特征信息。
所述终端601,还用于根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码。
所述终端601,还用于向服务器602发送所述目标歌曲片段的编码。
所述服务器602,用于接收所述目标歌曲片段的编码,并根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合。
所述服务器602,还用于向所述终端601发送所述歌曲集合。
所述终端601,还用于接收所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
本发明实施例中所描述的终端601和服务器602可执行本发明实施例提供的一种歌曲搜索方法的流程中所描述的实现方式,在此不再赘述。
本发明实施例中,终端接收按照预设规则输入的目标歌曲片段的特征信息,并根据该目标歌曲片段的特征信息,对该目标歌曲片段进行编码,以获取该目标歌曲片段的编码,再向服务器发送该目标歌曲片段的编码,服务器接收到该目标歌曲片段的编码后,根据该目标歌曲片段的编码,从后台歌曲库的缓存歌曲或者数据库歌曲中确定与该目标歌曲片段相匹配的歌曲集合,并向终端发送该歌曲集合,进而终端输出该歌曲集合包括的各个歌曲的歌曲标识,从而可以快速完成歌曲搜索,并提高歌曲搜索的精准度。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (18)

1.一种歌曲搜索方法,其特征在于,包括:
终端接收按照预设规则输入的目标歌曲片段的特征信息;
所述终端根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码;
所述终端向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合;
所述终端接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
2.根据权利要求1所述的方法,其特征在于,所述终端接收按照预设规则输入的目标歌曲片段的特征信息,包括:
终端接收按照预设规则针对目标歌曲片段输入的字符串;
所述终端根据所述字符串确定所述目标歌曲片段的特征信息。
3.根据权利要求1所述的方法,其特征在于,所述终端接收按照预设规则输入的目标歌曲片段的特征信息,包括:
终端接收针对目标歌曲片段输入的图片;
所述终端对所述图片进行解析,获取所述目标歌曲片段的特征信息。
4.根据权利要求1~3中任一项所述的方法,其特征在于,所述终端根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码,包括:
所述终端从所述目标歌曲片段的特征信息中,提取所述目标歌曲片段包括的每个小节的特征信息;
所述终端针对所述每个小节的特征信息生成哈希hash值,得到包括所述hash值的所述目标歌曲片段的编码。
5.根据权利要求1所述的方法,其特征在于,
所述特征信息包括简谱和/或五线谱。
6.一种歌曲搜索方法,其特征在于,包括:
服务器接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的;
所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合;
所述服务器向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
7.根据权利要求6所述的方法,其特征在于,所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合,包括:
所述服务器将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合;
所述服务器获取所述第一歌曲集合中各个歌曲与所述目标歌曲片段的相似度;
所述服务器将所述相似度按照从大到小的顺序进行排序,将所述相似度排在前面的预设数量的歌曲作为与所述目标歌曲片段相匹配的歌曲集合。
8.根据权利要求7所述的方法,其特征在于,所述服务器将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合,包括:
若所述目标歌曲片段的编码中包括每分钟的节拍数BMP,则所述服务器将所述BMP与后台歌曲库中歌曲的编码中包括的BMP进行匹配;
所述服务器确定所述后台歌曲库中BMP匹配成功的第二歌曲集合,并将所述目标歌曲片段的编码中包括的hash值与所述第二歌曲集合中歌曲的编码中包括的hash值进行匹配,确定所述第二歌曲集合中hash值匹配成功的第一歌曲集合。
9.根据权利要求7所述的方法,其特征在于,所述服务器将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合,包括:
所述服务器将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中缓存歌曲的编码中包括的hash值进行匹配;
若匹配成功,则所述服务器从所述缓存歌曲中确定hash值匹配成功的第一歌曲集合;
若匹配不成功,则所述服务器将所述目标歌曲片段的编码中包括的hash值与所述后台歌曲库中数据库歌曲的编码中包括的hash值进行匹配,并从所述数据库歌曲中确定hash值匹配成功的所述第一歌曲集合。
10.一种终端,其特征在于,包括:
接收模块,用于接收按照预设规则输入的目标歌曲片段的特征信息;
获取模块,用于根据所述目标歌曲片段的特征信息,获取所述目标歌曲片段的编码;
发送模块,用于向服务器发送所述目标歌曲片段的编码,以指示所述服务器根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合;
所述接收模块,还用于接收所述服务器发送的所述歌曲集合,并输出所述歌曲集合包括的各个歌曲的歌曲标识。
11.根据权利要求10所述的终端,其特征在于,所述接收模块,具体用于:
接收按照预设规则针对目标歌曲片段输入的字符串;
根据所述字符串确定所述目标歌曲片段的特征信息。
12.根据权利要求10所述的终端,其特征在于,所述接收模块,具体用于:
接收针对目标歌曲片段输入的图片;
对所述图片进行解析,获取所述目标歌曲片段的特征信息。
13.根据权利要求10~12中任一项所述的终端,其特征在于,所述获取模块包括:
提取单元,用于从所述目标歌曲片段的特征信息中,提取所述目标歌曲片段包括的每个小节的特征信息;
生成单元,用于针对所述每个小节的特征信息生成hash值,得到包括所述hash值的所述目标歌曲片段的编码。
14.一种服务器,其特征在于,包括:
接收模块,用于接收终端发送的目标歌曲片段的编码,所述目标歌曲片段的编码是所述终端根据所述目标歌曲片段的特征信息获取的;
确定模块,用于根据所述目标歌曲片段的编码,确定与所述目标歌曲片段相匹配的歌曲集合;
发送模块,用于向所述终端发送所述歌曲集合,以指示所述终端输出所述歌曲集合包括的各个歌曲的歌曲标识。
15.根据权利要求14所述的服务器,其特征在于,所述确定模块包括:
匹配单元,用于将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中歌曲的编码中包括的hash值进行匹配,确定所述后台歌曲库中hash值匹配成功的第一歌曲集合;
获取单元,用于获取所述第一歌曲集合中各个歌曲与所述目标歌曲片段的相似度;
排序单元,用于将所述相似度按照从大到小的顺序进行排序,将所述相似度排在前面的预设数量的歌曲作为与所述目标歌曲片段相匹配的歌曲集合。
16.根据权利要求15所述的服务器,其特征在于,所述匹配单元,具体用于:
若所述目标歌曲片段的编码中包括BMP,则将所述BMP与后台歌曲库中歌曲的编码中包括的BMP进行匹配;
确定所述后台歌曲库中BMP匹配成功的第二歌曲集合,并将所述目标歌曲片段的编码中包括的hash值与所述第二歌曲集合中歌曲的编码中包括的hash值进行匹配,确定所述第二歌曲集合中hash值匹配成功的第一歌曲集合。
17.根据权利要求15所述的服务器,其特征在于,所述匹配单元,具体用于:
将所述目标歌曲片段的编码中包括的hash值与后台歌曲库中缓存歌曲的编码中包括的hash值进行匹配;
若匹配成功,则从所述缓存歌曲中确定hash值匹配成功的第一歌曲集合;
若匹配不成功,则将所述目标歌曲片段的编码中包括的hash值与所述后台歌曲库中数据库歌曲的编码中包括的hash值进行匹配,并从所述数据库歌曲中确定hash值匹配成功的所述第一歌曲集合。
18.一种歌曲搜索***,其特征在于,包括:如权利要求10~13中任一项所述的终端和如权利要求14~17中任一项所述的服务器。
CN201611124314.8A 2016-12-08 2016-12-08 一种歌曲搜索方法、***及相关设备 Pending CN106649642A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611124314.8A CN106649642A (zh) 2016-12-08 2016-12-08 一种歌曲搜索方法、***及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611124314.8A CN106649642A (zh) 2016-12-08 2016-12-08 一种歌曲搜索方法、***及相关设备

Publications (1)

Publication Number Publication Date
CN106649642A true CN106649642A (zh) 2017-05-10

Family

ID=58818832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611124314.8A Pending CN106649642A (zh) 2016-12-08 2016-12-08 一种歌曲搜索方法、***及相关设备

Country Status (1)

Country Link
CN (1) CN106649642A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107622090A (zh) * 2017-08-22 2018-01-23 上海艾融软件股份有限公司 对象的获取方法、装置及***
CN111338598A (zh) * 2020-03-09 2020-06-26 南京维沃软件技术有限公司 一种消息处理方法及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070250899A1 (en) * 2006-04-11 2007-10-25 Veotag, Inc. Nondestructive self-publishing video editing system
CN101140580A (zh) * 2007-09-24 2008-03-12 武汉大学 一种音乐搜索的方法
CN101344887A (zh) * 2008-06-06 2009-01-14 网易有道信息技术(北京)有限公司 音频搜索方法及装置
CN101506808A (zh) * 2006-08-31 2009-08-12 索尼爱立信移动通讯有限公司 基于音频搜索条件的搜索***和搜索方法
CN103440313A (zh) * 2013-08-27 2013-12-11 复旦大学 基于音频指纹特征的音乐检索***
CN104598515A (zh) * 2014-12-03 2015-05-06 百度在线网络技术(北京)有限公司 歌曲搜索方法、装置和***
CN105630831A (zh) * 2014-11-06 2016-06-01 科大讯飞股份有限公司 哼唱检索方法及***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070250899A1 (en) * 2006-04-11 2007-10-25 Veotag, Inc. Nondestructive self-publishing video editing system
CN101506808A (zh) * 2006-08-31 2009-08-12 索尼爱立信移动通讯有限公司 基于音频搜索条件的搜索***和搜索方法
CN101140580A (zh) * 2007-09-24 2008-03-12 武汉大学 一种音乐搜索的方法
CN101344887A (zh) * 2008-06-06 2009-01-14 网易有道信息技术(北京)有限公司 音频搜索方法及装置
CN103440313A (zh) * 2013-08-27 2013-12-11 复旦大学 基于音频指纹特征的音乐检索***
CN105630831A (zh) * 2014-11-06 2016-06-01 科大讯飞股份有限公司 哼唱检索方法及***
CN104598515A (zh) * 2014-12-03 2015-05-06 百度在线网络技术(北京)有限公司 歌曲搜索方法、装置和***

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107622090A (zh) * 2017-08-22 2018-01-23 上海艾融软件股份有限公司 对象的获取方法、装置及***
CN111338598A (zh) * 2020-03-09 2020-06-26 南京维沃软件技术有限公司 一种消息处理方法及电子设备
CN111338598B (zh) * 2020-03-09 2023-10-13 南京维沃软件技术有限公司 一种消息处理方法及电子设备

Similar Documents

Publication Publication Date Title
KR102110057B1 (ko) 노래 확정 방법과 장치, 기억 매체
US9613147B2 (en) Collection of telemetry data by a telemetry library within a client device
CN108197226A (zh) Mptc账户状态树以及mptc区块链快速检索方法
CN103678702B (zh) 视频去重方法及装置
CN111563216B (zh) 本地数据缓存方法、装置及相关设备
US20120084282A1 (en) Content quality filtering without use of content
CN105895090A (zh) 语音信号处理方法及装置
US20160070796A1 (en) Determining a property of a communication device
CN1983253A (zh) 一种提供音乐搜索服务的方法、设备和***
CN104866985B (zh) 快递单号识别方法、装置及***
CN102185762B (zh) 用户数据发送行为的识别与提取方法
WO2014108004A1 (zh) 一种微博用户身份识别方法及***
JP2007124561A (ja) データ圧縮方法及び圧縮データ送信方法
CN104598502A (zh) 获取播放视频中背景音乐信息的方法、装置及***
CN103049495A (zh) 用于提供与查询序列相对应的搜索建议的方法、装置与设备
CN112532624B (zh) 一种黑链检测方法、装置、电子设备及可读存储介质
CN111241496B (zh) 确定小程序特征向量的方法、装置和电子设备
CN106649642A (zh) 一种歌曲搜索方法、***及相关设备
CN114817651B (zh) 数据存储方法、数据查询方法、装置和设备
CN112836057A (zh) 知识图谱的生成方法、装置、终端以及存储介质
CN111368552A (zh) 一种面向特定领域的网络用户群组划分方法及装置
CN107886112B (zh) 一种对象聚类方法、装置及存储设备
CN111242494B (zh) 一种基于博弈论的专利侵权检测方法及***
CN112162991B (zh) 数据的智能管理方法及装置
CN105608122B (zh) 一种存储电子表单数据的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510