我就想把 recorder = minim.createRecorder(in, "recording-" + recordingCount + ".wav");这个录音保存在processing根目录文件名叫data的文件,要怎么写代码
时间: 2023-06-11 19:09:00 浏览: 139
你可以使用 Processing 内置的 `save()` 函数,将录音保存到指定的文件夹中。以下是示例代码:
```java
import ddf.minim.*;
import java.io.File;
Minim minim;
AudioInput in;
Recorder recorder;
int recordingCount = 0;
void setup() {
size(400, 400);
minim = new Minim(this);
in = minim.getLineIn(Minim.MONO, 2048, 44100);
}
void keyPressed() {
if (key == 'r') {
recordingCount++;
recorder = minim.createRecorder(in, "recording-" + recordingCount + ".wav");
recorder.beginRecord();
} else if (key == 's') {
recorder.endRecord();
File file = new File(dataPath("data/recording-" + recordingCount + ".wav"));
recorder.save(file);
println("Saved recording to " + file.getAbsolutePath());
}
}
void draw() {
background(0);
stroke(255);
float[] waveformData = in.mix.toArray();
for (int i = 0; i < waveformData.length; i++) {
float x = map(i, 0, waveformData.length, 0, width);
float y = map(waveformData[i], -1, 1, height, 0);
point(x, y);
}
}
```
在上面的代码中,我们使用 `dataPath()` 函数来获取 Processing 根目录下的 `data` 文件夹的路径。在按下 `s` 键时,我们将录音文件保存到 `data/recording-x.wav` 文件中,其中 `x` 是录音计数器的值。你可以根据需要修改文件名和文件夹路径。
阅读全文