TTS一開始使用的是google_say 受夠了google的單調語音
然後換成了azure_cognitive_speech但只有一年的免費
現在換成了完全免費的edge tts 雖然沒有azure的聲音多樣但勝在完全免費
先到HACS安裝
裝完後重開在到configuration.yaml添加
tts:
- platform: edge_tts
language: zh-CN # Default language or voice (Optional)
添加完後再重開一次讓設定生效
接下來就可以到Node-Red設定了
Function內容
var myMessage = [
"亂數訊息1",
"亂數訊息2",
"亂數訊息3",
"亂數訊息4",
"亂數訊息5",
"亂數訊息6",
"亂數訊息7",
"亂數訊息8"
];
var randomMessage = myMessage[Math.floor(Math.random() * myMessage.length)];
var myVoice = [
"zh-TW-HsiaoChenNeural",
"zh-CN-XiaoxiaoNeural",
];
var randomVoice = myVoice[Math.floor(Math.random() * myVoice.length)];
msg.payload_tts = {
"message": randomMessage,
"cache": true,
"options": {
"volume": "+100%",
"voice": randomVoice,
"pitch": "+0Hz",
"rate": "+0%"
}
};
return msg;
亂數訊息可以自己去做增減 注意 , 的位置最後一個不能有
語音的部分可以到下方連結查詢自己去增減
Edge 語音列表
至於說話的頻率速度就自己去調整 pitch 跟 rate了
基本只要function + callservice 連起來就能使用
前面記得加上觸發條件
播放時的call service設定
這是我自己個人的應用實例
設定喇叭音量
以上希望能幫到有需要的朋友