用VB.net获取音高

用VB.net获取音高,vb.net,audio,mp3,wav,Vb.net,Audio,Mp3,Wav,我随时都想知道一首歌的音高。我计划以后再储存投球。我怎么能读说。。。一个mp3文件或wav文件来获得在某一点上播放的音高 以下是一个可视示例: 假设我想在歌曲的这一点上得到音高 如果可以的话,谢谢你 事情比你预期的要复杂一点 虽然存在时域方法(即直接处理PCM数据的方法),但频域基音检测将更加精确。您可以阅读一个非常简单的概述 您可能需要的是a,它可用于将信号块从时域转换到频域(即,给定信号跨度内的频率内容分布)。从这里开始,你需要分析该块中的频谱。这个问题变得更加困难,因为在一般情况下,没有最

我随时都想知道一首歌的音高。我计划以后再储存投球。我怎么能读说。。。一个mp3文件或wav文件来获得在某一点上播放的音高

以下是一个可视示例: 假设我想在歌曲的这一点上得到音高


如果可以的话,谢谢你

事情比你预期的要复杂一点

虽然存在时域方法(即直接处理PCM数据的方法),但频域基音检测将更加精确。您可以阅读一个非常简单的概述

您可能需要的是a,它可用于将信号块从时域转换到频域(即,给定信号跨度内的频率内容分布)。从这里开始,你需要分析该块中的频谱。这个问题变得更加困难,因为在一般情况下,没有最好的方法从采样频谱推断基音。上面提到的维基百科文章应该为你寻找这些算法提供基础。
最后,值得注意的是,这确实是一个语言不可知的问题,除非您的主要兴趣是专门使用VB.NET的应用程序。

这件事比您预期的要复杂一些

虽然存在时域方法(即直接处理PCM数据的方法),但频域基音检测将更加精确。您可以阅读一个非常简单的概述

您可能需要的是a,它可用于将信号块从时域转换到频域(即,给定信号跨度内的频率内容分布)。从这里开始,你需要分析该块中的频谱。这个问题变得更加困难,因为在一般情况下,没有最好的方法从采样频谱推断基音。上面提到的维基百科文章应该为你寻找这些算法提供基础。
最后,值得注意的是,这确实是一个语言不可知的问题,除非您的主要兴趣是专门使用VB.NET的应用程序。

非常感谢!我一到家就来看看:)我用低音音频库做频域变换,然后计算音高。我用它来计算任何歌曲的声音指纹。非常感谢!我一到家就来看看:)我用低音音频库做频域变换,然后计算音高。我用它来计算任何歌曲的悦耳指纹。