Przejdź do głównej zawartości

Przewodnik przetwarzania dźwięku

Ten przewodnik obejmuje konfigurację różnych metod wprowadzania dźwięku w celu dostarczania danych audio do generatorów synchronizacji ust. Upewnij się, że ukończyłeś Przewodnik konfiguracji przed kontynuowaniem.

Przetwarzanie wejścia audio

Musisz skonfigurować metodę przetwarzania wejścia audio. Istnieje kilka sposobów w zależności od źródła dźwięku.

To podejście wykonuje synchronizację ust w czasie rzeczywistym podczas mówienia do mikrofonu:

  1. Utwórz Capturable Sound Wave za pomocą Runtime Audio Importer
  2. Przed rozpoczęciem przechwytywania dźwięku, podłącz się do delegata OnPopulateAudioData
  3. W powiązanej funkcji, wywołaj ProcessAudioData z twojego Runtime Viseme Generator
  4. Rozpocznij przechwytywanie dźwięku z mikrofonu

Węzły do skopiowania.

Synchronizacja ust podczas przechwytywania dźwięku

Wskazówki dotyczące wydajności przetwarzania

  • Rozmiar fragmentu: Jeśli chcesz przetwarzać dane audio w mniejszych fragmentach dla bardziej responsywnej synchronizacji ust, dostosuj obliczenia w funkcji SetNumSamplesPerChunk. Na przykład, dzieląc częstotliwość próbkowania przez 150 (strumieniowanie co ~6,67 ms) zamiast 100 (strumieniowanie co 10 ms) zapewni częstsze aktualizacje synchronizacji ust.

  • Zarządzanie buforem: Model z obsługą nastroju przetwarza audio w klatkach 320-próbkowych (20ms przy 16kHz). Upewnij się, że czasowanie twojego wejścia audio jest z tym zsynchronizowane dla optymalnej wydajności.

  • Ponowne tworzenie generatora: Dla niezawodnej pracy z modelami realistycznymi, odtwórz generator za każdym razem, gdy chcesz dostarczyć nowe dane audio po okresie bezczynności.

Następne kroki

Po skonfigurowaniu przetwarzania audio, możesz chcieć:

  • Dowiedzieć się o opcjach konfiguracji aby dostroić zachowanie synchronizacji ust
  • Dodać animację śmiechu dla zwiększonej ekspresji
  • Połączyć synchronizację ust z istniejącymi animacjami twarzy przy użyciu technik warstwowania opisanych w przewodniku konfiguracji