c# - Azure 认知服务 TTS - 示例应用中其他语言的错误
问题描述
我想为 Azure 认知服务 TTS 实现 api 调用。并感谢@Md Farid Uddin Kiron stackoverflow 用户和我们在此链接上讨论的问题 所以,我提取了一个示例代码,它是一个与 Azure 通信的 .netcore Web 应用程序。示例链接在这里
我有以下问题:该应用程序与模型中的预定义语言完美配合,例如:
public List<SelectListItem> LanguagePreference { get; set; } = new List<SelectListItem>
{
new SelectListItem { Value = "NA", Text = "-Select-" },
new SelectListItem { Value = "en-US", Text = "English (United States)" },
new SelectListItem { Value = "en-IN", Text = "English (India)" },
new SelectListItem { Value = "ta-IN", Text = "Tamil (India)" },
new SelectListItem { Value = "hi-IN", Text = "Hindi (India)" },
new SelectListItem { Value = "te-IN", Text = "Telugu (India)" }
};
但是当我添加例如意大利语言(it-IT、hr-HR - 这些是字段值的语言代码)时,代码会在方法 Translate 上的 HomeController 中中断。
解决方案
我已成功重现您的问题。
根据我的发现,语言支持有一些关键点,例如:
订阅免费订阅不允许所有语言
var requestBody = this.GenerateSsml(lang, "Female", this.ServiceName(lang), content);
注意:不支持女性的语言也可能是问题所在。
您的案例:
LanguagePreference
在您的代码中,您可以尝试在列表中使用以下代码
new SelectListItem { Value = "es-ES", Text = "es-ES,(Spanish)" }
ServiceName
在我用西班牙语测试过的下面的代码上也可以更改,效果很好。
values.Add("es-ES", "Microsoft Server Speech Text to Speech Voice (es-ES, Laura, Apollo)");
要记住的要点:
我们的代码库没问题。问题与代码无关。请确保您的订阅和地区支持您正在尝试的翻译。还可以在 azure 门户上提高您的支持票。
推荐阅读
- javascript - 从 MVC 返回时如何忽略 ' 符号。document.insertAdjacent
- c++ - Qt 将许多 QGraphicsPixmapItem 添加到 QGraphicsScene
- visual-studio-code - Latex Workshop - 复制 PDF 文件的配方工具
- google-bigquery - BQ 脚本:将循环的结果写入表
- android - 使用 Retrofit 的链式和并发协同程序
- amazon-web-services - 如何使用 AWS CloudWatch Insights 查询 AWS CloudWatch 日志?
- php - 可以上传加密文件吗?
- python - 如何在通过 pymqi 向 IBM MQ 发送消息时设置 JMS 属性
- c++ - C ++中的右移布尔值
- android - 如何使 Tablayout 也可滚动