Przegląd

Runtime MetaHuman Lip Sync to wtyczka umożliwiająca synchronizację ruchu warg w czasie rzeczywistym, offline i międzyplatformowo zarówno dla postaci MetaHuman, jak i niestandardowych. Pozwala animować usta postaci w odpowiedzi na dane audio z różnych źródeł, w tym:
- Wejście mikrofonu za pomocą Runtime Audio Importer's capturable sound wave
- Mowa syntetyczna z Runtime Text To Speech lub Runtime AI Chatbot Integrator
- Dane audio strumieniowane lub importowane w wielu formatach za pomocą Runtime Audio Importer
- Dowolne dane audio w formacie PCM zmiennoprzecinkowym (tablica próbek zmiennoprzecinkowych)
Wtyczka wewnętrznie generuje visemy (wizualne reprezentacje fonemów) na podstawie wejścia audio. Ponieważ działa bezpośrednio z danymi audio, a nie z tekstem, 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ż synchronizacja ruchu warg jest generowana na podstawie fonemów dźwiękowych, a nie przetwarzania tekstu specyficznego dla języka.
Standard Model produkuje 14 visem i wykonuje animację synchronizacji ruchu warg przy użyciu predefiniowanego zasobu pozy. W przeciwieństwie do tego, Realistic Models (dostępne wyłącznie dla postaci opartych na MetaHuman i ARKit) generują 81 zmian sterowania twarzą bez polegania na predefiniowanym zasobie pozy, co skutkuje znacznie bardziej realistycznymi animacjami twarzy.
Kompatybilność z postaciami
Pomimo swojej nazwy, Runtime MetaHuman Lip Sync działa z szeroką gamą postaci wykraczającą poza same MetaHumany:
Popularne komercyjne systemy postaci
- Daz Genesis 8/9 postacie
- Reallusion Character Creator 3/4 (CC3/CC4) postacie
- Mixamo postacie
- ReadyPlayerMe awatary
Wsparcie standardów animacji
- Systemy blendshape oparte na FACS
- Standard blendshape Apple ARKit
- Zestawy fonemów Preston Blair
- Systemy fonemów 3ds Max
- Każda postać z niestandardowymi celami morfingu dla ekspresji twarzy
Aby uzyskać szczegółowe instrukcje dotyczące korzystania z wtyczki z postaciami innymi niż MetaHuman, zapoznaj się z Custom Character Setup Guide.
Podgląd animacji
Sprawdź te krótkie animacje, aby zobaczyć jakość synchronizacji ruchu warg generowanej przez wtyczkę dla różnych typów postaci i modeli:
Kluczowe funkcje
- Synchronizacja ruchu warg w czasie rzeczywistym z wejścia mikrofonowego
- Obsługa przetwarzania audio offline
- Kompatybilność międzyplatformowa z obsługą platform specyficznych dla modelu
- Obsługa wielu systemów postaci i standardów animacji
- Elastyczne mapowanie wizem dla postaci niestandardowych
- Uniwersalna obsługa języków – działa z każdym językiem mówionym dzięki analizie audio
- Animacja twarzy uwzględniająca nastrój dla większej ekspresji
- Konfigurowalne typy wyjścia (sterowanie całą twarzą lub tylko ustami)
Modele synchronizacji ruchu warg
Wtyczka oferuje wiele modeli synchronizacji ruchu warg dostosowanych do różnych potrzeb projektu:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
Model Standardowy zapewnia wydajną, międzyplatformową wydajność z szeroką kompatybilnością postaci:
- Działa z MetaHumanami i wszystkimi typami postaci niestandardowych
- Zoptymalizowany pod kątem wydajności w czasie rzeczywistym
- Niższe wymagania zasobowe
- Wsparcie platform: Windows, Android, platformy oparte na Androidzie (w tym Meta Quest)
Aby korzystać z Modelu Standardowego, należy zainstalować dodatkową wtyczkę rozszerzenia. Instrukcje instalacji znajdują się w sekcji Wymagania wstępne.
Model Realistyczny zapewnia wyższą wierność wizualną specjalnie dla postaci MetaHuman:
- Kompatybilny z postaciami MetaHuman i opartymi na ARKit z zaawansowaną animacją twarzy (81 kontrolerów twarzy)
- Wyższa jakość wizualna z bardziej naturalnymi ruchami ust
- Nieco wyższe wymagania wydajnościowe
- Strumieniowe przetwarzanie audio dla aplikacji czasu rzeczywistego
- Idealny do doświadczeń kinowych i interakcji z bliska
- Trzy poziomy optymalizacji: Oryginalny, Częściowo zoptymalizowany i Wysoce zoptymalizowany
- Konfigurowalne zestawy celów morficznych (zobacz Wybór zestawu celów morficznych)
- Wsparcie platform: Windows, Mac, iOS, Linux, Android, platformy oparte na Androidzie (w tym Meta Quest)
Model Realistyczny jest zawarty w głównej wtyczce i nie wymaga instalowania żadnych dodatkowych rozszerzeń.
Model Realistyczny z obsługą nastroju zapewnia animację twarzy reagującą na emocje dla postaci MetaHuman:
- Kompatybilny z postaciami MetaHuman i opartymi na ARKit z animacją twarzy reagującą na nastrój (81 kontrolerów twarzy)
- 12 różnych typów nastroju (Neutralny, Szczęśliwy, Smutny, Pewny siebie itd.)
- Konfigurowalna intensywność nastroju (od 0,0 do 1,0)
- Regulowany czas wyprzedzenia dla lepszej synchronizacji (od 20 ms do 200 ms)
- Wybierane typy wyjścia: sterowanie całą twarzą lub tylko ustami
- Strumieniowe przetwarzanie audio dla aplikacji czasu rzeczywistego
- Konfigurowalne zestawy celów morficznych (zobacz Wybór zestawu celów morficznych)
- Wsparcie platform: Windows, Mac, iOS, Linux, Android, platformy oparte na Androidzie (w tym Meta Quest)
Model Realistyczny z obsługą nastroju jest zawarty w głównej wtyczce i nie wymaga instalowania żadnych dodatkowych rozszerzeń.
Możesz wybrać odpowiedni model w zależności od wymagań projektu dotyczących wydajności, kompatybilności postaci, jakości wizualnej, platformy docelowej i potrzebnych funkcji.
Jak to działa
Wtyczka przetwarza dźwięk wejściowy w następujący sposób:
- Dane audio odbierane są w formacie PCM jako liczby zmiennoprzecinkowe, z określoną liczbą kanałów i częstotliwością próbkowania
- Wtyczka przetwarza dźwięk, generując dane sterowania twarzą lub wizemy, w zależności od modelu
- W modelach z obsługą nastroju do animacji twarzy stosowany jest kontekst emocjonalny
- Dane animacji sterują ruchami twarzy postaci w czasie rzeczywistym
Architektura wydajności
Runtime MetaHuman Lip Sync wykorzystuje wnioskowanie wyłącznie na CPU, aby zapewnić spójne wyniki synchronizacji ruchu warg o niskim opóźnieniu, odpowiednie dla aplikacji czasu rzeczywistego. Domyślnie wtyczka wykonuje przetwarzanie synchronizacji ruchu warg co 10 milisekund (możliwość regulacji – zobacz Konfiguracja wtyczki aby uzyskać wszystkie dostępne ustawienia, w tym Rozmiar porcji przetwarzania, liczbę wątków i inne parametry wydajnościowe).
Przegląd architektury modelu
Modele synchronizacji ruchu warg wykorzystują kompaktową sieć neuronową opartą na transformerach, która przetwarza dźwięk za pomocą analizy spektrogramu melowego. Ta lekka architektura została zaprojektowana specjalnie z myślą o wydajności w czasie rzeczywistym, z efektywnym wnioskowaniem na CPU i minimalnym zużyciem pamięci.
Dlaczego wnioskowanie na CPU?
W przypadku małych, częstych operacji wnioskowania, takich jak synchronizacja ruchu warg w czasie rzeczywistym, przetwarzanie na CPU oferuje lepszą charakterystykę opóźnień niż GPU. Przy rozmiarze partii 1 i interwałach wnioskowania 10–100 ms, narzut GPU związany z transferami PCIe i uruchamianiem kernel'i często przewyższa rzeczywisty czas obliczeń. Ponadto w silnikach gier GPU jest już obciążone renderowaniem, shaderami i fizyką, co powoduje rywalizację o zasoby i wprowadza nieprzewidywalne skoki opóźnień.
Kompatybilność sprzętowa
Wtyczka działa wydajnie na większości procesorów klasy średniej i wyższych bez potrzeby korzystania z dedykowanego sprzętu graficznego, zapewniając wydajność w czasie rzeczywistym na platformach desktopowych, mobilnych i VR. W przypadku słabszego sprzętu można dostosować Typ modelu na Częściowo zoptymalizowany lub Wysoce zoptymalizowany lub zwiększyć Rozmiar porcji przetwarzania, aby utrzymać wydajność w czasie rzeczywistym przy nieco obniżonej responsywności.
Szybki start
Oto podstawowa konfiguracja umożliwiająca włączenie synchronizacji ruchu warg na twojej postaci:
- W przypadku postaci MetaHuman postępuj zgodnie z Przewodnikiem konfiguracji
- W przypadku postaci niestandardowych postępuj zgodnie z Przewodnikiem konfiguracji postaci niestandardowej
- Wybierz i skonfiguruj preferowany model synchronizacji ruchu warg
- Skonfiguruj przetwarzanie wejścia audio w swoim Blueprint
- Podłącz odpowiedni węzeł synchronizacji ruchu warg w Animation Blueprint
- Odtwórz dźwięk i zobacz, jak twoja postać mówi z emocjami!
Dodatkowe zasoby
📦 Pliki do pobrania i linki
Projekty demonstracyjne:
Dostępne są dwa gotowe projekty demonstracyjne – szczegółowe informacje, pliki do pobrania i przewodniki można znaleźć na dedykowanej stronie Projekty demonstracyjne:
- Pełen przepływ pracy dla konwersacyjnego NPC z AI – rozpoznawanie mowy + chatbot LLM + TTS + synchronizacja ruchu warg
- Podstawowe demo synchronizacji ruchu warg – wejście mikrofonowe, pliki audio, TTS
Oba dema są wieloplatformowe (Windows, Mac, Linux, iOS, Android, Meta Quest) i dostępne jako spakowane kompilacje oraz pełne projekty źródłowe dla UE 5.6+.
🎥 Samouczki wideo
Wyróżnione dema:
Samouczki Modelu Realistycznego (wysoka jakość):
- Synchronizacja ruchu warg wysokiej jakości z pliku/bufora audio
- Synchronizacja ruchu warg wysokiej jakości z kontrolą nastroju i lokalnym TTS
- Synchronizacja ruchu warg wysokiej jakości z ElevenLabs i OpenAI TTS
- Synchronizacja ruchu warg na żywo z mikrofonu – wysoka jakość
Samouczki Modelu Standardowego:
- Standardowa synchronizacja ruchu warg na żywo z mikrofonu
- Standardowa synchronizacja ruchu warg z lokalnym TTS
- Standardowa synchronizacja ruchu warg z ElevenLabs i OpenAI TTS
Ogólna konfiguracja:
- Dodawanie niestandardowej postaci MetaHuman do projektu demonstracyjnego
- Film instruktażowy konfiguracji
- Przewodnik po projekcie demonstracyjnym (starszy)
💬 Wsparcie
- Rozwój na zamówienie: solutions@georgy.dev (rozwiązania szyte na miarę dla zespołów i organizacji)