Быстрый старт Media Server¶
Эта статья познакомит вас с Flussonic Media Server. Прочитав ее, вы сумеете:
- Установить Flussonic Media Server
- Настроить и посмотреть поток
- Опубликовать видео на сервере
- Загрузить и проиграть файл
- Установка на облачный сервер Selectel
Note
Далее в документации мы будем приводить IP адрес и URL Flussonic Media Server (например, FLUSSONIC-IP). Вам необходимо заменять их на реальные IP адрес или URL вашего сервера.
Flussonic Media Server¶
Flussonic Media Server — это серверное программное обеспечение для видео стриминга, способное решать широкий ряд задач от захвата, транскодирования, записи архива и мультипротокольной раздачи видеоконтента (live и on-demand) по всему миру, до управления потреблением контента и видео потоками.
Мы продемонстрируем основные сценарии с помощью веб-интерфейса Flussonic. Однако если вы предпочитаете использовать API, смотрите наш справочник Flussonic API.
Установка Flussonic Media Server¶
Установка¶
Здесь приводится краткое описание установки, достаточное для быстрого старта Flussonic.
Чтобы попробовать Flussonic Media Server, нужен компьютер с Linux, подключенный к Интернету, и лицензионный либо триальный ключ. Триальный ключ можно запросить на этой странице
Основное требование — 64-разрядная операционная система. Мы рекомендуем операционную систему Ubuntu Server. Полный список системных требований см. здесь.
Note
Несмотря на то, что Flussonic Media Server будет работать и на Ubuntu Desktop, мы не рекомендуем ее к использованию, поскольку в Ubuntu Desktop присутствуют особенности с управлением, питанием и энергосбережением, имеется свой Network-manager и фоновые обновления, а также прочие отличия, которые могут сказаться на производительности. Также возможно, что некоторые сторонние ПО и драйвера на ней могут не работать.
Если подходящей системы или свободного сервера под рукой нет, то можно арендовать сервер в Selectel на время, чтобы попробовать Flussonic Media Server. Как это сделать, мы рассказали в подробной инструкции.
В результате вам надо иметь доступ к консоли Linux под пользователем root.
Чтобы установить Flussonic, выполните в командной строке Linux команду:
curl -sSf https://flussonic.com/public/install.sh | sh
Затем запустите Flussonic Media Server:
Теперь откройте в браузере веб-интерфейс администратора.
Первое открытие веб-интерфейса Flussonic (UI)¶
Веб-интерфейс Flussonic доступен по адресу http://FLUSSONIC-IP:80/
(замените FLUSSONIC-IP
на адрес вашего сервера).
На стартовой странице http://FLUSSONIC-IP:80/
Flussonic просит ввести логин, пароль администратора Flussonic и полученный лицензионный ключ.
Warning
Для активации с помощью лицензионного ключа и непрерывного использования Flussonic Media Server необходим постоянный доступ в Интернет. Подробнее см. на странице Использование лицензионного ключа.
Warning
Логин и пароль не должны содержать символов @, ;, #, [, \, /, =, $
Проверка установки¶
Проверить правильность установки Flussonic Media Server можно по адресу http://FLUSSONIC-IP:80/
, где FLUSSONIC-IP
— адрес того сервера, на который вы поставили ПО. Откроется главная страница веб-интерфейса к Flussonic.
Если веб-интерфейс не открылся, пожалуйста, смотрите более подробное описание установки в разделе Установка или свяжитесь с технической поддержкой Flussonic.
Читайте также:
- Более подробно об установке Flussonic Media Server читайте в разделе про установку.
Получение потокового видео¶
Flussonic Media Server может получать потоковое видео двумя основными способами: выступая в роли клиента или сервера.
В первом случае Flussonic Media Server сам обращается к источнику для получения с него видео (захватывает поток). Во втором – ожидает подключения, чтобы принять видео для публикации.
Захват потока¶
Источником видео может быть видеокамера, другой видеостриминговый сервер, специализированная программа, работающая c DVB-картой, и вообще любая программа, умеющая передавать видео по сети. Flussonic поддерживает все основные протоколы передачи видео.
Также Flussonic Media Server может сам генерировать поток fake://fake
, который можно использовать, например, для проверки работы сервера.
Чтобы добавить поток, перейдите в раздел Media > нажмите Add stream. Укажите имя потока (demo
) и URL-адрес источника (fake://fake
). Нажмите Create.
Увидеть результат можно, открыв в браузере страницу http://FLUSSONIC-IP:80/demo/embed.html
.
Читайте также:
- Подробнее о ссылках для проигрывания см. здесь.
- Подробнее о прямом эфире см. в разделе о потоковом вещании.
Прием публикации¶
Публикацией называется ситуация, когда к Flussonic Media Server подключается другая программа и инициирует передачу ему потокового видео. Чтобы это было возможно, в Flussonic Media Server должно быть сконфигурировано место на сервере, в которое разрешена публикация.
Место публикации может иметь статическое или динамическое имя:
- Статическое имя используется, если у вас один поток из одного источника, и публикация идет более или менее постоянно. В случае со статическим именем, достаточно указать специальную опцию
publish://
в качестве URL-адреса источника при создании потока во Flussonic. В источнике публикации укажите одну из ссылок Publish links со вкладки Overview в профиле созданного потока. - Динамическое имя понадобится, если у вас много постоянно меняющихся источников публикации, и вы заранее не знаете сколько и каких потоков нужно будет принять. Для публикации в поток с динамическим именем вам нужно настроить шаблон (template) с префиксом (prefix) для публикации. В одно место публикации можно будет опубликовать несколько потоков. Префикс будет использоваться для формирования имени потока. Общая схема имени потока такая:
http://FLUSSONIC-IP:80/PREFIX/STREAM_NAME
, причемSTREAM_NAME
задается во внешнем приложении.
Настроим публикацию с динамическим именем:
- Чтобы создать шаблон, перейдите в раздел Media > Templates > нажмите Add template. Укажите имя шаблона (например,
live-mylive
) и специальную опциюpublish://
в качестве URL-адреса источника. Нажмите Create. - Затем нажмите имя созданного шаблона и в разделе Template settings укажите префикс (
mylive
). Нажмите Save and apply to streams. -
Задайте URL потока в источнике публикации (внешнем приложении). Если вы указали в конфигурации префикс публикации
mylive
, то при настройке источника публикации в URL вы должны указывать имя потока, начинающееся сmylive/
, например,mylive/bunny
.Давайте передадим видео по протоколу RTMP. В качестве источника мы будем использовать файл
/opt/flussonic/priv/bunny.mp4
(этот файл уже включен в дистрибутив). Запустите следующую команду:
/opt/flussonic/bin/ffmpeg -re -i /opt/flussonic/priv/bunny.mp4 -c copy -f flv rtmp://FLUSSONIC-IP:1935/mylive/bunny
Начнется публикация. На вкладке Media появится поток для публикации, который был автоматически сгенерирован из шаблона:
Чтобы посмотреть поток, откройте в браузере адрес:
http://FLUSSONIC-IP:80/mylive/bunny/embed.html
Читайте также:
- Все о публикации на Flussonic см. в разделе Публикация видео.
Проигрывание файлов¶
В этом разделе мы научимся проигрывать файлы с помощью Flussonic. Для проигрывания файлов Flussonic использует службу VOD (Video On Demand) — неотъемлемую часть услуг, связанных с передачей видео. Чтобы проиграть файл, вам необходимо:
-
Создать VOD-локацию, чтобы Flussonic Media Server знал, какой путь в запросах на проигрывание файла будет соответствовать файлу на диске или в HTTP хранилище. Чтобы добавить VOD-локацию, перейдите в раздел Media > VODs > нажмите Add VOD > введите VOD name (например,
Movies
) и File directory path (/storage
) > нажмите Create.Теперь Flussonic Media Server будет знать, что при обращении к
/movies/bunny.mp4
нужно будет взять файл/storage/bunny.mp4
. Другими словами, всё после совпавшего префиксаmovies
будет отрезано и "подклеено" к указанному пути на диске (который в нашем случае начинается со/storage
). -
Теперь можно добавить файл в каталог
/storage
. Перейдите в раздел Media > VODs > нажмите имя созданной VOD-локации (Movies
) > browse > Upload Files > выберите файл для загрузки (bunny.mp4
).Note
На сервере Flussonic есть готовый файл
/opt/flussonic/priv/bunny.mp4
(входит в дистрибутив), вы можете просто скопировать его в каталог/storage
или скачать свободно доступный клип Big Buck Bunny. -
Проверить, как проигрывается добавленный файл, можно на странице
http://FLUSSONIC-IP:80/movies/bunny.mp4/embed.html
.
Чтобы посмотреть все остальные доступные ссылки для проигрывания файла, перейдите в раздел Media > VODs > нажмите имя созданной VOD-локации (Movies
) > browse > имя файла. Вы увидите встроенный плеер для проигрывания файла, код HTML для использования в плеере на вашем сайте или в приложении и список ссылок для проигрывания файла по разным протоколам.
Читайте также:
- Подробнее о файлах см. в разделе про работу с видеофайлами
Установка Flussonic Media Server на облачный сервер Selectel¶
В этом разделе мы расскажем, как создать облачный сервер на платформе Selectel и запустить на нем Flussonic.
Это займет у вас около 10 минут, даже если вы впервые работаете в консоли компьютера.
Создание облачного сервера¶
Cоздайте аккаунт на сайте Selectel.
В личном кабинете в меню слева выберите «Облачная платформа» — «Серверы» — «Создать сервер».
Задайте конфигурацию сервера. Для тестирования возможностей Flussonic мы рекомендуем следующие настройки:
* Ubuntu 24.04 LTS 64-bit,
* фиксированная конфигурация, Standart,
* 2 vCPU, 4 ГБ RAM,
* универсальный SSD-диск размером 5 ГБ.
Остальные поля можно оставить по умолчанию.
Добавление SSH-ключа¶
При создании сервера вам также нужно добавить SSH-ключ. Если вы уже создавали его ранее, скопируйте и вставьте во всплывающее окно публичный ключ.
Если ключа нет, нужно его создать. Откройте консоль своего компьютера («Терминал» для MacOS или cmd.exe для Windows).
Введите в командной строке:
ssh-keygen -t
Где <key_type>
— тип SSH-ключа: еd25519, rsa, ecdsa или dsa. Например, для rsa:
ssh-keygen -t rsa
Вы увидите сообщение о выборе директории для хранения пары ключей. Пример для rsa-ключа:
Enter file in which to save the key (~/.ssh/id_rsa):
Чтобы оставить директорию для хранения ключей по умолчанию, нажмите Enter. Если вы хотите выбрать другую директорию, введите ее в формате /path/to/id_rsa
и нажмите Enter. Например,
/Users/IvanPupkin/.ssh/id_rsa
Дождитесь сообщения о том, что ключи сгенерированы.
Будет создано два файла: id_rsa
(приватный ключ) и id_rsa.pub
(публичный ключ). В терминале появится отпечаток (fingerprint) ключа и его изображение:
Your identification has been saved in ~/.ssh/id_rsa
Your public key has been saved in ~/.ssh/id_rsa.pub
The key fingerprint is:
The key's randomart image is:
Теперь вам нужно узнать публичный SSH-ключ, который просит у вас Selectel. Введите команду
cat <path>
где <path>
— путь до публичного ключа. В нашем примере это ~/.ssh/id_rsa.pub
.
cat ~/.ssh/id_rsa.pub
Вы увидите ключ. Скопируйте его от начала до конца и добавьте его для сервера Selectel.
Далее вы увидите стоимость тарифа для сервера с выбранной конфигурацией. Можно посмотреть как цену за час, так и стоимость аренды сервера на месяц. Selectel списывает деньги только за фактическое использование: если вы создадите сервер, протестируете работу Flussonic в течение двух часов, а потом удалите сервер, деньги спишут только за два часа.
Пополните кошелек на нужную сумму и создайте сервер.
Скачивание и запуск Flussonic¶
Теперь в разделе «Серверы» вы видите новый сервер и его IP-адрес.
Откройте консоль сервера, нажав на кнопку «Открыть консоль» справа от IP-адреса.
Залогиньтесь под пользователем root. Логин и пароль указаны прямо над консолью.
Введите логин root. Скопируйте и вставьте пароль (он не отобразится, поэтому просто нажмите Enter после вставки).
Далее выполните команду:
curl -sSf https://flussonic.com/public/install.sh | sh
Начнется загрузка Flussonic.
После появления сообщения Start Flussonic
введите команду:
service flussonic start
Сервер запущен.
Активация лицензионного ключа¶
Откройте в своем браузере веб-интерфейс Flussonic по адресу http://FLUSSONIC-IP:80/
, где вместо FLUSSONIC-IP
необходимо указать IP-адрес вашего сервера.
На открывшейся странице Flussonic просит ввести логин, задать пароль администратора и ввести лицензионный ключ, который вы получили в личном кабинете.
Для запуска первых стримов переходите к настройке и просмотру потоков.