点击上方“蓝色字体”关注我,每天推送“实用有趣的项目”!
之前也分享过许多 TTS(文本转语音)工具,但是 STT(语音转文本)却是很少分享。
有部分原因也是 STT 模型不比 TTS 模型那样的需求普遍,所以真正开源STT项目也少。
但实际上,实时语音转文字工具的需求也越来越重要。不论是会议记录、课堂笔记,还是即时通讯,能够快速、准确地将语音转为文字,极大地提高了工作和学习效率。
用的最多的场景,就是微信语音,可以将语音转文字,第一为了方便复制,第二不是任何时候都适合听或听不清的场景,语音转文字也方便。
今天,我要给大家介绍一款开源的实时语音转文字工具:RealtimeSTT,可以实时显示转录结果,让你的语音即时变成文字。
项目简介
RealtimeSTT 是一款开源工具,专注于将语音实时转录为文字。
与传统的语音转文字工具相比,RealtimeSTT提供了更加智能化的体验。它不仅能实时显示转录结果,还集成了语音活动检测功能,可以自动检测说话的开始和结束,从而优化用户的转录体验。
此外,唤醒词激活功能更是让用户可以轻松地在需要时开启录音,而不必手动操作。
核心亮点
-
• 实时转录:RealtimeSTT能够在语音输入的同时,实时将其转录为文字,减少了转录过程中的等待时间。
-
• 语音活动检测:自动检测说话的开始和结束,避免了不必要的录音,提升了转录效率。
-
• 唤醒词激活:通过设置唤醒词,用户可以在需要时自动激活录音功能,而无需手动操作,极大地增强了工具的便捷性。
-
• 灵活的录音控制:用户可以选择手动或自动控制录音,以满足不同场景的需求。
快速使用
RealtimeSTT 实际上是一个Python三方库,使用非常简单,你只需要 pip
命令一键安装即可。
pip install RealtimeSTT
这句命令,会自动安装所有必要的依赖项,包括一个仅支持CPU版本的PyTorch。
如果是 MacOS 系统,需要先执行以下命令:
brew install portaudio
基本用法
① 手动录制
from RealtimeSTT import AudioToTextRecorder
if __name__ == '__main__':
recorder = AudioToTextRecorder()
recorder.start()
input("Press Enter to stop recording...")
recorder.stop()
print("Transcription: ", recorder.text())
② 自动记录,基于语音活动检测的录音
from RealtimeSTT import AudioToTextRecorder
if __name__ == '__main__':
with AudioToTextRecorder() as recorder:
print("Transcription: ", recorder.text())
当在循环中运行recorder.text时,建议使用回调,以便转录可以异步运行:
from RealtimeSTT import AudioToTextRecorder
def process_text(text):
print(text)
if __name__ == '__main__':
recorder = AudioToTextRecorder()
while True:
recorder.text(process_text)
③ 唤醒词
在检测语音之前激活关键词。将你想要的激活关键词以逗号分隔的列表写入wake_words参数。
可以从以下列表中选择唤醒词:alexa, americano, blueberry, bumblebee, computer, grapefruits, grasshopper, hey google, hey siri, jarvis, ok google, picovoice, porcupine, terminator。
from RealtimeSTT import AudioToTextRecorder
if __name__ == '__main__':
recorder = AudioToTextRecorder(wake_words="jarvis")
print('Say "Jarvis" to start recording.')
print(recorder.text())
④ 回调函数
from RealtimeSTT import AudioToTextRecorder
def start_callback():
print("Recording started!")
def stop_callback():
print("Recording stopped!")
if __name__ == '__main__':
recorder = AudioToTextRecorder(on_recording_start=start_callback,
on_recording_stop=stop_callback)
更多功能用法,也可以参考项目说明文档进行使用。
适用场景
-
• 会议和讲座:实时转录会议和讲座内容,方便记录和回顾。
-
• 学习笔记:学生可以用来实时记录课堂笔记,提高学习效率。
-
• 采访和新闻报道:记者和采访人员可以利用RealtimeSTT实时转录采访内容,减少后期整理的工作量。
-
• 即时通讯:在语音聊天或直播中,实时将语音内容转为文字,方便记录和查阅。
写在最后
RealtimeSTT 的出现,为实时语音转文字领域带来了新的便捷体验。它不仅支持实时转录,还具备语音活动检测和唤醒词激活等智能功能,使得语音转录更加精准、高效。
无论你是学生、记者,还是企业职员,RealtimeSTT都能为你提供强大的语音转文字支持,助你在信息的海洋中更加高效地获取和整理信息。
这个实时语音转文字工具,将是你工作和学习中的得力助手。
GitHub 项目地址:https://github.com/KoljaB/RealtimeSTT
● 一款改变你视频下载体验的神器:MediaGo
● 新一代开源语音库CoQui TTS冲到了GitHub 20.5k Star
● 最新最全 VSCODE 插件推荐(2023版)
● Star 50.3k!超棒的国产远程桌面开源应用火了!
● 超牛的AI物理引擎项目,刚开源不到一天,就飙升到超9K Star!突破物理仿真极限!
(文:开源星探)