The Web Audio
API's MediaStreamAudioSourceNode()
constructor
creates and returns a new MediaStreamAudioSourceNode
object which uses
the first audio track of a given MediaStream
as its source.
Note: Another way to create a
MediaStreamAudioSourceNode
is to call
theAudioContext.createMediaStreamSource()
method, specifying the stream
from which you want to obtain audio.
Syntax
audioSourceNode = new MediaStreamAudioSourceNode(context, options);
Parameters
context
- An
AudioContext
representing the audio context you want the node to be associated with. options
-
A
MediaStreamAudioSourceOptions
object defining the properties you want theMediaStreamAudioSourceNode
to have:mediaStream
- A required property which specifies the
MediaStream
from which to obtain audio for the node.
Return value
A new MediaStreamAudioSourceNode
object representing the audio node
whose media is obtained from the specified source stream.
Exceptions
InvalidStateError
- The specified
MediaStream
doesn't have any audio tracks.
Examples
This example uses getUserMedia()
to obtain
access to the user's camera, then creates a new
MediaStreamAudioSourceNode
from its MediaStream
.
// define variables
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
// getUserMedia block - grab stream
// put it into a MediaStreamAudioSourceNode
if (navigator.mediaDevices.getUserMedia) {
navigator.mediaDevices.getUserMedia (
// constraints: audio and video for this app
{
audio: true,
video: false
}).then(function(stream) {
var options = {
mediaStream : stream
}
var source = new MediaStreamAudioSourceNode(audioCtx, options);
source.connect(audioCtx.destination);
}).catch(function(err) {
console.log('The following gUM error occurred: ' + err);
});
} else {
console.log('new getUserMedia not supported on your browser!');
}
Specifications
Specification | Status | Comment |
---|---|---|
Unknown The definition of 'MediaStreamAudioSourceNode()' in that specification. |
Working Draft |
Browser compatibility
BCD tables only load in the browser