Bootstrap

物联网设计竞赛_10_Jetson Nano中文转汉语语音

在windows中pyttsx3可以让汉字文本输出中文语音,但是在jetson上只能用英文说话

import pyttsx3

def hanyu(test):

    engine = pyttsx3.init()

    rate = engine.getProperty('rate')
    engine.setProperty('rate',125)


    engine.say(test)
    engine.runAndWait()
hanyu('你好')
#engine.save_to_file('你好,世界!','test.mp3')
#engine.runAndWait()

多次尝试后发现用espeak是可以的

import os
import tempfile

def speak_chinese_espeak(text):
    # 创建一个临时文件
    with tempfile.NamedTemporaryFile(delete=True, suffix='.wav') as tf:
        temp_audio_path = tf.name

        # 使用 espeak 合成中文语音
        os.system(f"espeak -v zh -w {temp_audio_path} '{text}'")

        # 播放音频文件
        os.system(f"aplay {temp_audio_path}")

# 测试中文语音输出
speak_chinese_espeak("你好,这是一个中文语音测试。")

需要下载:

sudo apt-get update
sudo apt-get install espeak

声音有些僵硬不过能凑活着用,想要高级点的语音也可以用api

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;