Из речи в готовый ролик: одно видео звучит на пяти и более языках, и губы двигаются в такт новой речи
Один рекламный ролик превращается в версии на 5 и более языках для разных стран. Whisper расшифровывает речь. GPT-4o переводит текст и переписывает его под рынок и тип покупателя. ElevenLabs воссоздаёт голос диктора с нужным акцентом и озвучивает новый текст. Нейросеть wav2lip подгоняет движение губ под новую звуковую дорожку. Раньше одна версия занимала 4–6 часов ручной работы, теперь без синхронизации губ — около 30 минут.
Роликов нужно много, а вручную одна версия занимает полдня
В интернет-рекламе есть сервисы, которые собирают чужую рекламу (AdHeart, AdSpy, AdsLibrary, Anstrex). Они открывают доступ к тысячам работающих роликов. Брать из них можно только идеи. Голос диктора, фон, лицо актёра и само видео защищены правами их владельцев, поэтому всё это приходится создавать заново.
Раньше всё делалось вручную. Я смотрел ролики, которые хорошо работают, и расшифровывал речь. Копирайтер по этим идеям писал текст под наше предложение. Потом я нанимал диктора на Fiverr, ждал 1–3 дня, монтировал ролик в Final Cut — и так для каждой версии. Выходило 4–6 часов работы на одну версию, и это без синхронизации губ.
При бюджетах $2–5 тыс. в день на A/B-тесты скорость выпуска роликов решает многое. Когда одновременно идут 8–10 рекламных наборов и каждому нужно 20–30 свежих роликов в неделю, вручную уже не успеть.
Четыре шага: расшифровать речь, переписать текст, озвучить, подогнать губы
Whisper расшифровывает исходный ролик
whisper-large-v3 на своём сервере или whisper-1 от OpenAI через API. Поддерживает русский, английский, балканские и тюркские языки, испанский. Выдаёт субтитры SRT с таймкодами: видно, на какой секунде звучит каждая фраза. Так же расшифровываются и чужие ролики, когда нужно изучить рынок.
GPT переводит текст и переписывает его под нужного покупателя
GPT-4o за один проход решает три задачи. Первая: делит расшифровку на смысловые блоки — зацепка (первые 3 секунды), проблема покупателя, доказательство, призыв к действию. Вторая: переводит на нужный язык (русский, английский, сербский, польский, турецкий) с учётом местных особенностей, так, как сказал бы носитель. Третья: переписывает текст под нужное предложение, тип покупателя и страну, сохраняя ритм и эмоциональные акценты оригинала.
Для каждого языка и ниши есть инструкции для модели (промпты) с готовыми примерами «было → стало». Главное — сохранить таймкоды: каждая фраза по длительности должна совпадать с оригиналом, иначе движение губ разойдётся со звуком. На выходе — 10–30 версий на каждом из 5+ языков, отсортированных по ожидаемому отклику аудитории.
ElevenLabs воссоздаёт голос с нужным акцентом
ElevenLabs Multilingual v2 работает с 29 языками в одной модели, и клонированный голос может звучать на любом из них. Это важно, когда в исходном ролике снималась одна актриса, а версии нужны для разных стран: её голос звучит и на сербском, и на польском.
Способов два. Первый — клонирование голоса по 30-секундному образцу. Второй — готовые голоса для быстрых A/B-тестов по тембру: мужской или женский, возраст, интонация. Стабильность, схожесть и стиль голоса настраиваются под нишу. На выходе — звуковая дорожка той же длительности, что и оригинал; это важно для следующего шага.
wav2lip подгоняет движение губ
На этом шаге актриса в ролике начинает говорить на новом языке. wav2lip берёт исходное видео и новую звуковую дорожку и перерисовывает область рта кадр за кадром, чтобы губы двигались в такт новой речи. Для этого нужна видеокарта, и расчёт занимает часы.
Если голос звучит за кадром, ffmpeg просто заменяет звуковую дорожку. Если в кадре говорит человек, лицо подгоняют wav2lip или SadTalker. На выходе — готовый mp4 для рекламных площадок (FB Ads, TikTok, VK Ads, Яндекс Директ).
На чём это работает
- OpenAI Whisper API (whisper-1)
- whisper-large-v3 на своём сервере, когда объёмы большие
- Разбор субтитров ради точных таймкодов
- GPT-4o / Claude Sonnet 4.5
- Промпты с примерами «зацепка → переписанный текст»
- Ответ модели в строгой структуре JSON
- ElevenLabs Multilingual v2
- Клонирование голоса по 30-секундному образцу
- Настройки голоса: стабильность, схожесть, стиль
- ffmpeg для замены звуковой дорожки
- wav2lip и SadTalker, когда в кадре говорит человек
- Управление шагами на Python и очередь задач
Что изменилось
на один вариант ролика (замена звука, без синхронизации губ)
версий на каждом языке; одна актриса — 5+ стран без повторных съёмок
Whisper, GPT и ElevenLabs по тарифам сервисов, без синхронизации губ
Главное — скорость проверки гипотез. A/B-тест на 20 вариантов первой фразы (раньше их было два) запускается за вечер. Лучшие сочетания видны уже в первые 24–48 часов, а слабые отключаются, пока не потратили бюджет. Стоимость установки снижалась на 15–30%, потому что первая фраза точнее попадала в нужного покупателя.
Тот же синтез речи вне рекламы
Шаг озвучки работает и отдельно от роликов. У него два применения: голосовое уведомление для телефонии и голосовые сообщения, которые бот отправляет в мессенджере от имени руководителя. Голос в обоих случаях один и тот же и берётся из того же конвейера, поэтому озвучка звучит одинаково во всех каналах.
Порядок фраз в начале звонка задан заранее
Сначала звучит, кто звонит, затем — что разговор записывается. Цель записи в этой фразе не называется. Порядок закреплён в тексте озвучки, поэтому каждый звонок будет начинаться одинаково.
Аудиофайлы собираются из скрипта
В репозитории хранится скрипт синтеза, а сами файлы пересоздаются за секунды: два файла длиной 4,0 и 3,2 секунды. В истории изменений остаётся текст фразы.
Голосовое сообщение требует одного формата файла
Как голосовое сообщение мессенджер показывает только файл одного формата. Файл в любом другом формате получатель увидит как обычное вложение. Поэтому формат задан сразу на выходе синтеза.
Сводки с цифрами остаются текстом
Голосом уходят короткие уведомления. Сводки с цифрами отправляются текстом: к цифре на экране можно вернуться взглядом и перечитать её сколько угодно раз.
Нерешённый вопрос: исходящие звонки
У поставщика телефонии проигрывать аудиофайл можно в схеме входящего звонка. Вставить готовый файл в исходящий звонок пока некуда, вопрос отправлен в поддержку.
Бесплатная замена платному синтезу на своём оборудовании
В технологиях кейса стоит платный сервис синтеза, и заказчики часто спрашивают: «а можно без подписки?» Для замены выбрана модель с лицензией MIT: русский язык она поддерживает, голос клонирует по образцу в 10 секунд. Две модели с лучшим звучанием отпали, потому что их лицензии запрещают коммерческое использование. Пока это выбор на бумаге: в рабочем конвейере работает платный сервис.
Ключ доступа к сервису
Ключ платного сервиса перевыпущен, потому что старый попал в журнал. Новый ключ может только синтезировать речь, остальные функции сервиса для него закрыты, и лимит расходов выставлен явно.
Кому подходит и кому нет
- · Рекламные агентства, где ролики делают 5 и более человек
- · Рекламные команды и интернет-магазины, которым нужно много роликов
- · Отдел маркетинга интернет-магазина, который регулярно снимает ролики «от лица покупателей»
- · Запуск в 5 и более странах одновременно: все языки из одного исходного сценария
- · Подкасты и онлайн-школы: перевод и озвучка коротких роликов на другие языки
- · Прямое копирование чужих роликов: это нарушение авторских прав
- · Ниши со строгими правилами рекламы (медицина, фармацевтика, финансы): там нужен юрист по рекламе
- · Клонирование чужого голоса без согласия человека: это нарушает его права
- · Длинные видео от 10 минут: озвучка и монтаж обойдутся примерно как работа хорошего диктора
Про этику. Конвейер нужен, чтобы размножать собственные идеи и оригинальные сценарии. Чужие видео и голоса без разрешения использовать нельзя: это нарушает авторские права и права самих людей. Чужие ролики я расшифровываю, чтобы понимать рынок, а затем пишу собственный сценарий и делаю собственные звук и видео.
Похожие кейсы
GMBSPYLAB собирает рекламу из FB Ad Library и раскладывает её по веткам в Telegram
Асинхронный Python и Postgres 16. За день из открытой библиотеки рекламы Facebook приходит 30–75 тыс…
Сквозная атрибуция для двух магазинов на Shopify: от клика до заказа
Свой сервис на стандартной библиотеке Python принимает уведомления Shopify о заказах и проверяет их подпись…
Заказы из Shopify сами встают в рабочие таблицы склада
Номера заказов, трек-номера, статусы и отмены проставляются каждые 30 минут. Приёмник на Apps Script…
Начните с аудита за 5 000 ₽: письменный отчёт и расчёт окупаемости
Расскажу, что автоматизировать в первую очередь, когда это окупится и нужен ли вашей задаче ИИ вообще. Иногда он не нужен.
Или просто задайте вопрос. В рабочее время отвечаю в течение 2 часов