概述
我正在尝试构建一个web应用程序,它将从浏览器中录制音频,并在每3秒后将录制的音频发送到DjangoAPI进行分析(语音的情感识别)。我正在用MediaRecorder录制音频。但波形文件中只保存噪声。
我正在尝试将录制的音频(作为blob)发送到djangoapi。然后在后端接收到它时,我将其保存为wav文件。
我把录好的音频发送给你:navigator.mediaDevices.getUserMedia({audio:true}).then(stream => {audio_handler(stream)});
var audio_chunks = [];
audio_handler = function(stream){
rec = new MediaRecorder(stream, {mimeType : 'audio/webm', codecs : "opus"});
rec.ondataavailable = function(e){
audio_chunks.push(e.data);
}
}
//on rec.stop()
var blob = new Blob(audio_chunks, {'type':'audio/wav; codecs=opus'});
console.log(blob);
var xhttp = new XMLHttpRequest();
xhttp.open("POST", "http://localhost:8000/er/", true);
var data = new FormData();
data.append('data', blob, 'audio_blob');
xhttp.send(data);
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
console.log(this.responseText);
}
};
在django后端保存为:
^{pr2}$
目前保存的音频文件只是有一些噪音,而我希望保存的wave音频文件与录制时所说的音频具有相同的内容。
如果有其他方法可以做同样的事情,请提出建议(从浏览器录制音频并将其发送到django api,将其保存为音频文件)。
如果需要更多信息,请随时询问。谢谢您!
最后
以上就是愉快柜子为你收集整理的服务器发送音频文件到浏览器,将录制的音频从浏览器发送到django服务器并另存为。...的全部内容,希望文章能够帮你解决服务器发送音频文件到浏览器,将录制的音频从浏览器发送到django服务器并另存为。...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复