Szövegbeszéd API utasítás

, 04-01-2024

Az API csak akkor érhető el, ha finanszírozta fiókját.

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

Két szövegbeszéd opció érhető el az API-n keresztül:

1. opció - gyors szövegbeszéd rövid szövegekhez.
2. opció - szövegbeszéd feladat beállítása.

1. opció - gyors szövegbeszéd rövid szövegekhez

URL az 1. változathoz: https://speechgen.io/index.php?r=api/text

A szöveg az API-nak küldendő, azonnali eredményeket kap.

Ez az opció maximum 2000 karakteres korláttal rendelkezik, valamint maximum 2 hangváltozással. Ha túllépi a korlátokat, hibát kap (állapot = -1).

Kérés formátuma

$data = [ 'token'=>'SekretKeyInYourProfile', // TitkosKulcsAProfilodban 'email'=>'yourMail@gmail.com', // emailCímed@gmail.com 'voice'=>'John', // Hang 'text'=>"Szöveg a szövegből beszédbe", 'format'=>'mp3', // formátum 'speed'=>1.1, // sebesség 'pitch'=>0.8, // hangmagasság 'emotion'=>'good', // jó 'pause_sentence'=>300, // mondat szünet 'pause_paragraph'=>400, // bekezdés szünet 'bitrate'=>48000, // bitráta ];

Kötelező paraméterek:

'token' - 'SekretKeyInYourProfile' // TitkosKulcsAProfilodban 'email' - 'yourMail@gmail.com' // emailCímed@gmail.com 'voice' - 'Hang' 'text' - 'Szöveg a szövegből beszédbe'

Opcionális paraméterek:

'format' - a kapott fájl formátuma, alapértelmezett = mp3, lehetséges értékek ( 'mp3', 'wav', 'ogg') 'speed' - lejátszási sebesség, alapértelmezett 1, (tartomány 0.1-től 2.0-ig) 'pitch'- hangmagasság, alapértelmezett 0, (tartomány -20-tól 20-ig) 'emotion' - hang érzelmi színezete, alapértelmezett 'good', lehetséges értékek ( 'good', 'evil', 'neutral').

Érzelem Nem elérhető minden hanghoz, nézd meg itt.

A válasz JSON formátumban érkezik:

{ "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" }

Leírás:

"id" - egyedi hangazonosító "status" - jelenlegi hangfelvétel állapota. Elérhető 3 értékből: 0 - folyamatban 1 - sikeresen befejezve -1 - hiba "file" - hangfájl útvonala, elérhető ha a státusz = 1 "file_cors" - hangfájl útvonala CORS "error" - hibaszöveg, ha a státusz = -1 "parts" - hangfelvétel darabszáma "parts_done" - befejezett darabok száma "duration" - hangfájl hossza másodpercben, elérhető ha a státusz = 1 "format" - hangfájl formátuma "balans" - egyenleg korlát "cost" - hangfelvétel költségei. (növekszik, ahogy a hangrészek felvételre kerülnek)

Példa rövid szöveg hangfelvételére PHP változat 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);

2. opció: szöveg hangfelvételi feladatának beállítása.

URL a 2. opcióhoz: https://speechgen.io/index.php?r=api/longtext

1. lépés: A szöveg elküldése az API-nak, és egyedi hangazonosító (id) megszerzése.
2. lépés:  A szinkronizálás eredményének lekérése a szinkronizálási azonosító (id) elküldésével.

Ez a módszer korlátlan, és lehetővé teszi akár 1 000 000 karakter szinkronizálását. A szinkronizálás prioritási sorrendben történik (aki először érkezik, az először szolgálják ki) és az időtartama 1 perctől több percig terjedhet a szöveg hosszától függően.

Kérés formátuma

$data = [ 'token'=>'SekretKeyInYourProfile', // TitkosKulcsAProfilodban 'email'=>'yourMail@gmail.com', // emailCímed@gmail.com 'voice'=>'John', // Hang 'text'=>"Szöveg", 'format'=>'mp3', // formátum 'speed'=>1.1, // sebesség 'pitch'=>0.8, // hangmagasság 'emotion'=>'good', // jó ];

Kötelező paraméterek:

'token' - 'SekretKeyInYourProfile' // TitkosKulcsAProfilodban 'email' - 'yourMail@gmail.com' // emailCímed@gmail.com 'voice' - 'Hang' 'text' - 'Szöveg'

Opcionális paraméterek:

'format' - a kapott fájl formátuma, alapértelmezett = mp3, lehetséges értékek( 'mp3', 'wav', 'ogg') 'speed' - sebesség, alapértelmezett 1, (tartomány 0.1-től 2.0-ig) 'pitch'- hangmagasság, alapértelmezett 0, (tartomány -20-tól 20-ig) 'emotion' - érzelmi színezet, alapértelmezett 'good', lehetséges értékek ( 'good', 'evil', 'neutral').

Nem elérhető minden hanghoz, nézd meg itt.

A válasz JSON formátumban érkezik:

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

Leírás:

"id" - egyedi hangazonosító "status" - jelenlegi hangfelvétel állapota. Elérhető 2 értékből: 1 - feladat sikeresen hozzáadva -1 - hiba "error" - hibaszöveg, ha a státusz = -1 "parts" - hangfelvételek száma "parts_done" - befejezett darabok száma "format" - hangfájl formátuma "balans" - a számla korlát egyenlege "cost" - hangfelvétel költségei. (növekszik, ahogy a hangrészek felvételre kerülnek)

2. lépés. Miután létrehoztunk egy feladatot és megszereztünk egy azonosítót (id), kérés küldendő a https://speechgen.io/index.php?r=api/result címre, hogy megtudjuk az eredményt.

Kérés formátuma

$data = [ 'token'=>'SekretKeyInYourProfile', // TitkosKulcsAProfilodban 'email'=>'yourMail@gmail.com', // emailCímed@gmail.com 'id'=>4153594, // EgyediHangAzonosító ];

Mandatory parameters:

'token' - SekretKeyInYourProfile 'email' - yourMail@gmail.com 'id' - Unique voice ID obtained in step 1

The response comes in 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" }

Description:

"id" - unique voice ID "status" - current voiceover status. Available from 3 values: 0 - in the midst of 1 - completed successfully -1 - error "file" - audio file path, available if status = 1 "error" - error text, in case of, if status = -1 "parts" - number of voiceovers "parts_done" - number of pieces completed "duration" - audio file duration in seconds, available if status = 1 "format" - audio file format "balans" - the balance of the account limits "cost" - voiceover costs. ( is increased as the voice parts are dubbed) "cuts" - Array of fragments, if the "cut" tag is used in the text

Example of a short test voiceover in 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); } //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); }

Cookies-t használunk, hogy biztosítsuk a legjobb élményt weboldalunkon. További információ: Adatvédelmi irányelvek

Elfogadom Cookies