Мой блог
V-GEN: автоматическая генерация теленовостей с помощью Google Gemini и FFmpeg
Автономный локальный сервис V-GEN предназначен для автоматического создания телевизионных новостей «под ключ» с использованием поисковых возможностей Google Gemini и инструментов видеопродакшна FFmpeg. Программа решает задачи региональных медиацентров, позволяя выполнять поиск актуальных инфоповодов, текстовый рерайт, синтез речи диктора и сборку готового Full HD видеоролика.
Проект разработан для автоматизации рутинных процессов выпуска новостей в эфир, минимизируя затраты времени на сбор материалов, монтаж и подготовку файлов для программного обеспечения вещательных серверов.


Архитектура и поиск информации
Программный комплекс объединяет современные языковые модели, веб-поиск в реальном времени, инструменты компьютерного зрения и классические вещательные алгоритмы обработки видео и звука.
Интеллектуальный поиск через Grounding in Real-Time
Традиционные новостные агрегаторы зависят от статических RSS-лент, которые могут ломаться при изменении верстки сайтов. В рассматриваемом сервисе применяется модель gemini-3.8-flash с активированным инструментом Google Search Grounding. Это позволяет системе напрямую обращаться к поисковому индексу за последние 7–10 дней, анализировать региональные СМИ, официальные пресс-релизы и формировать структурированную подборку подтвержденных событий.
Редакционный промпт и требования к тексту
Админ-панель сервиса содержит настраиваемый системный промпт, задающий телевизионный формат подачи. Скрипт отсеивает бытовой мусор и частные объявления, оставляя происшествия, решения местных властей, социальные темы и городскую среду. Текст сюжета приводится к строгим стандартам: объем составляет от 800 до 1000 знаков с пробелами для хронометража в пределах 45–60 секунд. Из текста исключаются канцеляризмы и приветствия, а числительные прописываются словами, чтобы диктор не допускал запинок во время чтения.
Синтез речи и звуковое оформление
Озвучивание материалов выполняется с помощью мультимодальной технологии Gemini TTS. Базовым голосом выступает Callirrhoe, отличающийся естественной русской фонетикой и энергичной подачей, однако в настройках можно выбрать и другие официальные варианты. Чтобы избежать попадания в аудиопоток лишних служебных фраз языковой модели, на синтез отправляется исключительно очищенный текст. Полученный аудиофайл нормализуется через FFmpeg до параметров 48 kHz и 16-bit stereo.
Фоновая музыка подбирается через встроенный менеджер треков, где можно указывать пути к аудиофайлам различных форматов и настраивать им понятные названия. Уровень громкости музыкального сопровождения автоматически снижается до эфирного стандарта -5.4 дБ, а голос диктора получает небольшую задержку через аудиофильтр.
Визуальный ряд и обработка графики
Для предотвращения появления черных полос или искажения пропорций у вертикальных и квадратных снимков из социальных сетей применяется алгоритм Smart UNCROP. Если кадр не соответствует стандарту 16:9, фоном становится размытое и затемненное исходное изображение, а поверх него размещается четкая версия фотографии в безопасной телевизионной зоне.
Эффект Кена Бернса и субпиксельный зум
Стандартные инструменты автоматического наложения зума в видеоредакторах нередко вызывают дрожание картинки из-за округления координат. В данном решении рендеринг слайдов перенесен на кадровый пайплайн Pillow с использованием субпиксельных вещественных координат. Слайды плавно приближаются или отдаляются, причем финальный слайд каждого сюжета всегда завершается эффектом отъезда камеры для логичного окончания репортажа.
Тайминги, B-Roll ролики и наложение логотипа
Хронометраж каждого ролика жестко привязан ко времени звучания голоса диктора. Перед началом чтения выдерживается секундная пауза на первом слайде для оценки контекста, а по завершении речи кадр удерживается еще три секунды. Если к новости прикреплено несколько медиафайлов, их длительность распределяется равномерно.
Интеграция видеофрагментов B-Roll
В тело сюжета можно добавлять архивные видеозаписи из заранее указанных локальных папок. Система поддерживает автоматическое зацикливание коротких роликов, обрезку по расчетному времени, кадрирование под Full HD без искажений, а также принудительное удаление оригинальной звуковой дорожки, чтобы она не конфликтовала с дикторской озвучкой и фоновой музыкой.
Эфирная графика и экспорт
Логотип телеканала накладывается с сохранением прозрачности альфа-канала в выбранной позиции с учетом безопасных зон экрана. Готовый видеоряд автоматически склеивается с фирменной отбивкой, после чего экспортируется в файл с русскоязычным названием, сформированным по заголовку новости. Это позволяет сразу передавать файл в эфирный плейлист без ручного переименования.
Установка и развертывание приложения
Платформа запускается на операционных системах Windows, Linux и macOS. Для работы требуется установленный интерпретатор Python версии 3.10 или выше, а также пакет FFmpeg, прописанный в системных переменных среды. После клонирования репозитория с GitHub в отдельную директорию необходимо установить зависимости из файла требований через пакетный менеджер pip и получить бесплатный API-ключ в Google AI Studio.

Запуск локального сервера выполняется через управляющий скрипт, после чего веб-интерфейс становится доступен в браузере. В административной панели настраиваются параметры подключения к нейросети, выбираются папки с медиафайлами, загружается логотип и отбивка для эфира, после чего система полностью готова к автоматическому созданию новостных выпусков.
