lipsyncсинхронизация губ на видео
Маршрутизирует lipsync по четырём RunComfy endpoints: Sync Labs v2/Pro, ByteDance OmniHuman, Kling и Creatify. Выбор модели по качеству и задаче.
Установка
npx -y skills add agentspace-so/runcomfy-agent-skills --skill lipsync --agent claude-codeLipsync
Синхронизируйте движения губ лица с аудиодорожкой. Этот скилл маршрутизирует запросы по эндпоинтам lip-sync в каталоге RunComfy — OmniHuman, Sync Labs sync v2, Kling lipsync, Creatify — подбирая нужную модель под реальное намерение пользователя и поставляя задокументированные промпты и точный вызов runcomfy run.
runcomfy.com · Sync Labs models · Документация CLI
Работает через RunComfy CLI
# 1. Установка (подробности в скилле runcomfy-cli)
npm i -g @runcomfy/cli # или: npx -y @runcomfy/cli --version
# 2. Войдите в аккаунт
runcomfy login # или в CI: export RUNCOMFY_TOKEN=<token>
# 3. Lipsync
runcomfy run <vendor>/<model> \
--input '{"video_url": "...", "audio_url": "..."}' \
--output-dir ./out
Согласие
Управление движениями рта реального человека от отдельной аудиодорожки — технология двойного назначения. Отказывайте в запросах, направленных против реальных публичных персон без их согласия или нацеленных на создание клеветнических или явно сексуальных синтетических медиа. Скилл сам не проверяет входные данные — ответственность лежит на операторе.
Выбор модели
Исходное видео + аудио → lip-synced видео (замена движений рта на существующем видео)
Sync Labs sync v2 Pro — sync/sync/lipsync/v2/pro (по умолчанию для премиум-качества)
Премиальный lip-sync от Sync Labs — передовое качество синхронизации рта с существующим видео. Остальная часть кадра остаётся нетронутой.
Выбирайте для: дублирования в высшем качестве, lipsync на профессионально снятом видео, иноязычного дубляжа с максимальной точностью.
Избегайте для: массовой обработки с ограниченным бюджетом — используйте sync v2.
Sync Labs sync v2 — sync/sync/lipsync/v2
Стандартный уровень Sync Labs, тот же процесс, что и Pro.
Выбирайте для: массовых / пакетных задач lipsync, черновиков.
Избегайте для: финальной сдачи — используйте v2 Pro.
Kling Lipsync (audio-to-video) — kling/lipsync/audio-to-video
Lip-sync Kling на исходном видео, управляемый аудиодорожкой.
Выбирайте для: интеграции в Kling-пайплайн; альтернатива Sync Labs.
Избегайте для: максимальной точности — Sync Labs Pro остаётся отраслевым эталоном.
Creatify Lipsync — creatify/lipsync
Эндпоинт lipsync от Creatify.
Выбирайте для: воркфлоу в экосистеме Creatify.
Портретное изображение + аудио → talking-head видео (аватарный стиль)
OmniHuman — bytedance/omnihuman/api (по умолчанию для аватарного стиля)
Полноразмерный аватар ByteDance, управляемый аудио. Один портрет + одно аудио → видео, в котором субъект говорит / жестикулирует естественно.
Выбирайте для: озвучки UGC, виртуального ведущего, дублированного демо продукта из одного портрета.
Избегайте для: lip-sync на существующем видео (нет портрета, хотите сохранить исходное движение) — используйте Sync Labs v2.
Wan 2-7 с полем audio_url — wan-ai/wan-2-7/text-to-video
t2v с открытыми весами и полем audio_url — промпт описывает сцену, аудио управляет ртом.
Выбирайте для: полного контроля над сценой (не только портрет) со специфическим MP3-голосом + открытый пайплайн.
Избегайте для: простого «портрет говорит» — используйте OmniHuman.
Генерация и синхронизация из скрипта (аудиофайл недоступен)
Kling Lipsync (text-to-video) — kling/lipsync/text-to-video
Генерирует аудио речи на проходе из скрипта и синхронизирует его с полученным видео.
Выбирайте для: «есть скрипт → получить видео с синхронизированной речью», аудиофайл не нужен.
Избегайте для: точной синхронизации с конкретным MP3 (аудио генерируется заново при каждом вызове).
HappyHorse 1.0 — happyhorse/happyhorse-1-0/text-to-video
t2v / i2v №1 по арена-рейтингу с аудио, генерируемым из промпта. Цитируйте произносимую реплику внутри промпта с помощью says clearly: "…".
Выбирайте для: письменного скрипта, встроенного аудио с высоким общим качеством, социальных / UGC-клипов.
Маршрут 1: Sync Labs sync v2 / Pro — по умолчанию для замены рта
Модель: sync/sync/lipsync/v2/pro (или sync/sync/lipsync/v2)
Вызов
runcomfy run sync/sync/lipsync/v2/pro \
--input '{
"video_url": "https://your-cdn.example/source-video.mp4",
"audio_url": "https://your-cdn.example/voiceover.mp3"
}' \
--output-dir ./out
Советы
- Исходное видео предоставляет всё, кроме рта — камера, освещение, фон, поза тела сохраняются.
- Качество аудио определяет качество синхронизации. Чистый голос (без музыкального фона) → более чистая синхронизация.
- Совместите длительность аудио и видео. Значительное несоответствие длительности приводит к дрейфу.
Маршрут 2: OmniHuman — по умолчанию для аватара из изображения
Модель: bytedance/omnihuman/api
Вызов
runcomfy run bytedance/omnihuman/api \
--input '{
"image_url": "https://your-cdn.example/portrait.jpg",
"audio_url": "https://your-cdn.example/voiceover.mp3"
}' \
--output-dir ./out
Советы
- Лучше всего подходит кадрирование «портрет» — голова и плечи или верхняя часть тела.
- Промпт не нужен — модель выводит всё из изображения + аудио.
Маршрут 3: Kling Lipsync — синхронизация в экосистеме Kling
Модель: kling/lipsync/audio-to-video (существующее видео + аудио) или kling/lipsync/text-to-video (только скрипт)
Вызов (вариант audio-to-video)
runcomfy run kling/lipsync/audio-to-video \
--input '{
"video_url": "https://your-cdn.example/source-video.mp4",
"audio_url": "https://your-cdn.example/voiceover.mp3"
}' \
--output-dir ./out
Типовые паттерны
- Иноязычный дубляж существующего брендового видео: маршрут 1 (Sync Labs sync v2 Pro) с оригинальным видео + переведённым голосом.
- UGC-реклама из портрета: маршрут 2 (OmniHuman) с портретом автора + голосовым презентейшном продукта.
- Многоязычный запуск (та же идентичность, разные языки): маршрут 2 (OmniHuman) с одним портретом + N разными аудиофайлами.
- «Есть скрипт, но нет аудио»: Kling Lipsync (text-to-video) или HappyHorse 1.0 t2v — оба генерируют аудио на проходе.
Коды завершения
| Код | Значение |
|---|---|
| 0 | успех |
| 64 | неверные аргументы CLI |
| 65 | некорректный JSON / несоответствие схеме |
| 69 | ошибка 5xx на стороне сервиса |
| 75 | повторяемая ошибка: таймаут / 429 |
| 77 | не выполнен вход или токен отклонён |
Как это работает
Скилл классифицирует намерение пользователя — исходное видео + аудио, портрет + аудио или только скрипт — выбирает соответствующий маршрут и вызывает runcomfy run с телом JSON. CLI отправляет POST-запрос к Model API, опрашивает статус и скачивает результат в --output-dir.
Безопасность и конфиденциальность
- Согласие: см. раздел «Согласие» выше. Lipsync — технология двойного назначения; отказывайте в запросах, направленных против реальных людей без их согласия.
- Устанавливайте только через проверенный пакетный менеджер. Используйте
npm i -g @runcomfy/cliилиnpx -y @runcomfy/cli. - Хранение токена:
runcomfy loginзаписывает токен в~/.config/runcomfy/token.jsonс правами 0600. - Происхождение голоса: убедитесь, что диктор аудио согласился на сопряжение своего голоса с целевым лицом.
- Допустимые исходящие эндпоинты: только
model-api.runcomfy.netи*.runcomfy.net/*.runcomfy.com. Телеметрия отсутствует.
