English |簡體中文
Awesome-ChatTTS 是官方推薦的ChatTTS 資源匯總項目,歡迎在issues 中推薦或者自薦。
如果覺得本項目對你了解和使用ChatTTS 有幫助,還請打賞個️ 支持一下。
Note
以下項目均為社區資源,查看官方信息請到源倉庫2noise/ChatTTS 。
網址 | 類型 |
---|---|
Original Web | 原版網頁版體驗 |
Forge Web | Forge 增強版體驗 |
Linux | Python 安裝包 |
Samples | 音色種子示例 |
Cloning | 音色克隆體驗 |
專案 | Star | 亮點 |
---|---|---|
jianchang512/ChatTTS-ui | 提供API 接口,可在第三方應用中調用 | |
6drf21e/ChatTTS_colab | 提供流式輸出,支持長音頻生成和分角色閱讀 | |
lenML/ChatTTS-Forge | 提供人聲增強和背景降噪,可使用附加提示詞 | |
CCmahua/ChatTTS-Enhanced | 支持文件批量處理,以及導出SRT 文件 | |
HKoon/ChatTTS-OpenVoice | 配合OpenVoice 進行聲音克隆 |
專案 | Star | 亮點 |
---|---|---|
6drf21e/ChatTTS_Speaker | 音色角色打標與穩定性評估 | |
AIFSH/ComfyUI-ChatTTS | ComfyUi 版本,可作為工作流節點引入 | |
MaterialShadow/ChatTTS-manager | 提供了音色管理系統和WebUI 界面 |
經過實際測試,指定音色種子值每次生成spk_emb
和重複使用預生成好的spk_emb
效果有較顯著差異,建議優先使用.pt
音色文件或者音色碼(字符串表示形式)。
在ChatTTS_Speaker 項目中對音色種子進行了初步打標和穩定性評估,可以通過示例來快速選擇合適的音色。
在官方WebUI 中使用時,可直接將音色碼複製之後,替換9. Speaker Embedding
中的值,實現音色控制。
在Python 腳本中使用時,參考issue#07 中的壓縮方案實現音色控制。
spk = torch . load ( "asset/seed_1332_restored_emb.pt" , map_location = torch . device ( 'cpu' )). detach ()
spk_emb_str = compress_and_encode ( spk )
params_infer_code = ChatTTS . Chat . InferCodeParams (
spk_emb = spk_emb_str , # add sampled speaker
temperature = .0003 , # using custom temperature
top_P = 0.7 , # top P decode
top_K = 20 , # top K decode
)
影片 | 亮點 |
---|---|
同濟子豪兄 | 從入門到進階的詳細部署教程 |
ZTFS | Mac M1 部署教程 |
王-寳寳 | Windows 部署教程 |
影片 | 亮點 |
---|---|
Sam Witteveen | 英文版介紹 |
經過近期的迭代,源倉庫代碼中的問題已經基本解決。如果遇到問題,建議先詳細查看官方說明文檔中文版,如果還有問題可以繼續查看本文檔。
原版項目運行需要從HuggingFace 下載對應的模型,如果不能順暢科學上網,那麼就無法完成這一步。作為替代方案,可以從modelscope 上下載模型和配置,並配置本地路徑。
Important
魔塔上的模型庫是由志願者維護的,不保證所有模型都是最新的,如果有需要請自行驗證。
pip install modelscope
# 在开头导入依赖,并下载模型和配置
from modelscope import snapshot_download
model_dir = snapshot_download ( 'zlj2546/ChatTTS' )
# 第 118 行修改模型路径
ret = chat . load_models ( 'custom' , custom_path = model_dir )
在IDE 中運行時,由於文件相對路徑的問題,導致腳本無法順利運行。
建議參照官方說明文檔快速啟動中的指令直接在終端中運行。
確保在執行以下命令時,處於項目根目錄下。
python examples/web/webui.py
生成的音頻將保存至
./output_audio_n.mp3
python examples/cmd/run.py " Your text 1. " " Your text 2. "
出現這個問題是因為官方代碼處理中文標點符號時覆蓋不全,例如?
、 …
等符號沒有被處理,導致模型生成時出錯。
可以手動刪除類似的中文標點符號,或者修改ChatTTS/utils/infer_utils.py
中的代碼,在103 行的character_map
的字典中添加缺失的標點符號。
character_map = {
'…' : '' ,
'—' : ',' ,
'_' : ',' ,
'?' : ',' ,
}
GPU 至少需要4G 顯存,否則將強制使用CPU,相關問題可以參考ChatTTS-ui 項目中的說明
1、 load_models() got an unexpected keyword argument 'source'
詳見常見問題- 模型無法下載
2、 cannot import name 'CommitOperationAdd' from 'huggingface_hub'
詳見常見問題- 模型無法下載
3、 FileNotFoundError:[Erzno 2] No such file or directory: 'C:\Users\xxx\.cache\huggingface\hub\models--2Noise--ChatTTS\snapshots
詳見常見問題- 模型無法下載
4、 local variable 'Normalizer' referenced before assignment
需要根據安裝指南完成環境配置後,再安裝pynini
和WeTextProcessing
依賴
conda install -c conda-forge pynini=2.1.5 && pip install WeTextProcessing
5、 download to Local path D:pythonlprojectChatTTSChatTTS failed.
在IDE 中直接執行腳本,會因為文件路徑問題報錯,詳見常見問題- IDE 中無法運行
6、 ModuleNotFoundError : No module named'Cython'
未找到Python 執行路徑,Windows 設備需要按教程配置環境路徑