我正在使用node.js,並將我的音頻流傳輸到我的node.js服務器。 現在我建立音頻斑點的過程中發現:Node.js不能創建Blob?
var audioBlob = new Blob([dataview], { type: 'audio/wav' });
那我會在新斑塊一個的ReferenceError。 看來Blob不受支持。 如何創建一個我想用node.js fs模塊保存的blob。
謝謝你們!
我正在使用node.js,並將我的音頻流傳輸到我的node.js服務器。 現在我建立音頻斑點的過程中發現:Node.js不能創建Blob?
var audioBlob = new Blob([dataview], { type: 'audio/wav' });
那我會在新斑塊一個的ReferenceError。 看來Blob不受支持。 如何創建一個我想用node.js fs模塊保存的blob。
謝謝你們!
解決此問題的方法是創建一個可以在陣列緩衝區和節點緩衝區之間轉換的函數。 :)
Convert a binary NodeJS Buffer to JavaScript ArrayBuffer
在最近的節點版本,它只是:
let buffer = Buffer.from(arraybuffer);
let arraybuffer = Uint8Array.from(buffer).buffer;
作爲一個建議,你可能需要閱讀本:http://howtonode.org/really-simple-file-uploads
我的意思是我想我不知道你想做什麼。有可能不是斑點模塊,但如果你想只寫東西到磁盤,還有FS的模塊。這代碼將無法直接工作,但..
var fs = require('fs')
, express = require('express')
app.post('/upload', function (req, res) {
// asynch call to write file to disk
fs.write("/tmp/file.mp3", req.params.body, function (err) {
if (err) console.log(err)
});
res.end();
});
只需發佈一個MP3,或任何事情,上傳,並將它寫入磁盤。你可以做任何你想要的驗證。
什麼是斑點?它從何而來? – Pete
http://en.wikipedia.org/wiki/Binary_large_object – zer02
所有常見的瀏覽器都支持它https://developer.mozilla.org/de/docs/DOM/Blob – zer02