我有一个数据库,有500万个用户上传的音频文件,包括:
音频文件有标题,尽管不一致,有时也不正确。
有许多重复与轻微的差异:标题差异,音频差异(长度,压缩,音高等)。我想把每个音频文件归入一个类别,对应于它是什么。“它是什么”是指基于音频(而不是标题)的音频文件的最相关的标题。
例如,“迈克尔·杰克逊-颤栗”可能有30个不同的音频文件,它们的长度、压缩级别、标题等都略有不同。这些文件都应该归为一个类别,并配以适当格式的歌曲标题。
有些音频文件不可能以编程方式正确命名。例如,来自这个视频https://www.youtube.com/watch?v=ee925OTFBCA的音频将在数据库中有许多实例,但我认为没有一个API能够命名它。在这种情况下,如果它们仍然可以匹配为相似的声音,并被放置在一个组,一个标题可以选择从标题的剪辑已经有。我想我这样做是通过计算出与所有人最“相似”的标题(例如,最高平均S rensen-Dice系数)。
还有一部分用户录制的剪辑无法以编程方式进行标题/分组,因为它们只存在于此数据库中。
作为标题不一致的一个例子,贝多芬的第六交响曲可能有许多不同的名称,如:
为了对这些文件进行分类,我计划对每个文件执行以下操作:
这样做的目的是使数据库更小,分类更好,从而减少存储空间,使最终用户更容易搜索和导航。
现在,搜索一些音频剪辑可以找到数百个相同的文件,但略有不同。这是我们要解决的主要问题。
我有三个问题:
发布于 2020-04-25 10:07:22
获取对整个音频文件的简明描述通常称为“音频指纹”。
有很多解决办法。MusicBrainz.org文档有一个很好的概述,既包括商业产品,也包括开源项目。他们自己最新的方法(也可以作为开放源码使用)是AcousticId。
https://stackoverflow.com/questions/61388069
复制相似问题