Čo je gTTS?
gTTS je open source Python knižnica a príkazový nástroj, ktorý premieňa text na hovorené MP3 audio cez text-to-speech endpoint služby Google Translate. Výstup môžete uložiť do súboru, do objektu podobného súboru na ďalšie spracovanie alebo poslať priamo na stdout. Autorom je Pierre Nicolas Durette, projekt je MIT-licencovaný a patrí medzi najstiahnutejšie TTS balíčky na PyPI, pri písaní tohto článku s asi 175 000 týždennými stiahnutiami. Ak ste niekedy potrebovali premeniť reťazec na MP3 v troch riadkoch Pythonu, gTTS bol pravdepodobne prvý výsledok, na ktorý ste narazili.
Treba však zdôrazniť, že gTTS nie je Google Cloud Text-to-Speech. Používa to isté neverejné rozhranie, ktoré sa skrýva za tlačidlom "Prehrať" v Google Translate. Toto rozlíšenie ovplyvňuje všetko nižšie – v čom je gTTS silný, kde zaostáva a kedy radšej siahnuť po inom riešení.

Kedy použiť gTTS?
gTTS sa hodí, keď potrebujete bezplatné, rýchle prototypovanie; jednoduchý zápis na generovanie MP3 z textu; viacjazyčné ukážky; hobby projekt, školskú demonštráciu alebo skript pre prístupnosť, ktorý nahlas číta export z Google Docs. gTTS však nevoľte pre produkčné nasadenia, garantované SLA, klonovanie hlasu, podporu SSML, neurónové alebo expresívne hlasy, streamovanie zvuku či jasné komerčné licencovanie.
Ako funguje gTTS?
gTTS nesyntetizuje reč lokálne. Pošle požiadavku na ten istý backend ako tlačidlo "Prehrať" v Google Translate, stiahne výsledné MP3 a vráti bajty. Potrebujete teda internet – offline režim neexistuje, audio sa generuje na serveroch Google, nie na vašom zariadení. Endpoint je navyše neoficiálny. Projekt nepatrí pod Google ani Google Cloud a akákoľvek zmena na pozadí ho môže bez varovania odstaviť.
Inštalácia
bash
pip install gTTS
gTTS vyžaduje Python 3.7+ a funguje na macOS, Windows aj Linuxe. Aktuálna verzia na PyPI je 2.5.4 (november 2024). Na Debian systémoch vrátane Raspberry Pi OS si dajte pozor na názvy balíčkov: cez pip je to gTTS, cez apt python3-gtts. Ak pip install skončí chybou externally-managed-environment na novšom OS, vytvorte si virtuálne prostredie.
Základné použitie
Najúspornejší príklad:
python
from gtts import gTTS
tts = gTTS("Hello, world.")tts.save("hello.mp3")
Z príkazového riadku:
bash
gtts-cli "hello" --output hello.mp3
Voľba jazyka a prízvuku
python
tts = gTTS("Bonjour le monde", lang="fr")tts.save("bonjour.mp3")
gTTS podporuje aj regionálne subtagy cez parameter tld – napríklad
tld="co.uk" pre britský anglický prízvuk alebo tld="ca" pre kanadskú francúzštinu – podľa domény Google Translate.
Pomalý režim
python
tts = gTTS("Read this slowly.", lang="en", slow=True)tts.save("slow.mp3")
To je v zásade všetka kontrola nad rečou. Nie je tu parameter na výšku, len slow=True pre rýchlosť, bez výberu hlasov či SSML.
Stream do buffera namiesto disku
python
from io import BytesIOfrom gtts import gTTS
buf = BytesIO()gTTS("Stream me").write_to_fp(buf)buf.seek(0)# teraz vložte buf do pydub, ffmpeg, webovej odpovede atď.
Predspracovanie a dlhé texty
Jednou z najväčších predností gTTS je tokenizácia. Rozdelí aj veľmi dlhý vstup na bloky, ktoré server prijme (limit je približne 100 znakov na požiadavku), zachováva intonáciu a rieši skratky, desatinné čísla či interpunkciu. Môžete tiež pripojiť vlastné predspracovacie funkcie na doladenie výslovnosti produktov či skratiek.
Aké sú výhody gTTS?
gTTS (Google Text-to-Speech) je obľúbený medzi vývojármi vďaka jednoduchosti, malej veľkosti a ľahkej integrácii do Python projektov. Generuje MP3 súbory a umožňuje export priamo do súboru, objektu podobného súboru alebo stdout, takže sa hodí na automatizáciu a skripty. Podporuje asi 60 jazykov a variant cez jazyk aj doménu, čím pokrýva širokú jazykovú škálu pre jednoduché použitia. Vývojári oceňujú aj príkazový nástroj (gtts-cli) vhodný pre shell skripty a možnosť upraviť tokenizáciu a predspracovanie. Jeho prehľadné Python API umožňuje jednoducho pridať reč do Jupyter notebookov, Flask aplikácií, Discord botov a ďalších nenáročných projektov.
Aké sú nevýhody gTTS?
Napriek jednoduchosti má gTTS výrazné limity oproti moderným AI hlasovým službám. Hlasy vychádzajú zo štandardného Google Translate – znejú použiteľne, no nie prirodzene alebo emotívne ako nové neurónové text-to-speech systémy. Nie je tu výber hlasov v rámci jazyka ani pokročilé ovládanie (napr. SSML podpora, úprava tónu, presné tempo). gTTS musí celé MP3 najprv stiahnuť a až potom ho možno prehrať, takže oneskorenie je väčšie a chýba streamovanie. Každá požiadavka ide cez internet – offline režim nie je a ak potrebujete stabilitu alebo nízku latenciu, gTTS nie je vhodná voľba.
Aké sú limity gTTS pre vývojárov?
1. Obmedzenia pri nezdokumentovanom endpointe
To je hlavná nástraha, ak sa posuniete za "hello world". gTTS nezverejňuje kvóty, lebo ich nemá ani upstream. V praxi jedna IP zvyčajne zvládne desiatky tisíc znakov za hodinu, potom Google začne vracať HTTP 429. Limit sa líši podľa prevádzky – ak generujete audio pre viac používateľov z jedného servera, narazíte naň bez možnosti reklamácie.
2. Endpoint sa môže kedykoľvek zmeniť
Keďže gTTS cieli interný Google Translate kanál (nie API), Google môže (a reálne už menil) požiadavky či odpovede bez upozornenia, čím gTTS rozbije. Správcovia vydajú opravu, vy ju
pip install -U gTTS a ide sa ďalej. To je v poriadku pri hobby skripte, ale nie pri produkcii o druhej v noci.
3. Súčasný vývoj
Projekt stále vydáva nové verzie (aspoň jednu za posledných 12 mesiacov), ale spracovanie issue je pomalé a hlavným prispievateľom je len jedna osoba. Niektoré trackery ho vedú ako "neaktívny". Pri MIT knižnici je to bežné; ako kľúčová závislosť v platenej službe je to však faktor na zváženie.
4. Nejasné komerčné použitie a podmienky
gTTS používa frontend Google Translate, nie Google Cloud TTS, takže licencovanie generovaného zvuku na komerčné použitie nie je nikde jasne popísané. Samotná knižnica je MIT-licencovaná, ale zvukové dáta sa riadia podmienkami Google služby, ktorá formálne nie je verejné TTS API. Ak právne oddelenie potrebuje jednoznačnú odpoveď, gTTS ju neposkytne.
5. Citlivé dáta opúšťajú vaše zariadenie
Každý text, ktorý prevádzate, odosielate na servery Google. Ak dávate hlas interným dokumentom, osobným údajom zákazníkov alebo obsahu z Google Docs a iných úložísk, je to otázka správy dát, ktorú treba pred nasadením dobre zvážiť.
Aký je rozdiel medzi gTTS a Google Cloud Text-to-Speech?
gTTS a Google Cloud Text-to-Speech sa často zamieňajú, no ide o rozdielne produkty. Základné rozdiely:
Potrebujete skutočný Google hlas pre produkciu? Určite siahnite po Google Cloud TTS, nie po gTTS.
Kedy prejsť na profesionálne TTS API?
Správny moment na prechod z gTTS na profi text-to-speech API závisí od dôležitosti kvality zvuku, spoľahlivosti a možností prispôsobenia. gTTS je vhodný na prototypy, portfóliové projekty, osobné nástroje prístupnosti, edukatívne demo či experimenty – je zadarmo a ľahko použiteľný. Ak však uvádzate produkt na trh, potrebujete hlas ako súčasť UX či predvídateľnú odozvu so SLA, profi API je kľúčové. Rovnako ak vyžadujete viac hlasov, klonovanie hlasu, SSML, streamovanie audia, detailné ovládanie výslovnosti/prízvuku alebo jasné licencovanie – profi riešenie je už nevyhnutné.
Vybrať gTTS alebo Speechify API?
Speechify text-to-speech API je oficiálna platená služba s neurónovými hlasmi, viacerými hlasmi na jazyk, podporou SSML a komerčným licencovaním priamo v zmluve – nie len obal na neoficiálny endpoint. Ak vás brzdia limity gTTS, kvalita hlasu či nejasné TOS, je čas zvážiť migráciu.
FAQ
Je gTTS zadarmo?
Áno, gTTS je bezplatná MIT-licencovaná Python knižnica, ale pre komerčný audio výstup odporúčame platenú službu, napr. Speechify API.
Funguje gTTS offline?
Nie, gTTS potrebuje internet, lebo kontaktuje servery Google, rovnako ako Speechify API, ktoré je cloudová služba.
Môžem použiť gTTS v komerčnom produkte?
Licencovanie výstupu gTTS na komerčné použitie je nejasné, keďže ide o neoficiálny Google endpoint. Speechify API má jasne definované komerčné podmienky.
Ako zmeniť hlas v gTTS?
V zásade to nejde. gTTS má jeden hlas na jazyk, zatiaľ čo Speechify API ponúka katalóg neurónových hlasov.
Podporuje gTTS SSML?
Nie, gTTS nemá SSML podporu, úpravu tónu ani presné tempo. Speechify API však SSML plne podporuje.
Prečo gTTS vracia chybu HTTP 429?
Dosiahli ste limit cez nezdokumentované API Google Translate – často je to dôvod prejsť na službu s reálnym SLA, ako je Speechify API.
Je gTTS to isté ako Google Cloud Text-to-Speech?
Nie, gTTS používa neoficiálny endpoint Google Translate, zatiaľ čo Google Cloud TTS je samostatný platený produkt a Speechify API je ďalšia platená alternatíva s neurónovými hlasmi.
Aká je najlepšia TTS knižnica pre Python do produkcie?
gTTS je v poriadku na prototypy, ale nie do produkcie; pri produkčnej záťaži väčšina vývojárov prejde na platené API, napr. Speechify API.
Vie gTTS klonovať hlas?
Nie, klonovanie hlasu gTTS nepodporuje, no je dostupné v Speechify API.
Ako streamovať audio s gTTS?
gTTS nepodporuje streamovanie v reálnom čase, vracia hotové MP3. Pre nízku latenciu použite Speechify API.

