快速入门:开始使用 Azure AI 语音 CLI
本文介绍如何使用 Azure AI 语音 CLI(也称 SPX)访问语音转文本、文本转语音和语音翻译等语音服务,而无需编写任何代码。 语音 CLI 随时可投入生产,可通过 .bat
或 shell 脚本,用其自动化语音服务中的简单工作流。
本文假定你具备命令提示符窗口、终端或 PowerShell 的相关工作知识。
注意
在 PowerShell 中,停止分析令牌 (--%
) 应位于 spx
之后。 例如,运行 spx --% config @region
查看当前区域配置值。
下载并安装
按照以下步骤在 Windows 上安装语音 CLI:
安装适用于你的平台的 Microsoft Visual C++ Redistributable for Visual Studio 2019。 首次安装此包时,可能需要重启。
安装 .NET 6。
通过输入以下命令,使用 .NET CLI 安装语音 CLI:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
若要更新语音 CLI,请输入以下命令:
dotnet tool update --global Microsoft.CognitiveServices.Speech.CLI
若要查看语音 CLI 的帮助,请输入 spx
或 spx help
。
字体限制
在 Windows 上,语音 CLI 只能显示本地计算机上命令提示符适用的字体。 Windows 终端支持语音 CLI 以交互方式生成的所有字体。
如果输出到文件,文本编辑器(例如记事本)或 web 浏览器(例如 Microsoft Edge)也可以显示所有字体。
创建资源配置
要开始使用,你需要一个语音资源键和区域标识符(例如 chinanorth2
、chinaeast2
)。 在 Azure 门户中创建语音资源。 有关详细信息,请参阅创建 Azure AI 服务资源。
若要配置你的资源密钥和区域标识符,请运行以下命令:
spx config @key --set SPEECH-KEY
spx config @region --set SPEECH-REGION
将存储密钥和区域以用于将来的语音 CLI 命令。 若要查看当前配置,请运行以下命令:
spx config @key
spx config @region
根据需要,请包含 clear
选项以删除任一存储值:
spx config @key --clear
spx config @region --clear
基本用法
本部分介绍了一些基本的 SPX 命令,这些命令对于首次测试和试验通常非常有用。 运行以下命令以查看工具内帮助:
spx
可按关键字搜索帮助主题。 例如,要查看语音 CLI 用法示例列表,请运行以下命令:
spx help find --topics "examples"
要查看 recognize
命令的选项,请运行以下命令:
spx help recognize
控制台输出中列出了更多帮助命令。 可输入这些命令以获取有关子命令的详细帮助。
语音转文本(语音识别)
注意
在 Docker 容器中运行语音 CLI 时,不能使用计算机的麦克风。 但你可以在本地装载的目录中读取和保存音频文件。
要使用系统的默认麦克风将语音转换为文本(语音识别),请运行以下命令:
spx recognize --microphone
运行该命令后,SPX 开始在当前活动的输入设备上侦听音频。 当你选择 Enter 时,SPX 将停止侦听。 然后,语音音频将被识别并转换为控制台输出中的文本。
使用语音 CLI,你还可以识别音频文件中的语音。 运行以下命令:
spx recognize --file /path/to/file.wav
提示
若你遇到问题或者想要详细了解语音 CLI 的识别选项,可以运行 spx help recognize
。
文本转语音(语音合成)
以下命令会将文本作为输入,然后将合成的语音输出到当前活动的输出设备(例如计算机扬声器)。
spx synthesize --text "Testing synthesis using the Speech CLI" --speakers
你还可将合成的输出保存到文件中。 在此示例中,我们可以在运行命令的目录中创建一个名为 my-sample 的文件。
spx synthesize --text "Enjoy using the Speech CLI." --audio output my-sample.wav
这些示例假定你是以英语进行测试的。 但语音服务支持多种语言的语音合成。 你可通过运行以下命令或访问语言支持页面来拉取完整的语音列表。
spx synthesize --voices
以下是使用已发现语音的命令。
spx synthesize --text "Bienvenue chez moi." --voice fr-FR-AlainNeural --speakers
提示
若你遇到问题或者想要详细了解语音 CLI 的识别选项,可以运行 spx help synthesize
。
语音到文本的转换
借助语音 CLI,你还可以执行语音到文本的转换。 运行以下命令,可从默认的麦克风捕获音频,并以文本形式输出转换。 记住,你需要通过 translate
命令提供 source
和 target
语言。
spx translate --microphone --source en-US --target ru-RU
将语音翻译成多种语言时,请用分号 (;
)分隔语言代码。
spx translate --microphone --source en-US --target 'ru-RU;fr-FR;es-ES'
如果要保存转换的输出,请使用 --output
标志。 在本例中,还可以从文件中进行读取。
spx translate --file /some/file/path/input.wav --source en-US --target ru-RU --output file /some/file/path/russian_translation.txt
提示
若你遇到问题或者想要详细了解语音 CLI 的识别选项,可以运行 spx help translate
。