Приложение для записи и просмотра видео семинаров

 

URL:

Эссе:

Система для трансляции корпоративных семинаров. Возможен просмотр трансляции, как  в реальном времени, так и  уже записанного видео. Видео с семинара транслируется  в три потока (три различные точки — три камеры), отдельным потоком транслируется звук с микрофона. Есть возможность выбора наиболее удобного для зрителя потока — видео будет показано в широкоэкранном режиме.  По ходу просмотра пользователь может оставлять комментарии к фрагменту видео. Комментарии затем будут отображены при проигрывании соответствующего кадра в нижней его части.

Бизнес-цели:

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

Концепция решения проекта для достижения бизнес-целей:

В системе предусмотрено две роли: Пользователь и Администратор.
Пользователь может стать ведущим семинара и участником семинара. Ведущих и участников семинаров назначает Администратор при создании мероприятия. Если Пользователь является ведущим семинара, то  в списке мероприятий у соответствующего семинара появляется кнопка для начала записи семинара. Участникам семинара после его создания высылается уведомления.  Пользователь, будучи участником семинара, может редактировать видео - оставлять комментарии к любому кадру.  После окончания редактирования видео перекодируется с учетом внесенных изменений и сохраняется разделе «Мои Видео». Видео в разделе «Мои Видео» сортируются по дате добавления.
Администратору доступны все функции пользователя. Кроме того, Администратор:
- управляет семинарами — имеет возможность создавать, редактировать и удалять семинары. При создании семинара указывается название, краткое описание, назначается ведущий семинара,   указываются пользователи/группы пользователей, категория семинара. При удалении семинара из системы удаляются также все отредактированные версии пользователей.
- управляет пользователями — т. к. система закрыта от внешних пользователей, Администратор регистрирует пользователей, возможен импорт корпоративных пользователей с помощью протокола LDAP. Администратор может удалить любого пользователя, а также отредактировать профиль пользователя: дать/отнять функцию администратора, заблокировать пользователя, добавить/удалить пользователя из группы.
- управляет группами пользователей — для упрощения процедуры приглашения пользователей на семинар пользователи системы объединены в группы. При приглашении группы приглашаются все ее пользователи.
- управления категориями семинаров — для упорядочения отснятого материала каждому семинару присваивается категория. Администратор может создать новую категорию,
отредактировать уже существующую (добавить новые видео в эту категорию, сменить название категории, блокировать категорию), а также удалить категорию.
Реализована также функция поиска семинара по нескольким критериям: Название семинара, Категория Семинара, Имя ведущего.

Архитектура проекта:

Браузер (1) → Apache (2) → MySQL (3) → Apache (4) → Браузер (5) 1. Отправка HTTP-запроса; 2. Запрос обрабатывается соответствующим контроллером на сервере; 3. От сервера идут запросы нужной информации к серверу БД; 4. Запрошенная информация поступает на сервер приложений, обрабатывается, средствами php, формируется html — страница, которая и отправляется в браузер; 5. Браузер отображает запрошенную страницу. Для просмотра видео (онлайн/оффлайн) используется jwPlayer, в качестве главного плеера, вместе с Flex модулем, представляющим собой плейлист. Плейлист отображает доступные для просмотра видео в уменьшенном варианте. Для записи и трансляции семинаров используется VLC Media Player + ffmpeg (получение видео с камер по протоколу rtsp, запись видео в файлы и параллельно с этим трансляция видеопотоков медиасерверу) в связке с медиасервером Erlyvideo (трансляция видео по rtmp протоколу). Камеры подключены к отдельному серверу и управляются удаленно, по протоколу http.

Сфера услуг:

Используемые технологии:

PHP 5.3 + Zend Framework 1.11.7, MySQL 5.1, Apache 2.2, VLC media player 1.1.3, Erlyvideo, Bash, FFmpeg (version SVN-N-32107-g876d1d7), x264 (version 3:0.116.2057M+git0ba8a9c-1), ActionScript 3.0, Flex 4.5, JavaScript, JWPlayer 5.7, HTML, CSS, XML
Загрузка