我是一个完全的初学者,所以如果我问这个问题可能很愚蠢或不恰当,请原谅我。我正在尝试制作自己的虚拟示波器进行处理。我真的不知道如何解释它,但我想从我得到波形峰值的位置“缩小”,即窗口大小。我不确定我在这里做错了什么或者我的代码有什么问题。我尝试更改缓冲区大小,并更改 x/y 的乘数。我的草图改编自一个最小示例草图。非常感谢所有帮助。
import ddf.minim.*;
Minim minim;
AudioInput in;
int frames;
int refresh = 7;
float fade = 32;
void setup()
{
size(800, 800, P3D);
minim = new Minim(this);
ellipseMode(RADIUS);
// use the getLineIn method of the Minim object to get an AudioInput
in = minim.getLineIn(Minim.STEREO);
println (in.bufferSize());
//in.enableMonitoring();
frameRate(1000);
background(0);
}
void draw()
{
frames++; //same saying frames = frames+1
if (frames%refresh == 0){
fill (0, 32, 0, fade);
rect (0, 0, width, height);
}
float x;
float y;
stroke (0, 0);
fill (0,255,0);
// draw the waveforms so we can see what we are monitoring
for(int i = 0; i < in.bufferSize() - 1; i++)
{
x = width/2 + in.left.get(i) * height/2;
y = height/2- in.right.get(i) * height/2;
ellipse(x, y, .5, .5);
}
}
谢谢