python - 创建持久数据供Python App访问

标签 python user-interface dictionary audio

我正在寻找存储大量数据(一个非常大的python字典)的最佳方法,以便在运行python脚本(应用程序)时可以利用它。我基本上建立了一个类似shazam的应用程序,可以使用Macbook的麦克风录制15秒的音乐样本,然后可以尝试猜测数据库中大约100首歌曲对应的歌曲(字典中,每个键只是歌曲名)歌曲。我目前编写了所有功能,并在python笔记本中对其进行了测试。我的目标是建立一个CLI脚本或一个简单的gui,以执行记录示例部分并输出猜测名称。

我的问题:创建100首歌曲的数据库(词典)(通过组合哈希完成,但没有关系)需要很长时间(大约1小时半)。因此,我希望能够以某种方式在python脚本中静态保存该词典,以便在运行该词典时仅需很短的时间即可做出猜测(即无需创建词典) 。我不知道如何去做。

另外,如果您有关于该项目应使用哪个GUI库的任何提示,请告诉我。谢谢

最佳答案

看看PyDejavu可能与您想要的东西相似

在PyDejavu网站上:

Dejavu可以通过听一次音频并对其进行指纹识别来记住录制的音频。然后,通过播放歌曲并录制麦克风输入或磁盘文件上的声音,Dejavu尝试将音频与数据库中保存的指纹进行匹配,以返回正在播放的歌曲或录音。

如果您想要一个示例实现,则在github上的详细信息为here

希望这可以帮助

关于python - 创建持久数据供Python App访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36903231/

相关文章:

python - 用于简单图形模拟(TSP 模拟等...)的最佳 python UI 包

java - 单击按钮时隐藏 JFrame 而不停止程序

java - Java 中的自定义绘画 - 将 UI 元素绘制到 JPanel 上

dictionary - 用于大型整数值列表的键值存储

python - 用OpenCV检测银球和反光球

python - 从 pandas datetime 列中提取年份作为数值,空单元格使用 NaN 而不是 NaT

c++ - 如何有效地修改 std::map?

swift - 存储 [Int :String] dictionaries to user. 默认值因 SIGABRT 错误而崩溃

python - 如何使用嵌套循环和函数 split() 创建列表字母计数器?

使用坐标列表索引二维数组的 Pythonic 方法