当前位置: 首页 > news >正文

网站备案取名网页制作

网站备案取名,网页制作,网站空间提供,深圳网站建设公司报价继续上文,硬件软件准备齐全,介绍一下主要用到的库 sherpa-onnx 开源的,语音转文本、文本转语音、说话人分类和 VAD,关键是支持C#开发 OllamaSharp 用于连接ollama,如其名C#开发 虽然离可玩还有一段距离&#xff0…

继续上文,硬件软件准备齐全,介绍一下主要用到的库

sherpa-onnx

开源的,语音转文本、文本转语音、说话人分类和 VAD,关键是支持C#开发

OllamaSharp

用于连接ollama,如其名C#开发

虽然离可玩还有一段距离,但是还是要说一下目前遇到的一些问题

1、最初使用流式语音识别,但录音流发送到server之后,完全识别不到文字,保存为pcm播放发现完全是噪音,最后转换放大了音频可以正确识别到说话内容了
static float gain = 5.0f;
short[] int16Array;
float[] floatArray;
public void Recognize(byte[] bytes)
{//Console.WriteLine("收到音频长度:"+ bytes.Length);int16Array = new short[bytes.Length / 2];Buffer.BlockCopy(bytes, 0, int16Array, 0, bytes.Length);floatArray = new float[int16Array.Length];for (int i = 0; i < int16Array.Length; i++){floatArray[i] = int16Array[i] / 32768.0f * gain;}onlineStream.AcceptWaveform(sampleRate, floatArray);
}
2、流式识别有个问题,我说下一句话的时候才会确定上一句结束,虽然有三个参数可调,但我多次测试,没调好,只好改用离线识别,给esp32s3添加个按键,按下开始发送录音数据,松开停止发送并告知录音结束,server端再开始识别
            //默认值config.Rule1MinTrailingSilence = 2.4f;config.Rule2MinTrailingSilence = 0.5f;//限制最长说话10秒config.Rule3MinUtteranceLength = 10f;
void loop() {webSocket.loop(); // 必须调用以处理WebSocket事件 if(digitalRead(PIN_BUTTON) == LOW){pressed = true;uint8_t buffer[BUFFER_SIZE];size_t bytesRead;// 从I2S读取音频数据i2s_read(I2S_NUM_0, buffer, BUFFER_SIZE, &bytesRead, portMAX_DELAY);// 通过WebSocket发送音频数据if (webSocket.sendBIN(buffer, bytesRead)) {//Serial.printf("Sent %d bytes of audio data\n", bytesRead); } else {//Serial.println("Failed to send audio data");}}else{if(pressed){ pressed = false;if (webSocket.sendTXT("{\"code\":1,\"message\":\"结束语音\"}")) {} else {}}}
}
        private static void OnMessage(IWebSocketConnection connection, string msg){BaseMsg baseMsg = null;try{baseMsg = JsonConvert.DeserializeObject<BaseMsg>(msg);}catch (Exception e){Console.WriteLine(e);}if (baseMsg != null){// 收到code 1时,结束录音开始识别if (baseMsg.code == 1){Asr asr = null;asrs.TryGetValue(connection.GetHashCode(), out asr);if (asr != null){asr.EndReceive();}}}}
3、周围人多声音嘈杂的时候,语音识别开始放飞自我,七八米开外的人声它都收进来…… 用RNNoise.Net处理了一下,也不知道对不对,感觉有点效果……

https://github.com/Yellow-Dog-Man/RNNoise.Net

        /// <summary>/// 识别语音数据/// </summary>short[] int16Array;float[] floatArray;private void Recognize(byte[] bytes){int16Array = new short[bytes.Length / 2];Buffer.BlockCopy(bytes, 0, int16Array, 0, bytes.Length);floatArray = new float[int16Array.Length];for (int i = 0; i < int16Array.Length; i++){floatArray[i] = int16Array[i] / 32768.0f;}// 降噪using (var denoiser = new Denoiser()){int count = denoiser.Denoise(floatArray.AsSpan());Console.WriteLine("denoised count:" + count);}offlineStream = recognizer.CreateStream();offlineStream.AcceptWaveform(sampleRate, floatArray);recognizer.Decode(offlineStream);string result = offlineStream.Result.Text;offlineStream.Dispose();Console.WriteLine("result:" + result);if (!string.IsNullOrWhiteSpace(result)){result = offlinePunctuation.AddPunct(result.ToLower());BaseMsg textMsg = new BaseMsg(1, result);client.Send(JsonConvert.SerializeObject(textMsg));if (llm != null){llm.RequestAsync(result);}}}
4、其他问题,声音卡顿,爆音,音频长了后半段直接爆炸刺啦……

放上最新截图
在这里插入图片描述
按键 G47接GND,按钮还没到货……
在这里插入图片描述
工程地址,持续修改中
https://github.com/xue-fei/homeai

http://www.tj-hxxt.cn/news/90571.html

相关文章:

  • 安丘市住房与城市建设路网站企业网站制作与维护
  • 免费建立自己的网站网站推广服务报价表
  • wordpress获取用户的评论北京seo优化wyhseo
  • wordpress subway恩城seo的网站
  • 专业的营销型网站制作西安seo关键词排名优化
  • 黔东南网站建设gzklyy百度推广公司
  • 网站设计提案爱站长工具综合查询
  • 深圳品牌策划设计百度推广优化
  • 上海广告公司联系方式武汉seo搜索引擎
  • 服务器安全防护措施移动端优化
  • 北京网站开发最专业的公司2345中国最好的网址站
  • 莱芜举报网站建立网站要多少钱一年
  • 济南疫情防控最新通知seo手机端排名软件
  • 网站做的好有什么用网络营销推广系统
  • 网站长尾词排名做不上去衡水网站seo
  • 深圳的网站建设公司电话好的建站网站
  • 网购网站模板seo排名
  • 找兼职工作在家做正规网站长沙网站优化seo
  • 徐州好点的做网站的公司有哪些西安百度公司地址介绍
  • b2c电子商务模式的网站有哪些百度seo 站长工具
  • 网站上传文件惠州seo排名公司
  • 海南茶叶网站建设seo职业培训班
  • 做海淘的网站做海淘的网站免费个人网站建站
  • 杭州公司注册代理中介优搜云seo
  • 重庆住房与城乡建设部网站如何做优化排名
  • 教育发展基金会网站建设关键词查询的分析网站
  • 温州网站建设制作公司厦门百度快速优化排名
  • 西昌有做网站的公司吗搜索竞价
  • 丰台做网站公司商旅平台app下载
  • 中国建设银行官网站哈南分理处男生最喜欢的浏览器推荐