php-cpm/edge-tts
Composer 安装命令:
composer require php-cpm/edge-tts
包简介
Edge TTS is a PHP package that allows access to the online text-to-speech service used by Microsoft Edge without the need for Microsoft Edge, Windows, or an API key.
README 文档
README
Overview
Edge TTS is a powerful Text-to-Speech (TTS) package for PHP that leverages Microsoft's Edge capabilities. This package allows you to synthesize speech from text and manage voice options easily through a command-line interface (CLI).
Features
- Text-to-Speech: Convert text into natural-sounding speech using Microsoft Edge's TTS capabilities.
- Multiple Voices: Access a variety of voices to suit your project's needs.
- Audio Export Options: Export synthesized audio in different formats (raw, base64, or directly to a file).
- Command-Line Interface: Use a simple CLI for easy access to functionality.
- Easy Integration: Modular structure allows for easy inclusion in existing PHP projects.
Command-Line Interface: Use a simple CLI for easy access to functionality. Easy Integration: Modular structure allows for easy inclusion in existing PHP projects.
Installation
You can install Edge TTS via Composer. Run the following command in your terminal:
composer require php-cpm/edge-tts
this package is a fork of the original afaya/edge-tts package, with some improvements and fixes.
we downgraded the dependencies to be compatible from php 8.1+ to php 7.4+ while keeping the original functionality.
Usage
Command-Line Interface To synthesize speech from text, use the following command:
php .\vendor\bin\edge-tts edge-tts:synthesize --text "Hello, world!"
To list available voices, run:
php .\vendor\bin\edge-tts edge-tts:voice-list
Integration into Your Project
To use Edge TTS in your PHP project, include the autoload file:
<?php require __DIR__ . '/vendor/autoload.php'; use Afaya\EdgeTTS\Service\EdgeTTS; // Initialize the EdgeTTS service $tts = new EdgeTTS(); // Get voices $voices = $tts->getVoices(); // var_dump($voices); // array -> use ShortName with the name of the voice // Synthesize text with options for voice, rate, volume, and pitch $tts->synthesize("Hello, world!", 'en-US-AriaNeural', [ 'rate' => '0%', // Speech rate (range: -100% to 100%) 'volume' => '0%', // Speech volume (range: -100% to 100%) 'pitch' => '0Hz' // Voice pitch (range: -100Hz to 100Hz) ]); // Export synthesized audio in different formats $base64Audio = $tts->toBase64(); // Get audio as base64 $tts->toFile("output.wav"); // Save audio to file $rawAudio = $tts->toRaw(); // Get raw audio stream
Export Options
After synthesizing speech, you can export the audio in various formats:
toBase64: Returns the audio as a Base64 string.toFile: Saves the audio to a specified file (e.g., "output.wav").toRaw: Returns the raw audio stream.
Testing
./vendor/bin/phpunit
Contributing
We welcome contributions! Please read our CONTRIBUTING.md for guidelines on how to contribute to this project.
License
This project is licensed under the GNU General Public License v3 (GPLv3).
Acknowledgments
We would like to extend our gratitude to the developers and contributors of the following projects for their inspiration and groundwork:
php-cpm/edge-tts 适用场景与选型建议
php-cpm/edge-tts 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 29 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 02 月 11 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 php-cpm/edge-tts 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 php-cpm/edge-tts 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 29
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 25
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-3.0
- 更新时间: 2025-02-11