Java - 从.mp3音频获取笔记?
问题描述:
我正试图创建一个程序来查找用户添加的.mp3文件的注释。我到目前为止是:Java - 从.mp3音频获取笔记?
public void audioToNotes(String path){
File f = new File(path);
AudioInputStream ais = AudioSystem.getAudioInputStream(f);
}
然后我卡住了。 对不起,如果这是一个noob问题,我在这里学习,而我只是一个初学者。
编辑: 我网上冲浪了一下,发现这个代码:
AudioInputStream din = null;
final AudioFormat baseFormat = in.getFormat();
final AudioFormat decodedFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED,
baseFormat.getSampleRate(),
16,
baseFormat.getChannels(),
baseFormat.getChannels() * 2,
baseFormat.getSampleRate(),
false);
答
频率检测有没有直接做的MP3格式。
没有,我知道,一个API可以让你做到这
notes = analyze(audioSignal)
其中票据是音高的集合。
对于周期性波形,您可以对此音频信号进行FFT。那里有DSP库。仍然不是自动的。
N.B.信号处理并不容易,而且涉及到相当多的数学问题。
你想要音符,就像你想要440赫兹注册为A4? MP3文件是纯音还是实际音乐?这可能对*问题太模糊。 – guitarsteve
你有谷歌吗?你读过“mp3格式”吗? – Andremoniy
例如,用户给出Darude - Sandstorm的mp3文件或其他东西,并且该程序找到音符。例如:C D E C C F D B – winterfox