Реализация многих проектов, в которых планируется организация видео-вещания должна изначально строится таким образом чтобы система была масштабируема. Для этого требуется сразу подобрать подходящий медиа-сервер (Wowza, Nimble Streamer) или CDN, определиться с протоколами вещания и не только.
Системы видео-вещания. Проектирование
В этой статье я публикую список важных вопросов, на которые у вас должны быть ответы, желательно до того момента, когда будут расходоваться средства на разворачивание системы.
Публикация медиа-потоков
- Примерное пиковое число отправляемых на публикацию медиа-потоков, на которое должна быть рассчитана серверная инфраструктура на начальном этапе проекта?
- Какие битовые скорости будут у публикуемых потоков, а также поддерживаемые аудио и видео кодеки?
- Определите протоколы (RTMP/RTSP/MPEG-TS), используемые клиентами для публикации медиа-потоков?
- Нужна ли аутентификации пользователей (логин/пароль) для публикации медиа-потоков?
- Какие видеокодеры будут использоваться для публикации потоков? Например, могут использоваться: WireCast, XSplit, FMLE, vMIX и др. Для мобильных устройств: GoCoder, Larix Broadcaster.
- Какие алгоритмы и механизмы масштабирования системы при увеличении числа публикуемых медиа-потоков, а также способы отказоустойчивости будут применяться?
Обработка медиа-потоков
- Будет ли осуществляться трансрейтинг/транскодинг входящих медиа-потоков в несколько битрейтов различного качества для поддержки работы технологии адаптивного битрейта?
- Будет ли поддерживаться технология DVR? Если да, то глубина записи DVR для всех пользователей будет одинаковая или нет?
- Будет ли осуществляться запись живых трансляций по запросу пользователя?
- Планируется ли раздача видео по запросу (VOD)? Что будет использоваться в качестве хранилища видео файлов: системы хранения данных, приватное облачное хранилище (например CEPH), аренда облачного хранилища, просто хранение файлов на различных серверах?
Доставка медиа-потоков
- Какие устройства будут использовать пользователи для просмотра медиа-потоков (Windows, Android, IOS, Smart TV)?
- Какие протоколы доставки медиа-потоков будут использоваться (MPEG-DASH, HLS, RTMP, HDS)?
- Нужна ли защита передаваемого контента?
- Доставка медиа-потоков конечным пользователям будет осуществляться по собственной серверной инфраструктуре или предполагается использование стороннего CDN провайдера? Если доставка медиа-потоков будет осуществляться по собственной серверной инфраструктуре, то необходимо обратить внимание на вопросы масштабирования, балансировки нагрузки и ГЕО балансировки.
- Какой видеоплеер будет использоваться для просмотра медиа-потоков на сайте?
- Будет ли встраиваться реклама в передаваемые видео-потоки, если да, то будет использоваться собственный рекламный сервер или арендоваться сторонний?
Зная ответы на эти вопросы вы сможете сразу пойти по правильному пути. Поэтому, время на проектирование системы в данном случае полностью оправдано, так как потом вы сможете сэкономить на этом очень много средств и времени. Еще одна полезная статья по этой теме: Разработка системы доставки мультимедийных потоков. С чего начать?
Всего хорошего!
Если у вас появились какие-то вопросы по медиа-серверам, пишите нам. Если вам нужно что-то настроить или получить консультацию по медиа-серверам и системам видео-вещания, также можете обращаться ко мне и нашей команде. Разную полезную информацию на данную тему вы можете найти в нашем Справочнике по видеотрансляциям.
Приглашаю всех подписаться на новости моей публичной страницы ВКонтакте, ее адрес http://vk.com/itmultimedia . Буду рад видеть Вас в своих подписчиках!
Комментарии: