Перейти к основному содержимому

Демонстрационные проекты

Чтобы помочь вам быстро начать работу с Runtime MetaHuman Lip Sync, доступны два готовых к использованию демонстрационных проекта. Оба созданы на Unreal Engine 5.6+, являются только Blueprints и работают на кроссплатформенной основе на Windows, Mac, Linux, iOS, Android и платформах на базе Android (включая Meta Quest).

Доступные демонстрационные проекты

Полный рабочий процесс для ИИ-разговорного аватара, объединяющий распознавание речи, чат-бота с ИИ (LLM), текст-в-речь и воспроизведение аудио с синхронизацией губ в реальном времени — все работающие вместе в одном проекте. Подходит для широкого спектра применений — включая игры, интерактивные киоски, виртуальное производство, музейные инсталляции, цифровых помощников и тренировочные симуляции.

Обзор пайплайна

🎤 Microphone → Speech Recognition → 💬 LLM Chatbot → 🔊 Text-to-Speech → 👄 Lip Sync + Playback

Видео

Быстрый просмотр (~30 сек)

Краткая демонстрация работы.

Полный обзор

Подробный обзор, охватывающий установку, настройку и весь процесс общения.

Загрузки

Обязательные и опциональные плагины

Демонстрационный проект является модульным — вам нужны только плагины для тех провайдеров, которые вы хотите использовать.

ПлагинНазначениеОбязателен?
Runtime MetaHuman Lip SyncАнимация синхронизации губ✅ Всегда
Runtime Audio ImporterЗахват и обработка аудио✅ Всегда
Runtime Speech RecognizerОфлайн-распознавание речи (whisper.cpp)✅ Всегда
Runtime AI Chatbot IntegratorВнешние LLM (OpenAI, Claude, DeepSeek, Gemini, Grok, Ollama) и/или внешний TTS (OpenAI, ElevenLabs)🔶 Опционально
Runtime Local LLMЛокальный вывод LLM через llama.cpp (Llama, Mistral, Gemma и др., модели GGUF)🔶 Опционально
Runtime Text To SpeechЛокальный TTS через Piper и Kokoro🔶 Опционально
Опциональные плагины — требования к провайдерам

Хотя каждый плагин выше является опциональным сам по себе, вам потребуется как минимум один провайдер LLM и как минимум один провайдер TTS для работы демо-версии. Свободно комбинируйте (например, локальный LLM + ElevenLabs TTS или OpenAI LLM + локальный TTS).

Модульная архитектура

В папке Content вы найдете папку Modules, которая содержит три подпапки:

Content/
└── Modules/
├── RuntimeAIChatbotIntegrator/ ← External LLMs and/or external TTS
├── RuntimeLocalLLM/ ← Local LLM via llama.cpp
└── RuntimeTextToSpeech/ ← Local TTS via Piper/Kokoro

Если вы не приобрели один (или несколько) дополнительных плагинов, просто удалите соответствующие папки. Базовые ассеты демо-проекта (game instance, виджеты и т.д.) не ссылаются на эти модули напрямую, поэтому удаление не вызовет ошибок ссылок на ассеты. Интерфейс конфигурации автоматически скроет любого провайдера, чья папка отсутствует.

примечание

Эта модульность относится только к провайдерам LLM и TTS. Speech Recognition (Runtime Speech Recognizer) и Lip Sync (Runtime MetaHuman Lip Sync) являются частью базового демо-проекта и всегда обязательны.

Структура папок Modules

warning

При первом запуске Unreal может спросить, следует ли отключить отсутствующие необязательные плагины — нажмите Yes. Убедитесь, что вы также удалили соответствующую папку Content/Modules/ (см. выше).

Структура демо-проекта

Пользовательский интерфейс предназначен для демонстрации

Показанный ниже пользовательский интерфейс полностью построен с помощью UMG (Unreal Motion Graphics) и предназначен исключительно для демонстрации конвейера — распознавание речи → LLM → TTS → синхронизация губ. Вы можете изменить стиль или заменить его в соответствии с визуальным оформлением вашего проекта, схемой управления или платформой (VR/AR, мобильные устройства, консоль, киоск и т. д.). Если какие-либо виджеты не нужны в вашем сценарии использования, вы также можете просто скрыть их (например, установить видимость в Collapsed или Hidden).

Аннотированный обзор главного экрана демо-проекта

ОбластьЧто находится
ЦентрПерсонаж MetaHuman.
Левая сторонаЧетыре кнопки конфигурации (Распознавание речи, AI-чатбот, Преобразование текста в речь, Анимации), подробно описанные ниже.
Нижний центрКнопка Start Recording. Нажмите её, чтобы начать голосовую беседу: ваш микрофон захватывается, речь транскрибируется, отправляется в LLM, ответ синтезируется через TTS и воспроизводится с синхронизацией губ, полностью без использования рук.
Правый центрВиджет истории разговора, показывающий полную переписку между вами и AI (как сообщения пользователя, так и ассистента). Он также содержит поле ввода текста, так что вы можете вводить сообщения напрямую, не используя распознавание речи, что полезно для тестирования, доступности или при отсутствии микрофона.
подсказка

Вы можете свободно сочетать оба режима ввода в одной сессии — произносить некоторые сообщения, а другие вводить текстом.

Кнопки конфигурации

Четыре кнопки конфигурации слева открывают специальные панели для каждой части конвейера:

1. Настройка распознавания речи

Настройте, как голос пользователя захватывается и транскрибируется:

  • Выберите язык
  • Настройте параметры распознавания речи (настройки модели Whisper)
  • Настройте AEC (Акустическое эхоподавление)
  • Настройте VAD (Обнаружение голосовой активности)

Экран настройки распознавания речи

2. Настройка AI-чатбота

Выберите провайдера LLM и настройте его:

  • Выберите провайдера (Runtime AI Chatbot Integrator или Runtime Local LLM)
  • Для внешних провайдеров: токен, имя модели и т.д.
  • Для локального LLM: выберите GGUF модель, установите размер контекста и другие параметры вывода. Вы также можете загрузить свою собственную GGUF модель во время выполнения прямо из демо (например, по URL) и использовать её немедленно без пересборки проекта.
подсказка

Выпадающий список провайдеров показывает только тех провайдеров, папка модуля плагина которых присутствует в Content/Modules/.

Настройка AI-чатбота - Runtime AI Chatbot Integrator (внешний LLM)

Настройка AI-чатбота - Runtime Local LLM (локальный GGUF)

3. Настройка синтеза речи

Выберите провайдера TTS и настройте голоса/модели:

  • Выберите провайдера (Runtime AI Chatbot Integrator для OpenAI/ElevenLabs, или Runtime Text To Speech для локальных Piper/Kokoro)
  • Выберите голос/модель
  • Настройте параметры, специфичные для провайдера

Настройка TTS - Runtime AI Chatbot Integrator (внешний TTS)

Настройка TTS - Runtime Local Text To Speech (локальный Piper/Kokoro)

4. Настройка анимаций

Управляйте визуальным оформлением вашего AI-аватара:

  • Выберите одного из 3 предварительно загруженных персонажей MetaHuman (Aera, Ada, Orlando)
  • Выберите модель синхронизации губ (Standard или Realistic)
  • Выберите тип модели синхронизации губ — Highly Optimized, Semi-Optimized или Original (см. Model Type)
  • Настройте Processing Chunk Size — управляет частотой выполнения вывода синхронизации губ (см. Processing Chunk Size)
  • Выберите анимацию ожидания для персонажа MetaHuman во время разговора

Экран настройки анимаций

Предварительная настройка демо в редакторе

При работе с исходной версией вы можете предварительно заполнить значения по умолчанию прямо в редакторе, чтобы не вводить их каждый раз при запуске:

ЧтоГде
Общие настройки (модель синхронизации губ, анимация ожидания, класс персонажа, распознавание речи и т.д.)Content/LipSyncSTSGameInstance
Настройки внешнего LLM / внешнего TTS (Runtime AI Chatbot Integrator)Content/Modules/RuntimeAIChatbotIntegrator/RuntimeAIChatbotIntegrator_Provider
Настройки локального LLM (Runtime Local LLM)Content/Modules/RuntimeLocalLLM/RuntimeLocalLLM_Provider
Настройки локального TTS (Runtime Text To Speech)Content/Modules/RuntimeTextToSpeech/RuntimeTextToSpeech_Provider

Заметки о кроссплатформенности

Все плагины, используемые демо, поддерживают Windows, Mac, Linux, iOS, Android и платформы на базе Android (включая Meta Quest), поэтому демо-проект также работает на всех этих платформах. Это делает его подходящим для развертывания в самых разных средах — от настольных киосков и браузерных приложений до мобильных устройств, автономных VR-гарнитур и установок виртуального производства на площадке.

Для более слабых устройств (мобильные, автономные VR) возможно вам понадобится:

  • Использовать стандартную модель синхронизации губ вместо Realistic — см. сравнение моделей
  • Переключиться на тип модели Highly Optimized
  • Увеличить Processing Chunk Size для снижения нагрузки на ЦП
  • Выбрать меньшие модели LLM / TTS

См. Платформозависимая конфигурация для дополнительных шагов по настройке на Android, iOS, Mac и Linux.

Использование собственного персонажа

Демо-проект поставляется с тремя образцами персонажей MetaHuman (Aera, Ada, Orlando), но вы можете импортировать своего собственного MetaHuman и использовать его в демо.

📺 Видео-руководство: Добавление пользовательского персонажа MetaHuman в демо-проект

примечание

Сам плагин Runtime MetaHuman Lip Sync поддерживает множество других систем персонажей помимо MetaHumans (персонажи на базе ARKit, Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe и т.д. — см. Руководство по настройке пользовательских персонажей). Независимо от того, создаете ли вы игрового NPC, виртуального ведущего, оператора киоска или цифрового человека для виртуального производства, плагин адаптируется к вашему пайплайну персонажей.

Примечания для стандартной модели синхронизации губ

Если вы планируете использовать Standard Model (вместо Realistic) в любом из демо-проектов, вам потребуется установить плагин Standard Lip Sync Extension. Инструкции по установке см. в разделе Standard Model Extension.

Нужна помощь?

Если у вас возникнут какие-либо проблемы с настройкой или запуском демо-проектов, не стесняйтесь обращаться:

Join our Discord
online · support

Для запросов на индивидуальную разработку (например, расширение демо-версии собственной логикой, адаптация под конкретную платформу или пайплайн персонажа) обращайтесь по адресу [email protected]