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)

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

相关推荐
2501_921649491 分钟前
构建多市场统一金融数据 API 的实践指南
python·金融·个人开发·量化·api接口
唯创知音2 分钟前
唯创知音WT3000A M1模组用AI语音方案重新定义AI儿童打印设备
语音识别·ai儿童打印设备·ai语音交互方案
海天一色y2 分钟前
基于Neural ODE的污水处理活性污泥混合模型(Hybrid ASM1)实现与GPU训练
pytorch·python·神经网络
他是龙5515 分钟前
63:JS 加密断点调试与逆向实战
开发语言·javascript·状态模式
gmaajt5 分钟前
SQL如何统计每个类别的订单总额_使用SUM与GROUP BY聚合分析
jvm·数据库·python
常利兵6 分钟前
Kotlin类型魔法:Any、Unit、Nothing 深度探秘
android·开发语言·kotlin
2301_803875617 分钟前
如何高效实现多用户通知系统而不造成数据库冗余
jvm·数据库·python
weixin_580614008 分钟前
SQL如何统计分组内的最高和最低值_MAX与MIN聚合应用
jvm·数据库·python
DevangLic9 分钟前
【量化-因子】
python
莫逸风10 分钟前
【java-core-collections】红黑树深度解析
java·开发语言