问题标签 [javascript-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 投票
0 回答
15 浏览

javascript - 如何克服 html5 - javascript 应用程序中的音频播放器问题?

我遇到了与 HTML5-JS 应用程序组合的音频播放器问题。特别是在移动浏览器中。

没有用户交互的自动播放音频对我不起作用,让我提出这个问题。由于我不熟悉网络应用程序,我只想详细了解这个问题。

我还需要澄清上述场景,这些场景要么属于问题/错误类别,要么属于平台的法规/限制。

如果我对上述问题有答案,那么我可以决定是否可以找到解决方案来违反规定。

提前致谢

0 投票
1 回答
1735 浏览

javascript - 使用 AudioBuffer 作为 HTMLAudioElement 的来源?

如何使用解码AudioBuffer数据设置为源HTMLAudioElement

让我们假设我们有一个HTMLAudioElement

我们还能够接收和解码音频数据:

如何将其source用作 的来源audio?我认为我必须为此创建一个MediaStream对象,但不太清楚如何去做。

0 投票
1 回答
71 浏览

javascript - JavaScript 中的音频循环

我有一个 10 秒长的音频文件,我想在用户单击按钮时播放它。但是,当用户按住按钮时,我希望我的音频在 5 秒到 7.5 秒的循环中播放,并且onmouseup我需要我的音频播放到最后(10 秒)。是否可以在没有任何外部库的情况下做到这一点?

0 投票
1 回答
568 浏览

javascript - HTML Web Audio API - 左右声道的音频可视化

我是 Web 音频 API 的新手。我需要可视化播放音频的左右声道信号强度,如下图所示。

evt.inputBuffer.getChannelData(0) 将返回整个通道信息,我将如何获取左右通道数据,我应该在哪里更改我的代码?请帮忙。

这是我的代码:

音频信号电平表

0 投票
1 回答
649 浏览

javascript - 循环遍历音频元素的 JavaScript 数组

我正在创建一个系统,其中 JavaScript 在 websocket 上侦听,单击或双击 IoT 按钮。当 JavaScript 收到单击时,它应该开始播放随机音频元素数组中的第一首歌曲。然后,一旦第一个音频元素完成播放,就应该播放数组中的下一首歌曲。这将一直持续到被双击打断,这表示暂停。当它到达最后一首歌的结尾时,就是重新洗牌并从头开始。但是,我无法让“歌曲结束”功能正常工作。现在,它播放第一首歌曲然后停止。如果我再发送一次单击,它只会从头开始播放第一个。

Javascript:

0 投票
1 回答
333 浏览

javascript - Javascript Web Audio API AnalyserNode在使用AudioBufferSource时不工作

我正在尝试构建我正在研究的 VAD 算法的“离线”基准版本。在在线版本中,我使用 createMediaStreamSource 作为分析器节点的输入,它工作得非常好。在离线版本中,我想加载和拆分录制的音频文件,所以我使用 xhr 将文件加载为 ArrayBuffer,然后将其拆分(因此它将模拟音频流)并将其用作源 createBufferSource。

这是分割audioBuffer的代码:

然后,将其连接到分析仪的部分:

代码继续。

问题是:分析仪返回的时间数据和频率数据总是空的。

在询问之前: 1. minDecibels 为 -100Db(可能的最低值)。2.segmentsArr 不为空,我可以逐段播放,使用完全相同的方式创建 AudioBufferSource,然后将其连接到音频目标。

回答:感谢@cwilso,问题是我没有cur_source.start在每个新来源中都使用过,非常感谢。

0 投票
1 回答
4716 浏览

javascript - 播放音频解决方法需要用户交互吗?

目前我正在开发一个 html5/js 音乐播放器应用程序。我有很多移动设备用户在播放音乐时遇到问题。根据许多网站,您需要先进行用户交互,然后才能播放音频。

目前这就是我编写音乐播放器的方式。我已经使用 onclick 属性来检测播放按钮上的点击/点击。

然后我有 js 代码来解析播放 url。

这在计算机上运行良好,但在移动用户上必须单击暂停/播放按钮才能开始播放音乐。用户交互要求是否有任何解决方法,因为我想实现一个远程播放系统,如 Google Cast/Spotify Connect。

目前我无法访问完整的代码,所以这只是音乐播放器的核心部分。

我还需要制作一个播放列表功能,但由于这个原因,在没有用户交互的情况下播放播放列表中的下一首曲目似乎是不可能的。

0 投票
5 回答
8703 浏览

javascript - 为什么音频不能在 javascript 中播放

我想在我的网站上添加背景音乐。我试过这个JS代码:

我已经链接了 JS 和 HTML,但是当我打开网站时,声音没有播放。你能帮我么?

0 投票
0 回答
89 浏览

javascript - 是否可以创建使用 WebAudio API 来分析在没有 MP3 文件的情况下在浏览器中播放的声音?

我想在AnalyserNode不访问 MP3 源文件的情况下使用 Web Audio API。我只想分析浏览器播放的声音。那可能吗?

0 投票
1 回答
140 浏览

javascript - 如何使用音频文件中的 amplitute 为图像大小设置动画?

我试图在播放时用几个音频文件的幅度来动画一些图像的大小。所以当audio1正在播放时,image1必须对audio1的幅度做出反应。

我有 javascript、jquery 和 HTML 方面的基本知识,但我在这些领域没有很强的技能。我尝试使用音频 API 或 p5.js 找到解决方案,但我不知道如何从我的文件中访问振幅音频参数。我总是发现一些复杂的教程,我无法理解如何用简单的方式访问我的 HTML 文件中的音频。

我的问题是:访问幅度参数以更改图像大小的最佳方法是什么?音频 API 是访问幅度的最佳方法还是有其他方法?我想得到类似的东西: document.getElementById("#image1").style.height = 10*audio1.amplitude;

谢谢您的帮助!