有趣的GitHub
# 工具箱-IT
# 开源的在线工具箱程序
- RuanCang (opens new window):专业软件免费下载。
官网:https://ruancang.net/
ToolsIT Tools 地址1:https://github.com/CorentinTh/it-tools 地址2:https://it-tools.tech/
傲星工具箱 地址1:https://github.com/aoaostar/toolbox 地址2:https://tool.aoaostar.com/
ITDOG 地址:https://www.itdog.cn/
# 文件传输工具
闪电藤 (https://lightningvine.zishu.life/)
局域网文件传输工具,基于 LocalSend 开发,无需联网,不限文件大小,不限设备数量,免登陆,全平台支持。
性能监控、测试等:
- 图吧:https://www.tbtool.cn/ (opens new window)
- 游戏加加:https://gamepp.com/download.html
# CapsWriter-Offline 电脑端离线语音输入工具
更新了 CapsWriter-Offline ,加入了无限时长的语音输入、文件字幕转录功能。2024年1月10日
运行后,只要按下键盘上的 大写锁定键,就会开始录音,当你松开 大写锁定键 时,就会识别你的录音,并将识别结果立刻输入。
1. 闪退怎么办:首先,确保电脑安装了C++运行时库;其次,确保电脑设置 隐私 麦克风 允许桌面应用访问你的麦克风
2. 游戏里用不了:首先,确保以管理员身份启动;其次,可以尝试把 config.py 中的 paste = True 改为 paste = False
3. 转字幕不成功:可以尝试到 Github 更新 util/srt_from_txt.py 文件
4. 老旧电脑运行太慢:尝试把 config.py 中的 num_threads = 6 改为 num_threads = 1 或 num_threads = 2
5. 关于内存占用:Windows 服务端启动后,常驻内存部分约为 300MB
6. 识别结果总是「对,嗯,没有」:检查麦克风是否正常
7. 按键没反应:杀软阻止了,检查杀软,尤其是 360
8. 能不能自启动:在资源管理器地址栏中输入 shell:start 回车,将快捷方式放进去
9. 能不能隐藏前台:不能。但你可以把它放到一个虚拟桌面里,这样也不碍眼
10. 能不能支持中英以外的其它语言:两年内无望
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 更多
Windows 隐藏黑窗口启动,见 #49,将下述内容保存为 vbs 运行:
CreateObject("Wscript.Shell").Run "start_server.exe",0,True CreateObject("Wscript.Shell").Run "start_client.exe",0,True
- 不保存录音
- 多音字
config.py
from collections.abc import Iterable
from pathlib import Path
# 服务端配置
class ServerConfig:
addr = '0.0.0.0'
port = '6016'
format_num = True # 输出时是否将中文数字转为阿拉伯数字
format_punc = True # 输出时是否启用标点符号引擎
format_spell = True # 输出时是否调整中英之间的空格
# 客户端配置
class ClientConfig:
addr = '127.0.0.1' # Server 地址
port = '6016' # Server 端口
shortcut = 'caps lock' # 控制录音的快捷键,默认是 CapsLock
hold_mode = True # 长按模式,按下录音,松开停止,像对讲机一样用。
# 改为 False,则关闭长按模式,也就是单击模式
# 即:单击录音,再次单击停止
# 且:长按会执行原本的单击功能
suppress = False # 是否阻塞按键事件(让其它程序收不到这个按键消息)
restore_key = True # 录音完成,松开按键后,是否自动再按一遍,以恢复 CapsLock 或 Shift 等按键之前的状态
threshold = 0.2 # 按下快捷键后,触发语音识别的时间阈值
paste = True # 是否以写入剪切板然后模拟 Ctrl-V 粘贴的方式输出结果
restore_clip = True # 模拟粘贴后是否恢复剪贴板
save_audio = False # 是否保存录音文件
audio_name_len = 20 # 将录音识别结果的前多少个字存储到录音文件名中,建议不要超过200
trash_punc = ',。,.' # 识别结果要消除的末尾标点
hot_zh = True # 是否启用中文热词替换,中文热词存储在 hot_zh.txt 文件里
多音字 = True # True 表示多音字匹配
声调 = True # False 表示忽略声调区别,这样「黄章」就能匹配「慌张」
hot_en = True # 是否启用英文热词替换,英文热词存储在 hot_en.txt 文件里
hot_rule = True # 是否启用自定义规则替换,自定义规则存储在 hot_rule.txt 文件里
hot_kwd = True # 是否启用关键词日记功能,自定义关键词存储在 keyword.txt 文件里
mic_seg_duration = 15 # 麦克风听写时分段长度:15秒
mic_seg_overlap = 2 # 麦克风听写时分段重叠:2秒
file_seg_duration = 25 # 转录文件时分段长度
file_seg_overlap = 2 # 转录文件时分段重叠
class ModelPaths:
model_dir = Path() / 'models'
paraformer_path = Path() / 'models' / 'paraformer-offline-zh' / 'model.int8.onnx'
tokens_path = Path() / 'models' / 'paraformer-offline-zh' / 'tokens.txt'
punc_model_dir = Path() / 'models' / 'punc_ct-transformer_cn-en'
class ParaformerArgs:
paraformer = f'{ModelPaths.paraformer_path}'
tokens = f'{ModelPaths.tokens_path}'
num_threads = 6
sample_rate = 16000
feature_dim = 80
decoding_method = 'greedy_search'
debug = False
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
完善页面 (opens new window)