如何将 p5.js soundFile 转换为文件 javascript class?
How to convert p5.js soundFile to file javascript class?
我正在使用 p5.js 库进行录音,但我需要将 soundFile 对象转换为 javascript 文件对象以将其发送到音频服务器。
如何实现这个?
我的代码是这样的:
mic = new p5.AudioIn();
mic.start();
recorder = new p5.SoundRecorder();
recorder.setInput(mic);
soundFile = new p5.SoundFile();
$("#record").on("click", function{
recorder.record(soundFile);
})
$("#stop").on("click", function{
recorder.stop();
})
$("#send").on("click", function{
//here i need to convert soundFile object to file object
myuploadfile(file)
})
下面example you seek做一个录音和回放。在 saveSound(soundFile, 'mySound.wav');
之后,您应该能够访问 soundFile.path
以获取路径。当然,这只会将 mySound.wav
下载到您的浏览器。
p5.sound 库在将其下载为 .wav 之前创建了一个 Blob 对象,您可以在 p5.prototype.writeFile.
上看到它
Blob 和文件之间的区别仅在于 2 个额外属性:日期和名称,因此,如果您想 "convert" 您的 blob 到文件,只需添加这 2 个属性:
function blobToFile(theBlob, fileName){
//A Blob() is almost a File() - it's just missing the two properties below which we will add
theBlob.lastModifiedDate = new Date();
theBlob.name = fileName;
return theBlob;
}
之后,您可以将输出作为 javascript 文件进行管理
我正在使用 p5.js 库进行录音,但我需要将 soundFile 对象转换为 javascript 文件对象以将其发送到音频服务器。
如何实现这个?
我的代码是这样的:
mic = new p5.AudioIn();
mic.start();
recorder = new p5.SoundRecorder();
recorder.setInput(mic);
soundFile = new p5.SoundFile();
$("#record").on("click", function{
recorder.record(soundFile);
})
$("#stop").on("click", function{
recorder.stop();
})
$("#send").on("click", function{
//here i need to convert soundFile object to file object
myuploadfile(file)
})
下面example you seek做一个录音和回放。在 saveSound(soundFile, 'mySound.wav');
之后,您应该能够访问 soundFile.path
以获取路径。当然,这只会将 mySound.wav
下载到您的浏览器。
p5.sound 库在将其下载为 .wav 之前创建了一个 Blob 对象,您可以在 p5.prototype.writeFile.
上看到它Blob 和文件之间的区别仅在于 2 个额外属性:日期和名称,因此,如果您想 "convert" 您的 blob 到文件,只需添加这 2 个属性:
function blobToFile(theBlob, fileName){
//A Blob() is almost a File() - it's just missing the two properties below which we will add
theBlob.lastModifiedDate = new Date();
theBlob.name = fileName;
return theBlob;
}
之后,您可以将输出作为 javascript 文件进行管理