我想把minim录完的音频,储存到processing的根目录文件夹(data),我需要怎么做?
时间: 2023-06-12 10:03:40 浏览: 204
你可以使用 Processing 的 `saveBytes()` 函数将录制的音频数据保存到 Processing 的根目录文件夹(data)中。具体操作步骤如下:
1. 首先,你需要创建一个 `File` 对象,用于表示要保存的文件路径。你可以使用 Processing 的 `dataPath()` 函数获取 Processing 的根目录文件夹的路径,然后再将文件名与该路径拼接起来,如下:
```java
String fileName = "recording.wav"; // 要保存的文件名
String filePath = dataPath(fileName); // 获取 Processing 的根目录文件夹的路径
File file = new File(filePath); // 创建 File 对象
```
2. 然后,你需要将录制的音频数据保存到该文件中。你可以使用 `saveBytes()` 函数,该函数接受两个参数:要保存的文件对象和要保存的数据。因为录制的音频数据是以字节数组的形式存储的,所以你可以直接将字节数组传递给 `saveBytes()` 函数,如下:
```java
byte[] audioData = minim.loadBytes(); // 获取录制的音频数据
saveBytes(file, audioData); // 将音频数据保存到文件中
```
完整的代码如下:
```java
import ddf.minim.*;
import java.io.File;
Minim minim;
AudioRecorder recorder;
void setup() {
size(640, 480);
minim = new Minim(this);
recorder = minim.createRecorder(Minim.MONO, 44100);
recorder.beginRecord();
}
void draw() {
background(0);
// 绘制录制的波形图
}
void keyPressed() {
if (key == ' ') {
recorder.endRecord(); // 停止录制
byte[] audioData = minim.loadBytes(); // 获取录制的音频数据
String fileName = "recording.wav"; // 要保存的文件名
String filePath = dataPath(fileName); // 获取 Processing 的根目录文件夹的路径
File file = new File(filePath); // 创建 File 对象
saveBytes(file, audioData); // 将音频数据保存到文件中
}
}
```
阅读全文