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

Discord.js v13.1机器人播放MP3文件无声音问题求助

Discord.js v13 播放MP3无声音问题解决方案

播放器运行日志显示资源加载、状态切换完全正常,无报错,问题出在音频解码输出环节或权限配置,可按以下步骤排查:

  • 检查语音依赖是否完整
    必须安装所有语音相关依赖才能正常输出音频:

    1. Opus解码库二选一安装即可:
      npm install @discordjs/opus
      或
      npm install opusscript
    2. FFmpeg二选一配置即可:
      系统全局安装FFmpeg并添加到环境变量,或安装npm静态包:
      npm install ffmpeg-static
  • 显式指定音频资源的输入类型
    @discordjs/voice 对本地MP3文件的自动格式识别容易出错,需显式指定输入格式:
    首先从@discordjs/voice包中引入StreamType,然后修改资源创建代码:

    const resource = createAudioResource(join(__dirname, '../../songs/song.mp3'), {
      inputType: StreamType.MP3
    })
    
  • 检查权限与客户端配置

    1. 确认机器人在加入的语音频道中拥有「说话」权限
    2. 检查Discord客户端是否将机器人静音,或机器人的用户音量被调整到0
    3. 确认未连接到语音频道的AFK分区,AFK分区默认限制普通用户发声
  • 调整执行顺序
    部分场景下先完成播放器订阅再触发播放可避免初始化异常,修改代码顺序:

    voiceConn.subscribe(player)
    player.play(resource)
    
  • 测试音频文件兼容性
    若使用特殊编码的MP3文件(如过高比特率的VBR资源、加密MP3)会出现解码无输出问题,可替换为标准128kbps CBR编码的MP3文件测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 00:30:04