Comprehensive STT and TTS Voice Engine for ONYX platform
Project description
🎙️ ONYX AI Voice Engine
STT (Whisper) and TTS (Edge-TTS) integrated engine for ONYX platform.
📦 Installation
pip install onyx-AI-voice
الأصوات المتاحة
final Map<String, String> _voiceOptions = {
"أماني (سوريا)": "ar-SY-AmanyNeural",
"ليث (سوريا)": "ar-SY-LaithNeural",
"فاطمة (الإمارات)": "ar-AE-FatimaNeural",
"حمدان (الإمارات)": "ar-AE-HamdanNeural",
"علي (البحرين)": "ar-BH-AliNeural",
"ليلى (البحرين)": "ar-BH-LailaNeural",
"أمينة (الجزائر)": "ar-DZ-AminaNeural",
"إسماعيل (الجزائر)": "ar-DZ-IsmaelNeural",
"سلمى (مصر)": "ar-EG-SalmaNeural",
"شاكر (مصر)": "ar-EG-ShakirNeural",
"باسل (العراق)": "ar-IQ-BasselNeural",
"رنا (العراق)": "ar-IQ-RanaNeural",
"سناء (الأردن)": "ar-JO-SanaNeural",
"تيم (الأردن)": "ar-JO-TaimNeural",
"فهد (الكويت)": "ar-KW-FahedNeural",
"نورة (الكويت)": "ar-KW-NouraNeural",
"ليلى (لبنان)": "ar-LB-LaylaNeural",
"رامي (لبنان)": "ar-LB-RamiNeural",
"إيمان (ليبيا)": "ar-LY-ImanNeural",
"عمر (ليبيا)": "ar-LY-OmarNeural",
"جمال (المغرب)": "ar-MA-JamalNeural",
"منى (المغرب)": "ar-MA-MounaNeural",
"عبدالله (عُمان)": "ar-OM-AbdullahNeural",
"عائشة (عُمان)": "ar-OM-AyshaNeural",
"أمل (قطر)": "ar-QA-AmalNeural",
"معاذ (قطر)": "ar-QA-MoazNeural",
"حامد (السعودية)": "ar-SA-HamedNeural",
"زارية (السعودية)": "ar-SA-ZariyahNeural",
"هادي (تونس)": "ar-TN-HediNeural",
"ريم (تونس)": "ar-TN-ReemNeural",
"مريم (اليمن)": "ar-YE-MaryamNeural",
"صالح (اليمن)": "ar-YE-SalehNeural",
"Natasha (أستراليا)": "en-AU-NatashaNeural",
"William (أستراليا)": "en-AU-WilliamMultilingualNeural",
"Clara (كندا)": "en-CA-ClaraNeural",
"Liam (كندا)": "en-CA-LiamNeural",
"Libby (بريطانيا)": "en-GB-LibbyNeural",
"Maisie (بريطانيا)": "en-GB-MaisieNeural",
"Ryan (بريطانيا)": "en-GB-RyanNeural",
"Sonia (بريطانيا)": "en-GB-SoniaNeural",
"Thomas (بريطانيا)": "en-GB-ThomasNeural",
"Sam (هونغ كونغ)": "en-HK-SamNeural",
"Yan (هونغ كونغ)": "en-HK-YanNeural",
"Connor (أيرلندا)": "en-IE-ConnorNeural",
"Emily (أيرلندا)": "en-IE-EmilyNeural",
"Neerja (الهند)": "en-IN-NeerjaNeural",
"Neerja Expressive (الهند)": "en-IN-NeerjaExpressiveNeural",
"Prabhat (الهند)": "en-IN-PrabhatNeural",
"Asilia (كينيا)": "en-KE-AsiliaNeural",
"Chilemba (كينيا)": "en-KE-ChilembaNeural",
"Abeo (نيجيريا)": "en-NG-AbeoNeural",
"Ezinne (نيجيريا)": "en-NG-EzinneNeural",
"Mitchell (نيوزيلندا)": "en-NZ-MitchellNeural",
"Molly (نيوزيلندا)": "en-NZ-MollyNeural",
"James (الفلبين)": "en-PH-JamesNeural",
"Rosa (الفلبين)": "en-PH-RosaNeural",
"Luna (سنغافورة)": "en-SG-LunaNeural",
"Wayne (سنغافورة)": "en-SG-WayneNeural",
"Elimu (تنزانيا)": "en-TZ-ElimuNeural",
"Imani (تنزانيا)": "en-TZ-ImaniNeural",
"Ana (USA)": "en-US-AnaNeural",
"Andrew (USA)": "en-US-AndrewNeural",
"Andrew Multilingual (USA)": "en-US-AndrewMultilingualNeural",
"Aria (USA)": "en-US-AriaNeural",
"Ava (USA)": "en-US-AvaNeural",
"Ava Multilingual (USA)": "en-US-AvaMultilingualNeural",
"Brian (USA)": "en-US-BrianNeural",
"Brian Multilingual (USA)": "en-US-BrianMultilingualNeural",
"Christopher (USA)": "en-US-ChristopherNeural",
"Cora (USA)": "en-US-CoraNeural",
"Davis (USA)": "en-US-DavisNeural",
"Elizabeth (USA)": "en-US-ElizabethNeural",
"Emma (USA)": "en-US-EmmaNeural",
"Eric (USA)": "en-US-EricNeural",
"Guy (USA)": "en-US-GuyNeural",
"Jacob (USA)": "en-US-JacobNeural",
"Jane (USA)": "en-US-JaneNeural",
"Jason (USA)": "en-US-JasonNeural",
"Jenny (USA)": "en-US-JennyNeural",
"Ken (USA)": "en-US-KenNeural",
"Kevin (USA)": "en-US-KevinNeural",
"Michelle (USA)": "en-US-MichelleNeural",
"Monica (USA)": "en-US-MonicaNeural",
"Nancy (USA)": "en-US-NancyNeural",
"Roger (USA)": "en-US-RogerNeural",
"Steffan (USA)": "en-US-SteffanNeural",
};
Option 2: requirements.txt
fastapi
uvicorn
python-multipart
openai-whisper
edge-tts
gTTS
ffmpeg-python
langdetect
onyx-AI-voice
💻 Usage ▶ Standard Script
from ONYXAI_VOICE import OnyxAIVoice
import uvicorn
import os
# 1. تهيئة المحرك (بشكل تلقائي رح يحمل موديل Whisper Small)
# فيكي تغيري الموديل لـ "tiny" إذا بدك سرعة خارقة بس دقة أقل
engine = OnyxAIVoice(whisper_model="small")
# 2. الوصول لتطبيق FastAPI الموجود داخل الكلاس
app = engine.app
@app.get("/")
def home():
return {
"status": "ONYX Voice Cloner is Online",
"owner": "ONYX",
}
if __name__ == "__main__":
port = int(os.environ.get("PORT", 7860))
uvicorn.run(app, host="0.0.0.0", port=port
🛠 API Usage
Endpoint
## 1. STT: تحويل الكلام لنص
POST /stt
## 2. TTS: تحويل النص لصوت
POST /tts
---
🔗 Links
Organization: [ONYX / RUI Company](https://github.com/RUI-com/)
Author: [Eng. Rawan Jassim](https://eng-rawan-abd-alrazak-next-js-website-main.vercel.app/)
---
© 2026 ONYX. All rights reserved.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
onyx_ai_voice-0.1.1.tar.gz
(5.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file onyx_ai_voice-0.1.1.tar.gz.
File metadata
- Download URL: onyx_ai_voice-0.1.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aee5845181b8caeb9205c752aba1d3dc1061b42a8ed8341038487d67d14d2fc7
|
|
| MD5 |
af5121ebf8d71af1a80aca73b377b21b
|
|
| BLAKE2b-256 |
7d47bafe9d1b074fe6ab8ea636697fbc03159a772985903ee2ff5c14187ce1b2
|
File details
Details for the file onyx_ai_voice-0.1.1-py3-none-any.whl.
File metadata
- Download URL: onyx_ai_voice-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c73bc2e58ea59658b12f49e9039b8b2af739adc71e3b4e4bb108ee33884c1b42
|
|
| MD5 |
c8a7b11162522db5f96a74c7da187dcd
|
|
| BLAKE2b-256 |
1fd62bf5353763a3053b44f5a02e8cd166b484ef0269b8804205737519c3903f
|