> 技术文档 > 我的第一个开源项目 -- 实时语音识别工具

我的第一个开源项目 -- 实时语音识别工具

这是我的第一个开源项目,是我一直想做的一个小工具:

端到端实时语音转文字系统。

通过小程序和H5页面,用户可以实时采录音频,通过ws上传到java的netty server。

Java在经过权限验证、流量控制等操作之后,通过gRPC流式发送给python服务。

python项目通过开源的 speech_paraformer 模型实时识别文字结果,然后发送给java,java 发给客户端实时展示。

系统架构

1. 前端采集层(开发中)

  • ​小程序/H5页面​​:提供用户友好的录音界面
  • ​实时音频采集​​:使用Web Audio API实现高质量音频捕获
  • ​WebSocket传输​​:建立低延迟的双向通信通道

2. Java中间层(初版)

  • ​Netty服务器​​:处理高并发的WebSocket连接
  • ​安全验证​​:实现基于JWT的权限控制
  • ​流量管理​​:采用令牌桶算法进行请求限流
  • ​gRPC网关​​:与Python服务进行高效通信

3. Python识别层(初版)

  • ​speech_paraformer模型​​:使用这个开源的语音识别模型进行实时转写
  • ​流式处理​​:支持边录音边识别的实时模式
  • ​结果优化​​:对识别结果进行后处理,提高准确率

技术亮点

  1. ​全流程实时处理​​:从录音到文字展示,延迟目标控制在毫秒级
  2. ​高性能架构​​:Netty+gRPC的组合确保系统的高吞吐量
  3. ​开源模型集成​​:使用speech_paraformer提供高质量的识别效果
  4. ​完善的权限控制​​:从客户端到服务端的多层安全验证

应用场景

这个系统可广泛应用于:

  • 在线会议实时字幕
  • 语音笔记自动转写
  • 直播场景的字幕生成
  • 语音交互应用的开发基础

开源计划

我已经将项目完整代码开源在GitHub上

h5:

TBD

mini program

TBD

    java 项目地址:https://github.com/TongDaxia/realtime_voice_to_text

    python 项目地址:https://github.com/TongDaxia/realtime_voice_to_text_engine

    欢迎大家:

    • 试用并提出改进建议
    • 参与代码贡献
    • 基于此项目进行二次开发