python调用pc的语音借口

先安装:

bash 复制代码
pip install pyttsx3

再运行:

python 复制代码
import pyttsx3
# 初始化语音引擎
def init_engine():
    engine = pyttsx3.init()
    # 设置中文语音
    voices = engine.getProperty('voices')
    
    for voice in voices:
        if 'chinese' in voice.name.lower():
            engine.setProperty('voice', voice.id)
            break
    
    # 设置语速 (默认是200)
    engine.setProperty('rate', 150)
    
    # 添加以下行来防止引擎过早释放
    engine.setProperty('debug', True)
    
    return engine

# 说中文的函数
def speak_chinese(text, engine=None):
    local_engine = engine if engine else init_engine()
    try:
        local_engine.say(text)
        local_engine.runAndWait()
        # 添加以下行来确保语音完全播放完成
        local_engine.stop()
    except Exception as e:
        print(f"语音转换出错: {str(e)}")
    finally:
        # 如果是本地创建的引擎,则需要清理
        if engine is None:
            del local_engine

# 使用示例
if __name__ == "__main__":
    text = "毛主席真伟大"
    speak_chinese(text)

高声呼喊,"毛主席真伟大"

相关推荐
云栖梦泽7 分钟前
鸿蒙应用签名与上架全流程:从开发完成到用户手中
开发语言·鸿蒙系统
哥本哈士奇(aspnetx)1 小时前
Streamlit + LangChain 1.0 简单实现智能问答前后端
python·大模型
爱上妖精的尾巴1 小时前
6-4 WPS JS宏 不重复随机取值应用
开发语言·前端·javascript
我一定会有钱1 小时前
斐波纳契数列、end关键字
python
小鸡吃米…2 小时前
Python 列表
开发语言·python
kaikaile19952 小时前
基于C#实现一维码和二维码打印程序
开发语言·c#
我不是程序猿儿3 小时前
【C#】画图控件的FormsPlot中的Refresh功能调用消耗时间不一致缘由
开发语言·c#
rit84324993 小时前
C# Socket 聊天室(含文件传输)
服务器·开发语言·c#
星依网络3 小时前
yolov5实现游戏图像识别与后续辅助功能
python·开源·游戏程序·骨骼绑定
嘉琪0013 小时前
Vue3+JS 高级前端面试题
开发语言·前端·javascript