Google TTS крадет первые несколько MS сценария - но не так, как я бы думалPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Google TTS крадет первые несколько MS сценария - но не так, как я бы думал

Сообщение Anonymous »

Я создал услугу PHP, которая называет Google Cloud Text-To-Speek и пишет аудиоконтент (Base64-Decode) непосредственно в MP3-файл. Когда я предпочитаю жесткую фразу (например, «ein moment der ruhe…» m, которая является той же фразой, которую выявляют как динамический текст), она отличается от того, что не потеряны-но как только начинается мой динамический текст, первые 1–2 слова всегда исчезают или режут. Таким образом, они больше не первые слова, но все еще «исчезли в». Что еще я могу попытаться гарантировать, что самый первый слог динамического текста не потерян? < /P>
namespace App\Services;

class GoogleTtsService extends TtsService
{
private const API_URL = 'https://texttospeech.googleapis.com/v1/text:synthesize';

public function synthesize(string $text, array $options, string $outputPath, string $apiKey): bool
{
$breakMs = defined('TTS_INITIAL_BREAK_MS') ? TTS_INITIAL_BREAK_MS : 100;
// This hard-coded phrase plays fine
$ssml = ''
. 'Ein Moment der Ruhe...'
. '
'
. htmlspecialchars($text, ENT_QUOTES|ENT_XML1, 'UTF-8') // this never plays fine
. '';

$payload = [
'input' => ['ssml' => $ssml],
'voice' => [
'languageCode' => $options['language'] ?? 'de-DE',
'name' => $options['voice'] ?? 'de-DE-Standard-A'
],
'audioConfig' => [
'audioEncoding' => 'MP3',
'speakingRate' => $options['speed'] ?? 1.0
]
];

$response = $this->postJson(self::API_URL . '?key=' . urlencode($apiKey), $payload);
if (empty($response['audioContent'])) {
return false;
}

$audioData = base64_decode($response['audioContent']);
return file_put_contents($outputPath, $audioData) !== false;
}
}



Подробнее здесь: https://stackoverflow.com/questions/796 ... ould-think
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»