diff --git a/config.toml b/config.toml index 1a2f0752..12bf38dc 100644 --- a/config.toml +++ b/config.toml @@ -30,11 +30,13 @@ stripe = "https://donate.organicmaps.app/" address = "Address" back = "Back to News" contact = "Contact Us" +engines = "Supported TTS Engines" install-appgallery = "Install Organic Maps from Huawei AppGallery" install-appstore = "Install Organic Maps from the AppStore" install-googleplay = "Install Organic Maps from Google Play" install-fdroid="Install Organic Maps from F-Droid" language = "English" +const_lang = "Language" name = "Name" token = "Token" diff --git a/content/faq/index.md b/content/faq/index.md index 8202591d..2385f91d 100644 --- a/content/faq/index.md +++ b/content/faq/index.md @@ -10,9 +10,24 @@ TLDR: Organic Maps uses the system text-to-speech (TTS) engine for voice instructions. The default engines vary by device. The choices can include Google Text-to Speech, device manufacturer's engine or a third-party one. -You can use a third-party Text-to-speech engine which can be downloaded from Google Play or F-Droid. +The official recommendation from Organic Maps is [RHVoice](https://rhvoice.org/), which is a free and open source speech engine which can be downloaded from [Google Play](https://play.google.com/store/apps/details?id=com.github.olga_yakovleva.rhvoice.android) and [F-Droid](https://f-droid.org/en/packages/com.github.olga_yakovleva.rhvoice.android/). -[RHVoice](https://rhvoice.org/) is a free and open source speech engine which can be downloaded from [Google Play](https://play.google.com/store/apps/details?id=com.github.olga_yakovleva.rhvoice.android) and [F-Droid](https://f-droid.org/en/packages/com.github.olga_yakovleva.rhvoice.android/). +## Engines + +Below is a comprehensive list showing several languages and the engines which support them (download links can be found after the table): + +{{ tts_table() }} + +## Downloads + +- [Acapela Voices TTS](https://play.google.com/store/apps/details?id=com.acapelagroup.android.tts) +- [Amazon Ivona TTS](https://apkpure.com/ivona-text-to-speech-hq/com.ivona.tts/download) +- [eSpeak TTS](https://espeak.sourceforge.net/) +- [Google Speech Services](https://play.google.com/store/apps/details?id=com.google.android.tts) +- [RHVoice TTS (Recommended)](https://play.google.com/store/apps/details?id=com.github.olga_yakovleva.rhvoice.android) +- [Vocalizer (Code Factory)](https://play.google.com/store/apps/details?id=es.codefactory.vocalizertts) +- [Vocalizer 2 (Nuance)](https://nvda.ru/sintezatory-rechi-vocalizer-expressive2-dlja-nvda#) +- [Yandex SpeechKit TTS](https://4pda.to/forum/index.php?showtopic=200728&st=4200#download) ## Instructions @@ -24,7 +39,7 @@ If you cannot find the relevant setting, open the settings app and search for Te P.S: Do note that these steps may vary based on the phone brand you are using. -The option may not appear if you don't have a TTS installed on your device. Please install Google Speech Services from the [Play Store](https://play.google.com/store/apps/details?id=com.google.android.tts), which is used by many devices or you can install a FOSS third party one such as [RHVoice](https://play.google.com/store/apps/details?id=com.github.olga_yakovleva.rhvoice.android) from F-Droid. +The option may not appear if you don't have a TTS installed on your device. Please refer to the table above to install any one of them that supports your native language. ## Screenshots diff --git a/sass/main.scss b/sass/main.scss index 5ba760e1..3996f077 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -114,7 +114,7 @@ footer { } } -@media (max-width: 768px) { +@media (width <= 768px) { #badges { flex-direction: column; } diff --git a/templates/shortcodes/tts_table.md b/templates/shortcodes/tts_table.md new file mode 100644 index 00000000..c17ff72f --- /dev/null +++ b/templates/shortcodes/tts_table.md @@ -0,0 +1,91 @@ +

+ +{{ trans(key='const_lang', lang=lang) }} |   {{ trans(key='engines', lang=lang) }} +:------------------|:---------------------------------------------------------- +Afrikaans |   eSpeak +Albanian |   RHVoice, eSpeak +Arabic |   Vocalizer, Acapela, Nuance +Aragonese |   eSpeak +Armenian |   eSpeak +Basque |   Vocalizer, Nuance +Bengal |   Vocalizer, Google, Nuance +Bhojpuri |   Vocalizer, Nuance +Bulgarian |   Vocalizer, Nuance, eSpeak +Cantonese |   Vocalizer, Google, Nuance, eSpeak +Catalan |   Vocalizer, Acapela, Nuance, eSpeak +Croatian |   Vocalizer, Nuance, eSpeak +Czech |   Vocalizer, Acapela, Nuance, eSpeak +Danish |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Dongbei |   Vocalizer +Dutch (BE) |   Vocalizer, Nuance +Dutch (NL) |   Vocalizer, Google, Acapela, Ivona, Nuance +English (AU) |   Vocalizer, Google, Acapela, Nuance, RHVoice +English (IE) |   Vocalizer, Nuance +English (IN) |   Vocalizer, Google, Acapela, Nuance +English (SCT) |   Vocalizer, Nuance, RHVoice +English (UK) |   Vocalizer, Google, Acapela, Yandex, RHVoice, eSpeak +English (US) |   Vocalizer, Google, Acapela, Ivona, Yandex, Nuance, RHVoice, eSpeak +English (ZA) |   Vocalizer, Nuance +Esperanto |   RHVoice, eSpeak +Estonian |   eSpeak +Faroese |   Acapela +Farsi |   Vocalizer, Nuance, eSpeak +Finnish |   Vocalizer, Google, Acapela, Nuance, eSpeak +French (BE) |   Vocalizer +French (CA) |   Vocalizer, Nuance +French (FR) |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Galician |   Vocalizer, Nuance +Georgian |   RHVoice, eSpeak +German |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Greek |   Vocalizer, Acapela, Nuance, eSpeak +Hebrew |   Vocalizer, Nuance +Hindi |   Vocalizer, Nuance, eSpeak +Hungarian |   Vocalizer, Google, Nuance, eSpeak +Icelandic |   eSpeak +Indonesian |   Vocalizer, Google, Nuance, eSpeak +Irish |   eSpeak +Italian |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Japanese |   Vocalizer, Google, Acapela, Nuance +Kannada |   Vocalizer, Nuance, eSpeak +Korean |   Vocalizer, Google, Acapela, Nuance +Kurdish |   eSpeak +Kyrgyz |   RHVoice +Latvian |   eSpeak +Lithuanian |   eSpeak +Lojban |   eSpeak +Macedonian |   RHVoice, eSpeak +Malay |   Vocalizer, Nuance, eSpeak +Malayalam |   eSpeak +Mandarin (CN) |   Vocalizer, Acapela, eSpeak +Mandarin (TW) |   Vocalizer, Google, Nuance +Marathi |   Vocalizer, Nuance +Nepalese |   eSpeak +Norwegian |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Polish |   Vocalizer, Google, Acapela, Ivona, Nuance, RHVoice, eSpeak +Portuguese (BR) |   Vocalizer, RHVoice +Portuguese (PT) |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Punjabi |   eSpeak +Romanian |   Vocalizer, Ivona, Nuance, eSpeak +Russian |   Vocalizer, Google, Acapela, Ivona, Yandex, RHVoice, eSpeak +Serbian |   eSpeak +Shaanxi |   Vocalizer +Shanghainese |   Vocalizer +Sichuanese |   Vocalizer +Slovak |   Vocalizer, Nuance, eSpeak +Slovenian |   Vocalizer +Spanish (AR) |   Vocalizer, Nuance +Spanish (CL) |   Vocalizer, Nuance +Spanish (CO) |   Vocalizer +Spanish (ES) |   Vocalizer, Google, Acapela, Ivona, Nuance, eSpeak +Spanish (MX) |   Vocalizer +Swahili |   eSpeak +Swedish |   Vocalizer, Ivona, Nuance, eSpeak +Tamil |   Vocalizer, Nuance, eSpeak +Telugu |   Vocalizer +Tatar |   RHVoice +Thai |   Vocalizer, Google, Nuance +Turkish |   Vocalizer, Google, Acapela, Ivona, Yandex, Nuance, eSpeak +Ukrainian |   Vocalizer, Nuance, RHVoice +Valencian |   Vocalizer +Vietnamese |   Vocalizer, Nuance, eSpeak +Welsh |   eSpeak