Closed nijinekoyo closed 1 year ago
插件启动时没有问题,尝试编码发送语音后出现此错误 使用mirai-http-api的websocket协议,将一份wav文件编码为base64后传输
已有相似 issue #4
具体的代码问题在 KasukuSakura/silk-codec#3
你可以下载我编译的修复版本 mirai-silk-converter-0.0.6.mirai.jar
这个版本似乎直接不工作了( 我尝试推送语音文件时没有任何反应 Mirai控制台也没打印任何信息
没有任何反应
无意义描述,你什么也不发的结果也是 没有任何反应
,
如果你的表述无误,就是自己代码本身的问题
你们描述问题总喜欢用概况的方法,把细节都隐藏起来
请确认是以下那种情况
没有任何反应
无意义描述,你什么也不发的结果也是
没有任何反应
, 如果你的表述无误,就是自己代码本身的问题你们描述问题总喜欢用概况的方法,把细节都隐藏起来
请确认是以下那种情况
- 日志里有发送语音的记录,但是聊天框没有收到(风控)
- 日志里没有发送语音的记录,但有其他报错 (编码转换错误)
我不是故意这么描述的,是真的完全没有一点反应
按照我代码的设计,发完文字消息后就会发送语音消息,我试了很多遍都不会触发,代码是没有问题的,我如果把插件去掉就会有原版的输出而不会没有一点反应
我在发送后的代码下面添加了同时输出音频文件,输出的音频文件也是正常可以播放的,过程中没有收到任何报错,所以我也很迷(
相同的代码,去除插件后会这样
相同的代码,去除插件后会这样
两个可能性
我倾向于第二种
另外 22050 Hz
的 wav
默认是不支持转换的 (会报错)具体原因可以见于 https://github.com/KasukuSakura/silk-codec/pull/4
你可以修改 启动脚本 mcl.cmd
/ mcl.sh
在 -jar
前面加上 -Dsilk-codec.rate-check-ignore=true
即 -Dsilk-codec.rate-check-ignore=true -jar
以启用
相同的代码,去除插件后会这样
两个可能性
- 发的太慢了,一直在后台等待中
- mirai-api-http 隐藏了报错信息
我倾向于第二种
另外
22050 Hz·
的wav
默认是不支持转换的 (会报错)具体原因可以见于 KasukuSakura/silk-codec#4 你可以修改 启动脚本mcl.cmd
/mcl.sh
在-jar
前面加上-Dsilk-codec.rate-check-ignore=true
即-Dsilk-codec.rate-check-ignore=true -jar
以启用
非常感谢,我在加上-Dsilk-codec.rate-check-ignore=true
后可以成功转换出音频
可能确实是高赫兹的wav音频转换出错,只不过不报错很奇怪(
Windows 11下使用,Mirai版本为2.15.0-M1