AudioContext - Web API 接口参考 编辑

AudioContext接口表示由链接在一起的音频模块构建的音频处理图,每个模块由一个AudioNode表示。音频上下文控制它包含的节点的创建和音频处理或解码的执行。在做任何其他操作之前,您需要创建一个AudioContext对象,因为所有事情都是在上下文中发生的。建议创建一个AudioContext对象并复用它,而不是每次初始化一个新的AudioContext对象,并且可以对多个不同的音频源和管道同时使用一个AudioContext对象。

  <div id="interfaceDiagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveAspectRatio="xMinYMin meet"><a xlink:href="/wiki/zh-CN/docs/Web/API/EventTarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text  x="56" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">EventTarget</text></a><polyline points="111,25  121,20  121,30  111,25" stroke="#D4DDE4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/wiki/zh-CN/docs/Web/API/AudioContext" target="_top"><rect x="151" y="1" width="120" height="50" fill="#F4F7F8" stroke="#D4DDE4" stroke-width="2px" /><text  x="211" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">AudioContext</text></a></svg></div>
  a:hover text { fill: #0095DD; pointer-events: all;}

构造函数

AudioContext()
创建并返回一个新的 AudioContext 对象。

属性

也从其父接口继承属性, BaseAudioContext.

AudioContext.baseLatency 只读
返回AudioContext将音频从AudioDestinationNode传递到音频子系统的处理延迟的秒数。
AudioContext.outputLatency 只读
返回对当前音频上下文的预估输出延迟。

方法

也从其父接口继承方法​​​​, BaseAudioContext.

AudioContext.close()
关闭一个音频环境, 释放任何正在使用系统资源的音频。
AudioContext.createMediaElementSource()
创建一个MediaElementAudioSourceNode接口来关联HTMLMediaElement. 这可以用来播放和处理来自<video><audio> 元素的音频。
AudioContext.createMediaStreamSource()
创建一个MediaStreamAudioSourceNode接口来关联可能来自本地计算机麦克风或其他来源的音频流MediaStream
AudioContext.createMediaStreamDestination()
创建一个MediaStreamAudioDestinationNode接口来关联可能储存在本地或已发送至其他计算机的MediaStream音频。
AudioContext.createMediaStreamTrackSource()
创建一个MediaStreamTrackAudioSourceNode,它与一个MediaStream相关联,表示一个媒体流轨迹。
AudioContext.getOutputTimestamp()
返回一个新的AudioTimestamp对象,该对象包含两个与当前音频上下文相关的音频时间戳。
AudioContext.resume()
恢复之前被暂停的音频上下文中的时间进程。
AudioContext.suspend()
暂停音频上下文中的时间进程,暂停音频硬件访问并减少进程中的CPU/电池使用。

例子

简单声明:

var audioCtx = new AudioContext;

跨浏览器的方式:

var AudioContext = window.AudioContext || window.webkitAudioContext;
var audioCtx = new AudioContext();

var oscillatorNode = audioCtx.createOscillator();
var gainNode = audioCtx.createGain();
var finish = audioCtx.destination;
// etc.

规范

规范状态注释
Web Audio API
AudioContext
Working Draft

浏览器兼容性

BCD tables only load in the browser

这个页面的兼容性表是从结构化数据生成的。如果你想对我们贡献数据,请查看https://github.com/mdn/browser-compat-data并向我们发送请求。

相关链接

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:132 次

字数:9007

最后编辑:8 年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文