Pular para o conteúdo

Avatar & TTS: um tutor IA falante em tempo real

O tutor IA do Studeia pode responder com avatar falante em tempo real (video + voz, lip-sync ao vivo) via HeyGen LiveAvatar ou D-ID. BYO key cifrada, configurado por curso, com degradacao graciosa.

2026-05-31 6 min
Resposta curta

O tutor IA do Studeia pode responder com avatar falante em tempo real — video + voz com lip-sync ao vivo — via WebRTC, com HeyGen LiveAvatar ou D-ID. A instituicao traz a propria chave (cifrada AES-256-GCM) e configura avatar, voz e qualidade por curso. E single-provider (sem dessincronia audio/labios), a master key nunca chega ao cliente, o uso e metered com cota mensal, e degrada full_avatar → audio_only → text_only. Voz de entrada (STT) e roadmap.

Como funciona (single-provider)

O avatar e opt-in por curso e usa um provedor para voz e video, entao nao ha dessincronia audio/labios nem passo separado de TTS:

  • HeyGen → LiveAvatar API (FULL mode): o backend cria um session token e inicia uma sala LiveKit; o cliente conecta no LiveKit para video e fala publicando um evento speak_text no data channel do LiveKit. A HeyGen faz TTS + video.
  • D-ID → clips/streams: o backend proxia SDP/ICE; o tutor fala com texto e a D-ID faz o TTS.

O cliente conecta WebRTC direto ao provedor — o video nunca passa pelo servidor do Studeia. O backend so cria a sessao, proxia speak/sdp/ice (D-ID) e grava o uso no stop.

Configuracao

  • Por tenant: conectar uma chave HeyGen ou D-ID (cifrada AES-256-GCM), testar e definir a cota mensal de minutos.
  • Por curso: Course.avatarProvider, avatarId, avatarVoiceId, avatarQuality e o flag avatarEnabled. Uma chave → N avatares (o avatar e parametro por sessao).

Seguranca & cota

  • A master API key nunca vai ao cliente; so tokens efemeros de sessao/LiveKit. Speak/SDP/ICE sao proxied server-side com checagem de AvatarSession.userId.
  • A cota mensal (monthlyMinuteCap) e verificada antes de iniciar a sessao (fail-closed → quota_exceeded). Uso e custo sao gravados em AvatarUsageLog.
  • Gate: avatarEnabled + provedor/avatar configurado no curso + matricula ativa + opt-in do aluno.

Degradacao graciosa

full_avatar → audio_only (TTS + imagem estatica) → text_only, entao o tutor sempre responde mesmo se o provedor do avatar falhar.

Mobile

No mobile o avatar roda numa WebView que carrega a mesma pagina /avatar-embed usada na web (sem modulos WebRTC nativos no Expo); uma bridge React Native encaminha as mensagens de controle.

Ainda nao (roadmap)

A voz de entrada — o aluno falando com o tutor (fala → STT → chat) — nao esta implementada. Hoje o avatar e somente saida (cabeca falante + voz).

Veja tambem

FAQ

O tutor IA do Studeia tem avatar falante?

Sim. O tutor pode responder com avatar falante em tempo real — video mais voz com lip-sync ao vivo — via WebRTC. A instituicao conecta a propria conta HeyGen (LiveAvatar) ou D-ID (BYO key cifrada em repouso), mapeia avatar/voz por curso e habilita por curso. E single-provider: o provedor faz TTS e video, entao audio e labios ficam sincronizados.

O avatar e seguro e privado?

A master API key do provedor nunca chega ao cliente — a criacao de sessao e o speak/SDP/ICE sao proxied server-side com checagem de ownership da sessao; so tokens efemeros chegam ao browser. As credenciais sao cifradas AES-256-GCM, o uso e metered (AvatarUsageLog) com cota mensal, e o acesso depende de matricula ativa + opt-in do aluno.

O que acontece se o provedor do avatar cair?

Degrada graciosamente: full_avatar → audio_only (TTS + imagem estatica) → text_only. A voz de entrada (aluno falando → speech-to-text) e um recurso separado, ainda nao implementado (roadmap); hoje o avatar e somente saida.

Veja tambem

Avatar & TTS: um tutor IA falante em tempo real | Studeia Docs