【问题标题】:is there a way to use Google TTS as external library?有没有办法将 Google TTS 用作外部库?
【发布时间】:2016-08-08 16:46:18
【问题描述】:

我在 Android 应用程序中使用 Google TTS 库...Everythnig 完美运行... 但问题是一些安卓设备有 Pico TTS。而且,我使用的语言应该下载...

所以我的问题是,有没有办法使用 Android Google TTS 引擎作为外部库,是否有支持库?...这是开源项目吗?

如果是,该怎么做?

我在问这个问题,因为有些设备只支持 pico tts...所以外部库会解决问题...

【问题讨论】:

    标签: android google-text-to-speech


    【解决方案1】:

    这是一个老问题。最近的解决方案,也是最有效的是

    curl 'https://translate.google.com/translate_tts?ie=UTF-8&q=hello&tl=en&tk=995126.592330&client=t' -H 'user-agent: stagefright/1.2 (Linux;Android 5.0)' -H 'referer: https://translate.google.com/' > google_tts.mp3
    

    它被大量讨论here

    这个解决方案(将来可能会中断)在 python 库gTTS 中实现,它以一种有用的方式包装了 api,因此您可以指定语言、文本并轻松写入文件:

    >> from gtts import gTTS
    >> from tempfile import TemporaryFile
    >> tts = gTTS(text='Hello', lang='en')
    >> f = TemporaryFile()
    >> tts.write_to_fp(f)
    >> f.close()
    

    注意。如果我们考虑相反:Speech to Text,最近谷歌发布了Cloud Speech API,它利用机器学习,支持更多语言,是语音识别的官方api。

    顺便说一句,今天有很多其他平台都在这样做,而且可能比 TTS 网络服务更好。 Microsoft 将Speech API 作为其新认知系统的一部分,每月最多可免费查询 5000 次。 IBM Watson Text To Speech API 非常强大,最近推出了Expressive Synthesis,这是如何在声音中合成情感。所有这些云 api 都使用https://www.w3.org/TR/speech-synthesis/ 作为标记语言来定义文本到语音,这比使用简单的未标记文本更具表现力。

    【讨论】:

    • 我的共享链接是否使用相同的方法? github.com/kewang/google-tts/blob/master/src/tw/kewang/google/…
    • 因为它将private static final String TRANSLATION_URL = "http://translate.google.com/translate_tts?tl=%s&q=%s&ie=UTF-8"; 定义为端点,所以肯定是的,这是一个围绕google tts web 服务的java 包装器。顺便说一句,我已经更新了答案,提供了更强大的解决方案。
    • 我有 Columnist 应用程序,tts 应该是无限制且免费的……是吗?
    • 嗯,正如您所提到的,这取决于用户,例如下载语音等。如果您查看我提到的 stackoverflow 链接,有一些免费的解决方案,选项很少,但免费(比如几种语言)。我猜一个不依赖主机操作系统系统的免费无限解决方案,即这种类型的 tts api,不存在免费的具有完整语言支持的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2017-07-20
    • 1970-01-01
    • 1970-01-01
    • 2011-04-27
    • 1970-01-01
    • 2016-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多