Synthesizes speech synchronously: receive results after all text input has been processed. Request body The request body contains data with the following structure: Fields Response body If successful, the response body contains data with the following structure: The message returned to the client by the method. Fields The audio data bytes...
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
ecco la prima esecuzione - ha caricato un file di testo con testo russo, alcuni scarabocchi - ma ha, salvare il file come .wav
copiato e incollato - ha ottenuto un file.wav nell'archivio salvato in.wav.
Beh, ecco il fatto di Google
Danno il flusso in Base64. Sono riuscito a convertirlo in mp3, ma non con LINEAR16.
LINEAR16 dovrebbe essere convertito in wav
domanda agli esperti
Fare riferimento a un servizio di Google nel codice
In Google
1. solo un'intestazione
2. la chiave viene passata tramite url
3. Controlliamo il motore tramite il file json.
In curl è così
richiesta.json
{"input":{"text":"M"},"voice":{"languageCode":"en-gb"},"audioConfig":{"audioEncoding":"LINEAR16"}}curl ottiene la risposta corretta
Ora implementa questo con WebRequest
Ma la risposta torna
come se il server non capisse l'array inviatogli nella variabile json breve
O sto formando l'array in modo sbagliato o qualcos'altro?
LINEAR16 deve essere ondulabile
deve! ) Ed è così.
La ragione è.
se si rimuovono i caratteri extra e si "alimenta" la stringa pulita in Base64, si ottiene un file wav leggibile da PlaySound
deve! ) E citato.
La ragione è.
se rimuovi i caratteri extra e "dai in pasto" la stringa pulita a Base64, ottieni un file wav PlaySound
è un json :-) in modo carino, dovresti ottenere il valore dalla chiave audioContent
Potreste non essere in grado di leggerlo, quindi
si ottengono file diversiPotresti non essere in grado di leggerlo, ecco perché
I file diventano diversiL'esecuzione del programma viene interrotta nella fase WebRequest, non raggiunge i file ))))
è un json :-) in buona fede, è necessario ottenere il valore dalla chiave audioContent
Oh, giusto! Grazie!!! )))
Ma la risposta torna
come se il server non capisse l'array json breve
O sto formando l'array in modo sbagliato o qualcos'altro?
Il problema è il carattere nullo finale.
e se si ottiene un errore da webrequest, è molto probabile che ci siano informazioni aggiuntive nel parametro del risultato.
Per esempio:
2020.06.02 12:29:27.935 google_speech (USDRUB,M30) Ошибка загрузки 'https://texttospeech.googleapis.com/v1/text:synthesize?key=AIzaSyCaLxPh84wXpLkT-zOE04MlvHj3JhLXU0w', код 400 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) result: { 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) "error": { 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) "code": 400, 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) "message": "Invalid JSON payload received. Parsing terminated before end of input.\ncoding\":\"LINEAR16\"}}\u0000\n ^", 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) "status": "INVALID_ARGUMENT" 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) } 2020.06.02 12:29:27.935 google_speech (USDRUB,M30) }il problema è il carattere nullo finale.
e se si ottiene un errore da webrequest, ci possono benissimo essere informazioni extra nel parametro del risultato.
per esempio:
Grazie! )