欧美女同视频激情_国产原创中文字幕在线观看_4438xx亚洲最大五色丁香_成年做羞羞的视频网站在线观看_a毛片免费全部播_原神胡桃乳液vx网站进入_一区亚洲欧美中文日韩v在线观看_校园春色亚洲_搞机time软件app免费下载安装_十八禁无遮拦视频大全

調(diào)用Python文本轉(zhuǎn)語(yǔ)音引擎pyttsx3

標(biāo)簽: 插件

邱彼鄭楠 2025-06-25 22:21:41

1. 首先,針對(duì)北太天元所使用的 Python,安裝 pyttsx3 文本轉(zhuǎn)語(yǔ)音引擎:

load_plugin("Python");
pipcmd("install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple/");

2. 使用如下函數(shù)初始化一個(gè)基于 pyttsx3 的 TTS 引擎并設(shè)置其參數(shù):

function [engine] = textToSpeech_pytts_init()
    % 獲取 Python 根對(duì)象用于調(diào)用 Python 函數(shù)等
    py = pyroot;
    % 導(dǎo)入 pyttsx3 模塊
    pyttsx3 = py.pyttsx3;
    % 初始化 TTS 引擎
    engine = pyttsx3.init();
    % 設(shè)置語(yǔ)音屬性 (可選)
    voices = engine.getProperty('voices');
    % voices 是一個(gè) py.list 對(duì)象
    % 目前北太天元無(wú)法直接使用 length 獲取 py.list 的長(zhǎng)度
    % 只能暫時(shí)使用 Python 中的 len 來(lái)代替
    for i = 1:py.len(voices)
        % 同樣, 北太天元中的 frompy 函數(shù)無(wú)法將 py.list 類型的 voices 轉(zhuǎn)化為內(nèi)置的數(shù)組
        % 所以只能通過(guò) pygetitem 函數(shù)來(lái)獲取每一個(gè)元素
        voice = pygetitem(voices, i-1);
        if contains(string(voice.name), 'Chinese')  % 查找支持中文的語(yǔ)音
            engine.setProperty('voice', voice.id);
            break
        end
        if contains(string(voice.name), 'English')  % 查找支持英文的語(yǔ)音
            engine.setProperty('voice', voice.id);
            break;
        end
    end
    % 設(shè)置語(yǔ)速 (可選)
    engine.setProperty('rate', 150);    % 默認(rèn)值為 200
    % 設(shè)置音量 (可選)
    engine.setProperty('volume', 0.8);  % 范圍是 0.0 到 1.0
end

3. 初始化引擎,并傳給引擎文本,讓引擎朗讀,或者保存音頻:

% 初始化 TTS 引擎
engine = textToSpeech_pytts_init();
% 設(shè)置要說(shuō)的文本
text = "你好,我在北太天元中調(diào)用 Python 文本轉(zhuǎn)語(yǔ)音引擎!";
engine.say(text);
% 保存為 WAV 文件
engine.save_to_file(text, "output.wav");
% 運(yùn)行并等待語(yǔ)音完成
engine.runAndWait();
engine.stop()

這樣便可以聽(tīng)見(jiàn)引擎朗讀的聲音,也可以在本地找到保存的 output.wav 文件。

本示例中的 textToSpeech_pytts_init() 函數(shù)參考 大預(yù)言模型(LLM)賦能具身智能中的人機(jī)交互 中 Python 模型集成一節(jié),并將無(wú)法在北太天元中運(yùn)行的部分進(jìn)行了修改。

本示例也參考了 Python使用總結(jié)之Python文本轉(zhuǎn)語(yǔ)音引擎:pyttsx3完全指南 如何使用 pyttsx3 庫(kù)。

回復(fù)

回復(fù)

重置 提交