python调用千问qwen-livetranslate实时文字语音翻译api实现同声传译代码

代码语言:python

所属分类:其他

代码描述:python调用千问qwen-livetranslate实时文字语音翻译api实现同声传译代码,实时识别麦克风人说话声音,克隆音色后自动翻译指定语音说话,并同步输出翻译后的文本。

代码标签: python 调用 千问 qwen-livetranslate 实时 文字 语音 翻译 api 同声

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

import os
import time
import base64
import asyncio
import json
import websockets
import pyaudio
import queue
import threading
import traceback

class LiveTranslateClient:
    def __init__(self, api_key: str, target_language: str = "en", *, audio_enabled: bool = True):
        if not api_key:
            raise ValueError("API key cannot be empty.")
            
        self.api_key = api_key
        self.target_language = target_language
        self.audio_enabled = audio_enabled
        self.ws = None
        self.api_url = "wss://dashscope.aliyuncs.com/api-ws/v1/realtime?model=qwen3.5-livetranslate-flash-realtime"
        
        # 音频输入配置 (来自麦克风)
        self.input_rate = 16000
        self.input_chunk = 1600
        self.input_format = pyaudio.paInt16
        self.input_channels = 1
        
        # 音频输出配置 (用于播放)
        self.output_rate = 24000
        self.output_chunk = 2400
        self.output_format = pyaudio.paInt16
        self.output_channels = 1
        
        # 状态管理
        self.is_connected = False
        self.audio_player_thread = None
        self.audio_playback_queue = queue.Queue()
        self.pyaudio_instance = pyaudio.PyAudio()

    async def connect(self):
        """建立到翻译服务的 WebSocket 连接。"""
        headers = {"Authorization": f"Bearer {self.api_key}"}
        try:
            self.ws = await websockets.connect(self.api_url, additional_headers=h.........完整代码请登录后点击上方下载按钮下载查看

网友评论0