Кейс · ютуб-канал · відкритий

Rival Run — Shorts, які рендерить код

ютуб-канал · Python + Pillow + ffmpeg · агенти на Claude · 2026 · у ефірі

Rival Run — YouTube-канал анімованих versus-гонок у лабіринті. Жодного відеоредактора: лабіринт, арену, персонажів і кожен із 960 кадрів ролика малює код на Python, ffmpeg збирає вертикальний Shorts і зводить звук. Сюжети пише команда агентів на Claude. Дев'ять роликів уже в ефірі: @run_rival_run.

9
роликів у ефірі — і ще три зібрані, чекають черги
18K+
переглядів за перший тиждень; найкращий ролик — 4,6 тис. за кілька днів
960
кадрів на ролик — усі намальовані кодом, не відеоредактором
3
агенти: сценарист, пакувальник і критик-гейт
01

Навіщо я це зробила

Мені треба було довести одну річ: контент можна виробляти системою, а не руками. Не «згенерувати відео нейромережею», а зібрати конвеєр, у якому кожен крок — код або агент, і який видає готовий ролик під ключ: сюжет, кадри, звук, тайтли, опис, хештеги.

Канал молодий, і гроші він принесе пізніше — коли набере масу. Мене це влаштовує: він росте сам, бо наповнювати його майже нічого не коштує. А цінність, яку видно вже зараз, — це система, що його наповнює. Її і показую.

  • Формат: versus-гонка в лабіринті — двоє (або більше) біжать до фінішу, дорогою пастки й спокуси
  • Аудиторія: США. Усі тайтли, описи й хештеги — англійською, пости виходять у нью-йоркський прайм-тайм
  • Роль: усе сама — рушій, арт, сюжети, пакування, публікація
02

Як влаштований конвеєр

У ролику немає жодного кадру, згенерованого нейромережею чи змонтованого в редакторі. Усе, що ви бачите, — намальовано кодом на Python з Pillow, кадр за кадром.

Лабіринт
Генератор будує «ідеальний» лабіринт 19×33 клітинки — такий, де між будь-якими двома точками є рівно один шлях. Далі пошук у ширину знаходить найкоротший маршрут, і саме по ньому побіжать герої.
Арена
Кожен ролик має свою арену — нічна кухня, космос, лід, лікарня, стадіон. Геометричні фони й пропси малює код: дзеркала, шафи, балони, розлитий слиз, конфорки. Органіку, яку код не тримає рівно — траву, туманність, — домальовує нейромережа, але лише як окремі статичні пресети. Це не генерація відео: нейромережа дає готові шматки (фон + персонажі), а сам кадр із них щоразу збирає код.
Герої
Кожен персонаж — голова без тіла, у двох емоціях: спокійній і злій. Усі проходять нормалізацію скриптом: єдиний канвас, однакова висота голови.
Анімація
Рух заданий не «фізикою», а якорями: у кадрі 240 герой у клітинці 5, у кадрі 300 — у клітинці 9. Між ними — рівний темп. Зупинка — два однакові якорі поспіль, відкид назад — якір у зворотний бік. Камера їде за подією, а не за лідером.
Кадри
960 кадрів на ролик, 1080×1920, 30 кадрів на секунду. Далі ffmpeg склеює їх у відео.
Звук
Музика й звукові ефекти зводяться окремим проходом ffmpeg. Кожен ефект прив'язаний не «на око», а до конкретного кадру контакту: удару, ковзання, залипання. Збіг звуку з подією потім перевіряється кодом — вимірюванням піків у доріжці, а не на слух.
03

Троє агентів замість редакції

Сюжети, пакування й перевірку робить команда агентів на Claude. Кожен має свою зону і свої заборони — і працюють вони конвеєром, а не «попроси нейромережу написати сценарій».

Агент 01

Сценарист

Придумує пару героїв, арену з візуальним твістом і драматургію по секундах: хто веде, де поворот, де пастка, хто бере фініш. Його блокуюче правило — кожне відео мусить структурно відрізнятися від сусідніх, інакше стрічка перетворюється на копірку.

Агент 02

Пакувальник

Робить те, що вирішує долю Shorts: заголовок англійською до 80 знаків, опис із питанням до глядача, хештеги, закріплений коментар, підбір музики. Йому суворо заборонено вигадувати назви треків — тільки реальні, з ліцензією і рядком атрибуції в описі.

Агент 03 · гейт

Критик

Остання інстанція перед публікацією. Повертає тільки «схвалено» або «переробити ось це» — варіанта «начебто ок» у нього немає. Перевіряє шість речей: копірайт, ризик бану за шаблонність, сигнали для американської аудиторії, музику, драматургію і чесність обіцянки в заголовку.

04

Що критик реально зловив

Гейт вартий рівно стільки, скільки він ловить. Ось справжні його зупинки — не декларації, а те, що інакше поїхало б у ефір.

Спалений фінал арки

Переможцем чергового ролика виявився персонаж, який за задумом мав тріумфувати аж у фіналі турніру. Глядач отримав би розв'язку на п'ять серій раніше — і фінал перестав би бути потрібним.

Фікс: переможця замінили, арку збережено.

Дві однакові хореографії підряд

Два сусідні ролики отримали однаковий набір пасток у тому самому порядку. Для глядача це нудно, а для YouTube — прямий сигнал шаблонного контенту, за який демонетизують увесь канал.

Фікс: другому ролику переписали пастки. Правило «не дві однакові хореографії поспіль» стало частиною чеклиста.

Спойлер у власному описі

Опис під роликом називав переможця. Уся інтрига — ставка глядача «хто виграє» — вмирала ще до кліку.

Фікс: опис переписано на питання до глядача. Хештег, що обіцяв не той формат, теж замінено.

Сюжети, яких рушій фізично не витягне

Кілька сценаріїв вимагали, щоб герой проламував стіни або літав крізь лабіринт. Критик звірив задум не з описом системи, а з самим кодом — і забракував їх: герой рухається спільним маршрутом, а в кадр влазить лише три з половиною клітинки.

Фікс: сюжети переписані під те, що рушій справді вміє. Це і є головна користь від гейта, який читає код, а не презентацію.

05

Цифри

Канал новий, і я не роблю вигляду, що це мільйони. Показую те, що є: обсяг системи і те, що видно на самому каналі — його можна відкрити й перерахувати самому.
МетрикаЗначенняЩо це означає
Роликів зібрано / у ефірі12 / 9Конвеєр видає готові ролики серіями, а не поодинці
Переглядів18K+За перший тиждень існування каналу. Найкращий ролик набрав 4,6 тис. за кілька днів — цифри видно на каналі, їх легко звірити
Кадрів на ролик9601080×1920, 30 кадрів на секунду. Кожен кадр малює код
Кадрів відрендерено всього~12 000Стільки картинок пройшло через рушій за час роботи над каналом
Python-скриптів27Рушій, генератор лабіринту, нормалізація персонажів, зведення звуку
Готових ассетів368Голови, пропси, стіни, фони — бібліотека, з якої збирається нове відео
Агентів у команді3Сценарист, пакувальник і критик-гейт з правом «переробити»
Тривалість ролика30–41 сВертикальний формат під Shorts, Reels і TikTok без переробки

Дані на 14.07.2026 · джерела: код рушія, файли проєкту, публічна сторінка каналу

06

Як це виглядає

Канал відкритий — заходьте й дивіться: @run_rival_run. Аватар, банер, обкладинки й самі ролики — усе з того самого конвеєра.

Канал Rival Run на YouTube: банер, аватар і дев'ять роликів із лічильниками переглядів — найкращий 4,6 тис.
Канал. Кожне прев'ю — кадр, згенерований кодом: своя арена, свої стіни, свої герої. Банер зібраний скриптом з реальних спрайтів, рівно під безпечну зону YouTube.
07

Що сказали дані — і як я через них розвернула формат

Дев'ять роликів дали першу чесну статистику, і вона виявилась однозначною.

  • Дуель двох упізнаваних істот — кіт проти пса, вампір проти вовкулаки: 4,6 тис. переглядів за кілька днів
  • Трійка учасників — уже 1,5–1,7 тис.
  • Натовп (десять учасників, battle royale) — менше 900
  • Абстракція (знаки зодіаку, місяці народження) провалюється незалежно від кількості: 250 переглядів у найгіршого

Висновок простий і незручний: глядач не вболіває за абстракцію. Він вболіває за когось. Тому формат каналу далі — тільки дуелі впізнаваних героїв, а «битви натовпом» і зодіак з плану викреслені. Це і є сенс власного продукту: він дозволяє помилятися на своїх даних, а не на клієнтських.

08

Що з цього взяти собі

  • Контент можна виробляти системою. Якщо ролик збирається з правил, а не з натхнення — його можна віддати конвеєру й випускати серіями
  • Агент без гейта — це ризик. Сценарист напише що завгодно; цінність з'являється там, де є критик з правом сказати «переробити» і чеклистом, за яким він це каже
  • Гейт мусить читати код, а не презентацію. Половина зупинок сталася саме тому, що критик звіряв задум із тим, що рушій реально вміє
  • Шаблонність карається платформою. Однакові ролики поспіль — не просто нудно, це підстава демонетизувати канал цілком
  • Дані розвертають формат швидше за смак. Дев'яти роликів вистачило, щоб побачити, що працює, і викинути те, що ні

Такий конвеєр під ваш формат — від $1 500. Строк залежить від кількості арен і форматів; називаю його після брифа, у той самий день.

Часті питання

Це відео згенеровані нейромережею?

Ні. Нейромережа малює лише окремі статичні елементи — морду героя або органічний фон. Саму анімацію, лабіринт, арену, рух і всі 960 кадрів ролика будує код на Python. Тому картинка не «пливе» між кадрами, а герой не міняє форму на ходу.

Скільки коштує такий конвеєр і скільки часу займає?

Від $1 500. Ціна залежить від складності формату: скільки потрібно арен, чи треба агенти під сценарії й пакування, чи зводити звук по подіях. Строк називаю після брифа, у той самий день.

Чи не забанять канал за автоматизований контент?

Ризик реальний: платформи демонетизують шаблонні конвеєри — коли ролики відрізняються лише підписом. Саме тому в системі є критик-гейт: він перевіряє, що кожне відео має власну арену, власні пастки й власну драматургію, і не пропускає два однакові сценарії поспіль.

Чи можна те саме зробити під мою нішу?

Так, якщо ваш контент розкладається на правила: є учасники, є подія, є розв'язка. Лабіринт-гонка — лише один формат, який я вибрала для доказу. Рушій, агенти й гейт переносяться на будь-який серійний відеоформат.

Хочете свій конвеєр — напишіть три речення

Який контент вам треба випускати серіями, як часто і що зараз забирає найбільше рук. Цього досить, щоб я сказала, чи розкладається це на систему і скільки вона коштуватиме. Відповідаю в той самий день.

Наступний кейс EMBODY — магазин під ключ