W3.org有以下示例: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/webrtc-integration.html
<canvas id="c"></canvas>
<script>
navigator.getUserMedia('audio', gotAudio);
var streamRecorder;
function gotAudio(stream) {
var microphone = context.createMediaStreamSource(stream);
var analyser = context.createAnalyser();
microphone.connect(analyser);
analyser.connect(context.destination);
requestAnimationFrame(drawAnimation);
streamRecorder = stream.record();
peerConnection.addStream(stream);
}
</script>
什么是“流”?这个属性来自哪里?当它被放置的时候会发生什么?我不明白它是如何定义的。
答案 0 :(得分:1)
navigator.getUserMedia('audio',gotAudio); getUserMedia提示用户允许使用一个视频和/或一个音频输入设备,如摄像头或屏幕共享和/或麦克风。
在您的情况下,您正在请求音频权限。如果getUserMedia调用成功,那么将使用名称“gotAudio”调用一个函数,它将带来该流。
因此,一旦您成功访问音频,您就可以使用麦克风或任何其他音频相关设备。
在gotAudio函数中,代码使用麦克风记录音频流。
您也可以使用故障回拨: navigator.getUserMedia(constraints,successCallback,errorCallback);