文本到语音(语音生成)和语音到文本(语音识别)API?

时间:2011-06-14 19:13:54

标签: speech-recognition text-to-speech speech-to-text speech-synthesis

是否有针对桌面或浏览器环境的已知API的完整列表?

3 个答案:

答案 0 :(得分:31)

我将重新发布并更新Speech recognition in C or Java or PHP?的答案。这绝不是全面的,但它可能是一个开始


从几个月来看这些问题,我发现大多数开发人员的选择都是这样的:

Windows用户 - 使用.Net或Microsoft.Speech的System.Speech功能并安装Microsoft提供的免费识别器。 Windows 7包含一个完整的语音引擎。其他人可以免费下载。有一个称为SAPI的相同引擎的C ++ API。见http://msdn.microsoft.com/en-us/magazine/cc163663.aspx。或http://msdn.microsoft.com/en-us/library/ms723627(v=vs.85).aspx。有关Windows的Microsoft引擎的更多背景知识 What is the difference between System.Speech.Recognition and Microsoft.Speech.Recognition?

Linux人员 - Sphinx似乎有很好的追随者。请参阅http://cmusphinx.sourceforge.net/http://cmusphinx.sourceforge.net/wiki/

商业产品 - NuanceLoquendoAT&TIBM,其他。每个都为各种语言提供自己的SDK和库。

在线服务 - NuanceYapmeispeech.orgvlingo,其他。 Nuance改进了他们的开发者计划,现在将为您提供free access to their services用于开发。 Yap(我相信)最近purchased by Amazon,所以我们可能会看到一些变化。

当然这也可能有用 - http://en.wikipedia.org/wiki/List_of_speech_recognition_software

有一个Java语音API。请参阅Java Speech API http://java.sun.com/products/java-media/speech/forDevelopers/jsapi-guide/Recognition.html中的javax.speech.recognition。我相信您仍然需要找到支持此API的语音引擎。我不认为Sphinx完全支持它 - http://cmusphinx.sourceforge.net/sphinx4/doc/Sphinx4-faq.html#support_jsapi

还有很多其他SO问题: Need text to speech and speech recognition tools for Linuxpyspeech (python) - Transcribe mp3 files?谈论http://code.google.com/p/pyspeech/。您可能还想查看http://code.google.com/p/dragonfly/

答案 1 :(得分:2)

文本到语音(语音生成)的领先API供应商是YAKiToMe!和iSpeech。 YAKiToMe!是我使用的那个,因为我喜欢他们的语音质量最好,他们是最便宜的(大多是免费的)。它们以多种语言支持男性和女性发言者。一些语音供应商,如Acapella,Nuance,Loquendo和iVona都有不错的声音,但使用起来往往很昂贵。

答案 2 :(得分:1)

以下是如何做到这一点: 注意:它是谷歌的api,所以它只适用于Chrome浏览器。

(请参阅实时演示并在此处下载完整源代码http://purpledesign.in/blog/?p=33

定义一个按钮

<input id="speech" type="text" speech="speech" x-webkit-speech="x-webkit-speech" onspeechchange="processspeech();" onwebkitspeechchange="processspeech();" />

并定义您要在javascript文件中的函数中执行的操作

喜欢这个

   function processspeech()
   {
     var speechtext=$("#speech").val();
     var elem = document.getElementById("test");
     elem.value = speechtext;
     var notification="\"<span style=\"color:#F00; text-transform:uppercase;\">"+  speechtext + "</span>\" <br />*Is this what you said???";
    notify(notification);
}

下面

<textarea> id="test"></textarea>

演讲稿写在textarea