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()
'''
浙公网安备 33010602011771号