Compartilhar via


Suporte a fala sintetizada

[O Microsoft Agent foi preterido a partir do Windows 7 e pode estar indisponível nas versões subsequentes do Windows.]

Se você usar a fala sintetizada, seu personagem terá a capacidade de dizer quase tudo, o que oferece a maior flexibilidade. Com o áudio gravado, você pode dar ao caractere uma voz específica ou exclusiva. Para especificar a saída, forneça o texto falado como um parâmetro do método Speak .

Como a arquitetura do Microsoft Agent usa o Microsoft SAPI para saída de fala sintetizada, você pode usar qualquer mecanismo que esteja em conformidade com essa especificação e dê suporte à saída do IPA (Alfabeto Fonético Internacional) usando o método Visual da interface ITTSNotifySinkW . Para obter mais informações sobre as necessidades do mecanismo, consulte Requisitos de suporte do Mecanismo de Fala.

A configuração de ID de idioma de um caractere determina sua saída TTS. Se um cliente não especificar uma ID de idioma para o caractere, a ID do idioma do caractere será definida como a ID de idioma padrão do usuário. Se a definição do caractere incluir um mecanismo específico e esse mecanismo puder ser carregado e corresponder à configuração de idioma do caractere, esse mecanismo será usado. Caso contrário, o Microsoft Agent enumera os outros mecanismos disponíveis e solicita uma melhor correspondência sapi com base na linguagem, gênero e idade (nessa ordem). Se não houver nenhum mecanismo correspondente disponível, não haverá saída TTS para o uso do caractere pelo cliente. O agente tenta carregar o mecanismo TTS na primeira chamada speak ou quando você consulta ou define com êxito sua ID de modo.

Um aplicativo cliente também pode especificar um mecanismo TTS para seu caractere (usando a propriedade TTSModeID ). Isso substitui a tentativa do servidor de localizar automaticamente um mecanismo correspondente com base na ID do modo TTS preferencial do caractere ou na configuração de ID de idioma atual do caractere. No entanto, se esse mecanismo não estiver instalado (ou não puder ser carregado de outra forma), a chamada falhará (e gerará um erro no controle). Em seguida, o servidor tenta carregar outro mecanismo com base na ID da linguagem, na configuração do TTS do caractere compilado e nos mecanismos TTS disponíveis. Se ainda não houver correspondência, o TTS não estará disponível para esse cliente, mas o caractere ainda poderá falar em seu balão de palavra.

Somente os mecanismos TTS em uso por qualquer cliente permanecem carregados. Por exemplo, se um caractere tiver uma preferência definida por um mecanismo específico e esse mecanismo estiver disponível, mas seu aplicativo cliente tiver especificado um mecanismo diferente (definindo a ID de idioma de um caractere de forma diferente do mecanismo ou especificando uma ID de modo diferente), somente o mecanismo especificado pelo aplicativo permanecerá carregado. O mecanismo que corresponde à preferência definida do caractere para uma configuração de TTS é descarregado (a menos que outro cliente esteja usando a configuração do mecanismo compilado do caractere).