You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Electron中录制Aux-in接口的音频?

如何在Electron中指定录制3.5mm Aux-in接口的音频

你的问题在于代码直接请求了默认音频输入设备(通常是内置麦克风),没有指定要使用Aux-in接口对应的设备。要实现指定录制Aux-in音频,需要先枚举系统中的音频输入设备,定位到Aux-in对应的设备,再基于该设备创建媒体流。

解决步骤及修改后代码:

  1. 枚举所有媒体设备,筛选出Aux-in/Line-in类型的音频输入设备(通过设备名称关键词匹配)
  2. 使用目标设备的ID调用getUserMedia,替代默认设备配置

修改后的完整代码:

const fs = require("fs");

async function fiveSecondAudioRecorder() {
  try {
    // 枚举所有系统媒体设备
    const devices = await navigator.mediaDevices.enumerateDevices();
    // 筛选音频输入设备,并匹配Aux-in/Line-in设备(关键词需根据实际设备名称调整)
    const auxInDevice = devices.find(device => 
      device.kind === "audioinput" && 
      (device.label.includes("Aux-in") || device.label.includes("Line-in") || device.label.includes("线路输入"))
    );

    if (!auxInDevice) {
      console.error("未找到Aux-in/Line-in音频输入设备,请检查设备连接或系统识别状态");
      return;
    }

    // 指定目标设备创建媒体流
    const stream = await navigator.mediaDevices.getUserMedia({
      audio: { deviceId: auxInDevice.deviceId }
    });

    const mediaRecorder = new MediaRecorder(stream);
    const chunks = [];

    mediaRecorder.addEventListener("dataavailable", event => {
      chunks.push(event.data);
    });

    mediaRecorder.addEventListener("stop", async () => {
      const blob = new Blob(chunks, { type: "audio/ogg" });
      const arrayBuffer = await blob.arrayBuffer();
      const buffer = Buffer.from(arrayBuffer);
      
      fs.writeFile("recorded-audio.ogg", buffer, error => {
        if (error) {
          console.error("保存录制音频失败", error);
        } else {
          console.log("录制音频已保存到本地");
        }
      });
    });

    mediaRecorder.start();
    setTimeout(() => mediaRecorder.stop(), 5000);

  } catch (error) {
    console.error("访问音频设备失败", error);
  }
}

fiveSecondAudioRecorder();

注意事项:

  • 设备名称的关键词可能因操作系统、硬件品牌不同而变化,比如部分设备可能显示为"Line In"、"线路输入",需根据系统识别的实际名称调整筛选条件
  • 确保Aux-in设备已被系统正确识别(可在系统声音设置的输入设备列表中确认)
  • Electron项目需配置好音频权限,可在主进程中通过app.requestSingleInstanceLock()或权限声明确保应用能访问音频设备

内容的提问来源于stack exchange,提问作者bartinmader

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 07:31:07