Guida all'Elaborazione Audio
Questa guida copre come impostare diversi metodi di input audio per fornire dati audio ai tuoi generatori di lip sync. Assicurati di aver completato la Guida all'Installazione prima di procedere.
Elaborazione Input Audio
Devi impostare un metodo per elaborare l'input audio. Ci sono diversi modi per farlo a seconda della tua sorgente audio.
- Microfono (Tempo reale)
- Microfono (Riproduzione)
- Text-to-Speech (Locale)
- Text-to-Speech (API Esterne)
- Da File Audio/Buffer
- Buffer Audio in Streaming
Questo approccio esegue il lip sync in tempo reale mentre si parla nel microfono:
- Modello Standard
- Modello Realistico
- Modello Realistico con Umore
- Crea una Capturable Sound Wave usando Runtime Audio Importer
- Prima di iniziare a catturare l'audio, collegati al delegato
OnPopulateAudioData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator - Inizia a catturare l'audio dal microfono
Il Modello Realistico utilizza lo stesso flusso di lavoro di elaborazione audio del Modello Standard, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Modello con Umore utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità aggiuntive di configurazione dell'umore.
Questo approccio cattura l'audio da un microfono, quindi lo riproduce con la sincronizzazione labiale:
- Modello Standard
- Modello Realistico
- Modello Realistico con Umore
- Crea una Capturable Sound Wave usando Runtime Audio Importer
- Avvia la cattura audio dal microfono
- Prima di riprodurre la capturable sound wave, collegati al suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator
Il Modello Realistico utilizza lo stesso flusso di lavoro di elaborazione audio del Modello Standard, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Modello con Umore utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità aggiuntive di configurazione dell'umore.
- Regolare
- Streaming
Questo approccio sintetizza il parlato dal testo utilizzando TTS locale ed esegue la sincronizzazione labiale:
- Modello Standard
- Modello Realistico
- Modello Realistico Abilitato all'Umore
- Usa Runtime Text To Speech per generare il parlato dal testo
- Usa Runtime Audio Importer per importare l'audio sintetizzato
- Prima di riprodurre l'onda sonora importata, collega il suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator
Il TTS locale fornito dal plugin Runtime Text To Speech non è attualmente supportato con il modello Realistico regolare a causa di conflitti del runtime ONNX. Per text-to-speech con il modello Realistico regolare, considera l'uso di soluzioni TTS esterne o utilizza invece il modello Standard.
- Usa Runtime Text To Speech per generare il parlato dal testo
- Usa Runtime Audio Importer per importare l'audio sintetizzato
- Prima di riprodurre l'onda sonora importata, collega il suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Mood-Enabled Lip Sync Generator - Configura le impostazioni dell'umore in base al contenuto del testo o all'espressione emotiva desiderata
TTS con Integrazione dell'Umore:
- Imposta umori appropriati prima o durante la generazione TTS
- Regola l'intensità dell'umore per corrispondere al tono emotivo del testo
- Usa umori diversi per diverse sezioni di contenuti testuali più lunghi
Questo approccio utilizza la sintesi vocale in streaming con lip sync in tempo reale:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- Usa Runtime Text To Speech per generare parlato in streaming dal testo
- Usa Runtime Audio Importer per importare l'audio sintetizzato
- Prima di riprodurre l'onda sonora in streaming, collega il suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator
Il TTS locale fornito dal plugin Runtime Text To Speech non è attualmente supportato con il modello Realistic regolare a causa di conflitti con il runtime ONNX. Per il text-to-speech con il modello Realistic regolare, considera l'uso di servizi TTS esterni o utilizza invece il modello Standard.
- Usa Runtime Text To Speech per generare parlato in streaming dal testo
- Usa Runtime Audio Importer per importare l'audio sintetizzato
- Prima di riprodurre l'onda sonora in streaming, collega il suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Mood-Enabled Lip Sync Generator - Regola le impostazioni dell'umore dinamicamente durante lo streaming se necessario
- Regolare
- Streaming
Questo approccio utilizza il plugin Runtime AI Chatbot Integrator per generare sintesi vocale da servizi AI (OpenAI o ElevenLabs) ed eseguire la sincronizzazione labiale:
- Modello Standard
- Modello Realistico
- Modello Realistico con Umore
- Usa Runtime AI Chatbot Integrator per generare sintesi vocale da testo usando API esterne (OpenAI, ElevenLabs, ecc.)
- Usa Runtime Audio Importer per importare i dati audio sintetizzati
- Prima di riprodurre l'onda sonora importata, collegati al suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator
Il Modello Realistico utilizza lo stesso flusso di lavoro di elaborazione audio del Modello Standard, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Modello con Umore utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità aggiuntive di configurazione dell'umore.
Questo approccio utilizza il plugin Runtime AI Chatbot Integrator per generare sintesi vocale in streaming da servizi AI (OpenAI o ElevenLabs) ed eseguire la sincronizzazione labiale:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- Usa Runtime AI Chatbot Integrator per connetterti alle API TTS in streaming (come ElevenLabs Streaming API)
- Usa Runtime Audio Importer per importare i dati audio sintetizzati
- Prima di riprodurre l'onda sonora in streaming, collegati al suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator
Il Realistic Model utilizza lo stesso flusso di lavoro di elaborazione audio del Standard Model, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Mood-Enabled Model utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità aggiuntive di configurazione dell'umore.
Questo approccio utilizza file audio pre-registrati o buffer audio per la sincronizzazione labiale:
- Modello Standard
- Modello Realistico
- Modello Realistico con Umore
- Usa Runtime Audio Importer per importare un file audio dal disco o dalla memoria
- Prima di riprodurre l'onda sonora importata, collegati al suo delegato
OnGeneratePCMData
- Nella funzione collegata, chiama
ProcessAudioData
dal tuo Runtime Viseme Generator - Riproduci l'onda sonora importata e osserva l'animazione di sincronizzazione labiale
Il Modello Realistico utilizza lo stesso flusso di lavoro di elaborazione audio del Modello Standard, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Modello con Umore utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità aggiuntive di configurazione dell'umore.
Per i dati audio in streaming da un buffer, hai bisogno di:
- Modello Standard
- Modello Realistico
- Modello Realistico con Umore
- Dati audio in formato PCM float (un array di campioni in virgola mobile) disponibili dalla tua sorgente di streaming (o usa Runtime Audio Importer per supportare più formati)
- La frequenza di campionamento e il numero di canali
- Chiama
ProcessAudioData
dal tuo Runtime Viseme Generator con questi parametri man mano che i chunk audio diventano disponibili
Il Modello Realistico utilizza lo stesso flusso di lavoro di elaborazione audio del Modello Standard, ma con la variabile RealisticLipSyncGenerator
invece di VisemeGenerator
.
Il Modello con Umore utilizza lo stesso flusso di lavoro di elaborazione audio, ma con la variabile MoodMetaHumanLipSyncGenerator
e capacità di configurazione dell'umore aggiuntive.
Nota: Quando si utilizzano sorgenti audio in streaming, assicurarsi di gestire appropriatamente i tempi di riproduzione audio per evitare una riproduzione distorta. Consultare la documentazione Streaming Sound Wave per maggiori informazioni.
Suggerimenti per le Prestazioni di Elaborazione
-
Dimensione del Blocco: Se si desidera elaborare i dati audio in blocchi più piccoli per una sincronizzazione labiale più reattiva, regolare il calcolo nella funzione
SetNumSamplesPerChunk
. Ad esempio, dividere la frequenza di campionamento per 150 (streaming ogni ~6,67 ms) invece di 100 (streaming ogni 10 ms) fornirà aggiornamenti della sincronizzazione labiale più frequenti. -
Gestione del Buffer: Il modello con umore elabora l'audio in frame di 320 campioni (20ms a 16kHz). Assicurarsi che la tempistica dell'input audio sia allineata a questo per prestazioni ottimali.
-
Ricreazione del Generatore: Per un funzionamento affidabile con i modelli Realistici, ricreare il generatore ogni volta che si desidera alimentare nuovi dati audio dopo un periodo di inattività.
Prossimi Passi
Una volta configurata l'elaborazione audio, si potrebbe voler:
- Informarsi sulle opzioni di Configurazione per ottimizzare il comportamento della sincronizzazione labiale
- Aggiungere animazione della risata per una maggiore espressività
- Combinare la sincronizzazione labiale con le animazioni facciali esistenti utilizzando le tecniche di stratificazione descritte nella guida di Configurazione