Releases: H1DDENADM1N/CapsWriter-Offline
修复 无法识别韩文
FixBug
- Fix 无法识别韩文
改用
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
和subprocess.Popen(..., encoding="utf-8",)
指定utf-8编码,而不再使用原来的
.encode("gbk", errors="ignore").decode("gbk", errors="ignore")
转码gbk并忽略错误。补充:在处理multiprocessing时指定utf-8编码会报错但不显示报错,所以需要:
original_stdout = sys.stdout try: # 为 core_server 指定utf-8编码 sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8") except AttributeError: # 为 mulitprocessing init_recognizer 指定默认编码 sys.stdout = original_stdout
下载链接 | 提取码 | 内容 |
---|---|---|
123盘 | h8vb | 💻程序 🧠模型 😵历史版本 |
百度盘 | fny8 | 💻程序 |
百度盘 | 85cd | 🧠模型 |
程序 CapsWriter-Offline-GUI-v2.0.2.7z
#️⃣ SHA-1
04413828641efc6cc9dc20cd9e181c20d9d55e34
模型 models_for_CapsWriter-Offline-GUI.7z
#️⃣ SHA-1
8475117C5B77919EA7FDCFF698E0568BFF548CD3
修复 转录文件失败 和 SenseVoice转录字幕丢字
FixBug
- Fix 转录文件时提示找不到 config.toml
- Fix SenseVoice转录字幕丢字
原因为SenseVoice生成的逐字json包含标点,而原版转录只去除了txt中的标点,导致时间戳对不上,出现字幕匹配出现出现严重错误,越界导致无法探察。
现在改为不去除标点,生成的字幕会包含标点,我不认为这是坏事。
下载链接 | 提取码 | 内容 |
---|---|---|
123盘 | h8vb | 💻程序 🧠模型 😵历史版本 |
百度盘 | gxxt | 💻程序 |
百度盘 | 85cd | 🧠模型 |
程序 CapsWriter-Offline-GUI-v2.0.2.7z
#️⃣ SHA-1
ee323f09f3d9ec4b428782341dc28a82e33834e6
模型 models_for_CapsWriter-Offline-GUI.7z
#️⃣ SHA-1
8475117C5B77919EA7FDCFF698E0568BFF548CD3
修复 反复连接成功连接断开 和 暂停音乐播放异常
FixBug
- Fix #61莫名的错误断开了,点了重新启动,但是……反复断连
按下录音键但没有说话会识别成 그 无法被gbk解码,导致服务端和客户端gui全部崩溃,仅重启客户端会造成不停连接成功连接断开死循环
- Fix #76 为什么我按下capslock再放开后 网页暂停中的视频或者spotify客户端 会播放声音呢
改用峰值电平判断哪个进程正在播放音频
下载链接 | 提取码 | 内容 |
---|---|---|
123盘 | h8vb | 💻程序 🧠模型 😵历史版本 |
百度盘 | nmda | 💻程序 |
百度盘 | 85cd | 🧠模型 |
程序 CapsWriter-Offline-GUI-v2.0.1.7z
#️⃣ SHA-1
c3881f5196a5d826fee63760169e6ab9e2589366
模型 models_for_CapsWriter-Offline-GUI.7z
#️⃣ SHA-1
8475117C5B77919EA7FDCFF698E0568BFF548CD3
新增 图形化配置界面 `edit_config_gui.exe`
FixBug
- 延长在线翻译超时时间 Update client_translate_online.py
新增功能
- 新增 可选项 开始和结束任务时播放提示音
可设置是否启用,以及音频文件路径和音量。
内置的 start.mp3 和 stop.mp3 音频文件来自 https://pixabay.com/
下载链接 | 提取码 | 内容 |
---|---|---|
123盘 | h8vb | 💻程序 🧠模型 😵历史版本 |
百度盘 | sdob | 💻程序 |
百度盘 | 85cd | 🧠模型 |
程序 CapsWriter-Offline-GUI-v2.0.0.7z
#️⃣ SHA-1
4d176c5814e23b088a7ce3006167b824851a6db0
模型 models_for_CapsWriter-Offline-GUI.7z
#️⃣ SHA-1
8475117C5B77919EA7FDCFF698E0568BFF548CD3
转眼间一年就过去了,目前图形化界面包分支已基本完善,欢迎体验
相较于原版的年度累计变化总结:
1. 图形界面(GUI)
- 新增图形化界面:基于
PySide6
和Qt-Material
实现了服务端和客户端的图形化界面,提升了用户体验。 - 透明窗口与极简设计:客户端界面透明,支持字体大小调整、窗口贴边自动隐藏、无任务栏图标等特性。
- 托盘图标与右键菜单:支持最小化到系统托盘,并提供丰富的右键菜单功能,如启动/停止服务、打开配置界面等。
2. 功能增强
- 离线与在线翻译:
- 新增离线翻译功能,支持将中文翻译为英文,快捷键为
Left Shift + CapsLock
。 - 新增在线翻译功能,基于
DeepLX
支持多国语言翻译,默认翻译为日文,快捷键为Right Shift + CapsLock
。
- 新增离线翻译功能,支持将中文翻译为英文,快捷键为
- 云剪贴板:支持将文本上传至云剪贴板,生成链接和二维码,方便分享。
- Everything 搜索:支持使用
Everything
搜索光标选中的文字,快捷键为Ctrl + Alt + F
。 - 简繁体切换:支持双击
CapsLock
临时切换简繁体输出,可通过配置设置默认输出语言。 - 输入状态提示:新增输入状态提示功能,支持在光标位置或鼠标位置显示“语音输入中”提示,提升用户交互体验。
- 任务提示音:支持在任务开始和结束时播放提示音,提升操作反馈。
3. 配置灵活性
- 图形化配置界面:新增
edit_config_gui.exe
,提供图形化配置界面,方便用户修改服务端和客户端的配置。 - 配置文件优化:使用
config.toml
文件进行配置,支持更多自定义选项,如快捷键、录音开关、翻译目标语言等。 - 热词与关键词功能:支持动态载入热词和关键词,提升识别准确性和个性化体验。
4. 模型与性能优化
- 多模型支持:新增
SenseVoice
模型,支持中、粤、英、日、韩多语种识别,同时保留Paraformer
模型,用户可根据需求选择。 - 模型路径配置:支持自定义模型路径,方便用户管理和更新模型。
- 性能优化:优化了录音和转录的分段长度与重叠时间,提升了识别效率和准确性。
5. 系统兼容性与易用性
- 管理员权限支持:支持以管理员权限运行客户端,解决某些程序无法输入识别结果的问题。
- 自启动与隐藏窗口:支持开机自启动,并可配置启动后自动缩小至托盘,提升使用便捷性。
6. 其他改进
- 阿拉伯数字年份转换:支持将中文年份转换为阿拉伯数字,提升识别结果的规范性。
- 录音与音频处理优化:支持录音时静音或暂停其他音频播放,避免干扰,提升录音质量。
- 多开限制:支持禁止多开,避免资源冲突。
修复 转录字幕长音视频闪退崩溃 和 文件名中包含&符号无法读取
FixBug
- Fix 转录字幕长音视频闪退崩溃
缺点特性:转录文件的时候语音输入会被阻塞,要先转录完文件才会继续语音输入 - Fix 文件名中包含&符号时文件名被截断,导致无法读取到文件
❗模型较少改动,从此版本起,模型与程序分别压缩打包。
下载链接 | 提取码 | 内容 |
---|---|---|
123盘 | h8vb | 💻程序 🧠模型 😵历史版本 |
百度盘 | qh4g | 💻程序 |
百度盘 | 85cd | 🧠模型 |
程序 CapsWriter-Offline-GUI-v1.4.1.7z
#️⃣ SHA-1
C02A9205EC1CEBABEA48EAF4A8A7202D76F79500
模型 models_for_CapsWriter-Offline-GUI.7z
#️⃣ SHA-1
8475117C5B77919EA7FDCFF698E0568BFF548CD3
新增 可选 切换模型 Sensevoice 或 Paraformer
新增功能
- 新增 可选项 切换模型 'Sensevoice' 或 'Paraformer'
Sensevoice模型虽然多了粤英日韩多语种,但是,中文识别效果大不如Paraformer模型
比如转录字幕不完整,识别结果不准确、丢失标点等
如果你只说中文普通话,建议使用 'Paraformer' 模型
不影响简繁转换和翻译
FixBug
- 无
❗此打包默认选用 Paraformer
模型,如果你需要粤英日韩多语种语音输入,可在 config.py
进行切换,修改后需重启服务端
❗因同时包含了 Sensevoice
和 Paraformer
的模型文件,此7z打包体积已近 2.7GB
,但运行时只加载选择的一模型,内存占用不会增加
- 123盘 https://www.123pan.com/s/qBxUVv-H4Zq3.html 提取码:h8vb
SHA-1 11A97A8E2A0E227A2E252E0D10720A6ACBA7C46F
新增 可选 是否启用离在线翻译和状态提示 和 通过注册表/按键判断是否语音输入中等
新增功能
-
重写hint_while_recording.exe,实现更加精准的输入光标位置提示 @JoanthanWu
不再是监测按键的伪状态,而是由Python(win32gui.PostMessage)将语音输入状态传递给AHK(hwnd)
-
新增 可选项 是否启用离在线翻译和状态提示
start_online_translate_server = True # 启用在线翻译服务
start_offline_translate_server = True # 启用离线翻译服务use_offline_translate_function = True # 启用离线翻译相关快捷键
use_online_translate_function = True # 启用在线翻译相关快捷键hint_while_recording_at_edit_position_powered_by_ahk = True # 是否启用 基于AHK的 输入光标位置的输入状态提示功能
-
新增 可选项 通过注册表/按键判断是否语音输入中
check_microphone_usage_by = "注册表" # "按键" 或 ”注册表“
FixBug
- 123盘 https://www.123pan.com/s/qBxUVv-H4Zq3.html 提取码:h8vb
- 百度盘 https://pan.baidu.com/s/1OW6ACSs4xrdD_IoShrjKsg?pwd=9tqs 提取码: 9tqs
SHA-1 003EE3140116481782F68E4FD3363923E16131E3
新增 客户端托盘菜单重启客户端 和 修复 英文数字空格错乱 等
新增功能
- 新增 可以通过客户端托盘图标右键菜单更便捷地重启客户端
修改config.py和hint_while_recording.ini配置后需要重启客户端使修改生效
- 更新
deeplx_windows_amd64.exe
和ffmpeg.exe
FixBug
- Fix 英文单词内部和一连串的数字内部。 都会被空格拆分 #43
当我说英文时, 某些单词上会被空格拆分;
当我说数字时,数字之间又存在空格。
如下所示,这个可以解决吗?
H ello,where are you.
Be au ti ful country.
2 0 2 4 年真不错。 - Fix 模型变量命名未从paraformer更新到sensevoice
- 123盘 https://www.123pan.com/s/qBxUVv-H4Zq3.html 提取码:h8vb
- 百度盘 https://pan.baidu.com/s/1AUgNg546XCmovUsiF0X1GQ 提取码: rycj
- telegram盘 https://t.me/WangPanBOT?start=file86cc2e9e4d976d2a
SHA-1 6F38B7D9135482686704FFB6C4C1DEDB68E4C034
新增 save_markdown 可选项、双击临时转换简繁、禁用语音输入提示程序清单等
新增功能
-
原版 save_audio = False 时,会直接不写md记录。现在将逻辑分开控制
通过
config.py
中save_markdown
设置是否将记录写入 md 文件 -
快速双击
CapsLock
,可语音输入繁体。长按CapsLock
实现按键原有功能切换大写锁定默认启用双击
录音键
临时转换简/繁
体中文输出的功能,通过config.py
中enable_double_click_opposite_state
配置默认使用简体中文作为主要输出,快速双击输出繁体中文。设置
config.py
中convert_to_traditional_chinese_main = '繁'
可以默认使用繁体中文,双击输出简体中文 -
新增 可通过 hint_while_recording.ini 配置 hintAtCursorPositionList 和 doNotShowHintList
在hintAtCursorPositionList中的程序将不会把“语音输入中”的提示显示在文本光标位置,而是显示在鼠标光标的位置
在doNotShowHintList中的程序将不会显示“语音输入中”的提示
exe之间使用英文冒号分隔
输入状态指示位置错乱如何解决?
1. 通过 `config.py` 中 `hint_while_recording_at_cursor_position` 配置禁用跟随鼠标光标位置的麦克风形状的输入状态提示; 2. 通过重命名或删除 `hint_while_recording.exe` 完全不启用输入光标位置的“✦语音输入中‧‧‧”文字状态提示 3. 通过 `hint_while_recording.ini` 中 `hintAtCursorPositionList` 配置将部分程序的输入光标位置的“✦语音输入中‧‧‧”文字状态提示显示到鼠标光标位置 4. 通过 `hint_while_recording.ini` 中 `doNotShowHintList` 配置禁用部分程序的输入光标位置的“✦语音输入中‧‧‧”文字状态提示 5. 欢迎将位置错乱的exe程序名反馈给我
FixBug
- 123盘 https://www.123pan.com/s/qBxUVv-H4Zq3.html 提取码:h8vb
- 百度盘 https://pan.baidu.com/s/1LSk4ya2-QuhCO1l2h9hNFA?pwd=mx44 mx44
- telegram盘 https://t.me/WangPanBOT?start=file06f9b19aa6c572bf
SHA-1 005D0C392240E881E113DE213F99759789B13267
新增 可选 简繁体转换 和 更美观的语音输入中提示
新增功能
- 提供了另一种显示方式(使用BeautifulToolTip库)&还有一些优化 (@JoanthanWu) Merge pull request #44 from JoanthanWu/dev_jona
簡繁體轉換測試
FixBug
- 123盘 https://www.123pan.com/s/qBxUVv-H4Zq3.html 提取码:h8vb
- 百度盘 https://pan.baidu.com/s/1EdewrpwOAORVhJGQi9fNkg?pwd=61zb 提取码:61zb
- Telegram盘 https://t.me/WangPanBOT?start=filebcedb9f772754f21
SHA-1 A190B3B69AC1C73B8C57D91EB3D280F7B91197F2