Руководство по обработке аудио
В этом руководстве описано, как настроить различные методы ввода аудио для передачи аудиоданных вашим генераторам липсинка. Убедитесь, что вы выполнили Руководство по настройке перед продолжением.
Обработка аудиовхода
Вам необходимо настроить метод обработки аудиовхода. Существует несколько способов сделать это в зависимости от вашего источника аудио.
- Микрофон (в реальном времени)
- Микрофон (воспроизведение)
- Текст-в-речь (локальный)
- Текст-в-речь (внешние API)
- Из аудиофайла/буфера
- Потоковый аудиобуфер
Этот подход выполняет липсинк в реальном времени во время разговора в микрофон:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Создайте Capturable Sound Wave с помощью Runtime Audio Importer
- Для Linux с Pixel Streaming используйте Pixel Streaming Capturable Sound Wave
- Перед началом захвата аудио привяжитесь к делегату
OnPopulateAudioData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator - Начните захват аудио с микрофона

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Этот подход захватывает аудио с микрофона, а затем воспроизводит его с липсинком:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Создайте Capturable Sound Wave с помощью Runtime Audio Importer
- Для Linux с Pixel Streaming используйте Pixel Streaming Capturable Sound Wave
- Начните захват аудио с микрофона
- Перед воспроизведением capturable sound wave привяжитесь к его делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

- Обычный
- Потоковый
Этот подход синтезирует речь из текста с помощью локального TTS и выполняет липсинк:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Используйте Runtime Text To Speech для генерации речи из текста
- Используйте Runtime Audio Importer для импорта синтезированного аудио
- Перед воспроизведением импортированной звуковой волны привяжитесь к ее делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Этот подход использует потоковый синтез речи из текста с липсинком в реальном времени:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Используйте Runtime Text To Speech для генерации потоковой речи из текста
- Используйте Runtime Audio Importer для импорта синтезированного аудио
- Перед воспроизведением потоковой звуковой волны привяжитесь к ее делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

- Обычный
- Потоковый
Этот подход использует плагин Runtime AI Chatbot Integrator для генерации синтезированной речи из сервисов ИИ (OpenAI или ElevenLabs) и выполнения липсинка:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Используйте Runtime AI Chatbot Integrator для генерации речи из текста с помощью внешних API (OpenAI, ElevenLabs и т.д.)
- Используйте Runtime Audio Importer для импорта синтезированных аудиоданных
- Перед воспроизведением импортированной звуковой волны привяжитесь к ее делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Этот подход использует плагин Runtime AI Chatbot Integrator для генерации потоковой синтезированной речи из сервисов ИИ (OpenAI или ElevenLabs) и выполнения липсинка:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Используйте Runtime AI Chatbot Integrator для подключения к потоковым TTS API (например, ElevenLabs Streaming API)
- Используйте Runtime Audio Importer для импорта синтезированных аудиоданных
- Перед воспроизведением потоковой звуковой волны привяжитесь к ее делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Этот подход использует предварительно записанные аудиофайлы или аудиобуферы для липсинка:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Используйте Runtime Audio Importer для импорта аудиофайла с диска или из памяти
- Перед воспроизведением импортированной звуковой волны привяжитесь к ее делегату
OnGeneratePCMData - В привязанной функции вызовите
ProcessAudioDataиз вашего Runtime Viseme Generator - Воспроизведите импортированную звуковую волну и наблюдайте за анимацией липсинка

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Для потоковой передачи аудиоданных из буфера вам потребуется:
- Стандартная модель
- Реалистичная модель
- Модель с поддержкой настроения
- Аудиоданные в формате float PCM (массив семплов с плавающей запятой), доступные из вашего потокового источника (или используйте Runtime Audio Importer для поддержки большего количества форматов)
- Частота дискретизации и количество каналов
- Вызывайте
ProcessAudioDataиз вашего Runtime Viseme Generator с этими параметрами по мере поступления аудиочанков

Реалистичная модель использует тот же рабочий процесс обработки аудио, что и Стандартная модель, но с переменной RealisticLipSyncGenerator вместо VisemeGenerator.

Модель с поддержкой настроения использует тот же рабочий процесс обработки аудио, но с переменной MoodMetaHumanLipSyncGenerator и дополнительными возможностями настройки настроения.

Примечание: При использовании потоковых аудиоисточников убедитесь, что вы правильно управляете временем воспроизведения аудио, чтобы избежать искаженного воспроизведения. См. документацию Streaming Sound Wave для получения дополнительной информации.
Советы по производительности обработки
-
Размер чанка: Увеличение
ProcessingChunkSizeпараметра конфигурации (например, до 320, 480 или 640 семплов) может заметно улучшить задержку с минимальным влиянием на качество или отзывчивость. -
Тип модели: При использовании реалистичных моделей переключение на Высоко оптимизированный тип модели (выбран по умолчанию) может улучшить производительность. Обратите внимание, что оригинальная модель может давать немного лучшее качество, особенно с зашумленным аудио.
-
Управление буфером: Модель с поддержкой настроения обрабатывает аудио кадрами по 320 семплов (20 мс при 16 кГц). Убедитесь, что временные характеристики вашего аудиовхода соответствуют этому для оптимальной производительности.
-
Пересоздание генератора: Для надежной работы с реалистичными моделями пересоздавайте генератор каждый раз, когда вы хотите подать новые аудиоданные после периода бездействия. См. Пересоздание генератора в разделе Устранение неполадок для объяснения.
Следующие шаги
После настройки обработки аудио вы можете:
- Узнать о параметрах конфигурации для точной настройки поведения липсинка
- Добавить анимацию смеха для повышения выразительности
- Объединить липсинк с существующими анимациями лица, используя техники наложения слоев, описанные в руководстве по конфигурации