Guia de Processamento de Áudio
Este guia aborda como configurar diferentes métodos de entrada de áudio para alimentar dados de áudio aos seus geradores de lip sync. Certifique-se de ter concluído o Guia de Configuração antes de prosseguir.
Processamento de Entrada de Áudio
Você precisa configurar um método para processar a entrada de áudio. Existem várias maneiras de fazer isso, dependendo da sua fonte de áudio.
- Microfone (Tempo Real)
- Microfone (Reprodução)
- Texto-para-Fala (Local)
- Texto-para-Fala (APIs Externas)
- De Arquivo/Buffer de Áudio
- Buffer de Áudio em Streaming
Esta abordagem realiza lip sync em tempo real enquanto fala no microfone:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Crie um Capturable Sound Wave usando Runtime Audio Importer
- Para Linux com Pixel Streaming, use Pixel Streaming Capturable Sound Wave
- Antes de começar a capturar áudio, vincule-se ao delegate
OnPopulateAudioData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator - Inicie a captura de áudio do microfone

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Esta abordagem captura áudio de um microfone e depois o reproduz com lip sync:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Crie um Capturable Sound Wave usando Runtime Audio Importer
- Para Linux com Pixel Streaming, use Pixel Streaming Capturable Sound Wave
- Inicie a captura de áudio do microfone
- Antes de reproduzir o capturable sound wave, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

- Regular
- Streaming
Esta abordagem sintetiza fala a partir de texto usando TTS local e realiza lip sync:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Use Runtime Text To Speech para gerar fala a partir de texto
- Use Runtime Audio Importer para importar o áudio sintetizado
- Antes de reproduzir o sound wave importado, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Esta abordagem usa síntese de texto-para-fala em streaming com lip sync em tempo real:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Use Runtime Text To Speech para gerar fala em streaming a partir de texto
- Use Runtime Audio Importer para importar o áudio sintetizado
- Antes de reproduzir o streaming sound wave, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

- Regular
- Streaming
Esta abordagem usa o plugin Runtime AI Chatbot Integrator para gerar fala sintetizada a partir de serviços de IA (OpenAI ou ElevenLabs) e realizar lip sync:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Use Runtime AI Chatbot Integrator para gerar fala a partir de texto usando APIs externas (OpenAI, ElevenLabs, etc.)
- Use Runtime Audio Importer para importar os dados de áudio sintetizados
- Antes de reproduzir o sound wave importado, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Esta abordagem usa o plugin Runtime AI Chatbot Integrator para gerar fala sintetizada em streaming a partir de serviços de IA (OpenAI ou ElevenLabs) e realizar lip sync:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Use Runtime AI Chatbot Integrator para conectar-se a APIs de TTS em streaming (como ElevenLabs Streaming API)
- Use Runtime Audio Importer para importar os dados de áudio sintetizados
- Antes de reproduzir o streaming sound wave, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Esta abordagem usa arquivos de áudio pré-gravados ou buffers de áudio para lip sync:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Use Runtime Audio Importer para importar um arquivo de áudio do disco ou da memória
- Antes de reproduzir o sound wave importado, vincule-se ao seu delegate
OnGeneratePCMData - Na função vinculada, chame
ProcessAudioDatado seu Runtime Viseme Generator - Reproduza o sound wave importado e observe a animação de lip sync

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Para dados de áudio em streaming a partir de um buffer, você precisa:
- Modelo Padrão
- Modelo Realista
- Modelo Realista com Humor
- Dados de áudio no formato PCM float (um array de amostras de ponto flutuante) disponíveis a partir da sua fonte de streaming (ou use Runtime Audio Importer para suportar mais formatos)
- A taxa de amostragem e o número de canais
- Chame
ProcessAudioDatado seu Runtime Viseme Generator com esses parâmetros à medida que os chunks de áudio ficam disponíveis

O Modelo Realista usa o mesmo fluxo de trabalho de processamento de áudio que o Modelo Padrão, mas com a variável RealisticLipSyncGenerator em vez de VisemeGenerator.

O Modelo com Humor usa o mesmo fluxo de trabalho de processamento de áudio, mas com a variável MoodMetaHumanLipSyncGenerator e capacidades adicionais de configuração de humor.

Nota: Ao usar fontes de áudio em streaming, certifique-se de gerenciar o tempo de reprodução de áudio adequadamente para evitar reprodução distorcida. Consulte a documentação do Streaming Sound Wave para mais informações.
Dicas de Desempenho de Processamento
-
Tamanho do Chunk: Aumentar a opção de configuração
ProcessingChunkSize(por exemplo, para 320, 480 ou 640 amostras) pode melhorar notavelmente a latência com impacto mínimo na qualidade ou capacidade de resposta. -
Tipo de Modelo: Ao usar modelos Realistas, mudar para o tipo de modelo Altamente Otimizado (selecionado por padrão) pode melhorar o desempenho. Observe que o modelo original pode produzir qualidade ligeiramente melhor, particularmente com áudio ruidoso.
-
Gerenciamento de Buffer: O modelo com humor processa áudio em quadros de 320 amostras (20ms a 16kHz). Certifique-se de que o tempo da sua entrada de áudio esteja alinhado com isso para um desempenho ideal.
-
Recriação do Gerador: Para uma operação confiável com modelos Realistas, recrie o gerador cada vez que quiser alimentar novos dados de áudio após um período de inatividade. Consulte Recriação do Gerador na seção de Solução de Problemas para a explicação.
Próximos Passos
Depois de configurar o processamento de áudio, você pode querer:
- Aprender sobre Opções de Configuração para ajustar o comportamento do seu lip sync
- Adicionar animação de risada para maior expressividade
- Combinar lip sync com animações faciais existentes usando as técnicas de camadas descritas no guia de Configuração