Repository navigation
JustSpeak v0.1.0
JustSpeak 的首个公开预览版本现已发布。
这是一个面向 Windows 的开源桌面语音转文字客户端,支持麦克风实时录音、音视频文件转写、LLM 文本清晰与定向修复,并将录音、任务和历史文稿保存在本机。云端请求直接发送至用户自行配置的阿里云百炼账号。
✨ 版本亮点
全新的五页面工作台
- 主页:集中展示累计输入字数、录音与文件时长、活跃天数、峰值日期、最近七天使用情况、Token 和预估费用。
- 实时录音:边说边转写,显示录音时长、音量和实时文字。
- 文件转写:导入音频或视频、选择音轨、提取 WAV,并按顺序完成长文件转写。
- 历史记录:查看、编辑、复制、导出、继续或删除历史任务。
- 设置:统一管理云端模型、本机处理、Prompt、快捷键和场景配置。
实时录音与暂停续录
- 支持开始、暂停、继续和停止录音。
- 暂停时保留当前录音和文字,继续后自动建立新的流式 API 连接。
- 默认使用
Space开始或暂停,使用S停止并完成。 - 快捷键只在实时录音页生效,可在设置中改绑或停用。
- 录音持续写入本地磁盘,云端故障时尽量保留已有音频与结果。
三阶段文本处理流水线
一次实时录音会保留以下三个阶段:
- 实时录音
- 文本清晰
- 定向修复
录音停止后,可选的大语言模型会清理口水词、无意义重复和断裂表达,再根据用户设置的 Prompt 完成定向修复。三个阶段均可点击回看并写入历史记录。LLM Model ID 留空时会跳过文本处理。
长文件转写
- 支持 MP3、WAV、M4A、FLAC、MP4、MKV、MOV、WebM 等 FFmpeg 可解码格式。
- 自动转换为 16 kHz、单声道、16-bit PCM WAV。
- 切片时长可设置为 1~10 分钟。
- 相邻切片固定重叠 10 秒,降低切点附近丢字风险。
- 支持定向转写 Prompt,为每个片段注入人名、术语和产品名等上下文。
- 支持暂停、继续、取消和重启后的断点恢复。
- 可以只提取媒体音轨并保存为 WAV。
历史记录与累计统计
- 历史记录默认保留最近 50 条,可调整为 10~600 条。
- 超出上限后自动清理最旧记录及对应任务目录。
- 删除历史记录不会减少主页已经累计的字数、时长、Token 和费用统计。
- 过长文件名会在列表中省略,并在文稿详情中完整显示。
- 时间统一转换为北京时间展示。
配置与使用体验
- 支持自定义 API Key、Base URL、Workspace ID、ASR Model ID 和 LLM Model ID。
- 支持中文、英文和自动识别。
- 支持保存、应用和删除模型场景。
- 设置修改后自动保存,并在底部状态栏反馈结果。
- 下拉框和数字输入框已禁用滚轮切换,减少页面滚动时误操作。
- 重写 Windows 标题栏,使最小化、最大化和关闭按钮与应用主题一致。
- 重新设计紧凑界面,适合小尺寸窗口使用。
🔐 本地数据与隐私
- API Key 可仅在当前会话使用,也可保存到 Windows 凭据管理器。
- API Key 不写入 SQLite、普通配置文件、日志或导出文稿。
- 录音、媒体切片、任务数据库和转写结果保存在用户指定的数据目录。
- 日志不会记录完整请求头或音频 Base64。
- 原始导入媒体不会被修改或自动删除。
- 项目没有自建音频中转服务。
📦 下载与安装
下载 Release 附件中的:
JustSpeak-portable-0.1.0.zip
完整解压后运行:
JustSpeak.exe
请保留 JustSpeak.exe 同目录下的 _internal 文件夹。便携包已经包含 Python 运行环境、应用依赖、FFmpeg 和 ffprobe。
首次运行时,未签名版本可能触发 Windows SmartScreen。确认文件来源后,可选择“更多信息 → 仍要运行”。
⚙️ 首次配置
打开“设置”,至少填写:
- 百炼 API Key
- ASR Model ID
- 与模型一致的地域
使用业务空间专属模型时,还需要填写 Workspace ID 或完整 Base URL。需要文本清晰和定向修复时,再填写 LLM Model ID 与定向修复 Prompt。
模型、地域、Workspace 和 API Key 权限需要保持匹配。修改设置后请新建任务;已经创建的历史任务会继续使用当时保存的配置快照。
🧪 验证情况
- 52 项自动化测试通过。
- Python 源码语法检查通过。
- PyInstaller Windows 便携包构建通过。
- 隔离配置下的无控制台启动测试通过。
- 内置 FFmpeg 与 ffprobe 路径查找测试通过。
- 自动化测试覆盖配置迁移、重叠切片、流式重采样、任务恢复、历史保留、累计统计、LLM 超时与快捷键。
⚠️ 已知限制
- 当前仅支持 Windows 和阿里云百炼。
- 暂不支持系统声音采集、说话人分离、翻译、SRT 字幕编辑和全局输入法注入。
- 文件暂停会在当前片段完成后生效。
- 部分账号、Workspace 或流式模型组合在文件提交时可能返回
NO_INPUT_AUDIO_ERROR。相关任务音频会继续保留;遇到此错误时请核对模型权限、地域、接口地址和音频内容。该兼容性仍需更多真实账号与媒体样本验证。 - 云端识别速度、准确率、模型可用性和实际费用由用户账号、网络及云服务策略决定。
- 远端超时后的重试可能产生额外调用费用。
- 当前发布包未进行商业代码签名。
🙏 反馈
如果遇到问题,请在 GitHub Issues 中提供以下信息:
- Windows 版本
- JustSpeak 版本
- ASR/LLM Model ID 与地域,请勿提交 API Key
- 操作类型:实时录音或文件转写
- 错误提示与
%LOCALAPPDATA%\JustSpeak\logs中对应时间附近的日志 - 可复现步骤
感谢试用 JustSpeak。欢迎提交 Issue、改进建议和 Pull Request。