EG/plugins/user/voice_control
2025-12-12 16:16:15 +08:00
..
audio 编译修复 2025-12-12 16:16:15 +08:00
commands 编译修复 2025-12-12 16:16:15 +08:00
config 编译修复 2025-12-12 16:16:15 +08:00
core 编译修复 2025-12-12 16:16:15 +08:00
editor 编译修复 2025-12-12 16:16:15 +08:00
events 编译修复 2025-12-12 16:16:15 +08:00
nlp 编译修复 2025-12-12 16:16:15 +08:00
recognition 编译修复 2025-12-12 16:16:15 +08:00
synthesis 编译修复 2025-12-12 16:16:15 +08:00
utils 编译修复 2025-12-12 16:16:15 +08:00
plugin.py 编译修复 2025-12-12 16:16:15 +08:00
README.md 编译修复 2025-12-12 16:16:15 +08:00

语音控制插件

简介

语音控制插件为EG引擎提供完整的语音识别和语音合成功能支持自然语言处理、命令映射、音频设备管理等。该插件能够识别用户的语音指令并执行相应的操作同时可以通过语音合成提供反馈。

功能特性

1. 语音识别

  • 实时语音识别功能
  • 唤醒词检测(如"小艾"
  • 连续语音识别支持
  • 音频级别检测和静音检测
  • 多语言支持(中文、英文等)

2. 语音合成

  • 文字转语音功能
  • 多种语音选择(男声、女声、童声等)
  • 语速、音量、音调调节
  • SSML标记语言支持
  • 实时音频播放

3. 命令处理

  • 语音命令映射系统
  • 模糊匹配和精确匹配
  • 上下文感知命令处理
  • 命令链支持
  • 命令确认机制

4. 自然语言处理

  • 意图识别
  • 实体提取
  • 情感分析
  • 上下文管理
  • 多语言支持

5. 音频管理

  • 音频输入/输出设备管理
  • 音频流控制
  • 回声消除
  • 噪声抑制
  • 自动增益控制

6. 事件系统

  • 事件队列管理
  • 异步事件处理
  • 事件过滤和去重
  • 事件监听器系统

7. 配置管理

  • 完整的配置管理系统
  • 配置文件读写
  • 配置备份和恢复
  • 配置验证
  • 实时配置更新

8. 编辑器支持

  • 可视化配置界面
  • 实时监控面板
  • 语音测试工具
  • 性能统计显示
  • 综合测试功能

目录结构

voice_control/
├── plugin.py                 # 插件主文件
├── core/
│   └── voice_manager.py     # 语音管理器
├── recognition/
│   └── speech_recognizer.py # 语音识别器
├── synthesis/
│   └── speech_synthesizer.py# 语音合成器
├── commands/
│   └── command_processor.py # 命令处理器
├── audio/
│   └── audio_manager.py     # 音频管理器
├── events/
│   └── event_handler.py     # 事件处理器
├── nlp/
│   └── nlp_processor.py     # 自然语言处理器
├── config/
│   └── config_manager.py    # 配置管理器
├── editor/
│   └── voice_editor.py      # 语音编辑器
├── utils/
│   └── voice_utils.py       # 工具类
└── README.md               # 说明文档

核心模块

语音管理器 (VoiceManager)

负责管理语音识别和合成的核心功能,协调各子模块工作。

语音识别器 (SpeechRecognizer)

实现语音识别功能,处理音频输入和语音转文字。

语音合成器 (SpeechSynthesizer)

实现文字转语音功能,处理语音输出和音频播放。

命令处理器 (CommandProcessor)

处理识别到的语音命令,执行相应的操作。

音频管理器 (AudioManager)

管理音频输入输出设备,控制音频流。

事件处理器 (VoiceEventHandler)

处理语音控制相关的事件,提供事件队列和异步处理。

自然语言处理器 (NLPProcessor)

提供自然语言处理功能,包括意图识别和实体提取。

配置管理器 (VoiceConfigManager)

管理插件配置,提供配置读写和验证功能。

语音编辑器 (VoiceEditor)

提供可视化界面用于配置和测试语音控制功能。

工具类 (VoiceUtils)

提供实用工具函数,包括性能监控、日志记录、数据转换等。

使用示例

# 初始化插件
plugin = VoiceControlPlugin(engine)
plugin.initialize()
plugin.enable()

# 开始语音识别
plugin.voice_manager.start_listening()

# 语音合成
plugin.voice_manager.speak_text("你好,欢迎使用语音控制系统")

# 处理命令
plugin.command_processor.process_command("前进", 0.95)

# 更新配置
plugin.config_manager.set_config("general", "language", "zh-CN")

API参考

详细的API文档请参考各模块的源代码注释。

配置说明

插件配置文件位于 config/voice_config.json,支持以下配置项:

  • 通用设置:启用状态、语言、唤醒词等
  • 识别设置:语言、采样率、灵敏度等
  • 合成设置:语音、语速、音量等
  • 命令设置:模糊匹配、上下文超时等
  • 音频设置:设备、回声消除、噪声抑制等
  • NLP设置语言、意图识别阈值等
  • 事件设置:队列大小、事件过滤等

支持的设备

  • 系统默认麦克风和扬声器
  • USB音频设备
  • 蓝牙音频设备
  • 专业音频接口

性能优化

  • 多线程处理避免阻塞主线程
  • 智能音频级别检测减少CPU占用
  • 缓存机制提高处理速度
  • 异步事件处理提高响应性

扩展开发

插件采用模块化设计,易于扩展新功能:

  1. 添加新的命令类型
  2. 支持新的语言和方言
  3. 扩展自然语言处理能力
  4. 添加新的音频处理效果

许可证

本插件遵循EG引擎许可证协议。

支持与反馈

如有问题或建议请联系开发团队或提交GitHub issue。