這是 CapsWriter-Offline ,一個 PC 端的語音輸入、字幕轉錄工具。可用實現簡單一鍵將音頻文件轉換成文字的懶人工具。
兩個功能:
1、實時轉換,按下鍵盤上的 大寫鎖定鍵,錄音開始,當松開 大寫鎖定鍵 時,就會識別你的錄音,并將識別結果立刻輸入
2,離線轉換,將音視頻文件拖動到客戶端打開,即可轉錄生成 srt 字幕
特性
完全離線、無限時長、低延遲、高準確率、中英混輸、自動阿拉伯數字、自動調整中英間隔
熱詞功能:可以在 hot-en.txt hot-zh.txt hot-rule.txt 中添加三種熱詞,客戶端動態載入
日記功能:默認每次錄音識別后,識別結果記錄在 年份/月份/日期.md ,錄音文件保存在 年份/月份/assets
關鍵詞日記:識別結果若以關鍵詞開頭,會被記錄在 年份/月份/關鍵詞-日期.md,關鍵詞在 keywords.txt 中定義
轉錄功能:將音視頻文件拖動到客戶端打開,即可轉錄生成 srt 字幕
服務端、客戶端分離,可以服務多臺客戶端
編輯 config.py ,可以配置服務端地址、快捷鍵、錄音開關……
本地離線整合包
請確保電腦上安裝了?Microsoft Visual C++ Redistributable 運行庫
服務端載入模型所用的 onnxruntime 只能在 Windows 10 及以上版本的系統使用
服務端載入模型需要系統內存 4G,只能在 64 位系統上使用
額外打包了 32 位系統可用的客戶端,在 Windows 7 及以上版本的系統可用
官方程序和模型分離開,需要單獨下載模型
我已經把模型和軟件打包好,無需單獨下載模型,下載整合包,解壓即用。
完整整合包下載:AI一鍵音頻轉文字工具 速度超快,支持實時轉換,無需聯網,本地整合包下載
功能:熱詞
如果你有專用名詞需要替換,可以加入熱詞文件。規則文件中以 # 開頭的行以及空行會被忽略,可以用作注釋。
中文熱詞請寫到 hot-zh.txt 文件,每行一個,替換依據為拼音,實測每 1 萬條熱詞約引入 3ms 延遲
英文熱詞請寫到 hot-en.txt 文件,每行一個,替換依據為字母拼寫
自定義規則熱詞請寫到 hot-rule.txt 文件,每行一個,將搜索和替換詞以等號隔開,如 毫安時??=??mAh
你可以在 core_client.py 文件中配置是否匹配中文多音字,是否嚴格匹配拼音聲調。
檢測到修改后,客戶端會動態載入熱詞,效果示例:
例如 hot-zh.txt 有熱詞「我家鴿鴿」,則所有識別結果中的「我家哥哥」都會被替換成「我家鴿鴿」
例如 hot-en.txt 有熱詞「ChatGPT」,則所有識別結果中的「chat gpt」都會被替換成「ChatGPT」
例如 hot-rule.txt 有熱詞「毫安時 = mAh」,則所有識別結果中的「毫安時」都會被替換成「mAh」
功能:日記、關鍵詞
默認每次語音識別結束后,會以年、月為分類,保存錄音文件和識別結果:
錄音文件存放在「年/月/assets」文件夾下
識別結果存放在「年/月/日.md」Markdown 文件中
例如今天是2023年6月5號,示例:
語音輸入任一句話后,錄音就會被保存到 2023/06/assets 路徑下,以時間和識別結果命名,并將識別結果保存到 2023/06/05.md 文件中,方便我日后查閱
例如我在 keywords.txt 中定義了關鍵詞「健康」,用于隨時記錄自己的身體狀況,吃完飯后我可以按住 CapsLock 說「健康今天中午吃了大米炒飯」,由于識別結果以「健康」關鍵詞開頭,這條識別記錄就會被保存到 2023/06/05-健康.md 中
例如我在 keywords.txt 中定義了關鍵詞「重要」,用于隨時記錄突然的靈感,有想法時我就可以按住 CapsLock 說「重要,xx問題可以用xxxx方法解決」,由于識別結果以「重要」關鍵詞開頭,這條識別記錄就會被保存到 2023/06/05-重要.md 中
功能:轉錄文件
在服務端運行后,將音視頻文件拖動到客戶端打開,即可轉錄生成四個同名文件:
json 文件,包含了字級時間戳
txt 文件,包含了分行結果
merge.txt 文件,包含了帶標點的整段結果
srt 文件,字幕文件
如果生成的字幕有微小錯誤,可以在分行的 txt 文件中修改,然后將 txt 文件拖動到客戶端打開,客戶端檢測到輸入的是 txt 文件,就會查到同名的 json 文件,結合 json 文件中的字級時間戳和 txt 文件中修正結果,更新 srt 字幕文件。
修改配置
你可以編輯 config.py ,在開頭部分有注釋,指導你修改服務端、客戶端的:
連接的地址和端口,默認是 127.0.0.1 和 6006
鍵盤快捷鍵
是否要保存錄音文件
要移除識別結果末尾的哪些標點,(如果你想把句尾的問號也刪除掉,可以在這邊加上)