Видео, видео, видео. Несколько месяцев прошло с тех пор, как мне последний раз приходилось делать видео-плейер для клиентского сайта. И вот - новый клиент, новое ТЗ, новый, неповторимый, и в то же время - такой похожий на существующие проигрыватель видео.
Уже не раз зарекался я делать видеоплейер, но - тут такие люди, которым отказать можно, но не хочу. И хочу сделать быстро, качественно и относительно недорого для них как по времени, так и по деньгам, так и по нервам. И, помня первое правило создание видеоплейеров - хочу использовать дорабатываемый коммерческий или опен-сорсный видео-плейер.
Ведь с момента моего последнего контакта прошло уже немало времени - могли появиться новые лучшие решения, о которых я могу быть не в курсе. Поэтому мне нужен ваш совет, друзья. Надеюсь, ответы к этому посту помогут не только мне, но и другим. Ниже - ключевые требования из конкретного ТЗ:
Техническое задание по разработке видео-проигрывателя
Функциональные требования:
- Псевдостриминг и стриминг (необязательно).
- Форматы файлов: Видео, псевдостриминг: MP4, FLV; Стриминг: RTMP (желательно, но не обязательно). Графика: JPG, PNG, GIF и SWF. Аудио: MP3
- Возможность наложения Watermark (PNG и / или SWF).
- Сбор статистики с кнопок Play и Pause.
- Поддержка плейлистов.
Технологии:
- На сервере для псевдостриминга используется связка nginx + php.
Требования к UI:
- Функция выбора битрейта видео (HD/SD) (в плэйлисте также показать варианты файла, если они есть).
- Шорткаты (клавиатура): перемотка, громкость, старт/стоп.
- Получение ссылки на текущую позицию видео.
- Сохранение на сервере скриншота (thumbnail) с видео (админ-функция).
- В начале воспроизведения - показ описания видео (HTML-текст).
- После воспроизведения - список всех видео данной категории или связанного плейлиста.
Показ рекламы:
- Реклама перед-после видео, с блокированием UI и таймером.
- Текстовые минибаннеры поверх видео с HTML-форматированием.
- Сбор статистики по показам и кликам c рекламы.
Видеопрофессионалы, посоветуйте - что сегодня будет лучшим решением этих задач для меня и клиента?