【发布时间】:2019-12-26 01:03:03
【问题描述】:
我正在使用cordova-plugin-audioinput 在我的基于cordova 的应用程序中录制音频。 文档可以在这里找到:https://www.npmjs.com/package/cordova-plugin-audioinput
我之前使用浏览器的 MediaRecorder 功能录制音频,但由于音频质量问题,我切换到了插件。 我的问题是我在录制期间有一个音量的实时可视化器,我的功能曾经使用来自媒体记录器的输入流来工作
function wave(stream) {
audioContext = new AudioContext();
analyser = audioContext.createAnalyser();
microphone = audioContext.createMediaStreamSource(stream);
javascriptNode = audioContext.createScriptProcessor(2048, 1, 1);
analyser.smoothingTimeConstant = 0.8;
analyser.fftSize = 1024;
microphone.connect(analyser);
analyser.connect(javascriptNode);
javascriptNode.connect(audioContext.destination);
javascriptNode.onaudioprocess = function () {
var array = new Uint8Array(analyser.frequencyBinCount);
analyser.getByteFrequencyData(array);
var values = 0;
var length = array.length;
for (var i = 0; i < length; i++) {
values += (array[i]);
}
var average = values / length;
// use average for visualization
}
}
现在我使用了cordova-plugin-audioinput,即使文档中提到了“streamToWebAudio”参数,我也找不到从麦克风中检索流的方法,我找不到让它工作的方法.
对此有何见解? 提前谢谢你!
【问题讨论】:
标签: javascript cordova web audio