javascript - Node JS 访问音频接口(interface)

标签 javascript node.js html audio web-audio-api

我想将来自我的音频接口(interface)(focusrite saffire)的音频信号发送到我的 nodejs 服务器。我该怎么做呢?最简单的方法是从浏览器 (html5) 访问音频接口(interface),例如使用 getUserMedia (https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia) 捕获麦克风输出,但找不到通过该库访问我的音频接口(interface)的方法。否则,我打算创建一个桌面应用程序,但不知道是否有允许访问我的 USB 连接音频接口(interface)的功能/库。

最佳答案

这可能与 Javascript 或 MediaDevices API 无关。在 Linux 上,使用 Firefox,PulseAudio is required与您的音频硬件接口(interface)。由于您的声卡是一个输入/输出接口(interface),您应该能够通过简单地在浏览器中播放任何声音文件来轻松测试它。
大部分PulseAudio configuration可以使用 pavucontrol 来实现图形用户界面。您应该检查“配置”选项卡以及“输入设备”和“输出设备”选项卡,以确保您的 Focusrite 设置正确并用作声音 I/O。
完成此操作后,您应该能够使用以下内容访问音频流(仅在“安全上下文”中可用,即 localhost 或通过 HTTPS 提供服务,如您提到的 MDN 页面中所述):

navigator.mediaDevices.getUserMedia({ audio: true })
  .then(function(stream) {
    // do whatever you want with this audio stream
  })

(取自 MDN page about MediaDevices 的代码片段)
向服务器发送音频是另一回事。你试过什么吗?您是否正在寻找与服务器的实时通信?如果是这样,我会先看看 WebSockets API . WebRTC文档可能也值得一读,但它更面向客户端到客户端的通信。

关于javascript - Node JS 访问音频接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53218829/

相关文章:

javascript - 使用 Cheerio 解析表格单元格内 HTML 表单中的文本

html - 在 Internet Explorer 和 Mozilla Firefox 中通过 CSS 更改图像对比度

javascript - 在 onload 函数中设置 Canvas 背景不起作用

javascript - React hooks 'useState()' updater 函数与表单提交上的 axios.post

javascript - 有没有办法仅使用半正弦公式来过滤州/省/市/区内的坐标?

javascript - 通过 AJAX 调用获取 PHP 变量到 jquery 脚本文件

javascript - "Close"spawn() 函数的回调在 grunt 插件中不起作用

node.js - 为什么meteor.js是同步的?

html - 无法从图像成功创建自定义光标

javascript - 在 ListView 中居中文本 Jquery Mobile