Przejdź do głównej zawartości

Przegląd

Dokumentacja Runtime MetaHuman Lip Sync

Runtime MetaHuman Lip Sync to wtyczka umożliwiająca animację ruchu warg w czasie rzeczywistym, offline i na różnych platformach, zarówno dla postaci MetaHuman, jak i niestandardowych. Pozwala ona animować usta postaci w odpowiedzi na dźwięk wejściowy z różnych źródeł, w tym:

Wtyczka wewnętrznie generuje wizemy (wizualne reprezentacje fonemów) na podstawie danych wejściowych audio. Ponieważ działa bezpośrednio na danych audio, a nie na tekście, wtyczka obsługuje wielojęzyczne dane wejściowe, w tym między innymi angielski, hiszpański, francuski, niemiecki, japoński, chiński, koreański, rosyjski, włoski, portugalski, arabski i hindi. Dosłownie każdy język jest obsługiwany, ponieważ animacja warg jest generowana z fonemów dźwiękowych, a nie z przetwarzania tekstu specyficznego dla języka.

Model Standardowy generuje 14 wizemów i wykonuje animację ruchu warg przy użyciu predefiniowanego zasobu poz. Natomiast Modele Realistyczne (dostępne wyłącznie dla postaci MetaHuman) generują 81 zmian w sterowaniu mimiką twarzy bez polegania na predefiniowanym zasobie poz, co skutkuje znacznie bardziej realistycznymi animacjami twarzy.

Kompatybilność z postaciami

Pomimo swojej nazwy, Runtime MetaHuman Lip Sync działa z szerokim zakresem postaci, nie tylko z MetaHuman:

Popularne komercyjne systemy postaci

  • Postacie Daz Genesis 8/9
  • Postacie Reallusion Character Creator 3/4 (CC3/CC4)
  • Postacie Mixamo
  • Awatary ReadyPlayerMe

Obsługa standardów animacji

  • Systemy blendshape oparte na FACS
  • Standard blendshape Apple ARKit
  • Zestawy fonemów Preston Blair
  • Systemy fonemów 3ds Max
  • Dowolna postać z niestandardowymi celami morfowania (morph targets) dla wyrazów twarzy

Szczegółowe instrukcje dotyczące używania wtyczki z postaciami innymi niż MetaHuman znajdują się w Przewodniku konfiguracji postaci niestandardowych.

Podgląd animacji

Sprawdź te krótkie animacje, aby zobaczyć jakość animacji ruchu warg generowanej przez wtyczkę dla różnych typów postaci i modeli:

Realistic Lip Sync Example
Realistyczny model z postacią MetaHuman
Standard Lip Sync Example
Standardowy model z postacią MetaHuman
Custom Character Lip Sync Example
Model standardowy z niestandardową postacią
Custom Character Lip Sync Example
Model standardowy z niestandardową postacią

Kluczowe Funkcje

  • Synchronizacja ruchu warg w czasie rzeczywistym z wejścia mikrofonowego
  • Obsługa przetwarzania audio offline
  • Kompatybilność międzyplatformowa z obsługą specyficzną dla modelu i platformy
  • Obsługa wielu systemów postaci i standardów animacji
  • Elastyczne mapowanie wizemów dla niestandardowych postaci
  • Uniwersalna obsługa języków - działa z dowolnym językiem mówionym poprzez analizę audio
  • Animacja twarzy uwzględniająca nastrój dla zwiększonej ekspresji
  • Konfigurowalne typy wyjścia (pełna twarz lub tylko usta)

Modele Synchronizacji Warg

Wtyczka oferuje wiele modeli synchronizacji warg, aby dopasować się do różnych potrzeb projektu:

Standardowy model synchronizacji warg zapewnia wydajną, międzyplatformową wydajność z szeroką kompatybilnością postaci:

  • Działa z MetaHumanami i wszystkimi typami niestandardowych postaci
  • Zoptymalizowany pod kątem wydajności w czasie rzeczywistym
  • Niższe wymagania zasobowe
  • Pełna kompatybilność z lokalnym TTS (wtyczka Runtime Text To Speech)
  • Obsługa platform: Windows, Android, platformy oparte na Androidzie (w tym Meta Quest)
Wymagana wtyczka rozszerzająca

Aby używać Modelu Standardowego, musisz zainstalować dodatkową wtyczkę rozszerzającą. Zobacz sekcję Wymagania wstępne w celu uzyskania instrukcji instalacji.

Możesz wybrać odpowiedni model na podstawie wymagań twojego projektu dotyczących wydajności, kompatybilności postaci, jakości wizualnej, docelowej platformy i potrzeb funkcjonalnych.

Uwaga dotycząca kompatybilności TTS

Podczas gdy wszystkie modele obsługują różne metody wprowadzania audio, regularny model realistyczny ma ograniczoną kompatybilność z lokalnym TTS z powodu konfliktów środowiska wykonawczego ONNX. Jednak model realistyczny z obsługą nastroju jest w pełni kompatybilny z lokalnym TTS. Dla funkcjonalności zamiany tekstu na mowę:

  • Model Standardowy: Kompatybilny ze wszystkimi opcjami TTS (lokalnymi i zewnętrznymi)
  • Model Realistyczny: Zalecane zewnętrzne usługi TTS (OpenAI, ElevenLabs)
  • Model Realistyczny z Obsługą Nastroju: Kompatybilny ze wszystkimi opcjami TTS (lokalnymi i zewnętrznymi)

Jak to działa

Wtyczka przetwarza wejście audio w następujący sposób:

  1. Dane audio są odbierane w formacie PCM typu float z określonymi kanałami i częstotliwością próbkowania
  2. Wtyczka przetwarza audio, aby wygenerować dane kontroli twarzy lub wizemy w zależności od modelu
  3. Dla modeli z obsługą nastroju, kontekst emocjonalny jest stosowany do animacji twarzy
  4. Dane animacji napędzają ruchy twarzy postaci w czasie rzeczywistym

Architektura Wydajności

Runtime MetaHuman Lip Sync wykorzystuje wnioskowanie wyłącznie na CPU do dostarczania spójnych, niskopóźnieniowych wyników synchronizacji warg odpowiednich dla aplikacji w czasie rzeczywistym. Domyślnie wtyczka wykonuje przetwarzanie synchronizacji warg co 10 milisekund (regulowalne - zobacz Konfiguracja wtyczki dla wszystkich dostępnych ustawień, w tym Rozmiar porcji przetwarzania, liczba wątków i inne parametry wydajności).

Przegląd architektury modelu

Modele synchronizacji warg wykorzystują kompaktową sieć neuronową opartą na transformatorach, która przetwarza audio poprzez analizę mel-spektrogramu. Ta lekka architektura jest specjalnie zaprojektowana dla wydajności w czasie rzeczywistym z wydajnym wnioskowaniem na CPU i minimalnym śladem pamięci.

Dlaczego wnioskowanie na CPU?

Dla małych, częstych operacji wnioskowania, takich jak synchronizacja warg w czasie rzeczywistym, przetwarzanie na CPU oferuje lepsze charakterystyki opóźnienia niż GPU. Przy rozmiarze wsadu 1 i interwałach wnioskowania 10-100ms, narzut GPU związany z transferami PCIe i uruchamianiem kerneli często przekracza rzeczywisty czas obliczeń. Dodatkowo, w silnikach gier GPU jest już nasycone renderowaniem, shaderami i fizyką, co tworzy rywalizację o zasoby wprowadzającą nieprzewidywalne skoki opóźnienia.

Kompatybilność sprzętowa

Wtyczka działa wydajnie na większości CPU średniej i wyższej klasy bez wymagania dedykowanego sprzętu graficznego, zapewniając wydajność w czasie rzeczywistym na platformach desktopowych, mobilnych i VR. Dla słabszego sprzętu możesz dostosować Typ modelu do Półoptymalizowanego lub Wysokooptymalizowanego, lub zwiększyć Rozmiar porcji przetwarzania, aby utrzymać wydajność w czasie rzeczywistym przy nieco zmniejszonej responsywności.

Szybki Start

Oto podstawowa konfiguracja do włączenia synchronizacji warg na twojej postaci:

  1. Dla postaci MetaHuman, postępuj zgodnie z Przewodnikiem konfiguracji
  2. Dla niestandardowych postaci, postępuj zgodnie z Przewodnikiem konfiguracji niestandardowej postaci
  3. Wybierz i skonfiguruj preferowany model synchronizacji warg
  4. Skonfiguruj przetwarzanie wejścia audio w swoim Blueprint
  5. Podłącz odpowiedni węzeł synchronizacji warg w Animation Blueprint
  6. Odtwórz audio i zobacz, jak twoja postać mówi z emocjami!

Dodatkowe Zasoby

📦 Pobieranie i Linki

Projekty demonstracyjne:

🎥 Samouczki wideo

Polecane dema:

Samouczki Modelu Realistycznego (Wysokiej Jakości):

Samouczki Modelu Standardowego:

Konfiguracja ogólna:

💬 Wsparcie