0%

百度语音语音识别3301(涉及Base64)

最近在做客户端数据提交到服务器再请求百度服务器语音识别返回识别数据的处理,但是一直报 3301 错误(返回的json提示语音质量差),尝试解决一段时间后,终于找到缘由。
客户端数据是base64后上传到自有服务器的,而后再由自有服务器处理并提交数据给百度语音识别,问题就出在客户端上传数据后自有服务端处理这块,客户端提交的base64中的+号,到了自有服务端处理时,成为了 (一个空格),被转换了,而我忘了这茬事了(虽然以前遇到过,但是这回一开始并没有想到可能是这方面的问题)。
最后,PHP服务端使用str_replace(" ", "+", $data)处理后再进行后续处理,百度语音识别成功。
特此小记。