styletts21 / README.md
tonyshark's picture
Upload README.md
7ae4bbf verified
---
title: StyleTTS2 Text-to-Speech với Hiệu ứng Môi trường
emoji: 🎙️
colorFrom: blue
colorTo: purple
sdk: gradio
sdk_version: "4.0.0"
app_file: app.py
pinned: false
license: mit
language:
- vi
- en
pipeline_tag: text-to-speech
tags:
- 'StyleTTS2'
- 'Text-to-Speech'
- 'Vietnamese'
- 'Audio'
- 'Speech'
- 'TTS'
- 'Environment'
- 'Effects'
- 'Gradio'
- 'AI'
- 'Voice'
---
<div style="text-align:center;">
<h1>🎙️ StyleTTS2 Text-to-Speech với Hiệu ứng Môi trường</h1>
<p>Ứng dụng Text-to-Speech sử dụng StyleTTS2 với khả năng thêm hiệu ứng môi trường âm thanh và điều chỉnh tốc độ nói.</p>
</div>
## ✨ Tính năng
- 🎤 **Text-to-Speech** sử dụng StyleTTS2
- 🌍 **Hiệu ứng môi trường**: Church, Hall, Cafe, Street, Office, Supermarket, Phone
-**Điều chỉnh tốc độ nói** từ 0.5x đến 2.0x
- 🔊 **Kiểm soát mức độ nhiễu** (SNR)
- 📊 **So sánh waveform** trực quan
- 🎭 **Tags cảm xúc** với emoji
- 🌐 **Giao diện web** thân thiện
## 🚀 Cách sử dụng
### 1. Nhập văn bản
Nhập văn bản tiếng Việt vào ô text. Bạn có thể sử dụng các tags để tạo cảm xúc:
- `<happy>vui vẻ</happy>`
- `<sad>buồn bã</sad>`
- `<angry>giận dữ</angry>`
- `<whisper>thì thầm</whisper>`
### 2. Chọn môi trường
- **Neutral**: Không có hiệu ứng
- **Church/Hall**: Thêm reverb (tiếng vang)
- **Cafe/Street/Office/Supermarket**: Thêm tiếng ồn nền
- **Phone**: Giới hạn tần số như điện thoại
### 3. Điều chỉnh tham số
- **Tốc độ nói**: 0.5x (chậm) đến 2.0x (nhanh)
- **Mức độ nhiễu**: Chỉ áp dụng cho môi trường có tiếng ồn
### 4. Tạo giọng nói
Nhấn nút "🎵 Tạo giọng nói" để tạo audio với hiệu ứng.
## 🎭 Tags cảm xúc
| Tag | Ý nghĩa | Emoji |
|-----|---------|-------|
| `<laugh>...</laugh>` | Cười thoải mái | 😆 |
| `<whisper>...</whisper>` | Thì thầm | 🤫 |
| `<naughty>...</naughty>` | Tinh nghịch | 😏 |
| `<giggle>...</giggle>` | Cười rúc rích | 😂 |
| `<tease>...</tease>` | Trêu chọc | 😉 |
| `<smirk>...</smirk>` | Đắc ý | 😼 |
| `<surprise>...</surprise>` | Ngạc nhiên | 😲 |
| `<shock>...</shock>` | Hoảng hốt | 😱 |
| `<romantic>...</romantic>` | Lãng mạn | ❤️ |
| `<shy>...</shy>` | Bẽn lẽn | 🫣 |
| `<excited>...</excited>` | Phấn khích | 🤩 |
| `<curious>...</curious>` | Tò mò | 🧐 |
| `<discover>...</discover>` | Phát hiện | ✨ |
| `<blush>...</blush>` | Ngượng ngùng | 🌸 |
| `<angry>...</angry>` | Giận dữ | 😡 |
| `<sad>...</sad>` | Buồn | 😢 |
| `<happy>...</happy>` | Vui vẻ | 😊 |
| `<fear>...</fear>` | Sợ hãi | 😨 |
| `<confident>...</confident>` | Tự tin | 😎 |
| `<serious>...</serious>` | Nghiêm túc | 😐 |
| `<tired>...</tired>` | Mệt mỏi | 🥱 |
| `<cry>...</cry>` | Khóc | 😭 |
| `<love>...</love>` | Yêu thương | 😍 |
| `<disgust>...</disgust>` | Ghê tởm | 🤢 |
## 🌍 Môi trường âm thanh
### Reverb Effects
- **Church**: Tiếng vang trong nhà thờ
- **Hall**: Tiếng vang trong hội trường
### Noise Effects
- **Cafe**: Tiếng ồn quán cà phê
- **Street**: Tiếng ồn đường phố
- **Office**: Tiếng ồn văn phòng
- **Supermarket**: Tiếng ồn siêu thị
### Filter Effects
- **Phone**: Giới hạn tần số như điện thoại
## 📊 SNR (Signal-to-Noise Ratio)
- **Giá trị cao (20-30 dB)**: Ít nhiễu, âm thanh rõ ràng
- **Giá trị trung bình (10-20 dB)**: Nhiễu vừa phải
- **Giá trị thấp (0-10 dB)**: Nhiều nhiễu, âm thanh khó nghe
## ⚡ Tốc độ nói
- **0.5x**: Nói chậm một nửa
- **0.8x**: Nói chậm một chút
- **1.0x**: Tốc độ bình thường
- **1.2x**: Nói nhanh một chút
- **1.5x**: Nói nhanh
- **2.0x**: Nói nhanh gấp đôi
## 🛠️ Cài đặt local
### Yêu cầu hệ thống
- Python >= 3.8
- espeak-ng (cho phonemizer)
### Cài đặt dependencies
```bash
pip install -r requirements.txt
```
### Cài đặt espeak-ng
```bash
# macOS
brew install espeak-ng
# Ubuntu/Debian
sudo apt-get install espeak-ng
# Windows: Tải từ GitHub releases
```
### Chạy ứng dụng
```bash
python app.py
```
## 🔧 Xử lý sự cố
### Model không tải được
- Kiểm tra kết nối internet
- Đảm bảo có đủ RAM (tối thiểu 4GB)
- Model sẽ được tải tự động từ Hugging Face
### Lỗi phonemizer
- Cài đặt espeak-ng theo hướng dẫn
- Khởi động lại ứng dụng
### Âm thanh không phát được
- Kiểm tra volume hệ thống
- Thử refresh trang web
- Kiểm tra trình duyệt có hỗ trợ audio không
## 📝 Ghi chú
- Model được tải lần đầu có thể mất vài phút
- Hỗ trợ cả GPU và CPU (tự động chuyển đổi)
- File giọng nói tham chiếu cần có trong thư mục `speakers/`
- Ứng dụng tối ưu cho tiếng Việt
## 🤝 Đóng góp
Mọi đóng góp đều được chào đón! Vui lòng tạo issue hoặc pull request.
## 📄 License
Dự án này sử dụng MIT License. StyleTTS2 model tuân thủ license của tác giả gốc.
## 🙏 Acknowledgments
- [StyleTTS2](https://github.com/yl4579/StyleTTS2) - Model gốc
- [Gradio](https://gradio.app/) - Web interface
- [Librosa](https://librosa.org/) - Audio processing
- [Phonemizer](https://github.com/bootphon/phonemizer) - Text processing