Описание проекта
Ядро задачи — сам конвейер транскодирования, скорее всего на базе ffmpeg. Из каждого загруженного мастера нужно получать нормализованные рендишены плюс адаптивный по битрейту вывод, упакованный в HLS и DASH, с манифестами и сегментированными медиа, которые ожидают стандартные плееры. Вместе с потоками нужна автоматическая генерация постеров и спрайтов-миниатюр, снятых в разумных точках таймлайна, а готовые ассеты должны храниться в объектном хранилище так, чтобы плеер мог по требованию забирать нужный вариант. Каждая загрузка должна создавать задачу, статус которой можно опрашивать или получать пушем, со сменой состояний очередь, обработка, готово, ошибка и понятным отчётом, если исходник битый или не поддерживается.
Надёжность для нас важна не меньше сырой пропускной способности. Ждём аккуратную модель воркеров с горизонтальным масштабированием, повторные попытки при временных сбоях и корректную работу с большими файлами и долгими задачами. Пожалуйста, покажите релевантный опыт с медиапайплайнами и дайте реалистичную оценку.
— транскодирование на ffmpeg в лестницу рендишенов разных разрешений
— упаковка адаптивных HLS и DASH с манифестами и сегментами
— автоматическая генерация постеров и спрайтов-миниатюр
— асинхронная очередь задач со статусами и отчётом об ошибках
— раскладка в объектном хранилище под стриминговую отдачу
— горизонтально масштабируемые воркеры с ретраями для больших файлов