Не плохая библиотека
duncan3dc.github.io/speaker
Там есть маленький бажок правда:
vendor/duncan3dc/speaker/src/Providers/AbstractProvider.php
В методе
sendRequest нужно кое что добавить в начале:
protected function sendRequest($hostname, array $params)
{
$params['client'] = '13';
$url = $hostname . "?" . http_build_query($params);
$response = $this->getClient()->get($url);
if ($response->getStatusCode() != "200") {
throw new Exception("Failed to call the external text-to-speech service");
}
return $response->getBody();
}
И тогда все будет работать.
require_once __DIR__ . "/vendor/autoload.php";
use duncan3dc\Speaker\TextToSpeech;
use duncan3dc\Speaker\Providers\GoogleProvider;
$provider = new GoogleProvider;
$tts = new TextToSpeech("Hello World", $provider);
$tts->save("hello.mp3");