Bing Text-to-Speech 可以采用 javascript 变量值并将其转换为语音吗?
Posted
技术标签:
【中文标题】Bing Text-to-Speech 可以采用 javascript 变量值并将其转换为语音吗?【英文标题】:can Bing Text-to-Speech take a javascript variable value and convert it to speech? 【发布时间】:2018-03-09 19:16:23 【问题描述】:我在 javascript 中使用 Bing 文本到语音 api 并生成随机数以进行加法。只是为了获得支持,我想将 bing 文本转语音集成到我的代码中,但我无法在 microsoft 页面上找到说明您可以将动态参数传递给 api 的文档。 到目前为止,它能够做到这一点:
var bingClientTTS = newBingSpeech.TTSClient("API KEY");
document.getElementById("speakBtn").addEventListener("click", function ()
bingClientTTS.synthesize("5 + 7");
);
但是当我这样做时,它会给出类型错误:
var randomNum1 = getRandom(),
var randomNum2 = getRandom();
total =randomNum1 + randomNum2;
$( "#question" ).text( randomNum1 + " + " + randomNum2 + "=" );
document.getElementById("speakBtn").addEventListener("click", function ()
bingClientTTS.synthesize(randomNum1.value);
);
TypeError: Cannot read property 'encodehtml' of undefined
有没有办法将变量传递给 bing tts api 或者我应该使用 google tts。
为了避免 api 调用,我使用了 javascript 客户端库github link
【问题讨论】:
【参考方案1】:如果它适用于字符串,那么你如何获得该字符串并不重要。
尝试randomNum1
而不是randomNum1.value
。
【讨论】:
randomNum1
里面有什么?你能控制台记录一下吗?
如果syntesize("x")
有效,那么它绝对没有理由不适用于存储在 JavaScript 变量中的字符串。无论您发送给 BingClient 的内容是静态的,您发送给 BingClient 的内容的方式都是动态的。
试试randomNum1.toString()
,你正在用它做数学,所以我认为它是一个整数。
我尝试在他们的网站上使用整数,效果很好
toString
工作正常。唯一的问题是屏幕上写的和说的都是不同的数字以上是关于Bing Text-to-Speech 可以采用 javascript 变量值并将其转换为语音吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Google Cloud API Text-to-Speech 获取音素
Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis论文阅读