当前位置: 首页 > 编程笔记 >

web-audio 播放音频

贺山
2023-03-14
本文向大家介绍web-audio 播放音频,包括了web-audio 播放音频的使用技巧和注意事项,需要的朋友参考一下

示例

要使用Web Audio API播放音频,我们需要获取音频数据的ArrayBuffer并将其传递给BufferSource进行播放。

要获得播放声音的音频缓冲区,您需要使用如下AudioContext.decodeAudioData方法:

const audioCtx = new (window.AudioContext || window.webkitAudioContext)();
// 从服务器获取MP3文件
fetch("sound/track.mp3")
    // 将数据作为ArrayBuffer返回
    .then(response => response.arrayBuffer())
    // 解码音频数据
    .then(buffer => audioCtx.decodeAudioData(buffer))
    .then(decodedData => {
        // ...
    });

最终承诺解决后,系统会以的形式为您提供音频AudioBuffer。然后可以将其附加到AudioBufferSourceNode-并播放-,如下所示:

const source = context.createBufferSource();
source.buffer = decodedData; // <==
source.start(...);

Where具有三个参数,分别偏移何时播放样本,偏移样本中从何处播放以及告诉播放样本多长时间。.start()

可在MDN上找到有关如何操作缓冲区源的更多信息。

 类似资料:
  • 音频播放组件,代替原生的 audio 标签 标题 内容 类型 通用 支持布局 N/S 所需脚本 https://c.mipcdn.com/static/v2/mip-audio/mip-audio.js mip-audio 用法和原生标签的用法基本相同,有所不同的是在 MIP 环境下,初始化的时间是由 MIP Runtime 决定,只有当标签在浏览器视窗内才会初始化,也就是所谓的懒加载。 mip-

  • 想在页面有提醒消息,目前做了个隐藏的audio,想通过js获取到然后play一下这样提示音就出来了。但是会出现这个报错,并不能通过这个方式。Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD

  • 利用Audio Unit类进行简单的播放声音,这个类库可以进行更加强大的操作。 [Code4App.com]

  • 本文向大家介绍web-audio 合成音频,包括了web-audio 合成音频的使用技巧和注意事项,需要的朋友参考一下 示例 在此示例中,我们展示了如何生成一个简单的正弦波,并将其输出到用户的扬声器/耳机上。 上面的变量的start和stop方法sourceNode都有一个可选参数when,用于指定启动或停止之前要等待的秒数。 因此,停止声音的另一种方法是: type可以将振荡器节点的参数设置为以

  • 本文向大家介绍微信小程序  audio音频播放详解及实例,包括了微信小程序  audio音频播放详解及实例的使用技巧和注意事项,需要的朋友参考一下  微信小程序 audio音频播放 audio audio为音频组件,我们可以轻松的在小程序中播放音频。 属性名 类型 默认值 说明 id String   video 组件的唯一标识符, src String   要播放音频的资源地址 loop Boo

  • 我正在流式录制的PCM音频从一个浏览器与web音频API。 我正在用binaryJS(websocket连接)将它流到一个nodejs服务器上,并尝试使用speaker npm模块在服务器上播放该流。 这是我的当事人。音频缓冲器首先是非交错的IEEE 32位线性PCM,标称范围在-1至+1之间。我从两个PCM频道中的一个开始,并在下面进行流式传输。 现在我接收数据作为缓冲区,并尝试将其从npm包写