Інтеграція AI Talking Head: синхронізація губ за аудіо

Спікер записав курс, а за місяць змінилася термінологія — і весь матеріал доводиться переозвучувати заново. Ми розробляємо інтеграцію генерації talking head: синхронізуємо губи з новим аудіо й зберігаємо вихідну міміку, тому перезапис не потрібен. Обсяг дубляжу зростає без збільшення часу на студійні сесії.
Часті запитання

Чому генерація talking head ламається на артикуляції

Розходження звуку й відео майже ніколи не проявляється на коротких фразах — воно накопичується. Модель веде артикуляцію за усередненим ритмом, а живе мовлення дихає: паузи, прискорення, вдихи, смислові акценти.

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

На довгій репліці помилка складається: невелике відставання чи випередження в кожній фразі підсумовується, і до третьої-четвертої хвилини розходження звуку й відео стає помітним без покадрового порівняння.

Синхронізація губ, відлагоджена на короткому уривку, на дубляжі довгих реплік розсипається — особливо там, де диктор змінює темп і робить паузи всередині речення.

Генерація talking head під час випуску серії роликів множить цей ефект на число епізодів. Той самий дефект відтворюється в кожному випуску, а правка перетворюється на ручний прохід по таймкодах: зсунути доріжку, перегенерувати відрізок, заново зібрати сцену. Частина дублів іде в брак, і переозвучування з'їдає час, який планували на монтаж і публікацію.

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

Що дає точна синхронізація губ: час, якість, обсяг

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

Відкриті рішення рівня Wav2Lip показали, що влучання в артикуляцію досяжне автоматично. Але на практиці результат визначає не модель, а підготовка даних: вирівнювання доріжки за репліками, стабільний трекінг обличчя, обробка перекриттів і поворотів голови. Саме ці кроки вирішують, піде епізод у публікацію чи повернеться на доопрацювання.

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

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

Підходи до генерації: відео-клон, аватар, переозвучування

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

Варіант Коли підходить Обмеження
Відео-клон спікера Є 15–30 хвилин чистого матеріалу: рівне світло, один ракурс, мовлення без перебивання Відтворює вихідну пластику — зміна пози, фону чи гардеробу потребує дозйомки
Фото-аватар Старт потрібен за лічені дні, зйомок немає — достатньо портрета анфас Міміка бідніша, великий план і сильні емоції виказують синтетику
Переозвучування Відео вже знято, змінюється мова або текст репліки Кадри з руками біля обличчя, профілем, бородою втрачають точність артикуляції

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

Обмеження за мовами впирається у фонетику: для мов із незвичною для моделі артикуляцією ми додаємо словник винятків і добираємо контрольні фрази на прийманні.

Працюємо зокрема з HeyGen та відкритими моделями, але інструмент вторинний: 30–60 секунд тестового прогону на вашому матеріалі показують, де саме попливе синхронізація, до того як проєкт піде у виробництво.

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

Як ми ведемо проєкт: від аудиту запису до здачі

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

  1. Аудит аудіозапису. Слухаємо матеріал повністю: оцінюємо шум і реверберацію, знаходимо обриви, накладення реплік, різний темп між дублями. На виході — карта проблемних фрагментів і обсяг правок до старту.
  2. Схема рішення. Фіксуємо устрій конвеєра: нарізка на фрази за паузами, приведення доріжки до єдиного темпу, прив'язка артикуляції до кадрів. Узгоджуємо до реалізації — переробка на цьому кроці коштує найдешевше.
  3. Еталонні дані. Відбираємо 10–15 коротких фрагментів із різною артикуляцією і розмічаємо, де губи зобов'язані збігатися з фонемою, а де допустиме згладжування. Еталон далі слугує лінійкою для всіх перевірок.
  4. Налаштування синхронізації. Калібруємо вікно узгодження звуку та кадрів, плавність переходів між положеннями губ, компенсацію зсуву на початку фраз. Параметри підбираємо за еталоном, а не на око.
  5. Прогін і заміри. Рахуємо частку кадрів із помітним розходженням і число місць, які доводиться правити руками. Правки йдуть у налаштування, а не в окремі файли.
  6. Приймання результату. Йдемо за чек-лістом разом із замовником: тиша в паузах, відсутність «плаваючих» губ, рівний темп. Критерії відмови проговорюємо заздалегідь.
  7. Передача. Віддаємо конфігурації, схему конвеєра та інструкцію з повторного запуску — наступний ролик збирається вже без нас.

Пакет передачі: конфігурації, регламенти, доступи

Проєкт вважаємо зданим не тоді, коли аватар заговорив на демонстрації, а коли ваша команда проводить новий запис без нас.

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

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

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

Ми на цій зустрічі спостерігаємо й доопрацьовуємо ті місця, де документація виявилася недостатньо однозначною.

Кейс: дубляж навчального курсу без перезапису спікера

На вході — навчальний курс із 46 епізодів: лектор у кадрі, чистий звук, але автор фізично не міг повернутися до студії, а курс був потрібен другою мовою.

Переклад тексту був готовий, залишалося «оживити» вихідну міміку й артикуляцію під нову фонограму, не втративши впізнаваності спікера.

Як влаштували процес

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

Числівники, абревіатури та терміни нормалізували у фонетичний запис, власні назви проганяли через словник вимов. Синтез talking head ішов у HeyGen за референсним відео, потім сегменти склеювалися з вихідним рядом, а субтитри генерувалися з тієї самої таймкодової сітки.

Метрики до і після

Показник До Після
Час на епізод 4–5 годин 35–45 хвилин
Частка реплік із ручною правкою ~35% 6–8%
Ітерацій приймання на епізод 3–4 1

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

Чим переозвучування відрізняється від перенесення міміки з відео?

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

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

Звідси різниця у вимогах до вихідника. Переозвучування терпить нейтральну подачу та короткі репліки — правиться вузька ділянка навколо рота.

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

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

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

Технічні сумніви, які варто зняти до старту

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

Що буде, якщо запис шумний?

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

Потрібно перезбирати все відео через одну фразу?

Ні. Рендер розбито на сегменти й пов'язано з таймкодами вихідного аудіо: правка зачіпає лише змінений фрагмент, сусідні беруться з кешу. Заміна фрази не запускає повний цикл заново.

Як вирішується питання прав на зовнішність і голос?

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

Чи можна отримати версію іншою мовою?

Так, але це окремий рендер: артикуляція прив'язана до фонем конкретної мови, тому проста заміна доріжки дає розходження. Перекладені фрази підганяємо за довжиною, щоб темп мовлення залишився природним.

Що відбувається на довгих записах?

На довгих відрізках накопичується дрейф між звуком і картинкою, тому рендеримо сегментами й стикуємо за опорними точками. Артикуляція залишається рівною на всьому записі, а не лише на початку.

Обговоримо задачу синхронізації губ на вашому матеріалі

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

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

  • Формат задачі: де працює talking head — реклама, навчальний курс, соцмережі, — яка довжина реплік і що важливіше: точність артикуляції на великих планах чи швидкість випуску серії.
  • Розбір вихідників: аудіодоріжки, відеоряд, минулі версії генерації, якщо вони є, — щоб зрозуміти, що саме в них не влаштувало.
  • Умови запису: мова й акцент диктора, фоновий шум і гул, паузи, накладення голосів. Це те, що найсильніше впливає на якість синхронізації губ.
  • Пробний епізод: беремо один короткий фрагмент і проганяємо повний цикл — синхронізація, міміка, збирання фінального відео. Ви бачите результат до оцінки всього обсягу.
  • Оцінка та план робіт: кількість епізодів, етапи, зона нашої відповідальності та вашої — тексти, правки сценарію, приймання.
  • Доступи та розміщення: де рішення буде працювати, чи потрібна стиковка з вашою системою публікації, хто володіє матеріалами і як розмежовано права.
  • Передача вихідників: віддаємо аудіо, відео, налаштування синхронізації, скрипти запуску та інструкцію, щоб епізод можна було повторити без нас.

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

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1141