API inštrukcia pre prevod textu na reč

, 15-09-2025

API je dostupná až po dobití účtu.

JSON API hlasy https://speechgen.io/index.php?r=api/voices.

Cez API sú k dispozícii 2 možnosti prevodu textu na reč:

1 možnosť - rýchly prevod krátkych textov.
2 možnosť - nastavenie úlohy na prevod reči.

Príklady integrácie

Zistite, ako zefektívniť tvorbu hlasového obsahu integráciou SpeechGen.io so servisom automatizácie MAKE. Tento návod pokrýva automatizáciu procesov prevodu textu na reč, čím sa zjednodušuje a zefektívňuje generovanie hlasového obsahu pre rôzne aplikácie.

1 možnosť - rýchly prevod krátkych textov

URL pre variant 1: https://speechgen.io/index.php?r=api/text

Text sa posiela do API, výsledky dostanete okamžite.

Táto možnosť má maximálny limit 2000 znakov. A tiež maximálne 2 zmeny hlasu. Ak dôjde k prekročeniu limitov, dostanete chybu (status = -1).

Formát požiadavky

$data = [ 'token'=>'SekretKeyInYourProfile', 'email'=>'yourMail@gmail.com', 'voice'=>'John', 'text'=>"Text for text to Speech", 'format'=>'mp3', 'speed'=>1.1, 'pitch'=>0.8, 'emotion'=>'good', 'pause_sentence'=>300, 'pause_paragraph'=>400, 'bitrate'=>48000, ];

Povinné parametre:

'token' - 'SekretKeyInYourProfile' 'email' - 'yourMail@gmail.com' 'voice' - 'Hlas' 'text' - 'Text pre prevod textu na reč'

Voliteľné parametre:

'format' - formát výsledného súboru, predvolené = mp3, možné hodnoty ( 'mp3', 'wav', 'ogg') 'speed' - rýchlosť prehrávania, predvolené 1, (rozsah od 0.1 do 2.0) 'pitch'- výška hlasu, predvolené 0, (rozsah od -20 do 20) 'emotion' - emócia hlasu, predvolené 'good', možné hodnoty ( 'good', 'evil', 'neutral'). 'pause_sentence' - Veľkosť pauzy medzi vetami v milisekundách. 'pause_paragraph' - Veľkosť pauzy medzi odsekmi v milisekundách. 'bitrate'=>48000 - Vzorkovacia frekvencia od 8000 do 192000 Hz.

Emócia nie je dostupná pre všetky hlasy, pozrite si ju tu.

Odpoveď prichádza v JSON:

{ "id":"4153594", "status":"0", "file":"result.mp3", "file_cors":"result_cors.mp3", "parts":"5", "parts_done":"2", "duration":"0", "format":"mp3", "error":"", "balans":"3331.2720000314", "cost":"0.06" }

Popis:

"id" - unikátne ID hlasu "status" - aktuálny stav prevodu reči. Dostupné z 3 hodnôt: 0 - spracováva sa 1 - úspešne dokončené -1 - chyba "file" - cesta k zvukovému súboru, dostupná ak status= 1 "file_cors" - cesta k zvukovému súboru CORS "error" - text chyby, v prípade, ak status = -1 "parts" - počet prevodov reči "parts_done" - počet dokončených častí "duration" - trvanie zvukového súboru v sekundách, dostupné ak status = 1 "format" - formát zvukového súboru "balans" - limitovaný zostatok "cost" - náklady na prevod reči. (zvyšuje sa s dabovaním častí hlasu)

Príklad prevodu krátkeho textu v PHP variant 1

$data = [ 'token' => '123456', 'email' => 'mail@mail.com', 'voice' => 'John', 'text' => "Text", 'format' => 'mp3', 'speed' => 1.1, 'pitch' => 0, 'emotion' => 'good', ]; $url = "https://speechgen.io/index.php?r=api/text"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); var_dump($response); $response = json_decode($response, true); if (curl_errno($ch)) { var_dump("Connection error with text recognition server, " . curl_error($ch)); } else { var_dump($response); if ($response["status"] == 1) { //Copy echo " ok " . $response["file"]; copy($response["file"], 'Filename.' . $response["format"]); } else { //Error, no voiceover possible echo $response["error"]; } } curl_close($ch);

Možnosť 2 je nastavenie úlohy na prevod reči pre text.

URL pre možnosť 2: https://speechgen.io/index.php?r=api/longtext

Krok 1: Text sa posiela do API a získava sa unikátne ID hlasu (id).
Krok 2:  Vyžiadajte výsledok dabingu zaslaním identifikátora dabingu (id).

Táto metóda nemá žiadne obmedzenia a umožňuje dabing textu až do 1 000 000 znakov. Dabing prebieha v poradí priority (kto prv príde, ten prv melie) a môže trvať od 1 do niekoľkých minút, v závislosti od dĺžky textu.

Formát požiadavky

$data = [ 'token'=>'SekretKeyInYourProfile', 'email'=>'yourMail@gmail.com', 'voice'=>'John', 'text'=>"Text", 'format'=>'mp3', 'speed'=>1.1, 'pitch'=>0.8, 'emotion'=>'good', 'pause_sentence'=>300, 'pause_paragraph'=>400, 'bitrate'=>48000, ];

Povinné parametre:

'token' - 'SekretKeyInYourProfile' 'email' - 'yourMail@gmail.com' 'voice' - 'Hlas' 'text' - 'Text'

Voliteľné parametre:

'format' - formát výsledného súboru, predvolené = mp3, možné hodnoty( 'mp3', 'wav', 'ogg') 'speed' - rýchlosť, predvolené 1, (rozsah od 0.1 do 2.0) 'pitch'- výška hlasu, predvolené 0, (rozsah od -20 do 20) 'emotion' - emočné sfarbenie, predvolené 'good', možné hodnoty ( 'good', 'evil', 'neutral'). 'pause_sentence' - Veľkosť pauzy medzi vetami v milisekundách. 'pause_paragraph' - Veľkosť pauzy medzi odsekmi v milisekundách. 'bitrate'=>48000 - Vzorkovacia frekvencia od 8000 do 192000 Hz.

Nie je dostupné pre všetky hlasy, pozrite si tu.

Odpoveď prichádza v JSON:

{ "id":"4153594", "status":"0", "parts":"5", "parts_done":"0", "format":"mp3", "error":"", "balans":"3331.2720000314", "cost":"0.00" }

Popis:

"id" - unikátne ID hlasu "status" - aktuálny stav prevodu reči. Dostupné z 2 hodnôt: 1 - úloha úspešne pridaná -1 - chyba "error" - text chyby, v prípade, ak status = -1 "parts" - počet prevodov reči "parts_done" - počet dokončených častí "format" - formát zvukového súboru "balans" - zostatok limitov účtu "cost" - náklady na prevod reči. (zvyšuje sa s dabovaním častí hlasu)

Krok 2. Po vytvorení úlohy a získaní identifikátora (id) je potrebné zaslať požiadavku na https://speechgen.io/index.php?r=api/result, aby ste zistili výsledok.

Formát požiadavky

$data = [ 'token'=>'SekretKeyInYourProfile', 'email'=>'yourMail@gmail.com', 'id'=>4153594, ];

Povinné parametre:

'token' - SekretKeyInYourProfile 'email' - yourMail@gmail.com 'id' - Unikátne ID hlasu získané v kroku 1

Odpoveď prichádza v JSON:

{ "id":"4153594", "status":"0", "file":"result.mp3", "cuts":["result_1.mp3","result_2.mp3",...], "parts":"5", "parts_done":"0", "format":"mp3", "error":"", "balans":"3331.2720000314", "cost":"0.00" }

Popis:

"id" - unikátne ID hlasu "status" - aktuálny stav prevodu reči. Dostupné z 3 hodnôt: 0 - v procese 1 - úspešne dokončené -1 - chyba "file" - cesta k zvukovému súboru, dostupná ak status = 1 "error" - text chyby, v prípade, ak status = -1 "parts" - počet prevodov reči "parts_done" - počet dokončených častí "duration" - trvanie zvukového súboru v sekundách, dostupné ak status = 1 "format" - formát zvukového súboru "balans" - zostatok limitov účtu "cost" - náklady na prevod reči. (zvyšuje sa s dabovaním častí hlasu) "cuts" - Pole fragmentov, ak je v texte použitý tag "cut"

Príklad krátkeho testovacieho prevodu reči v PHP variant 2

//STEP 1 $data = [ 'token' => '123456', 'email' => 'mail@mail.com', 'voice' => 'John', 'text' => "Text", 'format' => 'mp3', 'speed' => 1.1, 'pitch' => 0, 'emotion' => 'good', ]; $url = "https://speechgen.io/index.php?r=api/longtext"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); var_dump($response); $response = json_decode($response, true); $resultId = 0; if (curl_errno($ch)) { var_dump("Error in connecting to the text recognition server, " . curl_error($ch)); } else { var_dump($response); if ($response["status"] == 1) { //Copy echo " ok " . $response["file"]; copy($response["file"], 'FileName.' . $response["format"]); } elseif ($response["status"] == 0) { //Remember the voice ID, and ask for the result later $resultId = $response["id"]; } else { //Error, no voiceover possible echo $response["error"]; } } curl_close($ch); //STEP 2 // Every minute we make a query-check of the result if($resultId){ $data = [ 'token'=>'123456', 'email'=>'mail@mail.com', 'id'=>$resultId, ]; $url = "https://speechgen.io/index.php?r=api/result"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); var_dump($response); $response = json_decode($response,true); if (curl_errno($ch)) { var_dump("Error in connecting to the text recognition server, ".curl_error($ch)); }else{ var_dump($response); if($response["status"] == 1){ //Copy echo " ok ".$response["file"]; copy($response["file"], 'FileMane.' . $response["format"]); }elseif($response["status"] == 0){ //Not ready yet, we will ask for the result later echo "In process..."; }else{ //Error, no voiceover possible echo $response["error"]; } } curl_close($ch); }

Používame cookies na zabezpečenie najlepšieho zážitku na našej webovej stránke. Dozvedieť sa viac: Zásady ochrany osobných údajov

Súhlasiť Cookies