在音频文件集合中查找指定的音频模式

安东尼酮

我有1000个音频文件的集合。这些文件是以MP3格式存储的音乐文件,有些长10分钟,有些长15秒。

我在MP3中也有一个1秒长的音频文件。我想从我的收藏夹中找到哪些文件包含此1秒音频文件。这个1秒的音频文件的音频质量可能比我的收藏品差一点,因为它经过了重新编码,重新压缩等操作,因此,与通过我的文件收藏品进行简单的二进制搜索相比,我需要一种更智能的比较方法。

如果我想创建一个小程序来搜索我的音频文件集合中的1秒钟音频模式,应该怎么读?

编辑:换句话说:我的1000个文件集中的每个文件都是一首歌。我正在搜索的这首1秒片段是该收藏集中某首歌曲的片段,我想知道它取自哪首歌曲。

Anil_M

下面是使用到做这件事len(audioSegment)的feaure pydub

“ ../so/*.mp3”保存您的音频文件。或者,您可以使用来遍历各个文件夹glob

from glob import glob
from pydub import AudioSegment

for mp3_file in glob("../so/*.mp3"):
  tmpAudioSegment = AudioSegment.from_mp3(mp3_file)
   #Note: pydub len returns in milliseconds.
  print("{}  :  {}".format(mp3_file,len(tmpAudioSegment)/1000)) 

结果

../so/Bubbles.mp3  :  10 sec
../so/Drone Dark Suspense 2.mp3  :  30 sec
../so/Sci-Fi Sweep.mp3  :  8 sec
../so/Pinball Machine.mp3  :  22 sec
../so/Title Flange Sweep Hit.mp3  :  3 sec
../so/Whale Sounds.mp3  :  6 sec
../so/Ambient Hit.mp3  :  2 sec
../so/Golf Hit 3.mp3  :  1 sec

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章