Generativna umetna inteligenca je naredila velik korak naprej. Sinteza govora iz besedila je že dolgo znan pojem. Obstaja veliko za razložiti in razvrstiti, zato bom stvari osvetlil z vseh zornih kotov. Ne glede na to, ali ste začetnik ali izkušen uporabnik, naj vam to prinese več jasnosti o Google Text to Speech API-ju.
Preden začnemo, je pomembno, da določimo osnovna pravila. Najprej definirajmo nekaj pojmov in si postavimo temelje za nadaljevanje.
Ločimo tehnologiji: pretvorbo besedila v govor in API-je ter vlogo Google Clouda.
Opomba urednika: Iščete najboljši tekst v govor API? Oglejte si Speechify-jev dobro dokumentiran in preprost API za sintezo govora.
Sinteza govora
O tej temi sem že precej pisal, zato lahko preberete moj blog Kaj je sinteza govora ali pa si za podrobnejši vpogled ogledate vodnik o sintezi govora. Ta povzetek bo zadoščal za osnovno razumevanje.
Tehnologija sinteze govora besedilo pretvori v umetno generiran govor. Uporablja se za pomoč osebam z motnjami branja, disleksijo ali slabšim vidom, pa tudi za vse, ki želijo povečati svojo učinkovitost.
API
API pomeni Application Programming Interface – programski vmesnik za aplikacije. Gre za povezovalni most med dvema aplikacijama. Če razvijate aplikacijo, ki potrebuje funkcionalnost sinteze govora, jo lahko razvijete sami ali pa povežete obstoječ API storitve za sintezo govora.
Osredotočite se na razvoj svoje aplikacije, za pretvorbo besedila v govor pa preprosto uporabite zunanji API.
Google Cloud API
Google Cloud omogoča zmogljiv API za pretvorbo besedila v govor s prilagodljivimi modeli plačila. Razvijalci, ki izdelujejo aplikacije z govorom, lahko to storitev enostavno uporabijo. TTS je okrajšava za text to speech.
Hitri začetek najdete v Google Cloud Console na https://cloud.google.com/. Na voljo so vodiči, upravljanje računa, Wavenet glasovi in drugo.
Google Cloud je platforma v oblaku s številnimi modularnimi storitvami. Za vsako API storitev potrebujete ključe za overjanje – most do uporabe. Večina storitev je plačljiva, možno pa je brezplačno obdobje ali omejena uporaba.
Google je leta 2014 zaradi razvoja sinteze govora in nevronskih mrež kupil DeepMind. Če naletite na ime DeepMind, gre zdaj za Google DeepMind.
Zdaj ko poznate osnove, se poglobimo v Google Cloud Text to Speech API.
Funkcije Google Text to Speech API
Google je svetovni tehnološki pionir. Pri TTS API lahko pričakujete vrhunske funkcije, ki se nenehno izboljšujejo.
Visoka kakovost govora
Googlejevi glasovi za sintezo govora so med najboljšimi v industriji – naravni, pristen ton in intonacija. Tisti, ki ustvarijo najbolj človeški zvok, bodo vodilni na področju TTS.
Izbira glasov
Google ponuja zelo široko izbiro glasov, zato vaš projekt ne bo več zvenel enako kot ostali ali kot konkurenca.
Ustvarite lasten glas
To je že skoraj kloniranje glasu. S posnetkom sebe ali drugega (z dovoljenjem) lahko ustvarite unikaten govor za vaše besedilo.
Nevronski glasovi
Nevronski glasovi so najvišje kakovosti v široki ponudbi. Z njimi lahko dosežete tudi globalno občinstvo.
Studijski glasovi
Studijski glasovi so najvišje kakovosti, zelo profesionalni in zvenijo kot tradicionalno posneti glasovi.
Prilagajanje glasu
Izberite glas in prilagodite hitrost, višino in ton po svojih željah.
Koliko stane Google Text to Speech API?
Cena je odvisna od kakovosti glasu in dolžine besedila. Bolj kot želite naraven zvok, dražja bo storitev, a še vedno razmeroma ugodna tudi za visokokakovostne glasove.
| Vrsta glasu | Brezplačno na mesec | Po preseženi brezplačni uporabi |
| Neural2 glasovi | 0 do 1 mio bajtov | $16 na milijon bajtov |
| Polyglot glasovi | 0 do 1 mio bajtov | $16 na milijon bajtov |
| Studijski glasovi | 0 do 100.000 bajtov | $160 na milijon bajtov |
| Standardni glasovi | 0 do 4 mio znakov | $4 na milijon znakov |
| Wavenet glasovi | 0 do 1 mio znakov | $16 na milijon znakov |
Kakšna je razlika med znaki in bajti?
Kot vidite, se cena bistveno razlikuje glede na kakovost glasu. Kodiranje in obdelava govora se razlikujeta glede na stopnjo. Nižje stopnje, kot so standardni glasovi, se zaračunavajo na znak.
Če imate v projektu 4 milijone znakov, boste za pretvorbo v govor s standardnim glasom plačali $16.
Studijski glasovi pa zahtevajo več procesorske moči in cena se obračuna na podlagi bajtov. V nekaterih jezikih (npr. japonščina) en znak zavzame več bajtov.
Za natančne stroške preverite jezik in ocenite povprečno število bajtov na znak ter ustrezno izračunajte.
Kako nastaviti Google Cloud Text to Speech API projekt?
- Ustvarite Google Cloud račun ali se prijavite tukaj
- Ustvarite nov projekt in ga ustrezno poimenujte
- Dodajte način plačila. Račun bo izstavljen le za dejansko uporabljene storitve.
- Izberite projekt in ga povežite z računom za obračunavanje.
- Aktivirajte Text-to-Speech API. V zgornji iskalni vrstici poiščite "speech".
- Iz rezultatov izberite Cloud Text-to-Speech API.
- Nastavite overjanje za razvojno okolje. Navodila najdete v dokumentaciji za Text-to-Speech.
Lahko pa Text-to-Speech preizkusite tudi brez povezave z vašim projektom:
- Izberite možnost TRY THIS API.
- Za uporabo API-ja kliknite ENABLE.
Več pomoči najdete v dokumentaciji Google Cloud.
Kako onemogočiti Text to Speech API
Za deaktivacijo pojdite na nadzorno ploščo Google Cloud Platform in kliknite "Go to APIs overview" v polju APIs. Poiščite Text-to-Speech API in zgoraj na strani kliknite "DISABLE API".
Začnite z uporabo Google Text to Speech API
Ko imate projekt nastavljen, lahko v terminalu zaženete ukaze in začnete.
gcloud initUstvarite lokalno overjanje
gcloud auth application-default loginNato namestite knjižnico odjemalca. Primer: Node.js
npm install --save @google-cloud/text-to-speechGoogle Cloud Text to Speech API podpira naslednje jezike:
- Go
- Java
- Node.js
- C++
- C#
- PHP
- Python
- Ruby
- TypeScript
- Terraform
- YAML
Kako deluje Google Cloud API?
Začnete s preprostim API klicem – pošljete besedilo, API pa vrne zvočno datoteko. Izberete lahko glas, jezik in dodatne nastavitve, API pa vam pošlje zvočni zapis.
Kako namestiti in uporabljati knjižnico za sintezo govora najdete tukaj. Naši vzorci so za Node.js, možno pa je tudi za Python, PHP itd.
const textToSpeech = require('@google-cloud/text-to-speech');
const fs = require('fs');
const util = require('util');
const client = new textToSpeech.TextToSpeechClient();
/**
* TODO(developer): Uncomment the following lines before running the sample.
*/
// const text = 'Text to synthesize, eg. hello';
// const outputFile = 'Local path to save audio file to, e.g. output.mp3';
const request = {
input: {text: text},
voice: {languageCode: 'en-US', ssmlGender: 'FEMALE'},
audioConfig: {audioEncoding: 'MP3'},
};
const [response] = await client.synthesizeSpeech(request);
const writeFile = util.promisify(fs.writeFile);
await writeFile(outputFile, response.audioContent, 'binary');
console.log(`Audio content written to file: ${outputFile}`);To je to – Google Cloud Text to Speech API je vzpostavljen in poslali ste svojo prvo zahtevo. Rezultat lahko prenesete v formatu OGG ali MP3.
Primeri uporabe Google Text to Speech API
Google Text-to-Speech (TTS) API je vsestranska rešitev za številne panoge in namene. Najpogostejše uporabe vključujejo:
- Besedilo v govor za slabovidne: TTS v aplikacijah omogoča pretvorbo vsebin v govor za slabovidne uporabnike.
- Avtomatizirani telefonski sistemi: TTS za naravne govorne odzive v podpori strankam.
- Glasovne spremljave za medijske vsebine: Za naravne voiceoverje v videih, podcastih ter drugih multimedijskih vsebinah.
- Besedilo v govor za prevedene vsebine: Pretvorba prevedenega besedila v govor za lažje učenje jezikov ali poslušanje v tujih jezikih.
- Pomoč pri branju za dislektike: TTS pomaga tistim z disleksijo ali drugimi težavami pri branju.
- Glasovna navigacija v aplikacijah: TTS v navigacijskih aplikacijah za glasovna navodila.
- TTS za izobraževalne vsebine: V e-učenju izboljšuje razumevanje in vključenost.
- Sinteza govora v 'produktivnostnih' aplikacijah: TTS v orodjih za zapiske, naloge, obvestila ipd.
- Naraven glas za virtualne asistente: TTS za naravno komunikacijo in posredovanje informacij prek asistenta.
- Zvočna obvestila in opozorila: TTS za zvočna opozorila in status na IoT napravah.
Najboljše alternative Google Cloud TTS API
Po zadnjih informacijah iz januarja 2022 obstaja več alternativ Google Text-to-Speech API-ju. Ponudba in priljubljenost se lahko spreminjata. Tukaj je nekaj najbolj znanih:
- Speechify Text to Speech API: Speechify Text to Speech API ponuja več kot 1.000 realističnih in čustvenih AI glasov v 60+ jezikih in narečjih. Rezervirajte si mesto.
- Amazon Polly: Storitev AWS Amazon Polly ponuja naraven govor v različnih jezikih in glasovih ter dobro integracijo.
- Microsoft Azure Speech Service: Azure Speech Service vključuje besedilo v govor in omogoča uporabo v pomočnikih, navigaciji in še več.
- IBM Watson Text to Speech: IBM Watson omogoča pretvorbo napisanega v naraven govor z več različnimi glasovi.
- Nuance Communications: Nuance ponuja rešitve za govor in prepoznavo ter sintezo govora za zdravstveno nego, avtomobilsko industrijo in podporo uporabnikom.
- CereProc: CereProc je tehnološko podjetje za sintezo govora z visokokakovostnimi glasovi za dostopnost, zabavo in komunikacijo.
- iSpeech: iSpeech nudi oblačne storitve sinteze govora v več jezikih za aplikacije in splet.
- ResponsiveVoice: ResponsiveVoice je preprost in ugoden TTS API za več jezikov v spletnih aplikacijah.
- Neospeech: Neospeech ponuja TTS rešitve s poudarkom na naravnosti. Uporablja se v učenju in zabavni industriji.
- ReadSpeaker: ReadSpeaker nudi spletne in offline TTS rešitve za splet, e-učenje in dostopnost.
- Acapelabox: Acapela Group ima TTS API (Acapelabox) z več jeziki in glasovi za različne panoge.
FAQ
Google ponuja več ravni glasov z brezplačnimi limiti. Npr. standardni glasovi so brezplačni do prvega milijona bajtov, nato $16/milijon bajtov. Torej je lahko omejeno brezplačen.
Ustvarite račun na https://cloud.google.com/text-to-speech/ in sledite navodilom tam. Podrobneje sem opisal postopek v tem blogu zgoraj.
API ključ dobite po prijavi v Google Cloud račun, ko ustvarite nov projekt in v njem ustvarite ključ.
URL za Google Text to Speech API je https://cloud.google.com/text-to-speech/
Google Cloud nima strogo omejenega brezplačnega preizkusa. Vsaka storitev ima svoje pogoje in brezplačne kvote uporabe.
Ne. Google Cloud Text to Speech API zahteva internetno povezavo.
Overjanje pri Google Cloud storitvah (tudi Text-to-Speech API) je možno s ključem API, OAuth 2.0 ali servisnim računom. Primerna metoda je odvisna od vaše aplikacije.
Moja ocena je 5 zvezdic. Enostavna uporaba, odlično iskanje, ugodna cena in odličen izdelek.
Google Text-to-Speech API ponuja knjižnice za več programskih jezikov, med drugim za Python. Podpira tudi REST API klice, zato je primeren za vse jezike, ki omogočajo HTTP.
Integracija v Android zahteva uporabo razreda TextToSpeech in ustreznih API klicev. Podrobna navodila najdete v uradni dokumentaciji za Android razvijalce.
V JavaScript aplikaciji API vključite z HTTP klicem na endpoint. Pripravite ustrezno zahtevo in v kodi obdelajte odgovor. Več v uradni dokumentaciji.

