山东大学项目实训(五)

一、WebSocketService

首先获取了写后端方法同学的语音转文字的方法,放到了common路径下,最初的想法是直接调用里面的方法。 

但是实际操作中,该方法下方法众多,且只写了一个main方法,不适合调用,改动困难,于是把一些基本的方法,如与websocket对接,或是调用讯飞的 api等内容写进了service中。

把供controller调用的方法改为了transcribeAudio()方法,该方法传入一个文件的路径,然后处理该音频文件,返回一个识别好的文本字符串。

二、 ChatController

在Controller里面写了一个post方法,然后接收前端传入的语音blob文件,首先生成url存储到本地,后续将该url存入数据库中。然后将这个url利用service类中提供的方法,实现语音转文本的功能。

三、对一些bug的修改

1.每次生成的是前一次的录音

解决方案,把service中的方法修改为了public static String transcribeAudio(String audioFilePath)

这是一个静态方法,可以每次重新调用、生成新的文本内容,会清空前一次的内容,从而避免了出现重复出现上一次传入的录音的情况。然后进一步避免了后续和AIGC文本分析对接时,出现每次传入的内容”正确“,但是回复的却是上一句内容等问题。

2.出现错误码10043

为了解决这一问题,下载了Audacity,然后查看录好的音频后,发现采样encoding为raw格式,而原来的代码中的格式为lame。修改后,实现了音频解码。 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值