在MoneyPrinterPlus中使用本地chatTTS語音模型

flydean發表於2024-07-16

之前MoneyPrinterPlus在批次混剪,一鍵AI生成影片這些功能上的語音合成功能都用的是雲廠商的語音服務,比阿里雲,騰訊雲和微軟雲。

雲廠商雖然提供了優質的語音服務,但是用起來還是要收費。

為了各位小夥伴的錢包,現在特意給MoneyPrinterPlus上線了本地chatTTS語音服務。

趕緊來體驗吧。

軟體準備

當然,前提條件就是你需要下載MoneyPrinterPlus軟體啦。

下載地址: https://github.com/ddean2009/MoneyPrinterPlus

用得好的朋友,不妨給個star支援一下。 在軟體v4.0版本之後,MoneyPrinterPlus已經全面開始支援本地模型。

安裝chatTTS

我們可以直接從chatTTS的官網上 https://github.com/2noise/ChatTTS 下載chatTTS的原始碼:

git clone https://github.com/2noise/ChatTTS
cd ChatTTS

安裝依賴:

pip install --upgrade -r requirements.txt

執行web-UI:

python examples/web/webui.py

執行api-server:

fastapi dev examples/api/main.py --host 0.0.0.0 --port 8000

這裡注意,web-ui的預設埠是8080, api-server的埠是8000。

MoneyPrinterPlus需要連線的是8000埠的api-server。

web-UI只是為了展示怎麼配置音色的一個展示用的。

我們開啟 http://localhost:8080/ 可以看到類似下面的頁面:

image-20240715173317089

點選生成按鈕,如果能夠成功合成音訊檔案,那麼說明你的chatTTS安裝成功了。

在MoneyPrinterPlus中使用ChatTTS

回到MoneyPrinterPlus,我們啟動MoneyPrinterPlus,在基本配置頁面我們可以看到:本地語音TTS的選項。

image-20240715173442224

這裡我們選擇chatTTS,並且設定chatTTS api server的地址。

上面我們是以8000啟動的api server,所以這裡我們就輸入:http://127.0.0.1:8000/。

接下來點選影片混剪區,在影片配音區選擇本地模型:

image-20240715173642900

我們可以得到下面的介面:

image-20240715173714939

解釋一下各個引數的作用:

是否口語化對應chatTTS的口語化開關,如果啟動口語化,chatTTS會自動對輸入的文案進行口語化調整。所以預設是不開啟的。

Text Seed是控制口語化模型處理的種子,你可以隨意調整。

Audio Temperature控制音訊情感波動性,範圍為 0-1,數字越大,波動性越大

top_P :控制音訊的情感相關性,範圍為 0.1-0.9,數字越大,相關性越高

top_K :控制音訊的情感相似性,範圍為 1-20,數字越小,相似性越高

Refine text Prompt是指在口語化過程中新增的一些引數。如果不懂的話可以不修改。

本地chatTTS音色目錄,預設在專案的chattts目錄中。

現在我在chattts目錄中預先放置了2種音色檔案。

一種是txt檔案,一種是pt檔案。

你可以自行新增更多的音色檔案到chattts目錄中。

那麼有小夥伴要問了,txt或者pt檔案是怎麼來的呢?

先講一個簡單的pt檔案,你可以在 https://modelscope.cn/studios/ttwwwaa/ChatTTS_Speaker 這個空間中試聽和下載對應的語音檔案:

image-20240715174400937

把下載下來的pt檔案,放在MoneyPrinterPlus中的chattts目錄即可。

txt檔案是怎麼來的呢?

我們再次回到chatTTS的webUI介面:

image-20240715174512706

這個txt就是這裡的Speaker Embedding的內容。

你可以點選右上角的複製按鈕,新建一個utf-8編碼的txt檔案。 把這個txt檔案放到MoneyPrinterPlus中的chattts目錄即可。

如果你不想用已有的音色檔案,那麼可以點選使用隨機聲音按鈕:

image-20240715174635106

會出現一個Audio Seed選項,這個seed就是用來控制Audio音色的。

有了這些配置之後,點選試聽聲音,如果能聽到聲音就說明你的chatTTS在MoneyPrinterPlus中配置成功了。

接下來就可以使用本地的chatTTS來合成語音啦。

點我檢視更多精彩內容:www.flydean.com

相關文章