我正在开发一个项目,需要使用 Azure 认知服务对音频文件执行批量转录。我的目标是上传音频文件,触发批量转录,然后在转录完成后让 Azure 通知 URL 或 Azure Function App。调用批量转录时似乎没有选项。我怎样才能做到这一点?
.NET 中批量转录的调用示例:
string endpoint = $"https://{speechServiceRegion}.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions";
var requestBody = new
{
contentUrls = new[] { blobSasUri },
properties = new
{
diarizationEnabled = false,
wordLevelTimestampsEnabled = false
},
locale = "en-GB",
displayName = "Batch transcription using Azure Function",
};
httpClient.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", speechServiceKey);
HttpResponseMessage response = await httpClient.PostAsync(endpoint, new StringContent(JsonConvert.SerializeObject(requestBody), Encoding.UTF8, "application/json"));
语音转文本 API 包括一个 WebHook 创建 API,您必须设置一次才能将事件定向到您选择的服务。
最初会出现一个验证请求,您需要使用 200 响应来响应,WebHook 才能成功注册。