Skip to content

dayrev/synthesizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Synthesizer

Build Status Coverage Status Latest Stable Version

Overview

Synthesizer provides an elegant interface to synthesize text to speech (audio url) using a variety of third-party providers.

Supported Providers:

  • Amazon Polly
  • Google
  • IBM Watson
  • iSpeech

Installation

Run the following composer command to add the package to your project:

composer require dayrev/synthesizer

Alternatively, add "dayrev/synthesizer": "^1.0" to your composer.json file.

Usage

$provider = Provider::instance('amazon', [
    'key' => 'YOUR_AMAZON_API_KEY',
    'secret' => 'YOUR_AMAZON_API_SECRET',
]);
$content = $synthesizer->synthesize($text);

$synthesizer = DayRev\Synthesizer\Provider::instance('google');
$content = $synthesizer->synthesize($text);

$synthesizer = DayRev\Synthesizer\Provider::instance('ibm', [
    'username' => 'YOUR_IBM_USERNAME',
    'password' => 'YOUR_IBM_PASSWORD',
]);
$content = $synthesizer->synthesize($text);

$synthesizer = DayRev\Synthesizer\Provider::instance('ispeech', [
    'apikey' => 'YOUR_ISPEECH_API_KEY'
]);
$content = $synthesizer->synthesize($text);

Tests

To run the test suite, run the following commands from the root directory:

composer install
vendor/bin/phpunit -d ibm_username=YOUR_IBM_USERNAME -d ibm_password=YOUR_IBM_PASSWORD -d ispeech_api_key=YOUR_ISPEECH_API_KEY -d amazon_api_key=YOUR_AMAZON_API_KEY -d amazon_api_secret=YOUR_AMAZON_API_SECRET

Note: API credentials are required when running the integration tests but the values don't have to be valid.