📜  Web API 中的音频 Context.close()

📅  最后修改于: 2021-08-30 12:45:14             🧑  作者: Mango

Web 音频 API 有助于使网站应用程序的音频听起来正确。声音使网站更加有趣和有吸引力。使用音频 API,可以构建许多音乐或声音应用程序。在本文中,我们将了解audiocontext.close()以及有关音频 API 的一些基本信息。

音频上下文是一个对象,用于对网站或应用程序的音频进行各种操作。这是一个预先构建的函数,可用于各种浏览器,如 google 和 Firefox。在更改任何音频之前,必须存储音频源。有 3 种主要类型的音频源。

  • 振荡器:用于产生数学计算的声音
  • 音频样本:从各种文件中获取音频
  • 音频流:从网络摄像头或麦克风获取音频

使用任一来源流式传输音频后,您可以使用不同的节点来强调或减弱音频的部分。执行完节点功能后,将音频连接到目的地,然后播放声音。一些不同的节点是 Filter、ChannelSpiltterNode、AudioWorkletNode 等……

AudioContext.close():该音频上下文函数可以关闭audiocontext,从而分离与audiocontent相关联的任何硬件资源。即该函数不会进一步接受/给予声音设备的任何输入。但是在使用 close() 之前已经存储的音频可以被操纵。这在移动设备等低功耗设备中非常有意义。如果音频上下文停留在设备的资源上,则保持开启,从而导致断电。

句法:

// Declaring audiocontext constrcutor
var audioContext=new AudioContext();
audioContext.close().then(function()
     {.
      .
      . });
await audioContext.close()

示例:在以下代码中,创建了一个带有 3 个按钮的小型 HTML 页面。单击每个按钮执行与音频相关的相应功能。在该示例中,可以开始和停止音频,即恢复。请注意,恢复与停止不同,因为恢复音频意味着暂时暂停音频并从停止的位置重新开始。而使用 close() 停止音频会从声音设备中完全删除音频并将状态设置为开始状态。

Javascript


    
        
  
        states
  
        
        
    
  
    
        
                                                     

Current context time: No context exists.

           
                


输出:音频通过单击“创建音频”开始,音频可以通过“暂停音频”暂时停止,然后在没有时间间隔“恢复音频”的情况下再次开始。使用 Audiocontext.close() 通过“停止音频”停止音频