此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

MediaStreamAudioSourceNode.MediaStreamAudioSourceNode()

基线 广泛可用

自 2021年4月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

**MediaStreamAudioSourceNode()**构造器创建一个新的 MediaStreamAudioSourceNode对象实例。

语法

js
var myAudioSource = new MediaStreamAudioSourceNode(context, options);

参数

context

一个用来使用 node 的音频环境AudioContext

options

MediaStreamAudioSourceOptions,一个 map 对象,定义MediaStreamAudioSourceNode的属性:

  • mediaStream: 需要使用的音频流

示例

js
// define variables
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();

// getUserMedia block - grab stream 获取音频流
// put it into a  把音频流放入 MediaStreamAudioSourceNode
if (navigator.mediaDevices.getUserMedia) {
  console.log("new getUserMedia supported.");
  navigator.mediaDevices
    .getUserMedia(
      // constraints: audio and video for this app
      {
        audio: true,
        video: false,
      },
    )
    .then(function (stream) {
      // Create a MediaStreamAudioSourceNode
      var options = {
        mediaStream: stream,
      };

      var source = new MediaStreamAudioSourceNode(audioCtx, options);
      source.connect(audioCtx.destination);
    })
    .catch(function (err) {
      console.log("The following gUM error occured: " + err);
    });
} else {
  console.log("new getUserMedia not supported on your browser!");
}

规范

规范
Web Audio API
# dom-mediastreamaudiosourcenode-mediastreamaudiosourcenode

浏览器兼容性