我正在使用当前的Angular7。我正在使用recorder.js来录制音频。我的设置是这样的。
在Angular组件中: 步骤1:导入Main.JS
Desc
第2步:从Angular Function中调用Main.Js的记录功能。
import {mainmodule} from '../../shared/scripts/recorderjs/main.js';
此方法将开始记录或停止记录。
第3步:Main.js将使用recorderjs录制音频。
mainmodule.toggleRecordingMethod(e); //inside angular component
直到第3步,我都成功。现在,使用recorderjs记录音频的main.js可以正常工作并记录音频。
在main.js中,我具有以下功能。它在Angular中返回undefined。我已经设置了断点,我发现javascript会立即重新调整未定义的内容,而不是等待exportWAV返回音频。
// This will be called from angular component (Inside main.js).
main.prototype.toggleRecordingMethod = function toggleRecordingMethod(e) {
enableRecordingVisualization = true;
toggleRecording(e);
};
// inside main.js
function toggleRecording(e) {
if (e.classList.contains("recording")) {
// stop recording
audioRecorder.stop();
e.classList.remove("recording");
e.classList.remove("pause");
enableRecordingVisualization = false;
audioRecorder.getBuffer(gotBuffers);
} else {
// start recording
if (!audioRecorder) {
initAudio();
}
e.classList.add("recording");
audioRecorder.clear();
}
}
exportWAV是来自recorderjs的函数,它接受回调。我传递了回调函数,该函数返回的是音频blob。如何获取音频Blob,而不是未定义?
我想以角度发送此录制的音频。我该怎么办?