CN103092859B - 一种获取音乐文件信息的方法及装置 - Google Patents
一种获取音乐文件信息的方法及装置 Download PDFInfo
- Publication number
- CN103092859B CN103092859B CN201110341260.1A CN201110341260A CN103092859B CN 103092859 B CN103092859 B CN 103092859B CN 201110341260 A CN201110341260 A CN 201110341260A CN 103092859 B CN103092859 B CN 103092859B
- Authority
- CN
- China
- Prior art keywords
- music file
- label information
- decoding
- filename
- song title
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种获取音乐文件信息的方法及装置,属于计算机领域。所述方法包括:获取音乐文件的文件名;对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息;从所述成功解码的标签信息中获取音乐文件信息,所述音乐文件信息至少包括歌曲名称。所述装置包括:第一获取模块、解码判断模块和第二获取模块。本发明能够提高获取音乐文件信息的正确性。
Description
技术领域
本发明涉及计算机领域,特别涉及一种获取音乐文件信息的方法及装置。
背景技术
MP3(MovingPictureExpertsGroupAudioLayerIII,动态影像专家压缩标准音频层面3)文件是常见的一种音乐文件,在MP3文件的开头或末尾的若干个字节内有ID3(IDentity3,标识3)标签信息,ID3标签信息中存储有MP3文件信息,MP3文件信息至少包括歌曲名称,还可以包括歌手姓名和/或专辑名称等信息。
目前可以使用修改ID3标签工具来从ID3标签信息中读取MP3文件信息,具体为:用户在修改ID3工具中设置一种解码方式,修改ID3标签工具根据用户设置的解码方式对MP3文件的ID3标签信息进行解码,从解码后的ID3标签信息中读取MP3文件信息。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
ID3标签信息的编码方式有多种,不同MP3文件中的ID3标签信息采用的编码方式往往不同,使得解码的ID3标签信息经常出现乱码,从而经常无法正确读取到MP3文件信息。
发明内容
为了提高获取到音乐文件信息的正确性,本发明提供了一种获取音乐文件信息的方法及装置。所述技术方案如下:
一种获取音乐文件信息的方法,所述方法包括:
获取音乐文件的文件名;
对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息;
从所述成功解码的标签信息中获取音乐文件信息。
一种获取音乐文件信息的装置,所述装置包括:
第一获取模块,用于获取音乐文件的文件名;
解码判断模块,用于对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息;
第二获取模块,用于从所述成功解码的标签信息中获取音乐文件信息。
在本发明中,获取音乐文件的文件名,对音乐文件的标签信息进行解码,根据该音乐文件的文件名获取成功解码的标签信息,从成功解码的标签信息中获取音乐文件信息,如此提高获取音乐文件信息的正确性。
附图说明
图1是本发明实施例1提供的一种获取音乐文件信息的方法流程图;
图2是本发明实施例2提供的一种获取音乐文件信息的方法流程图;
图3是本发明实施例3提供的一种获取音乐文件信息的方法流程图;
图4是本发明实施例4提供的一种获取音乐文件信息的方法流程图;
图5是本发明实施例5提供的一种获取音乐文件信息的装置示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
如图1所示,本发明实施例提供了一种获取音乐文件信息的方法,包括:
步骤101:获取音乐文件的文件名;
步骤102:对该音乐文件的标签信息进行解码,根据该音乐文件的文件名获取成功解码的标签信息;
步骤103:从成功解码的标签信息中获取音乐文件信息。
在本发明实施例中,获取音乐文件的文件名,对音乐文件的标签信息进行解码,根据该音乐文件的文件名获取成功解码的标签信息,从成功解码的标签信息中获取音乐文件信息,如此提高获取音乐文件信息的正确性。
实施例2
如图2所示,本发明实施例提供了一种获取音乐文件信息的方法,包括:
步骤201:读取音乐文件的文件名,对该音乐文件的文件名进行规范化操作;
具体地,读取音乐文件的文件名,去除该音乐文件的文件名中的冗余信息,如果该音乐文件的文件名中存在英文字母,则对该音乐文件的文件名中包括的英文字母的格式进行归一化处理,如果该音乐文件的文件名中存在文字信息,则将该音乐文件的文件名中包括的简体文字转换为繁体文字或将该音乐文件的文件名中包括的繁体文字转换为简体文字。
其中,英文字母的格式包括大写形式和小写形式;相应地,对该音乐文件的文件名中包括的英文字母的格式进行归一化处理的操作,可以包括如下方式:
第一方式、根据unicode(UniversalCharacterSet,统一码)码表将该音乐文件的文件名中的每个小写形式的英文字母转换为大写形式的英文字母,使该音乐文件的文件名包括的英文字母都为大写形式的英文字母。
其中,unicode码表中存储有小写形式的英文字母的编码与大写形式的英文字母的编码的对应关系。具体地,根据该音乐文件的文件名中每个小写形式的英文字母的编码,从unicode码表中获取到每个小写形式的英文字母对应的大写形式的英文字母的编码,根据每个小写形式的英文字母对应的大写形式的英文字母的编码,将每个小写形式的英文字母转换为大写形式的英文字母。
第二方式、根据unicode码表将该音乐文件的文件名中的每个大写形式的英文字母转换为小写形式的英文字母,使该音乐文件的文件名包括的英文字母都为小写形式的英文字母。
具体地,根据该音乐文件的文件名中每个大写形式的英文字母的编码,从unicode码表中获取到每个大写形式的英文字母对应的小写形式的英文字母的编码,根据每个大写形式的英文字母对应的小写形式的英文字母的编码,将每个大写形式的英文字母转换为小写形式的英文字母。
其中,unicode码表中还存储有简体文字的编码与繁体文字的编码的对应关系,相应地,将该音乐文件的文件名中包括的简体文字转换为繁体文字的操作,可以具体为:
根据该音乐文件的文件名中包括的每个简体文字的编码,从unicode码表中获取每个简体文字对应的繁体文字的编码,根据每个简体文字对应的繁体文字的编码将每个简体文字转换为繁体文字;以及,
将该音乐文件的文件名中包括的繁体文字转换为简体文字的操作,可以具体为:
根据该音乐文件的文件名中包括的每个繁体文字的编码,从unicode码表中获取每个繁体文字对应的简体文字的编码,根据每个繁体文字对应的简体文字的编码将每个繁体文字转换为简体文字。
其中,在本实施例中,音乐文件可以为MP3文件或APE文件等。冗余信息包括标点符号和空格等信息。
步骤202:从该音乐文件的文件名中去除后缀名;
其中,每个音乐文件的文件名都有一个后缀名,例如,MP3文件的文件名中的后缀名为“.mp3”,APE文件的文件名中的后缀名为“.ape”。
其中,在音乐文件中存在一个标签信息,目前有多种编码方式对音乐文件中的标签信息进行编码,相应地,目前也有多种解码方式对音乐文件的标签信息进行解码。在本实施例中,设置一个解码方式列表,解码方式列表用于存储目前存在的用于对音乐文件的标签信息进行解码的解码方式。
其中,MP3文件的标签信息为ID3标签信息,APE文件的标签信息为APE标签信息。
步骤203:从解码方式列表中选择默认解码方式,根据默认解码方式对该音乐文件的标签信息进行解码;
其中,默认解码方式是目前最常用的解码方式;例如,对于MP3文件,目前通常使用unicode编码方式对MP3文件进行编码,相应地,目前也通常使用unicode解码方式对应MP3文件进行解码,因此,可以将unicode解码方式设置为默认解码方式。
其中,根据解码方式对音乐文件中的标签信息进行解码为现有技术,在本实施例中对此不再详细说明。
步骤204:从解码的标签信息中读取歌曲名称,对该歌曲名称进行规范化操作;
具体地,从解码的标签信息中读取歌曲名称,去除该歌曲名称中的冗余信息,如果该歌曲名称中存在英文字母,则对该歌曲名称中包括的英文字母的格式进行归一化处理,如果该歌曲名称中存在文字信息,则将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字。
其中,对该歌曲名称中包括的英文字母的格式进行归一化处理的详细操作过程可以参见步骤201中对音乐文件的文件名中包括的英文字母的格式进行归一化处理的详细操作过程,在此不再详细说明;以及,将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字的详细操作过程可以分别参见步骤201中将音乐文件的文件名中的简体文字转换为繁体文字或将音乐文件的文件名中包括的繁体文字转换为简体文字的详细过程,在此不再详细说明。
步骤205:计算出该音乐文件的文件名和规范化的歌曲名称的相似度;
具体地,统计出该歌曲名称和该音乐文件的文件名中相同字符的数目,根据统计出的字符数目、该音乐文件的文件名包括的字符数目和该歌曲名称包括的字符数目,并按如下的公式(1)计算出该音乐文件的文件名和该歌曲名称的相似度。
namesimilarity=(namecount*100)/(namestring+titlestring)……(1)
其中,在公式(1)中,namesimilarity为音乐文件的文件名和歌曲名称的相似度,namecount为音乐文件的文件名与歌曲名称中相同字符的数目,namestring为歌曲名称包括的字符数目,titlestring为音乐文件的文件名包括的字符数目。
其中,对该音乐文件的文件名和该歌曲名称进行规范化操作,可以提高计算该音乐文件的文件名和该歌曲名称的相似度的准确度,从而进一步提高获取音乐文件信息的正确性。
其中,通常音乐文件的文件名与歌曲名称相似,如果选择的解码方式正确,则能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中不包括乱码,使得计算出音乐文件的文件名和歌曲名称的相似度就越高;如果选择的解码方式不正确,则不能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中包括乱码,使得计算出的音乐文件的文件名和歌曲名称的相似度就越低。
步骤206:根据该音乐文件的文件名和该歌曲名称的相似度判断是否成功解码出该音乐文件的标签信息,如果是,则执行步骤207;如果否,则执行步骤208;
具体地,判断该音乐文件的文件名和该歌曲名称的相似度是否超过预设的阈值,如果是,则判断出成功解码出该音乐文件的标签信息,如果否,则判断出没有成功解码出该音乐文件的标签信息。
步骤207:从解码成功的标签信息中读取音乐文件信息,结束操作;
其中,读取的音乐文件信息至少包括歌曲名称,还可以包括:歌手姓名和/专辑名称等信息。
步骤208:根据解码方式列表中存储的其他解码方式,分别对该音乐文件中的标签信息进行解码,解码出每种解码方式对应的标签信息;
步骤209:从解码出的每个标签信息中读取歌曲名称,对读取的每个歌曲名称进行规范化操作;
具体地,从解码出的每个标签信息中读取歌曲名称,去除每个歌曲名称中的冗余信息,如果存在英文字母的歌曲名称,则对该歌曲名称中包括的英文字母的格式进行归一化处理,如果存在文字信息的歌曲名称,则将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字。
其中,对该歌曲名称中包括的英文字母的格式进行归一化处理的详细操作过程可以参见步骤201中对音乐文件的文件名中包括的英文字母的格式进行归一化处理的详细操作过程,在此不再详细说明;以及,将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字的详细操作过程可以分别参见步骤201中将音乐文件的文件名中的简体文字转换为繁体文字或将音乐文件中包括的繁体文字转换为简体文字的详细过程,在此不再详细说明。
步骤210:根据该音乐文件的文件名和规范化的每个歌曲名称,计算出该音乐文件的文件名和每个歌曲名称的相似度;
具体地,对于任一个歌曲名称,统计出该歌曲名称和该音乐文件的文件名中相同字符的数目,根据统计出的字符数目、该音乐文件的文件名包括的字符数目和该歌曲名称包括的字符数目,并按上述的公式(1)计算出该音乐文件的文件名和该歌曲名称的相似度。其中,按上述相同的方法,计算出该音乐文件的文件名和剩下每个歌曲名称的相似度。
步骤211:选择相似度最大的歌曲名称,如果最大的相似度超过预设的阈值,则判断出选择的歌曲名称对应的标签信息为解码成功的标签信息,从选择的歌曲名称对应的标签信息中读取音乐文件信息。
其中,读取的音乐文件信息至少包括歌曲名称,还可以包括歌手和/或专辑名称等信息。
其中,如果相似度最大的歌曲名称对应的标签信息为没有成功解码的标签信息(即最大相似度没有超过预设的阈值),则可以直接将该音乐文件的文件名作为该音乐文件的标签的歌曲名称。
在本发明实施例中,对音乐文件的文件名进行规范化操作以及去除该音乐文件的文件名中的后缀名,根据默认解码方式对该音乐文件的标签信息进行解码,从解码得到的标签信息中读取歌曲名称,对读取的歌曲名称进行规范化操作,根据该音乐文件的文件名和读取的歌曲名称计算出该音乐文件的文件名和该歌曲名称的相似度,根据计算出的相似度判断是否成功解码该音乐文件的标签信息,如果是,则从解码得到的标签信息中读取音乐文件信息;如果否,则根据编码方式列表中其他的解码方式对该音乐文件中的标签信息进行解码得到每种解码方式对应的标签信息,从每个标签信息中读取歌曲名称,对读取的每个歌曲名称进行规范化操作,计算出该音乐文件的文件名和每个歌曲名称的相似度,如果最大的相似度超过预设的阈值,则相似度最大的歌曲名称对应的标签信息为成功解码的标签信息,从相似度最大的歌曲名称对应的标签信息中读取音乐文件信息,如果最大的相似度没有超过预设的阈值,则直接将该音乐文件的文件名作为该音乐文件的标签的歌曲名称。如此提高了读取音乐文件信息的正确性,避免了标签乱码对用户的干扰。
实施例3
如图3所示,本发明实施例提供了一种获取音乐文件信息的方法,包括:
步骤301-302:与实施例2的步骤201-202相同,在此不再详细说明;
步骤303:从解码方式列表中选择一种解码方式,根据选择的解码方式对该音乐文件的标签信息进行解码;
其中,可以事先将目前存在的所有对音乐文件的标签信息进行解码的解码方式存储在解码方式列表中;或者,在执行本步骤之前可以根据该音乐文件的标签信息包括的每个字符的编码确定对该音乐文件的标签信息进行编码的编码方式,将确定的编码方式对应的解码方式存储在解码方式列表中。
其中,采用不同的编码方式对于音乐文件的标签信息包括的每个字符进行编码得到每个字符的编码,每种编码方式编码的字符编码都在一定的数值范围内;对于任一种编码方式,该编码方式编码的字符的编码所在的数值范围可能与其他编码方式编码的字符的编码所在的数值范围存在重叠区域。
其中,根据解码方式对音乐文件中的标签信息进行解码为现有技术,在本实施例中对此不再详细说明。
步骤304:从解码的标签信息中读取歌曲名称,对该歌曲名称进行规范化操作;
具体地,从解码的标签信息中读取歌曲名称,去除该歌曲名称中的冗余信息,如果该歌曲名称中存在英文字母,则对该歌曲名称中包括的英文字母的格式进行归一化处理,如果该歌曲名称中存在文字信息,则将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字。
其中,对该歌曲名称中包括的英文字母的格式进行归一化处理的详细操作过程可以参见步骤201中对音乐文件的文件名中包括的英文字母的格式进行归一化处理的详细操作过程,在此不再详细说明;以及,将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字的详细操作过程可以分别参见步骤201中将音乐文件的文件名中的简体文字转换为繁体文字或音乐文件的文件名中的繁体文字转换为简体文字的详细过程,在此不再详细说明。
步骤305:计算出该音乐文件的文件名和规范化的歌曲名称的相似度;
具体地,统计出该歌曲名称和该音乐文件的文件名中相同字符的数目,根据统计出的字符数目、该音乐文件的文件名包括的字符数目和该歌曲名称包括的字符数目,并按如下的公式(2)计算出该音乐文件的文件名和该歌曲名称的相似度。
namesimilarity=(namecount*100)/(namestring+titlestring)……(2)
其中,在公式(2)中,namesimilarity为音乐文件的文件名和歌曲名称的相似度,namecount为音乐文件的文件名与歌曲名称中相同的字符数目,namestring为歌曲名称包括的字符数目,titlestring为音乐文件的文件名包括的字符数目。
其中,通常音乐文件的文件名与歌曲名称相似,如果选择的解码方式正确,则能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中不包括乱码,使得计算出音乐文件的文件名和歌曲名称的相似度就越高;如果选择的解码方式不正确,则不能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中包括乱码,使得计算出的音乐文件的文件名和歌曲名称的相似度就越低。
步骤306:根据该音乐文件的文件名和该歌曲名称的相似度判断是否成功解码出该音乐文件的标签信息,如果否,则执行步骤307;如果是,则执行步骤308;
具体地,判断该音乐文件的文件名和该歌曲名称的相似度是否超过预设的阈值,如果是,则判断出成功解码出该音乐文件的标签信息,如果否,则判断出没有成功解码出该音乐文件的标签信息。
步骤307:从解码方式列表中剩下的解码方式中选择一种解码方式,根据选择的解码方式对该音乐文件中的标签信息进行解码,执行步骤304;
步骤308:从成功解码得到的标签信息中读取音乐文件信息,其中,读取的音乐文件信息至少包括歌曲名称。
进一步地,读取的音乐文件信息还可以包括歌手姓名和专辑名称等信息。
在本发明实施例中,对音乐文件的文件名进行规范化操作以及去除该音乐文件的文件名中的后缀名,从解码方式列表中选择一种解码方式,根据选择的解码方式对该音乐文件的标签信息进行解码,从解码得到的标签信息中读取歌曲名称,对读取的歌曲名称进行规范化操作,根据该音乐文件的文件名和读取的歌曲名称计算出该音乐文件的文件名和该歌曲名称的相似度,根据计算出的相似度判断是否成功解码出该音乐文件的标签信息,如果否,则从解码方式列表中选择其他的解码方式,并按上述相同的方法直到判断出解码成功的标签信息,然后从解码成功的标签信息中读取音乐文件信息,如此提高了读取音乐文件信息的正确性。
实施例4
如图4所示,本发明实施例提供了一种获取音乐文件信息的方法,包括:
步骤401-402:分别与实施例2的步骤201-202相同,在此不再详细说明;
步骤403:根据解码方式列表中存储的每种解码方式对该音乐文件的标签信息进行解码,解码出不同的标签信息;
其中,可以事先将目前存在的所有对音乐文件的标签信息进行解码的解码方式存储在解码方式列表中;或者,在执行本步骤之前可以根据该音乐文件的标签信息包括的每个字符的编码确定对该音乐文件的标签信息进行编码的编码方式,将确定的编码方式对应的解码方式存储在解码方式列表中。
其中,根据解码方式对音乐文件中的标签信息进行解码为现有技术,在本实施例中对此不再详细说明。
步骤404:从解码出的每个标签信息中读取歌曲名称,对读取的每个歌曲名称进行规范化操作;
具体地,从解码出的每个标签信息中读取歌曲名称,去除每个歌曲名称中的冗余信息,如果存在英文字母的歌曲名称,则对该歌曲名称中包括的英文字母的格式进行归一化处理,如果存在文字信息的歌曲名称,则将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字。
其中,对该歌曲名称中包括的英文字母的格式进行归一化处理的详细操作过程可以参见步骤201中对音乐文件的文件名中包括的英文字母的格式进行归一化处理的详细操作过程,在此不再详细说明;以及,将该歌曲名称中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字的详细操作过程可以分别参见步骤201中将音乐文件的文件名中的简体文字转换为繁体文字或音乐文件的文件名中的繁体文字转换为简体文字的详细过程,在此不再详细说明。
步骤405:计算出该音乐文件的文件名和规范化的每个歌曲名称的相似度;
具体地,对于任一个歌曲名称,统计出该歌曲名称和该音乐文件的文件名中相同字符的数目,根据统计出的字符数目、该音乐文件的文件名包括的字符数目和该歌曲名称包括的字符数目,并按如下的公式(3)计算出该音乐文件的文件名和该歌曲名称的相似度。其中,按上述相同的方法,计算出该音乐文件的文件名和剩下每个歌曲名称的相似度。
namesimilarity=(namecount*100)/(namestring+titlestring)……(3)
其中,在公式(3)中,namesimilarity为音乐文件的文件名和歌曲名称的相似度,namecount为音乐文件的文件名与歌曲名称中相同的字符数目,namestring为歌曲名称包括的字符数目,titlestring为音乐文件的文件名包括的字符数目。
其中,通常音乐文件的文件名与歌曲名称相似,如果选择的解码方式正确,则能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中不包括乱码,使得计算出音乐文件的文件名和歌曲名称的相似度就越高;如果选择的解码方式不正确,则不能成功解码出标签信息,从解码的标签信息中读取的歌曲名称中包括乱码,使得计算出的音乐文件的文件名和歌曲名称的相似度就越低。
步骤406:根据该音乐文件的文件名和每个歌曲名称的相似度从解码的每个标签信息中,获取成功解码的标签信息;
具体地,选择相似度最大的歌曲名称,如果最大的相似度超过预设的阈值,则判断出相似度最大的歌曲名称对应的标签信息为成功解码的标签信息。
步骤407:从成功解码的标签信息中读取该音乐文件的音乐文件信息。
在本发明实施例中,对音乐文件的文件名进行规范化操作以及去除该音乐文件的文件名中的后缀名,根据解码方式列表中的每种解码方式对该音乐文件的标签信息进行解码,从解码得到的每个标签信息中读取歌曲名称,对读取的每个歌曲名称进行规范化操作,根据该音乐文件的文件名和读取的每个歌曲名称计算出该音乐文件的文件名和每个歌曲名称的相似度,如果最大的相似度超过预设的阈值,则判断出相似度最大的歌曲名称对应的标签信息为成功解码的标签信息,从相似度最大的歌曲名称对应的标签信息中读取音乐文件信息,如此提高了读取音乐文件信息的正确性。
实施例5
如图5所示,本发明实施例提供了一种获取音乐文件信息的装置,包括:
第一获取模块501,用于获取音乐文件的文件名;
解码判断模块502,用于对该音乐文件的标签信息进行解码,根据该音乐文件的文件名获取成功解码的标签信息;
第二获取模块503,用于从成功解码的标签信息中获取音乐文件信息,且该音乐文件信息至少包括歌曲名称。
其中,第一获取模块501包括:
读取单元,用于读取该音乐文件的文件名;
规范单元,用于对该音乐文件的文件名进行规范化操作;
去除单元,用于去除该音乐文件的文件名的后缀名。
其中,规范单元包括:
去除子单元,用于去除该音乐文件的文件名中的冗余信息;
归一子单元,用于如果该音乐文件的文件名中存在英文字母,则对该音乐文件的文件名中包括的英文字母的格式进行归一化处理;
转换子单元,用于如果该音乐文件的文件名中存在文字信息,则将该音乐文件的文件名中包括的简体文字转换为繁体文字或将该歌曲名称中包括的繁体文字转换为简体文字。
其中,解码判断模块502包括:
选择单元,用于从解码方式列表中选择一种解码方式;
第一解码单元,用于根据选择的解码方式对该音乐文件的标签信息进行解码;
第一判断单元,用于从解码的标签信息中读取歌曲名称,根据该音乐文件的文件名和读取的歌曲名称的相似度判断是否成功解码出该音乐文件的标签信息。
其中,选择单元,具体用于从解码方式列表中选择默认解码方式;
相应地,解码判断模块502还包括:
第二解码单元,用于如果没有成功解码出该音乐文件的标签信息,则根据解码方式列表中的其他每种解码方式,对该音乐文件的标签信息进行解码;
第二判断单元,用于从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和该音乐文件的文件名的相似度判断出解码成功的标签信息。
其中,解码判断模块502还包括:
第三解码单元,用于如果没有成功解码出该音乐文件的标签信息,则从解码方式列表中剩下的解码方式中选择一种解码方式,根据选择的解码方式对该音乐文件的标签信息进行解码;
第三判断单元,用于从解码的标签信息中读取歌曲名称,根据该音乐文件的文件名和读取的歌曲名称的相似度判断是否成功解码出该音乐文件的标签信息。
其中,第一判断单元包括:
规范子单元,用于从解码的标签信息中读取歌曲名称,对读取的歌曲名称进行规范化操作;
第一计算子单元,用于计算出该音乐文件的文件名和读取的歌曲名称的相似度;
第一判断子单元,用于如果计算出的相似度超过预设的阈值,则判断出成功解码出该音乐文件的标签信息,如果计算出的相似度未超过预设的阈值,则判断出没有成功解码出该音乐文件的标签信息。
其中,解码判断模块502包括:
第四解码单元,用于根据解码方式列表中存储的每种解码方式对该音乐文件的标签信息进行解码;
第二判断单元,用于从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和该音乐文件的文件名的相似度判断出解码成功的标签信息。
其中,第二判断单元包括:
读取子单元,用于读取解码的每个标签信息中的歌曲名称,对读取的每个歌曲名称进行规范化操作;
第二计算子单元,用于计算出读取的每个歌曲名称和该音乐文件的文件名的相似度;
第二判断子单元,用于如果最大相似度超过预设的阈值,则判断相似度最大的歌曲名称对应的标签信息为解码成功的标签信息。
进一步地,第二判断单元还包括:
确定子单元,用于如果最大的相似度没有超过预设的阈值,则将规范化和去除后缀名之后的音乐文件的文件名作为标签信息中的歌曲名称。
在本发明实施例中,获取音乐文件的文件名,对音乐文件的标签信息进行解码,根据该音乐文件的文件名判断成功解码的标签信息,从成功解码的标签信息中获取音乐文件信息,如此提高获取音乐文件信息的正确性。
需要说明的是:上述实施例提供的一种获取音乐文件信息的装置在获取音乐文件信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供获取音乐文件信息的装置与获取音乐文件信息的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种获取音乐文件信息的方法,其特征在于,所述方法包括:
获取音乐文件的文件名;
对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息,包括:从解码方式列表中选择一种解码方式;根据所述选择的解码方式对所述音乐文件的标签信息进行解码;从解码的标签信息中读取歌曲名称,根据所述音乐文件的文件名和所述歌曲名称的相似度判断是否成功解码出所述音乐文件的标签信息;
从所述成功解码的标签信息中获取音乐文件信息,所述音乐文件信息至少包括歌曲名称。
2.如权利要求1所述的方法,其特征在于,所述获取音乐文件的文件名,包括:
读取所述音乐文件的文件名;
对所述音乐文件的文件名进行规范化操作;
去除所述音乐文件的文件名的后缀名。
3.如权利要求2所述的方法,其特征在于,对所述音乐文件的文件名进行规范化操作,包括:
去除所述音乐文件的文件名中的冗余信息;
如果所述音乐文件的文件名中存在英文字母,则对所述音乐文件的文件名中包括的英文字母的格式进行归一化处理;
如果所述音乐文件的文件名中存在文字信息,则将所述音乐文件的文件名中包括的简体文字转换为繁体文字或将繁体文字转换为简体文字。
4.如权利要求1所述的方法,其特征在于,所述从解码方式列表中选择一种解码方式,包括:
从所述解码方式列表中选择默认解码方式;
相应地,对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息,还包括:
如果没有成功解码出所述音乐文件的标签信息,则根据所述解码方式列表中的其他每种解码方式,对所述音乐文件的标签信息进行解码;
从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和所述音乐文件的文件名的相似度判断出解码成功的标签信息。
5.如权利要求1所述的方法,其特征在于,对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息,还包括:
如果没有成功解码出所述音乐文件的标签信息,则从所述解码方式列表中剩下的解码方式中选择一种解码方式,根据选择的解码方式对所述音乐文件的标签信息进行解码;
从解码的标签信息中读取歌曲名称,根据所述音乐文件的文件名和所述歌曲名称的相似度判断是否成功解码出所述音乐文件的标签信息。
6.如权利要求1、4或5中任一项权利要求所述的方法,其特征在于,所述从解码的标签信息中读取歌曲名称,根据所述音乐文件的文件名和所述歌曲名称的相似度判断是否成功解码出所述音乐文件的标签信息,包括:
从所述解码的标签信息中读取歌曲名称,对所述歌曲名称进行规范化操作;
计算出所述音乐文件的文件名和所述歌曲名称的相似度;
如果所述相似度超过预设的阈值,则判断出成功解码出所述音乐文件的标签信息,如果所述相似度未超过预设的阈值,则判断出没有成功解码出所述音乐文件的标签信息。
7.如权利要求1所述的方法,其特征在于,对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息,包括:
根据解码方式列表中存储的每种解码方式对所述音乐文件的标签信息进行解码;
从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和所述音乐文件的文件名的相似度判断出解码成功的标签信息。
8.如权利要求4或7所述的方法,其特征在于,所述从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和所述音乐文件的文件名的相似度判断出解码成功的标签信息,包括:
读取所述解码的每个标签信息中的歌曲名称,对读取的每个歌曲名称进行规范化操作;
计算出所述每个歌曲名称和所述音乐文件的文件名的相似度;
如果最大的相似度超过预设的阈值,则判断相似度最大的歌曲名称对应的标签信息为解码成功的标签信息。
9.如权利要求8所述的方法,其特征在于,如果最大的相似度没有超过预设的阈值,则将规范化和去除后缀名之后的所述音乐文件的文件名作为标签信息中的歌曲名称。
10.一种获取音乐文件信息的装置,其特征在于,所述装置包括:
第一获取模块,用于获取音乐文件的文件名;
解码判断模块,用于对所述音乐文件的标签信息进行解码,根据所述音乐文件的文件名获取成功解码的标签信息,
解码判断模块包括:选择单元,用于从解码方式列表中选择一种解码方式;第一解码单元,用于根据所述选择的解码方式对所述音乐文件的标签信息进行解码;第一判断单元,用于从解码的标签信息中读取歌曲名称,根据所述音乐文件的文件名和所述歌曲名称的相似度判断是否成功解码出所述音乐文件的标签信息;
第二获取模块,用于从所述成功解码的标签信息中获取音乐文件信息,所述音乐文件信息至少包括歌曲名称。
11.如权利要求10所述的装置,其特征在于,所述第一获取模块包括:
读取单元,用于读取所述音乐文件的文件名;
规范单元,用于对所述音乐文件的文件名进行规范化操作;
去除单元,用于去除所述音乐文件的文件名的后缀名。
12.如权利要求11所述的装置,其特征在于,所述规范单元包括:
去除子单元,用于去除所述音乐文件的文件名中的冗余信息;
归一子单元,用于如果所述音乐文件的文件名中存在英文字母,则对所述音乐文件的文件名中包括的英文字母的格式进行归一化处理;
转换子单元,用于如果所述音乐文件的文件名中存在文字信息,则将所述音乐文件的文件名中包括的简体文字转换为繁体文字或将繁体文字转换为简体文字。
13.如权利要求10所述的装置,其特征在于,
所述选择单元,具体用于从所述解码方式列表中选择默认解码方式;
相应地,所述解码判断模块还包括:
第二解码单元,用于如果没有成功解码出所述音乐文件的标签信息,则根据所述解码方式列表中的其他每种解码方式,对所述音乐文件的标签信息进行解码;
第二判断单元,用于从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和所述音乐文件的文件名的相似度判断出解码成功的标签信息。
14.如权利要求10所述的装置,其特征在于,所述解码判断模块还包括:
第三解码单元,用于如果没有成功解码出所述音乐文件的标签信息,则从所述解码方式列表中剩下的解码方式中选择一种解码方式,根据选择的解码方式对所述音乐文件的标签信息进行解码;
第三判断单元,用于从解码的标签信息中读取歌曲名称,根据所述音乐文件的文件名和所述歌曲名称的相似度判断是否成功解码出所述音乐文件的标签信息。
15.如权利要求10、13或14中任一项权利要求所述的装置,其特征在于,所述第一判断单元包括:
规范子单元,用于从所述解码的标签信息中读取歌曲名称,对所述歌曲名称进行规范化操作;
第一计算子单元,用于计算出所述音乐文件的文件名和所述歌曲名称的相似度;
第一判断子单元,用于如果所述相似度超过预设的阈值,则判断出成功解码出所述音乐文件的标签信息,如果所述相似度未超过预设的阈值,则判断出没有成功解码出所述音乐文件的标签信息。
16.如权利要求10所述的装置,其特征在于,所述解码判断模块包括:
第四解码单元,用于根据解码方式列表中存储的每种解码方式对所述音乐文件的标签信息进行解码;
第二判断单元,用于从解码的每个标签信息中读取歌曲名称,根据读取的每个歌曲名称和所述音乐文件的文件名的相似度判断出解码成功的标签信息。
17.如权利要求13或16所述的装置,其特征在于,所述第二判断单元包括:
读取子单元,用于读取所述解码的每个标签信息中的歌曲名称,对读取的每个歌曲名称进行规范化操作;
第二计算子单元,用于计算出所述每个歌曲名称和所述音乐文件的文件名的相似度;
第二判断子单元,用于如果最大相似度超过预设的阈值,则判断相似度最大的歌曲名称对应的标签信息为解码成功的标签信息。
18.如权利要求17所述的装置,其特征在于,所述第二判断单元还包括:
确定子单元,用于如果最大的相似度没有超过预设的阈值,则将规范化和去除后缀名之后的所述音乐文件的文件名作为标签信息中的歌曲名称。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110341260.1A CN103092859B (zh) | 2011-11-02 | 2011-11-02 | 一种获取音乐文件信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110341260.1A CN103092859B (zh) | 2011-11-02 | 2011-11-02 | 一种获取音乐文件信息的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103092859A CN103092859A (zh) | 2013-05-08 |
CN103092859B true CN103092859B (zh) | 2016-03-23 |
Family
ID=48205439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110341260.1A Active CN103092859B (zh) | 2011-11-02 | 2011-11-02 | 一种获取音乐文件信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103092859B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294553B (zh) * | 2016-07-26 | 2019-07-19 | Oppo广东移动通信有限公司 | 数据信息发送及封套信息显示方法、装置、音箱和终端音箱 |
CN109040061A (zh) * | 2018-08-01 | 2018-12-18 | 吉林大学珠海学院 | 一种数据自动匹配解析方法、系统、装置和存储介质 |
CN109325166B (zh) * | 2018-09-21 | 2020-11-10 | 真相网络科技(北京)有限公司 | 爬虫系统中解析规则配置方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222074A (zh) * | 2010-04-16 | 2011-10-19 | 腾讯科技(深圳)有限公司 | 在线歌词数据匹配的方法、装置及后台数据装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080047830A (ko) * | 2006-11-27 | 2008-05-30 | 삼성전자주식회사 | 언어추정을 통한 파일 정보 제공방법 및 이를 적용한 파일재생장치 |
-
2011
- 2011-11-02 CN CN201110341260.1A patent/CN103092859B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222074A (zh) * | 2010-04-16 | 2011-10-19 | 腾讯科技(深圳)有限公司 | 在线歌词数据匹配的方法、装置及后台数据装置 |
Non-Patent Citations (2)
Title |
---|
VisualC#读取MP3文件曲目标签信息;王森;《电脑编程技巧与维护》;20111003(第19期);第10-14页 * |
巧用ID3管理音乐;罗勇;《电脑迷》;20090415(第8期);第53页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103092859A (zh) | 2013-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101256561B (zh) | 一种存储、访问数据库数据的方法、装置及系统 | |
CN101315639A (zh) | 搜索方法及系统 | |
CN105450232A (zh) | 编码、解码方法以及编码装置和解码装置 | |
CN110147536B (zh) | 一种基于文件映射的数据处理方法、装置及设备 | |
CN101145157B (zh) | 一种xml格式嵌入式设备特征信息解析方法 | |
CN103092859B (zh) | 一种获取音乐文件信息的方法及装置 | |
CN101571850A (zh) | 一种支持页面跳转功能的文本文档显示方法及装置 | |
CN100458697C (zh) | 用户程序引导方法及用户程序引导系统 | |
CN112698868B (zh) | 一种应用于多系统的统一错误码方法和存储设备 | |
CN105975607A (zh) | 一种图片存储及读取方法、图片存取系统 | |
CN103761095B (zh) | 一种生成通用的升级文件头部数据信息的方法 | |
CN109086256B (zh) | 一种长度可变的字库点阵的生成及使用方法 | |
CN101551820B (zh) | 兴趣点属性的索引数据库的生成方法和装置 | |
JP2012160161A (ja) | マトリックスコードシンボルにデータをエンコードおよびデコードする方法 | |
CN101008940A (zh) | 自动处理字体缺失的方法与装置 | |
EP2442256B1 (en) | Method of encoding and decoding text on a matrix code symbol | |
CN110647577A (zh) | 数据立方体的分区方法、装置、计算机设备及存储介质 | |
CN112131202B (zh) | 一种分布式文件存储和读取方法、终端设备及存储介质 | |
CN101345952A (zh) | 客户身份识别卡的数据存储、读取方法、装置及系统 | |
CN102063342A (zh) | 一种闪存存储设备数据的管理方法及系统 | |
CN102508690A (zh) | 一种嵌入式设备的命令行的保存方法和解码方法 | |
CN102723067B (zh) | 一种字符显示方法和装置 | |
CN103595415A (zh) | 一种编码方法、解码方法及编码系统、解码系统 | |
CN202602827U (zh) | 基于通用格式码表的可变长解码装置 | |
CN114328283A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |