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