Загрузка 0
ПОДЕЛИТЬСЯ

Мой блог

Листай вниз

V-GEN: автоматическая генерация теленовостей с помощью Google Gemini и FFmpeg

V-GEN: автоматическая генерация теленовостей с помощью Google Gemini и FFmpeg

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

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

V-GEN: автоматическая генерация теленовостей с помощью Google Gemini и FFmpeg
V-GEN: автоматическая генерация теленовостей с помощью Google Gemini и FFmpeg — изображение 4

Архитектура и поиск информации

Программный комплекс объединяет современные языковые модели, веб-поиск в реальном времени, инструменты компьютерного зрения и классические вещательные алгоритмы обработки видео и звука.

Реклама

Интеллектуальный поиск через 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.

Административная панель сервиса V-GEN
Панель администратора V-GEN

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

01.