Дупломатика · Пайплайн следующего поколения

Подход не выбрасывать: слайдшоу — баг моста, не потолок Remotion

Синтез-вердикт по 8 потокам ресёрча + 2 проектам кода. Что сломано, что строить, что брать готовым.

2026-06-18  ·  Opus-оркестратор (8 потоков) + чтение реального кода (DichVideo.tsx / remotion_props.py)  ·  verify-фаза не запускалась
Подтверждено чтением кода (не верой)
~10

строк в remotion_props.py:103-116 убивают весь движок

Билдер прогоняет каждый бит с хардкодом kind=framed — N одинаковых карточек в фиксированной рамке подряд = слайдшоу by construction. TSX уже умеет caption / meme / fullscreen — мост это выбрасывает. Починить = полдня, $0.

Шаг 0: полдня · $0
Шагов 0+1+2: ~80% лечения
Клея собрать: ~600–900 строк
Изобретать: почти ничего
Но — важное меньшинство мнений
1/6

поток спорит: топ-каналы монтируют руками, не кодом

Поток «реальные продакшн-стеки» рекомендует купить Submagic как движок монтажа, Remotion оставить только под брендовые слои. 5 из 6 потоков — «оставить Remotion». Разрешается прототипом на Шаге 7, не дискуссией.

§2 — 3 корня слайдшоу (по коду)

Корень 1 — мост kind=framed

remotion_props.py:103-116 выбрасывает всю вариативность примитивов на стыке AD→рендер. Лечится на Шаге 0.

Корень 2 — нет слоя направляющей векторной графики

Ноль обводок / стрелок / выносок / счётчиков. Глазу не за что зацепиться внутри кадра, кроме зума. Это причина №1 ощущения «один шаблон». Лечится на Шаге 2.

Корень 3 — нет реальных склеек

@remotion/transitions не установлен. Каты = голые границы Sequence. Нет ритма «1 визуальное изменение каждые 1.5–2с». Лечится на Шаге 1.

§3 — Карта внешней экосистемы (8 направлений)

Направление Вывод Что берём build/buy
Программные фреймворки Remotion оставить; cloud-API понижают потолок Remotion + @remotion/transitions + gl-transitions (123 шейдера, MIT) buy движок / build примитивы
AI авто-редакторы Не наш кейс — режут одно длинное видео, а мы собираем из кусков Submagic — только финишер сабов; CapCutAPI — резерв Road B buy точечно
Источники футажа Нужны два пула, не один Пул B (смысл 60–80%): archive.org / Wikimedia / NASA. Пул A (атмосфера 20–40%): Pexels / Pixabay / Coverr buy доступ (free) / build подбор
База мемов Giphy/Tenor — нельзя (ToS + Tenor закрывается + Giphy $99/мес) Своя медиатека (Pexels / Pixabay + green-screen) + Imgflip генеративка; авто-подбор CLIP+FAISS+DistilBERT; обтравка RVM buy источники / build индекс
Переходы / эффекты / оверлеи Изобретать не нужно gl-transitions + ProductionCrate ProRes4444 alpha (локально). .mogrt — тупик (Adobe) buy ассеты / build сборку
Моушн-графика / вектор Главная нехватка — строится нативно 90% SVG (stroke-dashoffset) + инфографика сами; 10% Lottie-паки (только expression-free) build 90% / buy 10%
AD-driven AI-видео keyframe-first, не выпрашивать у text-to-video Nano Banana Pro → Veo 3.1 Fast i2v 9:16 через fal.ai / Vertex. ≤10% роликов buy pay-per-output
Стеки топ-каналов Монтируют руками в Premiere / AE + плагины В наш код вписывается только Lottie (JSON). .mogrt / AE-плагины — нет

§4 — Архитектура: поток пайплайна

Хирургия только на узле EDL→props→render. Pipeline/ не трогаем.

idea → script → ART-DIRECTION (партитура) → voice+align → assets (2 пула)
  → EDL-генератор v2 → props-билдер v2 (мульти-примитив)
  → Remotion: библиотека монтажных компонентов
  → render (Lambda / self-host VPS по-одному)

3 ключевых сдвига:

9-слойная модель «спекание шотов по слою»

Единый adjustment поверх всех — чтобы графика / AI-вставка садились в кадр, а не лежали наклейкой.

1 BG (крутящийся фирменный фон)         ← есть
2 КОНТЕНТ-ШОТ (движение ОБЯЗАТЕЛЬНО)     ← есть (Framed/Fullscreen)
3 ПЕРЕХОД (TransitionSeries+gl)          ← НЕТ, добавить (Шаг 1)
4 BLEND-ОВЕРЛЕЙ (alpha-MOV, mix-blend)   ← механизм есть, расширить
5 ВЕКТОР-ГРАФИКА (SVG обводки/стрелки)  ← НЕТ ВООБЩЕ, главная нехватка (Шаг 2)
6 ИНФОГРАФИКА (счётчики/бары)            ← НЕТ, добавить (Шаг 3)
7 ТИПОГРАФИКА (Cap/AccentNum)            ← есть
8 WORD-POP СУБТИТРЫ (Subs)               ← есть
9 SFX (whoosh на переход, hit на акцент) ← есть
        + ЕДИНЫЙ adjustment поверх всех

Как AD доходит до каждого шота

Расширить контракт бита в contracts.py полями shot_kind / transition / annotations[] / infographic? / overlay? / pool. Этап AD эмитит их в EDL из раскадровки (панели). EDL v2 раскладывает партитуру, props v2 пробрасывает без схлопывания. Итог: решение «фуллскрин-панч с красной обводкой на цифре и whip-переходом» доезжает до пикселя, а не превращается в «ещё одну framed-карточку».

§5 — Что берём готовым / что пишем сами

BUY — готовое, изобретать не надо

BUILD — тонкий клей (~600–900 строк, не завод)

§6 — Миграция: 8 шагов (P0 первым)

Шаг Что делаем Срок Verifiable
0 Починить мост: убрать хардкод kind=framed в remotion_props.py:103-116, расширить Beat-контракт полдня, $0 Один старый ролик пересобрать — биты разъехались на разные типы
1 npm i @remotion/transitions, обернуть в TransitionSeries, EDL ставит пресет на кат + авто-whoosh 1 день Каты — больше не голые границы, видна склейка
2 Слой графики восприятия — VectorAnnotation: circle / arrow / underline, SVG stroke-dashoffset, поле annotations[] в EDL 1–2 дня Цифра обведена кружком по таймингу, без фликера
3 Инфографика — Counter / Bar, interpolate по frame 1 день Число накручивается под голос
4 @remotion/lottie опц. + паки (expression-free, canvas, memoize) 1 день Иконки без мерцания в пакетном рендере
5 Два пула футажа + LLM-query-подбор (расширить harvester / material_recon) 2–3 дня 15–22 релевантных куска, 60%+ из Пула B
6 Alpha-оверлеи + общий грейд на все слои 1 день AI / реал / графика в одном цвете, «спекается»
7 РЕШАЮЩИЙ: один ролик новым пайплайном до приёмки. Если усреднёнка — активировать Road B (CapCutAPI + человек) для сравнения бок-о-бок 1 день Приёмка Тимура
8 AI-вставки ≤10% + CLIP-индекс — только после приёмки после

Шаги 0+1+2 = ~80% лечения «слайдшоу». Шаг 7 = прямой урок: 1 хороший ролик руками → потом автоматизировать проверенное. Дорогие Veo / CLIP-прогоны до приёмки базы — не запускать.

§7 — Развилка: Road A vs Road B

Решается одним сравнительным роликом на Шаге 7, не дискуссией.

Road A — рекомендую первой

100% код — Remotion + готовые ассеты, монтаж = детерминированные правила склейки в EDL. Headless, масштабируется на ежедневный ролик, твой стек.

Road B — резерв

Код собирает черновик CapCut → человек докручивает (CapCutAPI, Apache-2.0, $0, MCP-интерфейс). Для случаев, где нужен авторский ритм, который код не вытягивает.

Кириллица в CapCutAPI-черновиках не задокументирована — для Road B первый тест = один черновик с русским текстом.

Честные оговорки / риски

Verify + Critique фазы прогона НЕ запускались (остановлены ради эконом-режима). Несущие утверждения KC-1…KC-10 не прошли скептиков. Исключение: KC-1 (корень = мост kind=framed) подтверждён чтением реального кода — это самое сильное звено. Остальное — на доверии к качеству ресёрча, без адверсариальной проверки.

Дупломатика · Пайплайн следующего поколения · 2026-06-18
Источники: Opus-оркестратор 8 потоков · DichVideo.tsx (367 строк) · remotion_props.py (212 строк) · Remotion docs · gl-transitions · Submagic / CapCutAPI · archive.org · fal.ai / Vertex · YouTube Creator Policies