介绍
Whisper 模块通过 whisper.cpp 帮助用户快速将音频转换为文字。
INFO:
whisper.cpp 是一个用 C/C++ 编写的轻量级智能语音识别库,是基于 OpenAI 的 Whisper 模型的移植版本,旨在通过深度学习模型实现音频转文字功能。
由于 whisper.cpp 目前只支持 16 khz 的 wav 文件格式的音频文件,因此该模块默认会先使用 ffmpeg 将音频文件转成语音识别所需的格式,生成的 wav 文件以 <file name>.whisper.tmp.x-cmd.16khz.wav
的格式命名,以便用户使用通配符批量删除。
首次用户
-
在终端运行
eval "$(curl https://get.x-cmd.com)"
即可完成 x 命令安装, 详情参考 x-cmd 官网 -
x-cmd 提供 mod 教程,其中包含了 whisper 模块常用功能的 demo 示例,可以帮你快速上手 whisper 模块。
-
使用案例:
x whisper [OPTIONS] [SUB_COMMAND]
# 交互式选择模型,并将音频文件识别成文字
x whisper <audio file># 使用 medium 模型进行音频识别
x whisper -m medium -f <audio file># 将结果保存到 test.srt 字幕文件
x whisper dictate --srt -o test <audio file># 将 srt 字幕嵌入到视频中
x whisper merge <srt file> <video file>
选项
名称, 名称简写 | 默认值 | 描述 |
---|---|---|
-f, --file [file dir] | 需要识别的音频文件路径 | |
-m, --model [name] | 显式指定模型进行识别 |
子命令
名称 | 描述 |
---|---|
x whisper dictate | 音频识别成文字 |
x whisper model | 管理本地模型 |
x whisper merge | 将字幕嵌入到视频中 |
模型管理
whisper.cpp 提供了 5 种模型:tiny,base,small,medium,large,它们的识别效果和大小依次增加,x-cmd 建议用户使用 base 以上的模型。
- 用户可以使用
x whisper model
命令进入交互式 UI 来查看所有可用模型,并可以通过回车键将选中的模型设置为默认模型。 - 支持模型导入、导出、删除等功能。
此外,该模块还提供了将字幕嵌入到视频中的功能: 用户可以使用 --srt
参数生成字幕文件,再通过 merge
命令将字幕文件嵌入到视频中。
进一步阅读
关于 whisper.cpp,请访问 https://github.com/ggerganov/whisper.cpp
TIP :
第一次使用的用户会自动下载 whisper.cpp, 若想卸载可以使用 x env gc whispercpp 命令
我们的 whisper 模块是开箱即用的,有赖于 env 模块,它能在您需要的时候自动帮您下载安装好 whisper.cpp 和 ffmpeg