Microsoft Azure认知项目Oxford Speech API Text to Voice jQuery REST示例

时间:2016-04-10 20:00:06

标签: jquery rest azure text-to-speech microsoft-cognitive

任何人都可以获得Azure Project Oxford Speech API的jQuery REST代码示例。

我有Azure应用服务和密钥。只需要一个简单的原型页面,在加载时播放当前特定的文本

甚至可以在客户端使用javascript / jQuery和REST而没有服务器端代码吗?

另外,我安装了服务器端示例,但它只能从localhost播放。没有错误,但不会在天蓝色的网站上播放。

更新:仅使用客户端js代码。我能够进行身份验证,并且我获得了RIFF AWAVEfmt>}数据,但似乎无法弄清楚如何从浏览器中播放它。我没有错。

function BaseController() {

}

BaseController.prototype.getWidgets = function() {
  console.log('widgets are sent');
  return 123;
}

module.exports = BaseController;

.done(function(response){  enter image description here       var audio = new Audio(response);       audio.play();

感谢。

1 个答案:

答案 0 :(得分:-1)

Here您可以找到API文档 对于一个工作示例,请使用Cognitive Services Speech API http://github.com/Danielius1012/Text-To-Speech来查看此示例代码 上述代码中有用的代码段:

function sendAudioRequest()
{
textToSpeak = $("#my-text")[0].value;
sendString = "<speak version='1.0' xml:lang='"+language+"'><voice xml:lang='"+language+"' xml:gender='Female' name='"+nameLanguage+"'>"+textToSpeak+"</voice></speak>";

console.info($("#text-to-speak"));

var xhttp = new XMLHttpRequest();

xhttp.onreadystatechange = function() 
{
    if (xhttp.readyState == 4 && xhttp.status == 200) 
    {
        context.decodeAudioData(xhttp.response, function(buffer) 
        {
            speechBuffer = buffer;
            console.info(speechBuffer);
            playAudio(speechBuffer);  
        });

    }
}; 

xhttp.open("POST", audioURL, true);
xhttp.setRequestHeader("Content-type", 'application/ssml+xml');
xhttp.setRequestHeader("Authorization", 'Bearer ' + token);
xhttp.setRequestHeader("X-Microsoft-OutputFormat", 'riff-16khz-16bit-mono-pcm');
xhttp.setRequestHeader("X-Search-AppId", '07D3234E49CE426DAA29772419F436CA');
xhttp.setRequestHeader("X-Search-ClientID", '1ECFAE91408841A480F00935DC390960');
xhttp.responseType = 'arraybuffer'

xhttp.send(sendString);
}