Инструменты7 сентября 2026 г., 15:45 МСК🤖 Auto

OmniCam: Единый язык движения для всех видео-моделей в ComfyUI

Новый узел Majoor OmniCam решает проблему фрагментации API видео-моделей, позволяя описать движение один раз и автоматически компилировать его под Wan, LTX и H3.

Баннер новости 6937

Проблема: разрозненные стандарты управления движением

Создание видео с точным контролем камеры и объектов в ComfyUI сталкивается с серьезной проблемой: разные модели требуют совершенно разных форматов данных. Одни модели (например, Wan) требуют экстинзики камеры (camera extrinsics), другие — 2D-траекторий (screen tracks), а третьи (H3) — референсных видео и текстовых промптов. Раньше пользователю приходилось вручную конвертировать эти данные для каждой модели, что приводило к ошибкам и потере качества.

Решение: MotionScene как универсальный документ

Проект OmniCam (автор MajoorWaldi) вводит концепцию MotionScene — независимого от модели документа, описывающего сцену, камеры, объекты, слои движения и монтажные склейки. Этот формат становится «каноническим» представлением движения, которое затем компилируется в специфичный для целевой модели формат с помощью узла OmniCam Monitor.

Архитектура решения состоит из трех ключевых узлов:

  • OmniCam Director: 3D-вьюпорт для авторинга сцены. Поддерживает навигацию в стиле Maya/Blender, ключевые кадры для камер и объектов, а также создание «плейблстов» (нейтральных прокси-видео).
  • OmniCam Extractor: Позволяет извлечь движение из существующего видео (режим Camera Track с использованием DPVO/pycolmap) или реконструировать 3D-сцену из одного изображения (режим Scene Reconstruct на базе MoGe).
  • OmniCam Monitor: Компилятор. Он преобразует MotionScene в нужный формат и проводит строгую проверку (preflight), блокируя запуск, если целевая модель несовместима с текущей сценой.

Технические детали и поддержка моделей

OmniCam строго контролирует контракты данных. Если целевая модель не может обработать определенное движение (например, склейку камер в профиле одной камеры), система выдаст ошибку, а не создаст битый файл. Ниже приведена таблица соответствия профилей Monitor и целевых моделей:

Профиль Monitor Семантика выхода Выходной узел (Output) Куда подключать
wan_camera_native camera_embedding camera_embedding WanCameraImageToVideo.camera_conditions
wan_move_native screen_tracks native_tracks WanMoveTrackToVideo.tracks
wan_track_native screen_tracks tracks_json WanTrackToVideo.tracks
wanvideo_ati screen_tracks tracks_json WanVideoATITracks.tracks
ltx25_motion_track screen_tracks tracks_json LTXVDrawTracks.tracks
h3_native reference_video reference_frames MiniMaxH3ReferenceToVideo.ref_videos
h3_api reference_video reference_video MinimaxHailuo03ReferenceNode.reference_video

Существует также специальный профиль external_reference_video, который не требует привязки к конкретному узлу и используется для моделей, для которых еще не создан профиль. Это позволяет избежать блокировки графа при использовании новых или нестандартных моделей.

Установка и требования

Плагин требует ComfyUI версии 0.31+ и Python 3.10–3.13. Установка возможна через ComfyUI Manager или вручную через git-клонирование. Важно отметить, что бэкенды для решения задач камеры (DPVO, pycolmap, OpenCV/SIFT) являются опциональными и устанавливаются отдельно, если требуется функция извлечения движения из видео. Сам узел Director и Playblast работают стабильно, хотя некоторые элементы интерфейса (Monitor profile set) помечены как экспериментальные.

Почему это важно

OmniCam устраняет необходимость ручного написания скриптов для конвертации траекторий между моделями. Разработчики получают единый интерфейс для управления сложными движениями (камера, объекты, слои), а пользователи — гарантию того, что их анимация будет корректно интерпретирована конкретной видео-моделью без потери данных на этапе компиляции.

Источник: Github ↗