web-audio-api相关内容

WebAudio API:是否可以使用 StereoPanner 节点数据导出 AudioBuffer?

我希望将 AudioBuffer 导出到带有 StereoPanner 节点的 wav 文件,即我将声音向左平移并将其向左平移.我想知道是否可以导出与 AudioContext 关联的 StereoPanner 数据? 我已经从 AudioContext 构建了一个 AudioSource,并且我已经将一个 StereoPanner 附加到了我的 AudioSource.我可以毫无问题地在浏 ..
发布时间:2021-09-22 20:13:03 前端开发

在浏览器中使用 Opus(或其他编解码器)对 AudioBuffer 进行编码

我正在尝试通过 Websocket 流式传输音频. 我可以通过 Web-Audio-Api 从麦克风(或其他源)获取 AudioBuffer 并流式传输 RAW-Audio-Buffer,但我认为这不会很有效.所以我四处寻找以某种方式对 AudioBuffer 进行编码.- 如果 Opus-Codec 不可行,我对替代方案持开放态度,并感谢您提供正确方向的任何提示. 我曾尝试使用 Me ..
发布时间:2021-09-22 20:13:00 前端开发

使用 Web Audio API 时的播放会在每个块的开头跳过

我一直在开发一个音乐应用,今天我终于开始尝试在其中播放音乐. 作为我的环境设置的概述,我将音乐文件存储为 MP3,我已使用 GridFS 将其上传到 MongoDB 数据库中.然后我使用 socket.io 服务器从 MongoDB 数据库下载块,并将它们作为单独的发射发送到前端,由 Web Audio API 处理并安排播放. 当它们播放时,它们都按正确的顺序排列,但是每次(大概是在 ..
发布时间:2021-09-22 20:12:48 前端开发

如何改变振荡器频率?

我开始试验 Web Audio API,尝试创建不同的振荡器来产生声波. 由于我对整个过程有点陌生,我想知道是否有一种方法可以播放音调,不是以恒定频率,而是在中途改变它们. 示例:我想要一个音调,从 300 Hz 开始 3 秒,然后线性升高到 400 Hz接下来的4 秒. 我找到了这个,但我不确定它是否是我要找的: osc.setPeriodicWave(wave); 到目前 ..
发布时间:2021-09-22 20:12:46 前端开发

在视频通话期间将音频添加到传入流中以记录通话双方的语音

我创建了一个使用 peer js 来发起视频通话的应用程序.我正在使用 mediarecorder Api 来记录来自呼叫者的传入流.但是,我需要将通话中呼叫者和接收者的音频添加到录音中,并且视频应该仅是呼叫者(传入流). 我已经尝试过 https://github.com/muaz-khan/MultiStreamsMixer 这个.但是,在录制它时,我通过 vlc 得到了一个无法读取的文 ..
发布时间:2021-09-22 20:12:40 其他开发

MediaElementSource 使用的内存是否比 Web Audio API 中的 BufferSource 少?

我正在制作一个可以播放音频文件(mp3、wav)的小应用程序,并且能够在它们上使用均衡器(比如一个普通的音频播放器),为此我使用了网络音频 Api. 我设法通过两种方式获得了游戏角色.使用 decodeAudioData 的 BaseAudioContext function getData() {源 = audioCtx.createBufferSource();var request ..
发布时间:2021-09-22 20:12:34 前端开发

是否可以使用适当的 Access-Control-Allow-Origin 标头为跨源资源启用 WebAudio 处理?

我正在构建一个涉及两台服务器的音频应用程序.服务器 A 专用于音频流,而 B 服务器提供一个 HTML 页面,从 A 加载音频源. 音频可以播放.但是,当我尝试使用 WebAudio API 做一些魔术时,我收到消息说 "由于 CORS 访问,MediaElementAudioSource 输出零{{URL of audio src}}" 的限制 这是公平的,因为 WebAudio ..
发布时间:2021-09-22 20:12:31 前端开发

setSinkId 更改多个音频输出

问题来了, 首先,我在 select 元素中列举了所有可用的设备: navigator.mediaDevices.enumerateDevices() 当我更改一个输出时,它会在我选择的设备中发出声音. HTMLMediaElement.setSinkId(deviceId) 如果我播放另一个音频并更改设备输出 (setSinkId),它也会将第一个更改为最后一个 deviceId. ..
发布时间:2021-09-22 20:12:29 其他开发

替代 Web 音频 API

我有一个使用 Web Audio API 的 Web 程序.这里的问题是我想让它与 IE 兼容.Web Audio API 是否有任何替代方案,以便我可以专门在 IE 上运行相同的代码? 解决方案 您的需求是什么?如果您需要进行动态合成、音频路由等,您将只能通过 Web Audio API 来实现,因此您的 IE 用户很不走运. 但是,如果您只需要播放音频文件,那么我建议您使用 ho ..
发布时间:2021-09-22 20:12:26 前端开发

加载模块时 AudioWorklet DOMException 错误

我正在开发一个 WebAudio 应用程序,它需要 AudioWorklets 并且需要来自许多不同脚本的函数以在 process() 函数中使用.因此,我尝试使用 import 命令在 processor 脚本 (frictionProcessor.js) 中加载所述脚本,如下所示: 从“./utilities.js"导入{MAX_ERROR, MAX_ITERATIONS};class Fr ..
发布时间:2021-09-22 20:12:16 前端开发

我应该断开不再使用的节点吗?

我正在尝试使用网络音频,并制作了一个播放音符的功能. var context = new (window.AudioContext || window.webkitAudioContext)()var make_triangle = 函数(目的地,频率,开始,持续时间){var osc = context.createOscillator()osc.type = "三角形"osc.frequen ..
发布时间:2021-09-22 20:12:13 其他开发

用 AudioWorklet 替换 scriptProcessorNode

我正在录制来自用户的麦克风输入并进行处理.问题是我使用 scriptProcessorNode 来处理数据,但是 here 它表示已弃用并替换为 AudioWorklet.问题是没有明确的方法可以用 AudioWorklet 替换此功能,并且从所有 带有来自 Google 的 AudioWorklets 的示例项目,它们都没有对麦克风输入做任何事情.有没有办法用 Audio Worklet 替换此 ..
发布时间:2021-09-22 20:12:09 其他开发

使用 MediaRecorder 录制音频 webm 时没有元数据

对于我的项目,我使用 MediaRecorder 录制用户音频,它几乎可以正常工作.当我希望使用 Wavesurfer.js 显示用户录制的波形时,我的问题就出现了,这不会加载我的录音.不过,使用 Audio 元素播放录音效果很好. 在尝试了不同的来源后,似乎是因为最终的 .webm 文件没有太多元数据,甚至没有持续时间或比特率(即使我在 MediaRecorder 选项中设置了它).这是 ..
发布时间:2021-09-22 20:11:57 前端开发

使用 Web Audio API 隔离音频上下文的频率

我正在试验 WebAudio API 并尝试构建一个分析器,用户可以与之交互并最终打开和关闭音乐中的不同频率以隔离音轨中的不同节拍,即低音、底鼓等. 我正在使用 Canvas 将频率数据可视化,并希望用户能够突出显示可视化的部分,并依次静音频率. 默认情况下,可视化效果如下所示,用户会听到所有频率. 但是当用户选择多个条形时,灰色的条形会将相关频率静音: 我的想法是我可以对 ..
发布时间:2021-09-22 20:11:55 前端开发

如何使用 Javascript 创建实时媒体流

我想创建从一台设备到节点服务器的实时音频流,然后节点服务器可以将该实时馈送广播到多个前端. 我对此进行了广泛的搜索,但确实遇到了困难,所以希望有人能提供帮助. 我可以从 window.navigator.getUserMedia API 获取我的音频输入. getAudioInput(){常量约束 = {视频:假的,音频:{deviceId:this.state.deviceId ? ..
发布时间:2021-09-22 20:11:52 前端开发