项目简介
OpenAI 的 Whisper 的近乎实时实现。
该项目是一个实时转录应用程序,使用 OpenAI Whisper 模型将语音输入转换为文本输出。它可用于转录来自麦克风的实时音频输入和预先录制的音频文件。
与依赖连续音频流的传统语音识别系统不同,我们使用语音活动检测(VAD)来检测语音的存在,并且仅在检测到语音时才发送音频数据以耳语。这有助于减少发送到耳语模型的数据量并提高转录输出的准确性。
安装
·
安装 PyAudio 和 ffmpeg
bash setup.sh
·
从 pip 安装 Whisper-live
pip install whisper-live
入门
·
运行服务器
·
from whisper_live.server import TranscriptionServer
server = TranscriptionServer()
server.run("0.0.0.0", 9090)
在客户端
·
要转录音频文件:
·
from whisper_live.client import TranscriptionClient
client = TranscriptionClient("localhost", 9090, is_multilingual=True, lang="hi", translate=True) client(audio_file_path)
此命令使用 Whisper 模型转录指定的音频文件 (audio.wav)。它通过端口 9090 连接到在本地主机上运行的服务器。它还启用了多语言功能,允许以多种语言进行转录。语言选项指定转录的目标语言,在本例中为印地语(“hi”)。如果我们想从源语言翻译成英语,则翻译选项应设置为 True ;如果我们想用源语言转录,则应将翻译选项设置为 False 。
·
从麦克风转录:
·
from whisper_live.client import TranscriptionClient
client = TranscriptionClient(host, port, is_multilingual=True, lang="hi", translate=True)
client()
此命令从麦克风捕获音频并将其发送到服务器进行转录。它使用与上一个命令相同的选项,启用多语言功能并指定目标语言和任务。
·
要从 HLS 流转录:
·
·
client = TranscriptionClient(host, port, is_multilingual=True, lang="en", translate=False) client(hls_url="http://as-hls-ww-live.akamaized.net/pool_904/live/ww/bbc_1xtra/bbc_1xtra.isml/bbc_1xtra-audio%3d96000.norewind.m3u8")
·
此命令将音频从 HLS 流传输到服务器。它使用与上一个命令相同的选项,启用多语言功能并指定目标语言和任务。
·
从浏览器转录音频
·
运行服务器
·
此命令将音频从 HLS 流传输到服务器。它使用与上一个命令相同的选项,启用多语言功能并指定目标语言和任务。
Transcribe audio from browser
从浏览器转录音频
Run the server 运行服务器
项目链接
https://github.com/collabora/WhisperLive
出自:https://mp.weixin.qq.com/s/iURRpcbZ63d-FfJLujSgIQ