wongyuxuan / easy-tts-laravel

EasyTTS is an open-source and ready-to-use Multilingual Text-To-Speech (TTS) package(aliCloud, baidu, tencentCloud).

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Easy Tts For Laravel

一款满足你的多种TTS平台调用组件

特点

  1. 支持目前市面多家服务商
  2. 一套写法兼容所有平台
  3. 支持实时流式返回(短文本)创建异步任务(长文本)
  4. 支持多种参数设置
  5. 更多等你去发现与改进...

平台支持

环境需求

  • PHP >= 7.4

安装

$ composer require raison/easy-tts-laravel

各平台配置说明

在 config/app.php 文件中设置服务提供者和别名。

'providers' => [
    ....
    EasyTts\Providers\LaravelServiceProvider::class,
    ....
],

###请使用下面这条命令来发布配置文件

 php artisan vendor:publish --provider="EasyTts\Providers\LaravelServiceProvider"
'xunfei' => [
            'driver' => 'xunfei',
            'appid' => '',
            'secret_id' => '',
            'secret_key' => '',
        ],
'tencent' => [
            'driver' => 'tencent',
            'appid' => '',
            'secret_id' => '',
            'secret_key' => '',
        ],
'aliyun' => [
            'driver' => 'aliyun',
            'appid' => '',
            'secret_id' => '',
            'secret_key' => '',
        ],
'baidu' => [
            'driver' => 'baidu',
            'appid' => '',
            'secret_id' => '',
            'secret_key' => '',
        ],

使用

use EasyTts\TtsManager;

(new TtsManager())->client()->textToSpeechStream('PHP是全世界最好的语言');

平台支持方式 短文本(流返回)

流式返回(短文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'speed' => 50,
            'volume' => 50,
            'vcn' => "xiaoyan",
        ];

return (new TtsManager())->client('xunfei')->setRequestConfig($config)->textToSpeechStream($text);

流式返回(短文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'Speed' => 0,
            'Volume' => 0,
            'VoiceType' => 10510000,
        ];

return (new TtsManager())->client('tencent')->setRequestConfig($config)->textToSpeechStream($text);

创建任务 (长文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'Speed' => 0,
            'Volume' => 0,
            'VoiceType' => 10510000,
        ];

// 创建异步任务
$task_id = (new TtsManager())->client('tencent')->setRequestConfig($config)->createTask($text);
// 通过任务id获取结果
$res = (new TtsManager())->client('tencent')->fetchTaskResult($task_id);

流式返回(短文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'speech_rate' => 200,
            'voice' => 70,
            'voice' => "zhitian_emo",
        ];

return (new TtsManager())->client('aliyun')->setRequestConfig($config)->textToSpeechStream($text);

创建任务 (长文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'speech_rate' => 200,
            'voice' => 70,
            'voice' => "zhitian_emo",
        ];

// 创建异步任务
$task_id = (new TtsManager())->client('aliyun')->setRequestConfig($config)->createTask($text);
// 通过任务id获取结果
$res = (new TtsManager())->client('aliyun')->fetchTaskResult($task_id);

流式返回(短文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'spd' => 10,
            'vol' => 10,
            'per' => 3,
        ];

return (new TtsManager())->client('baidu')->setRequestConfig($config)->textToSpeechStream($text);

创建任务 (长文本) 请求参数说明

use EasyTts\TtsManager;

$text = "php是全世界最好的语言";
$config = [
            'speed' => 10,
            'volume' => 10,
            'voice' => 3,
        ];

// 创建异步任务
$task_id = (new TtsManager())->client('baidu')->setRequestConfig($config)->createTask($text);
// 通过任务id获取结果
$res = (new TtsManager())->client('baidu')->fetchTaskResult($task_id);

License

MIT

About

EasyTTS is an open-source and ready-to-use Multilingual Text-To-Speech (TTS) package(aliCloud, baidu, tencentCloud).

License:MIT License


Languages

Language:PHP 100.0%