用python从音频文件中提取音频频谱
对不起,如果我提交副本,但是我想知道Python中是否有任何Lib,这使您能够从音频文件中提取声频谱.我希望能够获取音频文件并编写一个算法,该算法将返回一组数据{timestampinfile;频率振幅}. 我听说这通常称为Beat检测,但据我所知,Beat检测不是一种精确的方法,它仅适用于可视化,而我想操纵提取的数据,然后将其转换回一个音频文件.我不需要实时做这个. 我将感谢任何建议和建议. 解决方案 您可以使用Scipy来计算和可视化频谱和频谱图,对于此测试,我使用了此音频文件: vignesh.wav from scipy.io import wavfile # scipy library to read wav files import numpy as np AudioName = "vignesh.wav" # Audio File fs, Audiodata = wavfile.read(AudioName) # Plot the audio
4 2024-03-19
编程技术问答社区
如何在php中检测歌曲的BPM
如何以编程方式确定歌曲的节奏/bpm?通常使用哪些算法,必须考虑哪些考虑? 解决方案 这是在单个Stackoverflow帖子中解释的挑战.通常,最简单的节拍检测算法通过定位声能中的峰来起作用,这很容易检测到.更复杂的方法使用 梳子过滤器 和其他统计/波形方法.有关包括代码样本在内的详细说明,请检查其他解决方案 要搜索的关键字是"节拍检测"," Beat Tracking"和"音乐信息检索".这里有很多信息: http://www.music-ir.org/ 有一个(也许)的年度竞赛称为Mirex,在其节拍检测性能上测试了不同的算法. abt/mck/ 应该为您提供测试算法列表. 经典算法是 beatroot (Google it),它既易于理解又易于理解.它是这样的工作: 短期FFT音乐以获得超声图. 总和在每个时间步中的所有频率上都增加了(忽略减少).这为您提供了一个1D时变功能,称为"光谱通量". 使用任何旧峰检测算法找到峰.这些称为"打
0 2024-03-19
编程技术问答社区
Aubio用于Android上的BPM跟踪
我正在研究一个需要BPM跟踪的Android音频项目.我决定写自己的写作不会是一个好主意,在环顾四周后,我发现了一些图书馆,这些图书馆是奥布伊省,鞋面,升波等等的借氧拓追踪等.在很多地方似乎是一个不错的选择.问题是我找不到良好的文档,可以帮助了解如何使用库,例如​​,什么样的输入音频格式兼容(如果我在将音频传递给函数之前,我应该预先处理音频)等. 你可以将我指向Aubio的一些文档或实现某些开源项目(在Android将是一个奖金). 如果您认为Android上的端口(最好在c)上有更容易的方式(另一个算法/库),请告诉我. 谢谢. 解决方案 我使用带有aubio的make文件来交叉编译它为Android.我遵循一些教程,例如这个,它显示了如何交叉编译开源库.至于Aubio的文档,我刚刚使用它几次来了解它是如何工作的(我研​​究了这些例子的工作原理)并阅读作者的博士论文,以获得技术内容的粗略想法.
4150 2022-07-17
编程技术问答社区