cat /proc/asound/cards
lsusb
3.列出所有音频输出设备
4.列出所有音频输入设备
配置默认声卡为指定声卡
1.在$HOME下新建 .asoundrc
cd $HOME nano .asoundrc
defaults.ctl.card 2 defaults.pcm.card 2
2指的是指定声卡的card号,可用cat /proc/asound/cards查看
import asyncio from edge_tts import Communicate #import subprocess import os #sudo apt install mpg123 #pip install edge-tts async def speak(text_): communicate = Communicate(text=text_, voice="zh-CN-XiaoxiaoNeural") await communicate.save("output.mp3") import os os.system("mpg123 output.mp3") #subprocess.run(["mpg123", "output.mp3"]) text='语音播报异常' asyncio.run(speak(text)) ''' import subprocess def speak_chinese(text): subprocess.run(["espeak-ng", "-v", "zh", text]) speak_chinese('语音播报异常') # 线程3:语音播报 def voice_thread(): # 初始化语音引擎 engine = pyttsx3.init() engine.setProperty('rate', 150) engine.setProperty("volume", 0.8) engine.setProperty('voice', 'zh') last_spoken_time = 0 try: while not exit_event.is_set(): if "过大" in alarm_text: current_time = time.time() if current_time - last_spoken_time >= 3: try: engine.setProperty('voice', 'zh') engine.say(alarm_text) engine.runAndWait() #speak(alarm_text) last_spoken_time = current_time except Exception as e: print(f"🔊 语音播报异常:{e}") time.sleep(1) except Exception as e: print(f"🔊 语音线程异常:{e}") exit_event.set() '''