微软语音使用小计

简介

使用微软语音可以实现语音转文字和文字转语音。测试了下,使用还是挺方便的。

使用微软语音有两种方式。一种是使用命令行的形式,另一种是调用SDK的方式。

适合使用语音 CLI 的情况:

  • 想在极少设置且无需编写代码的情况下试验语音服务功能。
  • 对使用语音服务的生产应用程序的要求相对简单。

适合使用语音 SDK 的情况:

  • 需要在特定语言或平台(如 C#、Python 或 C++)中集成语音服务功能。
  • 你有可能需要高级服务请求的复杂需求。
  • 你要开发自定义行为,包括响应流。

语音CLI

语音 CLI 是一种命令行工具,用于在不编写任何代码的情况下使用语音服务。 语音 CLI 需要的设置很少。

核心功能

        语音识别:将音频文件中的或直接将麦克风语音转换为文本,或转录录制的对话。

        语音合成:将文本文件中输入的文本或直接来自于命令行的输入文本转换为语音。 使用语音合成标记语言 (SSML) 配置自定义语音输出特征。

        语音翻译:将源语言的音频翻译为目标语言的文本或音频。

        在 Azure 计算资源上运行:使用 spx webjob 发送语音 CLI 命令以在 Azure 远程计算资源上运行。

使用说明
下载安装

第一步下载安装: Microsoft Visual C++ Redistributable for Visual Studio 2019

第二步下载安装: .NET 6

第三步下载安装语音插件:

命令行安装

dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI

命令行更新

dotnet tool update --global Microsoft.CognitiveServices.Speech.CLI

配置账户

假定你已经申请了账户,如果没有可以到Microsoft Azure 门户 | Microsoft Azure注册试用账户

//这里使用cmd控制台配置账户到当前路径

spx config @key --set SPEECH-KEY
spx config @region --set SPEECH-REGION

//查看配置信息

spx config @key
spx config @region

//删除配置信息

spx config @key --clear
spx config @region --clear

使用

//查看帮助

spx

//查看指定主题的帮助信息

spx help find --topics "examples"

语音转文本

//识别麦克风输入的音频,运行该命令后,SPX 开始在当前活动的输入设备上侦听音频。 当你选择 Enter 时,SPX 将停止侦听。 然后,语音音频将被识别并转换为控制台输出中的文本

spx recognize --microphone

//将指定音频文件转为文本输出, source 指定使用的语言

spx recognize --file /path/to/file.wav  --source zh-CN

包含两个你好的语音识别结果如下:

文本转语音

//以下命令会将文本作为输入,然后将合成的语音输出到当前活动的输出设备(例如计算机扬声器)

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,你还可以执行语音到文本的转换。 运行以下命令,可从默认的麦克风捕获音频,并以文本形式输出转换。 记住,你需要通过 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

支持的语言类型:语言支持 - 语音服务 - Azure AI services | Microsoft Learn

官方说明文档:如何基于文本合成语音 - 语音服务 - Azure AI services | Microsoft Learn

  • 27
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

破浪征程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值