import asyncio import base64 import os import sys sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../..'))) sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) from backend.tts_asr import _tts_sync_with_retry async def play_audio(): print("生成测试音频中,请稍候...") test_text = "这是一段用以测试新语音模型音质的中文合成音频。" try: audio_bytes, sr = await _tts_sync_with_retry(test_text, rate=1.0) # 保存到本地文件 wav_path = os.path.join(os.path.dirname(__file__), "test_audio.wav") with open(wav_path, "wb") as f: f.write(audio_bytes) print(f"音频已生成并保存到: {wav_path}") print("正在尝试在 macOS 上播放...") # Mac OS 的播放命令 os.system(f"afplay '{wav_path}'") print("播放完成。") except Exception as e: import traceback traceback.print_exc() print(f"音频生成失败: {str(e)}") if __name__ == "__main__": asyncio.run(play_audio())