|
|
b5b7930304
|
feat: 完成 ASR 识别核心链路实现
Build Windows GUI / build-windows (push) Has been cancelled
Build Windows GUI / release (push) Has been cancelled
- 适配 ort 2.0.0-rc.12 ONNX Runtime API(Session, Value, Shape)
- 实现 log mel fbank 音频特征提取(预加重→分帧→加窗→FFT→Mel滤波器组→对数)
- 实现 cpal 实时音频捕获模块(支持多采样格式: F32/I16/I32/U16)
- 实现 CTC 贪婪解码器和 Vocabulary 词表管理
- 完成 ASR 推理引擎(特征提取→ONNX推理→结果解码完整管线)
- 更新 Tauri 命令和 CLI 工具接入真实 ASR 引擎
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-06-02 19:41:11 +08:00 |
|
impressionyang
|
6fbcdd6249
|
docs: 更新 README 添加开发者工具打开说明
|
2026-05-22 10:29:16 +08:00 |
|
impressionyang
|
299e26b14e
|
fix: 修复 capabilities 配置的平台名称格式
- 将 macos 改为 macOS (Tauri v2 要求)
- 添加 platforms 字段明确支持的平台
|
2026-05-22 10:21:17 +08:00 |
|
impressionyang
|
146c84f118
|
fix: 增强模型文件选择的错误处理和日志输出
Build Windows GUI / build-windows (push) Has been cancelled
Build Windows GUI / release (push) Has been cancelled
- 在 settingsPage.tsx 中添加详细的 console.log 调试信息
- 改进错误处理,显示具体错误消息
- 更新构建脚本以包含 capabilities 权限配置
|
2026-05-22 09:47:45 +08:00 |
|
impressionyang
|
251ba9928f
|
fix: 添加 Tauri v2 权限配置以支持文件对话框
新增文件:
- capabilities/default.json: Tauri v2 权限配置文件
权限配置:
- core🪟* - 窗口控制权限
- core:webview:* - Webview 权限
- shell:* - Shell 命令权限
- dialog:* - 文件对话框权限(包含 allow-open)
- fs:* - 文件系统权限
修复问题:
- 模型文件选择对话框无法打开
- Tauri v2 默认无权限,需要通过 capabilities 配置
构建结果:
- Linux GUI: dist/impress-asr-linux-x64-20260521_202605.tar.gz (4.8MB)
- 文件对话框现在可以正常打开
|
2026-05-21 20:31:11 +08:00 |
|
impressionyang
|
1a78e4e23f
|
feat: 添加 Linux GUI 版本构建支持
新增文件:
- icons/icon.png: 应用图标(512x512 RGBA PNG 格式)
变更:
- build-linux-package.sh: 更新脚本支持 GUI 版本编译
- 新增 cargo build --release --features gui
- 复制 GUI 程序和图标到 dist 目录
- 更新 README 包含 GUI 运行说明
构建结果:
- CLI: target/release/impress_asr (2.1MB)
- GUI: target/release/impress_asr_gui (9.8MB)
- 打包:dist/impress-asr-linux-x64-20260521_201229.tar.gz (4.7MB)
Linux 运行方式:
- GUI: ./impress_asr_gui
- CLI: ./impress_asr --help
|
2026-05-21 20:17:37 +08:00 |
|
impressionyang
|
87ad8b4576
|
feat: 添加 Linux 构建脚本
新增文件:
- build-linux-package.sh: Linux 编译和打包脚本
构建流程:
1. 清理旧的 dist 目录
2. 构建前端资源 (npm run build)
3. 编译 CLI 程序 (cargo build --release)
4. 复制必要文件 (impress_asr, config.toml, models/, dist/)
5. 打包成 tar.gz
输出文件:
- dist/impress-asr-linux-x64-YYYYMMDD_HHMMSS.tar.gz
- 文件大小:约 814KB
注意:
- 当前环境缺少 GUI 依赖 (libgtk-3, libwebkit2gtk 等)
- GUI 版本需要在有完整依赖的系统上编译
- CLI 版本可正常运行
使用说明:
tar -xzf impress-asr-linux-x64-*.tar.gz
cd impress-asr-linux-x64
./impress_asr --help
|
2026-05-21 19:54:09 +08:00 |
|
impressionyang
|
b03ac2ab0b
|
fix: 修复主题设置和模型文件选择功能
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
后端变更:
- src/app/commands.rs: 导入 Emitter trait
- src/app/commands.rs: set_theme 命令添加 emit 发送 theme-change 事件
- src/app/commands.rs: select_model_file 改进错误处理和消息提示
前端变更:
- web/src/pages/SettingsPage.tsx: 移除模型路径输入框的 onChange (与 readOnly 冲突)
- web/src/pages/SettingsPage.tsx: handleSelectModel 添加用户友好的错误提示
- web/src/pages/SettingsPage.tsx: 移除主题按钮的 emoji 图标
修复问题:
1. 主题设置不生效 - set_theme 命令现在发送 theme-change 事件通知前端
2. 模型文件不能选择 - 移除 onChange 冲突,改进错误处理
构建结果:
- Windows 包:dist/impress-asr-windows-x64-20260521_194309.zip
- 文件大小:5.0MB
|
2026-05-21 19:47:38 +08:00 |
|
impressionyang
|
6f4a7dafd4
|
fix: 添加缺失的波形动画 CSS 样式并优化主题监听器
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
CSS 变更:
- web/src/App.css: 新增 .waveform-animation 和 .wave-bar 样式
- web/src/App.css: 新增 @keyframes wave-animation 动画定义
- web/src/App.css: 新增 .waveform-placeholder 样式
前端变更:
- web/src/App.tsx: 优化主题监听器逻辑,使用 async/await 正确处理 listen 返回值
问题修复:
- 波形动画区域现在正确显示动画效果
- 主题监听器正确设置和清理
- 错误边界组件在发生未预期错误时显示友好提示
构建结果:
- Windows 包:dist/impress-asr-windows-x64-20260521_192207.zip
- 文件大小:5.0MB
|
2026-05-21 19:26:31 +08:00 |
|
impressionyang
|
66f4b7e0c4
|
fix: 增强错误处理,确保异常情况下也能显示页面
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
后端变更:
- src/app/mod.rs: 窗口 hide() 使用 _ 忽略错误,避免 unwrap() panic
前端变更:
- web/src/components/ErrorBoundary.tsx: 新增错误边界组件,捕获未处理的错误
- web/src/main.tsx: 使用 ErrorBoundary 包裹 App 组件
- web/src/App.tsx: 优化主题加载和监听器的错误处理,确保失败时使用默认主题
错误处理能力:
- 即使 Tauri 命令失败,页面也能正常显示
- 未捕获错误会显示友好的错误页面,提供刷新按钮
- 主题加载失败时自动使用 system 主题降级
- 事件监听器清理更安全,避免异步问题
构建结果:
- Windows 包:dist/impress-asr-windows-x64-20260521_190528.zip
- 文件大小:5.0MB
|
2026-05-21 19:10:11 +08:00 |
|
impressionyang
|
f3fe6bafc4
|
fix: 修复 Windows 交叉编译错误
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
修复内容:
- src/app/state.rs: AppState::new() 添加 current_theme 和 allow_exit 字段初始化
- src/app/commands.rs: 修复 FilePath 类型转换,使用 into_path() 方法
- src/app/mod.rs: 导入 Emitter trait 以使用 emit() 方法,修复 unused variable 警告
- src/app/mod.rs: 将主题菜单从 Menu 改为 Submenu 以符合 IsMenuItem trait
- web/src/App.tsx: 修复 invoke 类型错误,使用 as 类型断言
- web/src/pages/SettingsPage.tsx: 修复 invoke 类型错误和 modelPath 类型推断
构建结果:
- Windows 包已生成:dist/impress-asr-windows-x64-20260521_185247.zip
- 文件大小:5.0MB
- 包含 GUI 程序、CLI 工具、manifest 文件和前端资源
|
2026-05-21 18:57:31 +08:00 |
|
impressionyang
|
a4d6353f1a
|
feat: 添加自定义模型路径配置功能
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
后端变更:
- src/app/commands.rs: 新增 select_model_file 命令,使用 Tauri dialog 打开文件选择器
- src/app/mod.rs: 注册 select_model_file 命令到 invoke_handler
前端变更:
- web/src/pages/SettingsPage.tsx:
- 添加 modelPath 字段到 Settings 接口
- 添加 handleSelectModel 函数处理文件选择
- 添加模型路径配置 UI(输入框 + 选择按钮)
- web/src/App.css: 添加.model-path-selector 样式
功能说明:
- 用户可通过托盘菜单或设置页面选择自定义 ONNX 模型文件
- 支持 .onnx 扩展名过滤
- 模型路径保存在配置中,可选功能,留空时使用内置模型
- 设置保存后应用到 ASR 引擎
|
2026-05-21 18:45:08 +08:00 |
|
impressionyang
|
7ad06cc54a
|
feat: 完善托盘功能、完全退出和主题切换
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
托盘功能:
- 添加主题子菜单(浅色/深色/跟随系统)
- 添加完全退出菜单项
- 托盘图标使用应用默认图标
完全退出功能:
- 新增 AppState.allow_exit 状态控制
- 点击'完全退出'时允许应用真正退出
- 关闭窗口隐藏到托盘的默认行为
主题切换功能:
- 后端:添加 AppTheme 枚举和 set_theme/get_theme 命令
- 前端:实现主题切换逻辑,支持浅色/深色/跟随系统
- 前端:添加主题选择器 UI 组件和样式
- 通过 CSS 变量实现深色/浅色主题切换
- 支持 Tauri 事件监听实现后端主题同步
修改文件:
- src/app/state.rs: 添加 AppTheme 枚举和状态管理
- src/app/mod.rs: 完善托盘菜单和退出逻辑
- src/app/commands.rs: 添加主题相关 Tauri 命令
- web/src/App.tsx: 实现主题切换逻辑
- web/src/App.css: 添加主题 CSS 变量和选择器样式
- web/src/pages/SettingsPage.tsx: 添加主题选择器 UI
|
2026-05-21 18:07:38 +08:00 |
|
impressionyang
|
ceb2df18c4
|
初始提交:Windows 跨平台语音识别应用
Build Windows GUI / build-windows (push) Waiting to run
Build Windows GUI / release (push) Blocked by required conditions
功能:
- Tauri v2 GUI 应用
- 系统托盘支持
- 日志输出到文件
- 带时间戳的版本号
- 前端资源嵌入
修复:
- 前端路径使用相对路径
- 移除 devUrl 配置
- 窗口置顶设置
|
2026-05-21 17:58:18 +08:00 |
|