58 lines
1.7 KiB
Python
58 lines
1.7 KiB
Python
|
|
# coding=utf-8
|
|||
|
|
# Installation instructions for pyaudio:
|
|||
|
|
# CentOS
|
|||
|
|
# sudo yum install -y portaudio portaudio-devel && pip install pyaudio
|
|||
|
|
# Microsoft Windows
|
|||
|
|
# python -m pip install pyaudio
|
|||
|
|
|
|||
|
|
import os
|
|||
|
|
import sys
|
|||
|
|
|
|||
|
|
# 添加项目根目录到 sys.path 以便导入 Util
|
|||
|
|
root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|||
|
|
if root_dir not in sys.path:
|
|||
|
|
sys.path.append(root_dir)
|
|||
|
|
|
|||
|
|
from Util.AlyTtsKit import QwenTTSManager
|
|||
|
|
|
|||
|
|
# ======= 测试配置 =======
|
|||
|
|
VOICE_FILE_PATH = os.path.join(os.path.dirname(__file__), "voice.mp3")
|
|||
|
|
|
|||
|
|
def main():
|
|||
|
|
"""
|
|||
|
|
测试函数
|
|||
|
|
"""
|
|||
|
|
print('[系统] 启动 Qwen TTS 测试 (使用 AlyTtsKit)...')
|
|||
|
|
|
|||
|
|
# 待合成的文本
|
|||
|
|
test_texts = [
|
|||
|
|
'您好,我是您的 AI 助手。',
|
|||
|
|
'现在正在测试抽取到 Util 目录下的 AlyTtsKit 功能。',
|
|||
|
|
'希望这次重构能让代码更加模块化!'
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
try:
|
|||
|
|
# 1. 初始化管理器
|
|||
|
|
tts_manager = QwenTTSManager()
|
|||
|
|
|
|||
|
|
# 2. 创建/获取音色
|
|||
|
|
if not os.path.exists(VOICE_FILE_PATH):
|
|||
|
|
print(f'[错误] 测试音频文件不存在: {VOICE_FILE_PATH}')
|
|||
|
|
return
|
|||
|
|
|
|||
|
|
print('[系统] 正在进行声音复刻...')
|
|||
|
|
voice_id = tts_manager.create_voice_enrollment(VOICE_FILE_PATH)
|
|||
|
|
print(f'[系统] 声音复刻成功,Voice ID: {voice_id}')
|
|||
|
|
|
|||
|
|
# 3. 执行合成并播放
|
|||
|
|
print('[系统] 开始语音合成...')
|
|||
|
|
tts_manager.start_synthesis(voice_id, test_texts)
|
|||
|
|
|
|||
|
|
print('[系统] 测试完成。')
|
|||
|
|
|
|||
|
|
except Exception as e:
|
|||
|
|
print(f'[系统] 发生错误: {e}')
|
|||
|
|
|
|||
|
|
if __name__ == '__main__':
|
|||
|
|
main()
|