语音翻译 - Android

时间:2015-05-20 10:26:03

标签: java android android-activity google-translate

我正在做研究工作,是否有可能将语音转换为语音翻译。这意味着,我用一种语言说话,另一个人应该想用他们可理解的语言翻译我的声音。我们可以在任何谷歌api中这样做,或推荐我,如果任何其他api可以做到这一点。提前致谢。

3 个答案:

答案 0 :(得分:1)

是的,你可以这样做,你需要谷歌语音API,你需要在谷歌程序员控制台中启用这个API,有一些技巧可以启用它,因为它是隐藏的,你需要自己添加到铬开发人员列表, 或类似的东西。您还需要一个Google翻译API来翻译文本:google tranlsate API v2有一个项目:https://code.google.com/p/google-translate-api-v2-java/ 谷歌语音API的项目和项目:https://github.com/gillesdemey/google-speech-v2/ 你需要从谷歌程序员控制台获取这些API的密钥。 您需要将录制的文件转换为flac格式,因为语音API需要它,您可以使用flacEncoder项目:(http://)javaflacencoder.sourceforge.net /

我认为这就是您所需要的一切,从一种语言的语音输入转换为任何其他语言的语音输出。

算法:

从麦克风录制声音,将其编码为flac格式, 通过语音API将其发送到谷歌进行识别, 当您收到答案时,请将谷歌翻译API翻译成所需的语言, 翻译后,将翻译后的文本转换为语音,您可以使用Google语音API或其他文字转语音引擎,这对您开放,因为我没有丰富的经验;

答案 1 :(得分:0)

您可以使用STT (Speach To Text) API将输入语音转换为文字。

您可以发送到翻译API(可能是Google或Bing)的文字,将其翻译成所需的语言。

此文字,您可以发送到TTS (Text To Speech) API,它将被读出。

答案 2 :(得分:0)

您可以使用java-Google-translate-text-to-speech代替Google Translate API v2 Java.,因为它免费且background voice recognition

这是Google Translate in Java的非官方API。

它还有助于文本到语音。

  

API的使用:

    String input="je t'aime";
    Translator translate = Translator.getInstance();
    String text = translate.translate(input, Language.FRENCH, Language.ENGLISH);
    System.out.println("Result :" + text);