我正在使用 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)
})
最佳答案
p5.sound 库在将其下载为 .wav 之前创建一个 Blob 对象,您可以在 p5.prototype.writeFile 上看到它。
Blob 和文件之间的区别仅在于 2 个额外属性:日期和名称,因此,如果您想将 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 文件进行管理
关于javascript - 如何将 p5.js soundFile 转换为文件 javascript 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38600600/