Несколько дней возни с Claude Code, и пайплайн автоматического монтажа готов. Теперь такие ролики собираю из сырого исходника минут за 30, с минимальным участием.
Что было интересно решать.
Где резать. Очевидный путь - резать по таймкодам распознавалки - не работает. Границы слов у неё регулярно уезжают в тишину или прямо в соседний дубль, и на склейке слышен обрывок чужой фразы. Пришлось строить точки реза из трёх независимых источников сразу: пословное выравнивание, детектор границ речи и отдельная буквальная расшифровка без языковой модели.
Самое красивое. Языковая модель внутри распознавалки заглаживает запинки - вы говорите с обрывом и переначалом, а в тексте выходит гладкая фраза. Если рядом получить расшифровку без сглаживания, то разница между двумя версиями и есть детектор фальстартов. Там где в одной гладко, а в другой одно и то же дважды с обрывом - человек споткнулся и переначал. Восемь таких мест нашлись сами на пяти минутах, руками я бы половину пропустил.
Кадрирование. Сегментация лица даёт рамку, но покадровый кроп дёргается на каждой склейке. Правильный ответ оказался контринтуитивным: считать по всем кускам сразу и держать рамку неподвижной.
Футажи. Объясняющую графику рисует код, а не картиночная модель: анимация с детерминированной перемоткой снимается покадрово в фоновом браузере. Диаграммы и графики генеративные модели рисуют правдоподобной чушью, а кириллицу калечат.
Плюс мелочи, которые и отличают монтаж от нарезки. Цветокор по замерам кадра, а не на глаз. Громкость по восприятию, а не по пику. Синтезированная фоновая подложка - монтаж со склейками выдаёт себя скачками комнатного тона, и её задача их спрятать.
Если хотите такое у себя - пишите, консультирую 🤝
Post #729
618