Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 请求时,Microsoft翻译语音限制为200-400字_Javascript - Fatal编程技术网

Javascript 请求时,Microsoft翻译语音限制为200-400字

Javascript 请求时,Microsoft翻译语音限制为200-400字,javascript,Javascript,我有一个Microsoft Translate Voice的URL,以获得如下所示的语音: 如果你打开Bing网站上的开发者控制台,开始播放声音,你会看到它只发送了几个单词的第一个mp3请求,当它读完后,它会发送另一个mp3请求,依此类推 你也可以这样做: //当DOM被加载时,HTML被加载 document.addEventListener'DOMContentLoaded',函数{ //定义DOM元素 var getAudioBtn=document.getElementById'ge

我有一个Microsoft Translate Voice的URL,以获得如下所示的语音:


如果你打开Bing网站上的开发者控制台,开始播放声音,你会看到它只发送了几个单词的第一个mp3请求,当它读完后,它会发送另一个mp3请求,依此类推

你也可以这样做:

//当DOM被加载时,HTML被加载 document.addEventListener'DOMContentLoaded',函数{ //定义DOM元素 var getAudioBtn=document.getElementById'getAudioBtn', langSelect=document.getElementByIdlangSelect, langSource=document.getElementByIdlangSource, audioEl=document.getElementById'audioEl'; //在按钮上设置事件侦听器 getAudioBtn.addEventListener'click',getContentTranslate; //在音频onended事件上设置侦听器 audioEl.addEventListener'ended',readChunkQueue; var chunkQueue=[],//要读取的文本块队列 wordsPerChunk=80,//每个区块的单词数 语言='en';//默认语言 函数getContentTranslate{ //存储语言 语言=langSelect.value; //清空chunks数组 chunkQueue=[]; //把课文分成几个字 var words=langSource.value.split//g, tmp=[];//用于创建块的临时数组 whilewords.length{ //如果out临时块已满,请将其添加到列表中 如果tmp.length==wordsPerChunk{ chunkQueue.pushtmp.join“”; tmp=[]; } tmp.pushwords.shift; } 如果tmp.length{ chunkQueue.pushtmp.join“”; } //开始读这些句子 读块队列; } 函数readChunkQueue{ //如果列表为空,请停止 if!chunkQueue.length{ 回来 } //获取列表中的第一个块 var chunk=chunkQueue.shift, url='1〕https://www.bing.com/tspeak?&format=audio%2Fmp3' +“&language=”+encodeURIComponentlanguage +“&IG=D2CBB80AA6824D9A91B0A5D1074FC4A1&IID=translator.5034.2” +“&text=”+encodeURIComponentchunk; //将URL设置为音频元素的源 setAttribute'src',url; } }; 英语 越南人 奥巴马就职演说。2009年1月20日。同胞们:我今天站在这里,为我们面前的任务感到谦卑,感谢你们给予我的信任,铭记我们祖先所作的牺牲。我感谢布什总统为我们国家所做的贡献,以及他在整个过渡期间所表现出的慷慨与合作。现在已有44名美国人宣誓就职。这些话是在繁荣的浪潮和和平的静水中说出来的。然而,誓言常常是在乌云密布、暴风雨肆虐的情况下进行的。在这些时刻,美国之所以能够继续前进,不仅仅是因为那些高级官员的技能或远见,而是因为我们人民始终忠于先辈的理想,忠于我们的建国文件。一直如此。这一代美国人也必须如此。我们正处于危机之中,这一点现在已得到充分理解。我们的国家正在与一个影响深远的暴力和仇恨网络交战。我们的经济被严重削弱,这是一些人贪婪和不负责任的结果,也是我们集体未能做出艰难选择和为新时代做好准备的结果。失去了家园;裁员;企业倒闭了。我们的医疗费用太高;我们的学校失败太多;每天都有更多的证据表明,我们使用能源的方式加强了我们的对手,威胁着我们的地球。这些是危机的指标,取决于数据和统计数据。不可测量但同样深刻的是我们全国信心的削弱——一种挥之不去的恐惧,认为美国的衰落是不可避免的,下一代必须降低自己的眼光。今天我要告诉你们,我们面临的挑战是真实的。他们是认真的,而且很多。它们不会轻易或在短时间内得到满足。但要知道这一点,美国——他们会得到满足的。在这一天,我们聚集在一起,因为我们选择了希望而不是恐惧,选择了目标的统一而不是冲突和不和。在这一天,我们来宣布结束那些扼杀我们的政治太久的琐碎的不满和虚假的承诺、相互指责和陈腐的教条。我们仍然是一个年轻的国家,但用圣经的话说,是时候把幼稚的东西放在一边了。现在是重申我们持久精神的时候了;选择更好的历史;发扬这一代代相传的珍贵礼物和崇高理念:上帝给予的承诺,即人人平等,人人自由,人人都有机会追求最大程度的幸福。重申 对于我们国家的伟大,我们知道伟大从来都不是天生的。这是必须的。我们的旅程从来不是一条捷径或满足于更少。这不是胆小的人走的路,也不是那些喜欢闲暇而不喜欢工作,或者只追求名利的人走的路。相反,正是冒险者、实干家、事物的创造者——其中一些人很有名,但更多的时候,他们在工作中默默无闻,带领我们走上了通往繁荣和自由的漫长而崎岖的道路。 获取音频
你很专业。而不是像你的例子那样只有一句话。我想要大约三句话或80个单词,它将中断并继续阅读。你能在这个案例中添加更多的代码吗?我对Javascript没有太多经验。但我发现你的知识面很广,我的主要目的是一个段落只能有一个mp3文件。如果是这样的话。有许多文件mp3和它自动改变。有没有什么方法可以让所有的mp3像join all file to one file mp3一样?@vanloc我已经编辑了我的答案,可以用80个单词来阅读文本。不幸的是,我不认为你可以得到一个MP3文件非常长的文本。您使用的此URL不是为此而创建的。您可以将mp3发送到服务器并将其合并在一起,也可以使用真实的、公开的,这可能会允许这样做,但免费试用可能有一些限制,您可能需要付费才能发送比免费计划允许的更多的请求我发现一个lib Github可以合并多个mp3文件。你能看到它并为我的案例创建一个示例代码吗?谢谢你的帮助。@vanloc很抱歉我现在没有时间尝试这个