问题标签 [web-audio-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1640 浏览

javascript - 将声音添加到滑块

我有 13 张照片,我将它们放入一个滑块中。我想为每个图像附加一个声音,例如,当我到达图像 10 时,声音 10 开始播放。

我对 jQuery 完全陌生,我考虑过使用Orbit作为滑块,但我不知道如何将声音集成到其中。

有什么简单的想法吗?

0 投票
0 回答
1478 浏览

html - 使用 Web Audio API 在 Chrome 上无缝循环

我无法使用 Web Audio API 在 Chrome 中进行无缝循环。延迟很小(< 100 毫秒)但非常明显。我测试过的文件是m4a和wav。它们在 Safari 6 中无缝循环,但在 Chrome 23 中却没有。我在这里使用示例代码:http: //www.w3.org/2011/audio/wiki/Basic-Examples#Looping_Sounds_Without_Gaps

0 投票
2 回答
11361 浏览

javascript - Web Audio API 附加/连接不同的 AudioBuffers 并将它们作为一首歌曲播放

我一直在使用 Web Audio API,我正在尝试加载歌曲的多个部分并将它们附加到一个新的 ArrayBuffer 中,然后使用该 ArrayBuffer 将所有部分作为一首歌曲播放。在以下示例中,我使用相同的歌曲数据(这是一个小循环)而不是歌曲的不同部分。

问题是它仍然只播放一次而不是两次,我不知道为什么。

下载歌曲

0 投票
1 回答
2198 浏览

audio - 网络音频 API 注意

我正在尝试构建一个接口,允许将时序/节奏(可能是音高)输入到 Web Audio Oscillator 节点。实际上创建了一个“步进音序器”。

为 Web 音频 API 振荡器节点触发预定 NoteOn 的最佳方式是什么?

在特定模式中,即 1/4 音符、1/8 音符或用户输入的模式。

0 投票
1 回答
6687 浏览

javascript - Web 音频 API 分析器节点不使用麦克风输入

Chrome Canary 的http://code.google.com/p/chromium/issues/detail?id=112367阻止获取麦克风输入的错误现已修复。这部分似乎确实有效。我可以将麦克风输入分配给音频元素并通过扬声器听到结果。

但我想连接一个分析器节点以进行 FFT。如果我将音频源设置为本地文件,分析器节点工作正常。问题是当连接到麦克风音频流时,分析器节点只返回基值,就好像它根本没有音频流一样。(如果你好奇的话,它一遍又一遍地是-100。)

有谁知道怎么回事?还没有实施吗?这是铬错误吗?我在 Windows 7 上运行 26.0.1377.0 并启用了 getUserMedia 标志,并通过 python 的 simpleHTTPServer 通过 localhost 提供服务,因此它可以请求权限。

代码:

同样,如果我将 audio.src 设置为注释版本,它可以工作,但使用麦克风则不行。过程包含:

我还尝试使用 createMediaStreamSource 并绕过音频元素 - 示例 4 - https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/webrtc-integration.html。也失败了。:(

我想有可能将 mediasteam 写入缓冲区,然后使用 dsp.js 或其他东西来做 fft,但我想在走这条路之前先检查一下。

0 投票
1 回答
115 浏览

air - Adobe AIR 能否用于创建以 Javascript 编写的使用 Web Audio API 的桌面/移动应用程序?

我可以使用 Adob​​e AIR 使用 Javascript 和 Web 音频 API 创建应用程序,然后说应用程序在变成独立的桌面/移动应用程序后仍保留其音频功能。我还没有开始使用 Adob​​e AIR,所以我不熟悉该软件。

0 投票
1 回答
318 浏览

javascript - 如何使用滑块更改 mousedown/up 触发振荡器的音高并使用 Javascript 和 Web Audio API 在 mouseup 事件后保持状态

代码中的注释应该是不言自明的。

编辑。我对此有点接近:

0 投票
0 回答
148 浏览

html - 启用 appcache 时,Safari 中对音频文件的 Ajax 请求不起作用

我使用应用程序缓存清单来缓存网络游戏的媒体内容,然后在游戏中我使用 Web Audio API 播放一些声音。

这适用于 Chrome,并且是第一次在 Safari 上加载。但随后它将在 Safari 上失败,因为对音频文件的 XHR 请求实际上返回了一个空字符串。

Mobile Safari 也是如此。

有人知道为什么会这样吗?在为音频保留应用程序缓存的同时有任何可能的解决方法吗?

0 投票
2 回答
376 浏览

signal-processing - 网络音频 API 和滤波器系数

我正在学习使用网络音频 api来合成和处理声音。我看到有一个BiquadFilterNode类我可以使用,但它只允许指定定义的过滤器类型之一 ( "lowpass", "highpass", "bandpass", "lowshelf", "highshelf", "peaking", "notch", "allpass") 并通过此类过滤器的元参数控制它Qgaincenter-frequency.

有没有办法指定数字滤波器的实际系数?换句话说,对于以下形式的过滤器:

我可以以某种方式直接指定 的值b_0, b_1, b_2, a_1, a_2吗?

我问是因为尽管预定义的过滤器类型非常方便,但它们不一定涵盖所有用例。通过指定系数,可以实现一阶滤波器、参数部分等。

0 投票
1 回答
5300 浏览

html - 如何在 Web Audio Api 中释放缓冲区?

我喜欢网络音频 API。可能性非常大。话虽如此,它仍处于早期阶段。最让我担心的是,我不知道如何释放不再需要的缓冲区/声音。因为我将混合来自通过 websocket 连接的音乐家 / DJ / 主持人的现场声音,所以声音缓冲区总是带有新的声音。

以下代码模拟连续加载新缓冲区的播放。我需要网络音频 api 来添加效果混合,这样每个人都可以通过他的表演听到现场结果。

不幸的是,这段代码吃掉了整个内存并导致移动和桌面 safari 崩溃。我不知道在播放这些大缓冲区后如何释放它们,我不再需要它们。我真的需要在内存中加载新的大数据。有人知道吗?否则我会卡在播放的前 8 个文件无法再加载。