STT: 离线语音识别转文字工具
STT是一款功能强大的离线语音识别转文字工具,基于fast-whisper开源模型开发。它可以将视频或音频中的人类语音准确识别并转换为文字,支持多种输出格式,包括JSON、SRT字幕和纯文本。作为一个本地化解决方案,STT可以替代OpenAI等云端语音识别API,为用户提供更加灵活和隐私的选择。
主要特点
-
离线运行:STT完全在本地运行,无需联网,保护用户隐私。
-
多模型支持:内置base模型,同时支持small、medium和large-v3等多种模型,用户可根据需求选择。
-
多语言支持:支持中文、英语、法语、德语、日语等多种语言的识别。
-
多种输出格式:可输出JSON格式、SRT字幕(带时间戳)和纯文本格式。
-
高准确率:识别准确率基本等同于OpenAI官方API。
-
CUDA加速:支持NVIDIA GPU加速,提高处理速度。
-
API接口:提供API接口,方便集成到其他应用中。
使用方法
STT提供了预编译的Windows版本,用户可以直接下载使用。对于Linux和Mac用户,也可以通过源码部署。使用步骤如下:
-
下载并解压预编译文件或克隆源码。
-
双击start.exe启动程序(Windows预编译版)或执行
python start.py
(源码版)。 -
在打开的浏览器界面中上传音频或视频文件。
-
选择识别语言、输出格式和使用的模型。
-
点击"立即开始识别",等待识别完成。
-
识别结果将显示在底部文本框中。
API接口
STT还提供了API接口,方便开发者集成到自己的应用中。API接口的基本信息如下:
- 接口地址: http://127.0.0.1:9977/api
- 请求方法: POST
- 主要参数:
- language: 语言代码(如zh、en等)
- model: 模型名称(base、small、medium、large-v3)
- response_format: 返回格式(text、json、srt)
- file: 音视频文件(二进制上传)
CUDA加速支持
对于拥有NVIDIA显卡的用户,STT支持使用CUDA加速处理速度。使用CUDA加速需要正确配置CUDA环境,包括安装CUDA Toolkit和cuDNN。配置完成后,修改set.ini文件中的devtype=cpu
为devtype=cuda
,即可启用CUDA加速。
注意事项
-
没有NVIDIA显卡或未配置CUDA环境时,不建议使用large/large-v3模型,可能导致内存耗尽。
-
中文识别结果可能会出现繁体字。
-
如遇到"cublasxx.dll不存在"错误,需下载并安装cuBLAS。
-
默认使用CPU运算,配置好CUDA环境后可修改set.ini启用CUDA加速。
-
如果启用CUDA后程序闪退,可能是GPU显存不足,建议使用较小的模型或处理较小的文件。
STT为用户提供了一个强大、灵活且隐私的语音识别解决方案。无论是个人用户还是开发者,都可以通过STT轻松实现高质量的语音转文字功能。随着持续的开发和社区贡献,STT有望成为离线语音识别领域的重要工具。
STT的开发得益于多个开源项目的支持,包括faster-whisper、Flask和FFmpeg等。这种开源协作精神不仅推动了STT的发展,也为整个语音识别领域带来了创新和进步。随着技术的不断演进,我们可以期待STT在未来提供更加强大和智能的语音识别功能,为用户带来更多便利。