我经历了很多已经给出但不明白的答案。
任务:我必须从用户那里获取不到一分钟的音频,然后将其保存在后端并发送到Google的语音识别API以获取文本。
我尝试使用MediaRecorder API在浏览器中使用此演示https://mido22.github.io/MediaRecorder-sample/进行录制。
我希望将录制的音频保存在我的Django后端,以便我们可以对其进行一些后期处理。
答案 0 :(得分:2)
POST
生成的Blob
at makeLink
函数服务器作为FormData
对象的属性
function makeLink() {
let blob = new Blob(chunks, {type: media.type });
let fd = new FormData;
fd.append("audioRecording", blob);
let request = new XMLHttpRequest();
request.open("POST", "/path/to/server", true);
request.onload = function() {
// do stuff
}
request.onerror = function() {
// handle error
}
request.send(fd);
}
function makeLink() {
let blob = new Blob(chunks, {type: media.type });
let fd = new FormData;
fd.append("audioRecording", blob);
fetch("/path/to/server", {method:"POST", body:fd})
.then(response => response.ok)
.then(res => console.log(res))
.catch(err => console.error(err));
}
答案 1 :(得分:-1)
我在这里创建了一个简单的项目: https://github.com/Keramatfar/django_sound_file
对于后端,我使用以下函数:
import { DeviceDetectorService } from 'ngx-device-detector';