QwenCloudBRASIL
Tradução de apoio para consulta. Código e identificadores técnicos preservados. Consultar referência original ↗

Qwen3-TTS SDK Java em tempo real

SDK Java TTS em tempo real

Para modelos e opções de voz, consulte TTS de streaming em tempo real.

Pré-requisitos

Requer DashScope Java SDK 2.22.7 ou posterior.

Primeiros passos

Ambos os modos de interação seguem o mesmo padrão: construir QwenTtsRealtimeParam, crie um QwenTtsRealtime instância com um retorno de chamada, conecte-se, configure a sessão, envie o texto e feche. Para exemplos completos e tutoriais, consulte Conversão de texto em fala em tempo real.

Parâmetros de solicitação

QwenTtsRealtimeParam

Construa um QwenTtsRealtimeParam e passe para o QwenTtsRealtime construtor.

Parâmetro Tipo Obrigatório Descrição
modelo Corda Sim Nome do modelo. Consulte Modelos suportados.
url Corda Sim Ponto de extremidade WebSocket: wss://maas.qwencloudapi.com/api-ws/v1/realtime.

QwenTtsRealtimeConfig

Construa um QwenTtsRealtimeConfig e passe para updateSession().

Parâmetro Tipo Obrigatório Descrição
voz Corda Sim Voz para síntese. Vozes do sistema: disponíveis para Qwen3-TTS-Flash-Realtime. Consulte Vozes suportadas para amostras. Vozes personalizadas: vozes personalizadas criadas por meio de clonagem ou design de voz.
tipo de idioma Corda Não Idioma do áudio de saída. Padrão: Auto (o modelo detecta o idioma por segmento; a precisão não é garantida). Defina um idioma específico para melhorar a qualidade do texto em um único idioma. Valores válidos: Chinese, English, German, Italian, Portuguese, Spanish, Japanese, Korean, French, Russian.
modo Corda Não Modo de interação. server_commit (padrão): o servidor decide quando sintetizar o texto em buffer, equilibrando latência e qualidade. commit: o cliente aciona a síntese para a latência mais baixa; requer gerenciamento manual de limites de frases.
formato Corda Não Formato de saída de áudio. Valores válidos: pcm (padrão), wav, mp3, opus. Qwen3-TTS-Flash-Realtime suporta apenas pcm. Consulte Modelos suportados.
taxa de amostra interno Não Taxa de amostragem em Hz. Valores válidos: 8000, 16000, 24000 (padrão), 48000. Qwen3-TTS-Flash-Realtime suporta apenas 24000. Consulte Modelos suportados.
taxa de fala flutuar Não Multiplicador de taxa de fala. Faixa: [0,5, 2,0]. Padrão: 1.0. Não suportado por Qwen3-TTS-Flash-Realtime.
volume interno Não Volume de áudio. Faixa: [0, 100]. Padrão: 50. Não suportado por Qwen3-TTS-Flash-Realtime.
taxa de pitch flutuar Não Multiplicador de passo. Faixa: [0,5, 2,0]. Padrão: 1.0. Não suportado por Qwen3-TTS-Flash-Realtime.
taxa de bits interno Não Áudio taxa de bits em kbps. Faixa: [6, 510]. Padrão: 128. Somente para opus formato. Valores mais altos produzem melhor qualidade em tamanhos de arquivo maiores. Não suportado por Qwen3-TTS-Flash-Realtime.
instruções Corda Não Texto de instrução para controlar o estilo de fala. Máximo de 1.600 tokens. Apenas chinês e inglês. O controle de instrução migrou para CosyVoice modelos. Consulte Controle de instruções.
otimizarInstruções booleano Não Otimiza instructions para uma síntese mais natural. Padrão: false. Nenhum efeito se instructions não está definido. O controle de instrução migrou para CosyVoice modelos. Consulte Controle de instruções.

Referência de API

QwenTtsRealtime aula

import com.alibaba.dashscope.audio.qwen_tts_realtime.QwenTtsRealtime;
Método Assinatura Eventos do servidor Descrição
conectar public void connect() throws NoApiKeyException, InterruptedException sessão.criada, sessão.atualizada Abre uma conexão WebSocket.
atualizarSessão public void updateSession(QwenTtsRealtimeConfig config) sessão.atualizada Atualiza a configuração da sessão. Ligue imediatamente depois connect() para substituir os padrões. O servidor valida os parâmetros e retorna um erro se for inválido.
anexarTexto public void appendText(String text) Nenhum Acrescenta texto ao buffer de entrada do lado do servidor. Em server_commit modo, o servidor decide quando sintetizar. Em commit modo, chamada commit() para desencadear a síntese.
limparAppendedText public void clearAppendedText() entrada_text_buffer.cleared Limpa todo o texto no buffer de entrada do servidor.
comprometer public void commit() input_text_buffer.comprometido, response.output_item.added, response.content_part.added, response.audio.delta, response.audio.done, response.content_part.done, response.output_item.done, resposta.concluído Confirma o texto armazenado em buffer e inicia a síntese. Retorna um erro se o buffer estiver vazio. Em server_commit modo, o servidor confirma automaticamente. Em commit modo, chame isso para acionar a síntese.
acabamento public void finish() sessão.terminada Interrompe a tarefa atual.
fechar public void close() Nenhum Fecha a conexão WebSocket.
getSessionId public String getSessionId() Nenhum Retorna o ID da sessão atual.
getResponseId public String getResponseId() Nenhum Retorna o ID de resposta mais recente.
getFirstAudioDelay public long getFirstAudioDelay() Nenhum Retorna a latência do primeiro pacote de áudio em milissegundos.

QwenTtsRealtimeCallback interface

import com.alibaba.dashscope.audio.qwen_tts_realtime.QwenTtsRealtimeCallback;
Método Parâmetros Descrição
onOpen() Nenhum Chamado quando a conexão WebSocket é aberta.
onEvent(JsonObject message) message: a carga útil do evento do servidor. Chamado quando um evento do servidor chega. Para tipos de eventos, consulte Eventos do lado do servidor.
onClose(int code, String reason) code: código de status de fechamento do WebSocket. reason: Motivo próximo. Chamado quando o servidor fecha a conexão.

##Próximas etapas