Spaces:
Running
Running
Commit
·
70f297d
1
Parent(s):
b6500b8
更新說明
Browse files
README.md
CHANGED
@@ -11,3 +11,106 @@ short_description: 原tbdavid2019/PDF2podcast拆出的語音生成(2)
|
|
11 |
---
|
12 |
|
13 |
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
---
|
12 |
|
13 |
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
14 |
+
|
15 |
+
---
|
16 |
+
|
17 |
+
# TTS Generator (語音合成器)
|
18 |
+
|
19 |
+
這是一個基於OpenAI TTS API的語音合成應用程式,可將文字腳本轉換為自然流暢的語音。應用程式支援雙說話者對話,並提供簡潔的網頁界面,適合製作播客、有聲書或對話式內容。
|
20 |
+
|
21 |
+
## 功能特點
|
22 |
+
|
23 |
+
- 🎙️ **雙說話者支援**:可分配不同聲音給兩位說話者,適合對話式內容
|
24 |
+
- 🔄 **智能文本優化**:自動合併相同說話者的連續文本,減少API調用次數
|
25 |
+
- 🎛️ **多種聲音選項**:支援OpenAI的全部6種TTS聲音(alloy、echo、fable、onyx、nova、shimmer)
|
26 |
+
- 🎚️ **模型選擇**:支援標準(tts-1)和高清(tts-1-hd)音頻模型
|
27 |
+
- 🌐 **友好界面**:基於Gradio的簡潔網頁界面,易於使用
|
28 |
+
- 💾 **自動文件管理**:自動保存生成的音頻並清理過期文件
|
29 |
+
|
30 |
+
## 安裝說明
|
31 |
+
|
32 |
+
### 前置需求
|
33 |
+
|
34 |
+
- Python 3.7+
|
35 |
+
- OpenAI API金鑰(需要啟用TTS功能)
|
36 |
+
|
37 |
+
### 安裝步驟
|
38 |
+
|
39 |
+
1. 克隆此專案或下載源碼
|
40 |
+
2. 安裝依賴項:
|
41 |
+
|
42 |
+
```bash
|
43 |
+
pip install -r requirements.txt
|
44 |
+
```
|
45 |
+
|
46 |
+
## 使用方法
|
47 |
+
|
48 |
+
1. 運行應用程式:
|
49 |
+
|
50 |
+
```bash
|
51 |
+
python app.py
|
52 |
+
```
|
53 |
+
|
54 |
+
2. 在瀏覽器中打開顯示的URL(通常是 http://127.0.0.1:7860)
|
55 |
+
3. 在文本框中輸入您的腳本
|
56 |
+
4. 輸入您的OpenAI API金鑰
|
57 |
+
5. 選擇所需的音頻模型和說話者聲音
|
58 |
+
6. 點擊「生成音頻」按鈕
|
59 |
+
7. 等待處理完成後,您可以播放或下載生成的音頻
|
60 |
+
|
61 |
+
## 腳本格式
|
62 |
+
|
63 |
+
腳本應按以下格式編寫:
|
64 |
+
|
65 |
+
```
|
66 |
+
speaker-1: 這是第一位說話者的台詞。
|
67 |
+
speaker-2: 這是第二位說話者的台詞。
|
68 |
+
這行沒有標記說話者,將默認使用說話者1的聲音。
|
69 |
+
speaker-1: 繼續對話...
|
70 |
+
```
|
71 |
+
|
72 |
+
**提示**:相同說話者的連續文本會自動合併處理,以提高API調用效率。
|
73 |
+
|
74 |
+
## 參數說明
|
75 |
+
|
76 |
+
| 參數 | 說明 |
|
77 |
+
|------|------|
|
78 |
+
| 音頻模型 | 選擇TTS模型:標準(tts-1)或高清(tts-1-hd) |
|
79 |
+
| 說話者1聲音 | 第一位說話者使用的聲音 |
|
80 |
+
| 說話者2聲音 | 第二位說話者使用的聲音 |
|
81 |
+
| OpenAI API Key | 您的OpenAI API金鑰 |
|
82 |
+
|
83 |
+
## 聲音選項
|
84 |
+
|
85 |
+
應用程式支援以下OpenAI TTS聲音:
|
86 |
+
|
87 |
+
- **alloy**: 全能且平穩的聲音
|
88 |
+
- **echo**: 深沉且有力的聲音
|
89 |
+
- **fable**: 溫暖且適合講故事的聲音
|
90 |
+
- **onyx**: 明確且專業的聲音
|
91 |
+
- **nova**: 友好且自然的聲音
|
92 |
+
- **shimmer**: 清晰且愉悅的聲音
|
93 |
+
|
94 |
+
## 技術細節
|
95 |
+
|
96 |
+
- 使用OpenAI的TTS API進行語音合成
|
97 |
+
- 使用Gradio建立網頁界面
|
98 |
+
- 自動管理臨時音頻文件(24小時後自動清理)
|
99 |
+
- 支援流式處理大型音頻文件
|
100 |
+
|
101 |
+
## 依賴項
|
102 |
+
|
103 |
+
- gradio: 網頁界面
|
104 |
+
- openai: OpenAI API客戶端
|
105 |
+
- pathlib: 文件路徑處理
|
106 |
+
- io: 二進制數據處理
|
107 |
+
|
108 |
+
## 注意事項
|
109 |
+
|
110 |
+
- 使用此應用程式需要有效的OpenAI API金鑰
|
111 |
+
- API使用會產生費用,請參考OpenAI的[價格頁面](https://openai.com/pricing)
|
112 |
+
- 生成的臨時音頻文件會在24小時後自動刪除
|
113 |
+
|
114 |
+
## 授權信息
|
115 |
+
|
116 |
+
[MIT授權](https://opensource.org/licenses/MIT)
|