Processing 在处理过程中使用minim lib查找麦克风输入的音量

Processing 在处理过程中使用minim lib查找麦克风输入的音量,processing,minim,Processing,Minim,我正试图从我的麦克风获得音量水平,以调整盒子的大小(声音越大=越大)。但我有以下问题: a) getGain似乎一直在给我-64 b) getVolume似乎不可用 我编辑了一个处理示例,以响应麦克风而不是提供的音频文件,但不知道如何获取音量 这是我的 import ddf.minim.analysis.*; import ddf.minim.*; Minim minim; AudioInput accessMic; FFT fft; float boxSize;

我正试图从我的麦克风获得音量水平,以调整盒子的大小(声音越大=越大)。但我有以下问题: a) getGain似乎一直在给我-64 b) getVolume似乎不可用

我编辑了一个处理示例,以响应麦克风而不是提供的音频文件,但不知道如何获取音量

这是我的

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

Minim       minim;
AudioInput  accessMic;
FFT         fft;
float boxSize;

void setup () {
  size(512, 200, P3D);
  minim = new Minim(this);
  accessMic = minim.getLineIn();
  rectMode(CENTER);

}

void draw() {
  background(255);
  boxSize = accessMic.getGain();
  stroke(255);
  println(boxSize);
  fill(0);
  rect(width/2,height/2,boxSize,boxSize);
}
如果你能给我任何帮助,我将不胜感激
谢谢

我在
.getGain()上也遇到了类似的问题最小值
通过使用
left.level(),我找到了类似的方法
返回介于
0
1
之间的浮点值。显然,只考虑其中一个立体声输入,您完全可以执行
。right.level()获取来自另一个通道的结果

因此,您的代码看起来有点像
boxSize=accessMic.left.level()*100
你会得到一个大小在0到100之间的盒子

希望有帮助

您考虑过使用吗

在minim中,您必须使用,这正是.left()中的
In
和.right()中的
In
的含义。这将为您提供与
振幅()
函数相同的结果