近期实现的功能,不多说直接上代码(记得一些必要参数要配成自己的哈):
注意:1.本文由于存在语音文件的转换(百度api只支持pcm wav等有限类型,所以其他格式的音频需要自己转换),采用了ffmpeg,这个自己去官网下载就好。
2.本文包含文件服务器整合和上传功能,需要根据自己的需要进行修改和配置(整合了fastdfs客户端,实现文件服务器交互)
/**
*
* 语音接收
*
* @param dialogVO
* @return
*/
@PostMapping(value = "/receiveVoice")
public JsonResult receiveVoice(@RequestBody DialogVO dialogVO, HttpServletRequest request) throws IOException, InterruptedException {
// byte[] base = base64Util.imageTobyte("D:\\VOICE/1234.mp4");
// dialogVO.setVoiceBase64(base64Util.encode(base));
if (StringUtils.isBlank(dialogVO.getVoiceBase64())) {
return renderError("语音流不能为空");
}
if (StringUtils.isBlank(dialogVO.getSuffix())) {
return renderError("文件后缀不能为空");
}
//文件名
String uuid = UUID.randomUUID().toString().replace("-", "");
String fileName = uuid+ dialogVO.getSuffix();
String fileNameWav = uuid + ".wav";
//文件输出地址
// String filePath = "D:\\VOICE";
// fileName = "1111.mp3