xiayesuifeng / go-xfyun-tts

mirror from https://gitlab.com/xiayesuifeng/go-xfyun-tts
GNU General Public License v3.0
2 stars 0 forks source link

大佬,想请问下请求接口后获得的bytes.buffer类型结果值是怎么转换成音频文件的 #1

Open hbisbest opened 4 years ago

hbisbest commented 4 years ago

总的情况是:在外部调用GetAudio方法后获得的bytes.buffer类型结果值先用String方法转为字符串,然后将该字符串转为字节切片,最后将该字节切片转为wav格式的音频文件。 在这其中有两个问题:一、由结果字符串转成的字节切片中的数据成员都为0,而且长度只有64,不全,估计是GetAudio方法中用了goroutine而带来的问题;二、当GetAudio方法中不用goroutine时外界可以得到完整的数据,根据这个数据得到字节切片,由该字节切片转为音频文件后发现音频文件不对,全程没声音(转为音频文件用的方法是ioutil.WriteFile(test.wav, resBytes, 0777))

xiayesuifeng commented 4 years ago

github这边是镜像,你应该去gitlab那边发,第一个问题,如果获取过程有错误就会中断,所以返回的error是nil才应该是获取完了,否则都不是你要的,第二个,没声音应该是你播放器不支持,音频默认编码是 raw,你得用支持的播放器播放或者转码

hbisbest commented 4 years ago

好的好的,谢谢大佬的解答,我去试下

------------------ 原始邮件 ------------------ 发件人: "xiayesuifeng/go-xfyun-tts" <notifications@github.com>; 发送时间: 2020年7月30日(星期四) 晚上10:05 收件人: "xiayesuifeng/go-xfyun-tts"<go-xfyun-tts@noreply.github.com>; 抄送: "胡斌"<981145308@qq.com>;"Author"<author@noreply.github.com>; 主题: Re: [xiayesuifeng/go-xfyun-tts] 大佬,想请问下请求接口后获得的bytes.buffer类型结果值是怎么转换成音频文件的 (#1)

github这边是镜像,你应该去gitlab那边发,第一个问题,如果获取过程有错误就会中断,所以返回的error是nil才应该是获取完了,否则都不是你要的,第二个,没声音应该是你播放器不支持,音频默认编码是 raw,你得用支持的播放器播放或者转码

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.