您在 Azure 市场中提到的语音 API 是一个名为ProjectOxford的 AI 微软项目的一部分,该项目提供了一系列用于计算机视觉、语音和语言的 API。
这些都是 RESTful API,这意味着您将构建 HTTP 请求以发送到云中的托管在线服务。语音转文本文档可在此处获得,您可以在 github 上找到各种客户端的示例代码。特别是对于 C#,您可以在这个示例项目中看到一些代码。
请注意,ProjectOxford 仍处于预览阶段(测试版)。可以在ProjectOxford MSDN 论坛上找到使用这些 API 的其他支持。
但只是为了让您了解程序的外观(取自 github 上的上述代码示例):
AccessTokenInfo token;
// Note: Sign up at http://www.projectoxford.ai for the client credentials.
Authentication auth = new Authentication("Your ClientId goes here", "Your Client Secret goes here");
...
token = auth.GetAccessToken();
...
string requestUri = "https://speech.platform.bing.com/synthesize";
var cortana = new Synthesize(new Synthesize.InputOptions()
{
RequestUri = new Uri(requestUri),
// Text to be spoken.
Text = "Hi, how are you doing?",
VoiceType = Gender.Female,
// Refer to the documentation for complete list of supported locales.
Locale = "en-US",
// You can also customize the output voice. Refer to the documentation to view the different
// voices that the TTS service can output.
VoiceName = "Microsoft Server Speech Text to Speech Voice (en-US, ZiraRUS)",
// Service can return audio in different output format.
OutputFormat = AudioOutputFormat.Riff16Khz16BitMonoPcm,
AuthorizationToken = "Bearer " + token.access_token,
});
cortana.OnAudioAvailable += PlayAudio;
cortana.OnError += ErrorHandler;
cortana.Speak(CancellationToken.None).Wait();