问题标签 [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 回答
136 浏览

api - Have problems with load and play a audio using JS

I tired the load and play method here:
http://chromium.googlecode.com/svn/trunk/samples/audio/doc/loading-sounds.html
and write my own html and js code, but got problems loading the audio, I always get a null bufferList and arraybuffer. I don't know why, someone please write a simple code or tell me how can I load a audio in a array so that I can send it using websocket
I don't know how to add code here, but my code is very similar with the code from the link.

0 投票
2 回答
3640 浏览

streaming - 通过客户端 XHR 打开 Soundcloud Track 的 stream_url?

由于您可以通过 XHR 调用 Soundcloud API(因为 CORS 标头它发送http://backstage.soundcloud.com/2010/08/of-cors-we-do/,对吗?)我想知道这是不是可以使用音频数据本身,例如轨道的 stream_url。

当尝试使用 Web Audio API 使用 XHR(从客户端)打开 stream_url 时,我得到一个Origin is not allowed by Access-Control-Allow-Origin。错误。有没有办法通过 XHttpRequest 从 Client-Side-Javascript 加载音频资源,还是不可能(https://stackoverflow.com/questions/10871882/audio-data-api-and-streaming-a-no-go) ?

会很棒,因为这将允许使用 Web Audio API 做一些非常酷的事情。

谢谢!

更新

问题可能与您在调用时收到的 302 重定向有关:

或其他请求实际媒体文件的呼叫(请参阅评论)。

原始 JSON 响应具有 CORS 标头,而重定向的位置没有。

0 投票
1 回答
1436 浏览

audio - Web Audio API - 如何使用 AudioPannerNode 进行常规 LR 平移

AudioPannerNode 是一个处理节点,它在三维空间中定位/空间化传入的音频流。有没有办法将它用于常规的 LR 平移,记住它使用 3D 笛卡尔坐标系以及听众,其位置和方向与平移器的位置和方向一起用于确定音频将如何空间化?或者我应该跳过 AudioPannerNode,并尝试使用 LR 增益节点来实现这一点?

0 投票
2 回答
2997 浏览

javascript - 如何使用 Web Audio API 访问输出缓冲区?

我想访问输出/目标缓冲区中的音频数据。具体来说,我想将数据保存到文件中。我还想将自定义效果添加为AudioNode的。

如何使用 Web Audio API 实现这一点?我没有看到 AudioDestinationBuffer 接口或在specs中添加自定义AudioNode的方法。

0 投票
4 回答
4372 浏览

javascript - 将音频数据加载到 AudioBufferSourceNode 从

是否可以<audio/>通过-element 加载音频文件createMediaElementSource,然后将音频数据加载到AudioBufferSourceNode 中

使用音频元素作为源 (MediaElementSource) 似乎不是一种选择,因为我想使用 Buffer 方法noteOnnoteGrain.

不幸的是,通过 XHR 将音频文件直接加载到缓冲区也不是一种选择 (请参阅Open stream_url of a Soundcloud Track via Client-Side XHR?

不过,从音频元素加载缓冲区内容似乎是可能的:

http://www.w3.org/2011/audio/wiki/Spec_Differences#Reading_Data_from_a_Media_Element

或者甚至可以直接使用 -element 的缓冲区<audio/>作为 sourceNode 吗?

0 投票
3 回答
5547 浏览

javascript - Web Audio API:noteOff 后的 noteOn 不起作用?

我使用 Web Audio API 编写了一个简单的网络应用程序,但我注意到当我noteOn(0)向给定的源发出命令时,接着是 a noteOff(0),最后是另一个noteOn(0)命令,声音会打开,关闭(如预期的那样) 但随后不会使用第三个命令打开。

有什么我做错了吗?就这么简单,我可以给你看代码,但我觉得它是多余的。也许我需要在 之后将缓冲区重新分配给源noteOff,但我无法想象它是如何使用的。

0 投票
2 回答
4031 浏览

javascript - 我在 HTML5 中录制音频的代码有什么问题?

我正在尝试使用最新的 Chrome beta(版本 21.0.1180.15)通过麦克风录制音频。似乎现在几乎所有要做的事情都在 Chrome beta 中实现了。我什至可以使用麦克风。虽然我无法将流与audio元素连接起来。但据我了解,如果没有错误,它应该可以工作。

createMediaStreamSource()尚未实施。作为一种解决方法,我想使用createMediaElementSource()通过静音audio元素路由来自麦克风的音频。

使用下面的代码,我在控制台中收到以下两条错误消息之一:

GET blob:file%3A///625fd498-f427-43d5-959b-3b49c6d53ab5 404(未找到)

或者

不允许加载本地资源:blob:null/8df582cc-b663-489b-bf49-1785226fc7b7

错误是由这一行引起的:

这条线有问题吗?如何将流连接到audio元素源?还是 Chrome 中的一个错误导致无法创建对象 URL?

代码:

0 投票
9 回答
24265 浏览

javascript - Web Audio API 从暂停中恢复

我经常读到无法使用Web Audio API暂停/恢复音频文件。
但现在我看到了一个例子,他们实际上可以暂停和恢复它。我试图弄清楚他们是怎么做到的。我认为也许source.looping = false是关键,但事实并非如此。
现在我的音频总是从头开始重新播放。

这是我当前的代码

有人知道该怎么做,让它工作吗?

0 投票
2 回答
742 浏览

web-audio-api - 如何连接 JQuery UI 滑块和 Web 音频 API gainNode

我正在尝试使用 Web Audio API 将 JQuery 滑块连接到振荡器的增益节点。

振荡器工作,有一个工作增益滑块,还有一个 JQuery 滑块。我希望 JQuery 滑块像其他滑块一样控制增益。

这是到目前为止的代码

http://jsfiddle.net/taoist/JCTJj/2/

0 投票
1 回答
983 浏览

javascript - 从 Web SQL 数据库中检索音频并使用 Web Audio API 播放

我有将 ArrayBuffer(从 XMLHttpRequest 调用以获取 mp3 作为数组缓冲区)保存到 web sql 数据库的代码,从返回对象 ArrayBuffer 的 sql 查询中检索它。但是,当我尝试 decodeAudioData 或 createBuffer 时,我得到一个类型错误。

var buffer = audioContext.createBuffer(result.xtalk,false);

给出 Uncaught TypeError: 类型错误

如果我在 result.xtalk 中放置警报是对象 ArrayBuffer

这是在 Mac 上的 Chrome 21.0.1180.75 中

我尝试创建一个 ArrayBuffer 并逐字节填充它,然后传递它——但这也不起作用。