填坑来了,由于 ctx.http 用原生方式发送 formata
数据太折磨了。索性自己搭了后端中间接口。希望大家爱惜嗯!
该功能暂时只适配 adapter-qq
适配器,因为后端接收的数据是 .silk
数据
开箱即用的 哼唱识别 插件。无需安装 silk
和 ffmpeg
当群内发送音频时,会尝试进行声纹匹配并歌曲解析。为了避免误判做了以下操作:
- 音频小于
8
秒:不做处理
- 音频大于
2
M:不做处理
效果展示
官方 qqbot
仅适用于私聊状态,而第三方用户则群聊私聊都可用
目前识别源为如下列表
3 个赞
请问可以加一个调试模式开关吗?
我这边好像触发不了识别,但是没有日志可以看。
谢谢劳斯
附环境信息:
System:
OS: macOS 15.4
CPU: (10) x64 Apple M4
Binaries:
Node: 20.12.2
Yarn: 4.1.1
Koishi:
Core: 4.18.7
Console: 5.30.7
Koishi Desktop: 1.1.3
用的lagrange协议
2 个赞
好的,我猜测你的音频数据不是 silk
,导致转码那边没法操作
2 个赞

我不太确定后端那边能否自动明确返回数据的类型,可能后续版本得为 onebot 做一个适配兼容
2 个赞
azi510
10
好滴,那我这边的话这个问题估计是不太方便解决。
等您的后面的消息,不急。
再次感谢
2 个赞
smmcat
11
已添加兼容选项,请更新到 koishi-plugin-smmcat-hummingidentify@0.0.5
在插件配置菜单中,勾选兼容 onebot 选项
并,如果您那边方便;想邀请你到我的 测试群,方便后续反馈 onebot 的使用情况
2 个赞
测试了0.0.5版本的插件,开关onebot兼容的情况下均没有效果,控制台无相关日志。
题外话:这是直接识别接收到的全部语音消息就触发吗?可否在后续更新中可选指令触发(例如发送哼唱识别指令后处理发送指令者的下一条语音消息)
2 个赞
smmcat
15
你是 npm start 运行的版本,还是客户端的版本?应该每次符合要求的语音都能识别并输出打印后端返回的结果…
如果没触发,可能插件没有在工作?
是的,由于qq把音频压缩的很小,况且群消息大部分情况都是文本。插件会向服务器发送语音进行分析。
目前这个识别适用于你直接录制音乐发送,自己唱歌的识别难度挺大(至少我唱了十首只识别看两首)
2 个赞
是koishi desktop,我能反馈的就是发了语音没反应。你做成指令调用形式的我也许能更详细的给出具体情况
1 个赞