javascript - 如何将 p5.js soundFile 转换为文件 javascript 类?

标签 javascript jquery p5.js

我正在使用 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/

相关文章:

javascript - 无法使用 javascript 和 ejs 访问对象的行值

javascript - 在特定位置添加创建的元素

javascript - p5.j​​s和vue-创建 Canvas

javascript - 使用 For 循环的 JSON 数组迭代在最后一个索引处停止

python - python中的p5-js map()函数

javascript - 为什么 'y' 在以下警报情况下显示两个不同的值?

javascript - 响应式布局的图像延迟加载?

javascript - jQuery 在 codeigniter 中查找 URI

jquery - 使用 jquery 取消隐藏时,fontawesome 图标不旋转

javascript - 去除特定屏幕宽度下的JS功能