Памятка для Игоря · 11 сентября 2026

Ролики Вологодчины: как мы их делаем

Пять мультфильмов для сенсорных панелей туристического центра Вологды. Здесь — весь порядок работы: от сценария до готового ролика, с ценами, командами и списком уже сделанных ошибок.

Раздел 1Что мы делаем

Контракт с МБУ «Центр содействия развитию предпринимательства и туризма» города Вологды. Пять мультипликационных роликов для детского раздела сенсорных панелей, которые встанут в туристско-информационном центре. Сдать нужно к 15 октября.

Вот как выглядит результат — черновой монтаж третьего ролика, «Гастрономия». Сорок секунд, девять сцен, всё сделано описанным ниже способом и стоило меньше доллара.

Ролик 3 «Гастрономия: вкус Вологодчины», черновой монтаж. Без звука, без подписей, 480p — всё это добавляется на финальной сборке. Смотреть надо на другое: машина и лосёнок одинаковые во всех девяти сценах, и в каждой сцене действие доходит до конца.
Что требует заказчикЗначение
Разрешение3840×2160 (4K)
Частота кадров25 в секунду
Длина30–40 секунд каждый ролик
ЗвукAAC, стерео
Главное условиеролик понятен при выключенном звуке

Последняя строчка определяет всё остальное. Панель стоит в общем зале, звук там будет тихий или выключенный, поэтому смысл несёт картинка, а звук только помогает. Отсюда и короткие реплики, и подписи на экране.

Сценарии уже написаны и согласованы с заказчиком

Они лежат в документы/письма/2026-09-09-сценарии-роликов.txt. Каждый фрагмент описан так: номер, хронометраж, план, «начало» сцены, «конец» сцены, подпись. Это закон — брать оттуда дословно, не пересказывать своими словами и не менять. Если кажется, что в сценарии ошибка, — писать отцу.

Раздел 2Герой, машина и единственный эталон

Маскот — лосёнок. Ездит на красном молоковозе-цистерне через все пять роликов: это то, что связывает серию в одно целое.

Эталонный лист: лосёнок и молоковоз
Тот самый эталон — ролики/эскизы/лист-лось-паттерн-эталон.jpeg. Он подаётся вторым входным изображением в каждую генерацию картинки.

Про лосёнка: детские пропорции, но анатомия лосиная — длинная морда, большие уши, красноватые рожки. И он ростом со взрослого человека или выше. Это приходится повторять в каждом промпте, иначе модель рисует его ребёнком по пояс взрослому, и ролик рассыпается.

Про машину: красный молоковоз с надписью «МОЛОКО» и полосой из восьми белых модулей вологодского дизайн-кода на боку цистерны. Полоса — требование заказчика по брендбуку, она согласована отдельно.

Машина рисуется только из эталона

Все ракурсы — вид сбоку, три четверти, сзади, из кабины — выводятся из этого одного файла. Рядом лежит лист-лось-паттерн-СТАРЫЙ-не-использовать.jpeg с неправильным дизайн-кодом. Однажды его взяли по ошибке — пришлось выбросить и перегенерировать всю серию кадров.

Раздел 3Деньги

Считаем в центах. Ошибка в выборе модели стоит в сто раз дороже правильного выбора — это не фигура речи.

ЧтоМодель и параметрыЦена
Сетка стартовых кадров — все девять разом openai/gpt-image-2, quality high, 3840×2160≈ $0.13
Один конечный кадр или одна правка openai/gpt-image-2, quality low, 16:9≈ $0.01
Три варианта одного кадра то же, number_of_images: 3≈ $0.03
Клип 4–5 секунд bytedance/seedance-2.0, 480p, звук выключен$0.10 / сек
Весь ролик начерно сетка + 9 конечных кадров + 9 клипов≈ $0.70
Главное правило проекта

Перед каждым платным запуском написать отцу: какая модель, сколько штук, сколько это стоит — и дождаться ответа. Всегда. Даже если кажется, что это мелочь и он точно согласится.

Причина простая: деньги его, а решения по картинке — тоже его. Спросить и подождать пятнадцать минут стоит ноль. Догадаться самому и потратить чужие деньги на то, что потом выбросят, стоит и денег, и доверия.

Чем нельзя пользоваться

720p и 1080p в видеомодели ($0.23 и $0.68 за секунду), 4K ($1.00 за секунду), и любые другие модели — flux, seedream, kling, seedance первой версии. В сентябре два клипа в 4K съели около семи долларов — весь баланс сразу. Теперь скрипт replicate.js просто отказывается их запускать.

Требование заказчика про 4K закрывается увеличением на финальной сборке, а не генерацией в 4K.

Раздел 4Девять принципов

Это не советы. Каждый пункт оплачен испорченной генерацией — иногда одной, иногда семью подряд.

  1. Один генератор картинок, один — видео. gpt-image-2 и seedance-2.0, и всё. Разные модели дают разный стиль, и на склейке это видно с первой секунды.
  2. Стартовые кадры всех сцен — одной сеткой 3×3. Внутри одного холста модель держит единую манеру, палитру и свет. Девять отдельных запросов дают девять разных мультфильмов. Если сетку пришлось перегенерировать — все конечные кадры делаются заново.
  3. Конечный кадр рождается из стартового, в том же генераторе. На вход два изображения: сам стартовый кадр и эталон. В промпте — «тот же самый кадр, та же камера, тот же фон, та же машина; изменилось только одно: действие дошло до конца». Не «нарисуй финал сцены» — от этого перерисовывается всё.
  4. Стартовый кадр содержит всё нужное и не содержит лишнего. Всё, с чем герой будет взаимодействовать, уже в кадре: бидон уже в копытцах, открыт именно тот люк, до которого он дотягивается, дверца кабины закрыта. Модель целится в то, что видит: оставили открытой дверцу рядом с люком — и молоко полилось в кабину.
  5. Пара сверяется бок о бок до генерации видео. Шесть проверок: та же камера, та же машина, один экземпляр предмета, тот же лосёнок и тот же рост, цель действия видна, лишнего не добавилось.
  6. Видео генерируется по паре кадров. Первый и последний, камера неподвижна, звук выключен, промпт описывает только движение и заканчивается словами «End exactly as in the last frame». Короче четырёх секунд модель не умеет — короткие сцены делаются на четыре и подрезаются на монтаже.
  7. Каждый платный запуск объявляется и ждёт «да».
  8. Лосёнок ростом со взрослого человека и выше. Проверять на каждом кадре, где рядом есть человек.
  9. Опорная машина одна — файл эталона. Новых машин не рисуем никогда.

Раздел 5Алгоритм: восемь шагов

Все команды выполняются из папки вологодчина. После каждого шага — остановка и показ результата отцу.

Шаг 1

Разобрать сценарий

Найти свой ролик в файле сценариев, выписать фрагменты: номер, хронометраж, план, «начало», «конец», подпись. Проверить, что понятно, как конец каждой сцены объясняет начало следующей: сцены внутри ролика связаны, это не набор открыток. И машина должна быть видна в каждой сцене — хотя бы в окне или за спиной.

Шаг 2

Сетка стартовых кадров $0.13

Один промпт описывает сразу девять клеток — по одной на фрагмент, каждая передаёт «начало» сцены из сценария. Плюс общая шапка: манера, палитра, время года, рост лосёнка, машина как на эталоне.

node ../инструменты/replicate.js --модель openai/gpt-image-2 \
  --вход ролики/кадры-05-промышленность/сетка-А.json \
  --выход ролики/кадры-05-промышленность/сетка-А.png \
  --файл input_images=ролики/эскизы/лист-лось-паттерн-эталон.jpeg

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

node ../инструменты/нарезка-сетки.js ролики/кадры-05-промышленность/сетка-А.png \
  --имена 1-мост,2-цех,3-подшипник,4-спички,5-поле,6-колесо,7-финал
Сетка 3 на 3 стартовых кадров ролика 3
Сетка ролика 3. Девять сцен одним холстом — поэтому свет, манера и лосёнок везде одинаковые. Показывать отцу надо именно так, целиком, а не девятью отдельными файлами.
Шаг 3

Конечные кадры по центу

На каждый фрагмент — свой запрос. Вход: стартовый кадр этой сцены плюс эталон. Описание конца берётся из поля «конец» сценария слово в слово.

node ../инструменты/replicate.js --модель openai/gpt-image-2 \
  --вход ролики/кадры-05-промышленность/конец-2-цех.json \
  --выход ролики/кадры-05-промышленность/конец-2-цех-raw.png \
  --файл input_images=ролики/кадры-05-промышленность/кадр-2-цех.png \
  --файл input_images=ролики/эскизы/лист-лось-паттерн-эталон.jpeg

Готовый кадр привести к размеру стартового и сохранить под простым именем конец-2-цех.png. Черновые варианты держать с суффиксами -v2, -v3: инструменты считают утверждённым тот файл, у которого имя без суффикса.

Шаг 4

Пары и сверка

node ../инструменты/пара.js ролики/кадры-05-промышленность

Скрипт сам найдёт все кадр-N и конец-N, склеит их бок о бок и соберёт листы по четыре пары.

Пара кадров: начало и конец сцены с бидоном
Слева начало, справа конец. Видно всё сразу: камера не поехала, машина та же, бидон один, молоко попало в люк, доярка осталась на месте. На эту пару ушло семь попыток — и это нормально, каждая стоила цент.

Дальше — самая важная часть работы: просмотреть каждую пару по шести пунктам пятого принципа и честно выписать, что не сошлось. Не «всё хорошо», а «в третьей подшипник вышел размером с колесо». Отец ждёт именно этого списка — отчёт без замечаний он считает признаком невнимательного просмотра.

Шаг 5

Раскадровка в PDF

node ../инструменты/раскадровка-pdf.js --ролик 5

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

Посмотреть готовую раскадровку ролика 3 (PDF, 2,5 МБ)

Шаг 6

Клипы $0.40–0.50 за штуку

В модель подаются два кадра — первый и последний, — и промпт, который описывает только движение. Ни фон, ни одежду, ни машину описывать не нужно: они уже заданы кадрами.

node ../инструменты/replicate.js --модель bytedance/seedance-2.0 \
  --вход ролики/клипы-05-промышленность/2-цех.json \
  --выход ролики/клипы-05-промышленность/2-цех.mp4 \
  --файл image=ролики/кадры-05-промышленность/кадр-2-цех.png \
  --файл last_frame_image=ролики/кадры-05-промышленность/конец-2-цех.png

Каждый клип проверяется полоской кадров, а не просмотром на глаз:

node ../инструменты/клип-проверка.js ролики/клипы-05-промышленность/2-цех.mp4 --кадров 8
Шаг 7

Черновой монтаж

node ../инструменты/монтаж.js ролики/клипы-05-промышленность/монтаж.json \
  ролики/ролик-5-черновик.mp4 --ширина 864 --fps 24

Три правила сборки, добытые на третьем ролике: хвосты клипов не резать (действие должно досматриваться до конца), переезд вставлять целиком, а не щепками по полсекунды, и превышение хронометража допустимо — на финальной сборке ускорим. Лучше длиннее и понятно, чем впритык и рвано.

Шаг 8

Финальная сборка

Звук, подписи, название, перевод в 25 кадров, увеличение до 4K. Этого ещё не делал никто — см. раздел про звук ниже.

Раздел 6Как работает отец — и почему это часть алгоритма

Половина работы над роликом — не генерация, а короткие круги «показал — получил замечание — переделал за цент». Понимать этот маршрут так же важно, как знать команды.

  1. Смотрит сетку целиком. Одним превью. Проверяет узнаваемость лосёнка, машину, свет, общий строй. Типичные замечания на этом шаге: «лось ниже Деда Мороза», «машина в отражении читается как картина».
  2. Смотрит пары листами по четыре. Старт и конец рядом. Здесь рождаются самые частые правки: «молоко льётся мимо люка», «почему бидон обрезанный», «почему у вас масло летает».
  3. Требует сначала кадры, потом всё остальное. Его слова: «Давай сначала кадры, я проверю, а потом остальное». Это не придирчивость, а экономия: ошибка в кадре стоит цент, та же ошибка в клипе — полдоллара.
  4. Просит варианты, когда что-то не выходит. «Давай три варианта покажи крупно» — тогда number_of_images: 3 и крупный лист сравнения. Выбирает сам.
  5. Утверждает раскадровку. После этого можно тратить на видео.
  6. Смотрит черновой монтаж и говорит, что поправить в сборке, а что перегенерировать. Чаще — поправить сборку, это бесплатно.
Три варианта одного конечного кадра
Три варианта одного конечного кадра, показанные крупно по просьбе отца. Он выбрал третий. Три цента — и вопрос закрыт; спорить словами о том, как должна литься струя, можно было бы неделю.
Форма отчёта, которую он ждёт

Что сделано · что не сошлось (честно, по номерам фрагментов, своими словами) · сколько потрачено · что предлагаешь дальше.

Раздел 7Грабли: что мы уже сломали

Читать обязательно. Каждый пункт — потерянные деньги или день работы.

Раздел 8Звук, речь и шевелящиеся губы

Состав решён и обещан заказчику. Как это сделать технически — ещё не проверено ни разу. Это ближайшая исследовательская задача.

Обещано: негромкая инструментальная тема, общая для всей серии; две-три коротких реплики лосёнка на ролик; звуковые акценты на находках и превращениях; в момент главного события музыка затихает на полсекунды.

Музыка

Suno, одна тема на всю серию: русские и северные фольклорные мотивы, без вокала. Промпт уже составлен.

Речь

Синтез — ElevenLabs или Yandex SpeechKit, у обоих приличный русский. Реплики короткие, по три-пять слов: «Стой!», «Такой маленький?»

Губы — три пути, и заранее неизвестно, какой выживет

  1. seedance-2.0 со включённым звуком и репликой прямо в промпте: губы и голос рождаются вместе, но голос будет её, а не наш.
  2. Клип без звука, но с движением рта в промпте, и наш синтез поверх. На трёх словах рассинхрон никто не заметит.
  3. Модели липсинка поверх готового клипа. Они обучены на людях — на лосиной морде могут не сработать вовсе.

Проверять надо на одном клипе третьего ролика, дёшево, и сравнивать глазами. Бюджет такой проверки — около двух долларов.

Нестыковка, которую надо закрыть

В руководстве контент-менеджера написано, что ролик на панели идёт без звука, а заказчику в концепции обещаны реплики и музыка. Либо панель со звуком, либо реплики уходят в подписи. Вопрос отцу — не решать самому.

Раздел 9Твоё задание: ролик 5 «Горячее сердце Русского Севера»

Промышленность Череповца. У молоковоза отваливается колесо, машина стоит накренившись на мосту весь ролик, а лосёнок бегает между заводами за тем, без чего колесо не починить.

Этот ролик выбран первым не случайно: одно место действия, одна сквозная цель и машина, видная из каждого цеха. Меньше всего поводов, чтобы стиль и машина разъехались между сценами. Восемь фрагментов, тридцать три секунды.

ШагЧто сдатьЦена
1промпт сетки — кадры-05-промышленность/сетка-А.json
2сетка и девять нарезанных кадров$0.13
3конечные кадры8 × $0.01
4пары, листы и список своих замечаний
5раскадровка PDF
6клипы8 × ≈ $0.45
7черновой монтаж

Всего около $3.80 на весь ролик, если не переделывать. Переделки кадров по центу — нормально и дёшево; переделки клипов — дорого, поэтому и существует сверка пар.

На что смотреть именно в этом ролике

Полная версия задания — в файле ролики/ЗАДАНИЕ_Игорь.md, он лежит в стартовом наборе.

Раздел 10Как начать сегодня

1. Что должно стоять на машине

2. Распаковать стартовый набор

Скачать архив ниже и распаковать так, чтобы получилось …\Downloads\проекты\вологодчина\ и рядом …\Downloads\проекты\инструменты\. Раскладка папок важна: скрипты ищут друг друга по относительным путям.

3. Вписать токен Replicate

Отец завёл для тебя отдельный токен и прислал его в телеграм. На этой странице его нет и не будет: страница живёт в интернете, а токен тратит настоящие деньги. Отдельный он не ради разграничения трат, а чтобы его можно было отозвать, не трогая остальные — счёт общий, твои генерации уходят с того же баланса.

Создай файл …\Downloads\проекты\ДОСТУПЫ.md с одной строкой:

Replicate: r8_ВОТ_ЭТОТ_КЛЮЧ

Скрипт сам его оттуда возьмёт. Проверить, что всё сошлось:

node ../инструменты/replicate.js --проверка

4. Открыть сессию Claude Code и дать ему это сообщение

Запускать обязательно с рабочей папкой …\Downloads\проекты\вологодчина — не из проекты и не из ролики. Claude Code сам прочитает CLAUDE.md, который там лежит. Первым сообщением скопировать вот это целиком:

Прочитай CLAUDE.md, ролики/АЛГОРИТМ.md и ролики/ЗАДАНИЕ_Игорь.md
целиком, прежде чем что-либо делать.

Потом перескажи мне своими словами: что за проект, какие девять
принципов, из каких шагов состоит алгоритм, что поручено мне
и какие есть жёсткие запреты. Ничего не запускай и не генерируй.

Дальше сделаем только первый шаг: разберём сценарий ролика 5 из
документы/письма/2026-09-09-сценарии-роликов.txt и составим промпт
сетки стартовых кадров. Это бесплатно. Запускать генерацию будешь
только после моего «да», и цену называй заранее.

Пересказ нужен не для проформы: если агент не назвал правило «объявляй цену и жди „да“» или перепутал, откуда берётся конечный кадр, — значит, он прочитал невнимательно, и это лучше выяснить до первого доллара.

5. Первый шаг — бесплатный

Разобрать сценарий ролика 5 и составить промпт сетки. Показать отцу промпт до запуска. Это ничего не стоит и сразу покажет, правильно ли понят метод.

6. Как показывать результаты

Пары, листы и раскадровку — картинками и PDF в мессенджер, там же и обсуждать. Общего репозитория пока нет: если работа пойдёт и файлы начнут ходить туда-сюда часто, отец скажет — поднимем git на том же сервере, где лежит эта страница.

Файлы

И самое главное

Если застрял или сомневаешься — пиши отцу. Спросить и подождать стоит ноль. Догадаться самому и потратить чужие деньги — дорого. Это правило важнее скорости и важнее того, чтобы выглядеть самостоятельным.