3.9 KiB
3.9 KiB
Караоке-генератор — Бизнес требования
Что делаем
Пользователь загружает аудиофайл песни → получает видео-караоке с анимированным текстом, синхронизированным с аудио.
Вход
Обязательно
- Аудиофайл: mp3, wav, ogg, m4a (любая длина)
Опционально
- Текст песни: если пользователь хочет конкретный текст
- Ручной ввод (textarea)
- Загрузка файла: txt, lrc, srt, vtt
- Без текста → автоматическая транскрипция через Whisper
Выход
- Видеофайл: mp4 (H.264), с встроенным аудио
- Разрешение: 720p / 1080p
- Фреймрейт: 30fps
- Текст синхронизирован с аудио
- Стилизация: шрифт, цвет, анимации
Основной функционал
1. Транскрипция и тайминги
- Автоматическая транскрипция через Whisper API (если текст не загружен)
- Поддержка LRC, SRT, WebVTT
- Ручная подгонка таймингов (если автомат не попал)
2. Анализ смысла песни (для видео-фона)
- Извлечение ключевых слов и тем из текста (NLP через GigaChat)
- Классификация настроения: грусть, радость, любовь, природа, город, ночь и т.д.
- Определение тематических сцен: «закат», «дождь в городе», «горы», «лес»
3. Автоматический подбор видео-фона
- Поиск по стоковым видео: Pexels Video, Pixabay Video (бесплатно, CC0)
- Соответствие настроение/сцена → видео-клип
- Зацикливание коротких клипов для длинных песен
- Плавные переходы между клипами (crossfade)
- Опционально: ручная замена фона
4. Сборка финального видео
- Текст поверх видео-фона
- Подсветка текущей строки
- Fade-in/out анимации
- Аудио встраивается в видео
Технические детали
Стек
- Транскрипция: OpenAI Whisper API
- Анализ текста: GigaChat (через наш прокси)
- Поиск видео: Pexels API / Pixabay API
- Рендер видео: FFmpeg + MoviePy / PyAV
Ограничения
- Автоматический подбор фона не идеален — может потребовать ручной корректировки
- Длинные песни (>10 мин) рендерятся дольше
- Качество транскрипции зависит от чистоты аудио
- API сток-видео имеют лимиты запросов
Roadmap
v0.1 — MVP
- Загрузка аудио + текст (или транскрипция)
- Ручной выбор видео-фона
- Рендер в 720p
- Тайминги через Whisper
v0.2 — Авто-фон
- NLP анализ смысла
- Автоматический подбор видео из стоков
- 1080p
v0.3 — Улучшения
- Ручная коррекция таймингов в UI
- Дуэт (два текста разными цветами)
- Экспорт SRT/LRC
- Предпросмотр перед рендером
Задача
- Проект: karaoke
- Слаг:
karaoke - Папка:
tasks/karaoke/