Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JMF与处理-音频可视化工具_Java_Fft_Processing_Jmf_Minim - Fatal编程技术网

Java JMF与处理-音频可视化工具

Java JMF与处理-音频可视化工具,java,fft,processing,jmf,minim,Java,Fft,Processing,Jmf,Minim,我用minim库处理2.0a5创建了这个很棒的音频可视化工具,它使用fft分析音频数据 import ddf.minim.*; import ddf.minim.analysis.*; Minim minim; AudioPlayer song; FFT fft; int col=0; // color, oscillates over time. void setup() { size(498, 89); // always start Minim first! minim = new

我用minim库处理2.0a5创建了这个很棒的音频可视化工具,它使用fft分析音频数据

import ddf.minim.*;
import ddf.minim.analysis.*;

Minim minim;
AudioPlayer song;
FFT fft;

int col=0; // color, oscillates over time.

void setup()
{
size(498, 89);

// always start Minim first!
minim = new Minim(this);

// specify 512 for the length of the sample buffers
// the default buffer size is 1024
song = minim.loadFile("obedear.mp3", 2048);

song.play();

// an FFT needs to know how
// long the audio buffers it will be analyzing are
// and also needs to know
// the sample rate of the audio it is analyzing
fft = new FFT(song.bufferSize(), song.sampleRate());


}

void draw()
{
colorMode(HSB);  
background(0);
// first perform a forward fft on one of song's buffers
// I'm using the mix buffer
// but you can use any one you like
fft.forward(song.mix);
col++;
if (255<col){col=0;} // loops the color
strokeWeight(8);
stroke(col, 255, 255);

// draw the spectrum as a series of vertical lines
// I multiple the value of getBand by 4
// so that we can see the lines better
for(int i = 0; i < fft.specSize(); i++)
{
line(i-160, height, i-160, height - fft.getBand(i)*2);
}


}

void stop()
{
song.close();
minim.stop();

super.stop();
}
导入ddf.minim.*;
进口ddf.微量分析。*;
极小极小;
音频播放器歌曲;
FFT;
int col=0;//颜色,随时间振荡。
无效设置()
{
规模(498,89);
//始终先启动MINI!
最小值=新的最小值(本);
//指定512作为示例缓冲区的长度
//默认缓冲区大小为1024
song=mini.loadFile(“obedier.mp3”,2048);
歌曲。游戏();
//FFT需要知道如何进行
//它将要分析的音频缓冲区很长
//也需要知道
//正在分析的音频的采样率
fft=新的fft(song.bufferSize(),song.sampleRate());
}
作废提款()
{
彩色模式(HSB);
背景(0);
//首先在song的一个缓冲区上执行前向fft
//我用的是混合缓冲区
//但是你可以用你喜欢的任何一个
fft.forward(song.mix);
col++;

如果(2550)sh@t!Minim的loadFile接受直接URL,就像我上面发布的文件名参数一样!我在这里找到了答案:有这么多不同的文档链接,我想我错过了“手册”。无论如何,这太棒了。如果有人想要一个酷的基于java的音频播放器和可视化工具,请随意偷我的(反正大部分代码都是公开使用的)。

sh@t!Minim的loadFile接受直接URL,就像我在上面发布的文件名参数一样!我在这里找到了答案:有太多不同的文档链接,我想我错过了“手册”。无论如何,这太棒了。如果有人想要一个很酷的基于java的音频播放器和可视化工具,请随意偷我的(大部分都是公开使用的代码)。谢谢你,我用你的代码作为我自己的音频可视化工具的基础!