С вашим собственным потоковым сервером вы полностью контролируете передачу своего контента. Это легко решается через веб-сервер благодаря протоколу HTTP Live Streaming (HLS).
- Как работает HTTP-стриминг?
- Зачем вам собственный потоковый сервер?
- Технические характеристики оборудования для потоковой передачи HLS
- Мощность процессора (ЦП)
- Оперативная память (ОЗУ)
- Хранение на жестком диске (HDD/SDD)
- Пропускная способность
- Разместите потоковый сервер HLS в IONOS
- Учебник: Настройка потокового сервера
- Шаг 1: Установите соединение с сервером
- Шаг 2: Установите Nginx
- Шаг 3. Настройте конфигурацию
- Шаг 4: Освободите порт
- Шаг 5: Запустите прямую трансляцию HTTP
- Шаг 6: Интегрируйте поток на веб-сайт
Как работает HTTP-стриминг?
Первоначально этот процесс был разработан Apple для собственных устройств, но сейчас HTTP Live Streaming (HLS) является одним из самых известных протоколов для потоковой передачи аудиовизуального мультимедиа в Интернете. Поскольку передача осуществляется через HTTP (один из краеугольных камней Интернета), любое устройство с доступом в Интернет может обрабатывать HLS.
При использовании HLS небольшие пакеты генерируются из потока данных во время потока. Затем их можно быстро загрузить с конечного устройства и соединить вместе. Это обеспечивает быструю передачу — в лучшем случае зрители потока ничего не заметят о разделении. Для обеспечения правильной композиции видео часть HLS также является индексным файлом. Это сообщает конечному устройству правильный порядок пакетов данных.
Разделение видео имеет еще одно преимущество: качество видео можно регулировать во время трансляции без необходимости полной перезагрузки потока. Следующий пакет просто загружается в более высоком или более низком качестве.
Затем вы можете интегрировать поток в свой собственный сайт — и это большое преимущество HLS. Плеер, отображающий поток, можно легко установить с помощью HTML5.
Зачем вам собственный потоковый сервер?
Потоковое вещание становится все более популярным — и не только благодаря таким порталам фильмов и сериалов, как Netflix или Amazon. Частные лица и небольшие компании также осознают потенциал прямых трансляций. Для компаний передачи интересны для презентации продуктов, например. Вебинары или семинары также можно проводить в потоковом режиме.
Технические характеристики оборудования для потоковой передачи HLS
Чтобы настроить подходящее серверное решение, вы должны сначала узнать, какие аппаратные требования предъявляет к нему HLS Streaming.
Мощность процессора (ЦП)
Вам не нужна большая вычислительная мощность, особенно если сервер потоковой передачи используется только для распределения потока данных. 2 ядра, каждое по 2 ГГц, например, должно быть достаточно для небольших проектов. Чтобы быть готовым к растущим требованиям, рекомендуется 4 ядра ЦП.
Оперативная память (ОЗУ)
Оперативная память в основном используется для кэширования во время потоковой передачи. 2 ГБ оперативной памяти уже достаточно для небольших проектов. Если вы хотите реализовать более крупные проекты, вам следует перейти на 4 ГБ.
Хранение на жестком диске (HDD/SDD)
Вам вряд ли понадобится место для хранения файлов сервера. В принципе, веб-сервер бережлив. 10 Гб уже может хватить. Тем не менее, мы рекомендуем быстрое хранилище SSD, чтобы на этом этапе не возникало узких мест. Таким образом, требования к хранению в основном связаны с видеофайлами, которые вы хотите сохранить на сервере. Поэтому, если вы записываете свой поток на жесткий диск сервера, вам потребуется гораздо больше места для хранения.
Пропускная способность
Быстрое соединение имеет первостепенное значение при потоковой передаче. Пропускная способность всегда должна быть достаточной, чтобы зрителям не приходилось сталкиваться с плохим качеством изображения или длительной загрузкой. Размер потока данных, который должна передавать серверная инфраструктура, зависит от качества видео и количества зрителей. Домашнего интернет-соединения для этого должно быть недостаточно, поэтому вам обязательно стоит запустить сервер потоковой передачи в профессиональном дата-центре.
Разместите потоковый сервер HLS в IONOS
В портфеле IONOS есть различные серверные решения:
- Выделенный сервер : Собственное оборудование с процессорами AMD или Intel и поминутная оплата
- vServer : виртуализация на высшем уровне — для независимости и безопасности
- Облачный сервер : очень гибко масштабируется и подходит для самых разных приложений.
Сервера отличаются не только оборудованием, но и моделью биллинга. В то время как vServer всегда связан с ежемесячными фиксированными затратами, выделенные серверы и облачные серверы оплачиваются поминутно. Высвобождение ресурсов на этих моделях также снижает стоимость. Облачный сервер также обладает преимуществом большой гибкости. Неважно, объем памяти, оперативная память или количество ядер процессора — вы резервируете ровно столько ресурсов, сколько вам действительно нужно.
Наша рекомендация для вашего потокового сервера : если вы только начинаете использовать свой потоковый сервис или в любом случае ожидаете небольшой проект, мы рекомендуем Cloud Server M. При этом у вас есть два ядра процессора и 2 ГБ оперативной памяти. Кроме того, имеется быстрое хранилище SSD объемом 60 ГБ. Большое преимущество: как только ваши требования увеличатся, вы можете просто заказать дополнительные ресурсы. Вы также можете решить для себя, предпочитаете ли вы работать с Windows или Linux.
Учебник: Настройка потокового сервера
Вы можете настроить свой собственный сервер для прямой трансляции HTTP всего за несколько шагов. Необходимое для этого программное обеспечение находится в свободном доступе в Интернете. В этом примере мы используем сервер Windows с программным обеспечением Nginx.
Шаг 1: Установите соединение с сервером
Для того, чтобы иметь возможность работать на вашем сервере, вы должны сначала установить к нему соединение. В IONOS войдите в свою учетную запись пользователя, а затем вызовите облачную панель (вы можете найти эту функцию в области «Сервер и облако»). В разделе » Подключение к удаленному рабочему столу » есть ссылка для скачивания. Щелкните здесь, чтобы загрузить данные, необходимые для подключения.
В Windows вы можете просто запустить загруженный файл, дважды щелкнув его, и вы попадете в программу «Подключение к удаленному рабочему столу». Там вам нужно только ввести пароль, который вы также можете найти в облачной панели. Откроется окно, в котором показан рабочий стол сервера.

В облачной панели IONOS вы найдете информацию о том, как подключиться к вашему будущему потоковому серверу.
Шаг 2: Установите Nginx
Для потоковой передачи HTTP используется стандартный веб-сервер на базе Nginx. При загрузке убедитесь, что программное обеспечение содержит модуль RTMP — он необходим для передачи — и предназначено для использования с сервером Windows.
Разархивируйте пакет программного обеспечения в любое место по вашему выбору, затем откройте командную строку Windows или Windows PowerShell и перейдите во вновь созданную папку Nginx. Запустите веб-сервер с помощью следующей команды:
start nginx
Сначала вы не заметите никаких изменений. Чтобы убедиться, что сервер действительно работает, вы можете посмотреть свой собственный IP-адрес в браузере. Теперь здесь должно быть видно сообщение от веб-сервера.
Шаг 3. Настройте конфигурацию
На следующем шаге вам нужно настроить конфигурацию веб-сервера. В соответствующей папке вы должны найти файл nginx.conf. В конце добавьте следующую часть RTMP :
rtmp { server { listen 1935; chunk_size 4000; application show { live on; hls on; hls_path /nginx/hls/; hls_fragment 3; hls_playlist_length 60; deny play all; } } }
Вы можете сами выбрать путь для своего HLS-потока. Название «приложения» (здесь «показать») полностью зависит от вас. Важно только то, что вы продолжаете последовательно использовать конфигурации в других местах.
Вы также должны хранить настройки HTTP в файле конфигурации:
http { include mime.types; default_type application/octet-stream; sendfile off; server_names_hash_bucket_size 128; ## Start: Timeouts ## client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; send_timeout 10; keepalive_requests 10; ## End: Timeouts ## server { listen 80; server_name localhost; location /hls { add_header Cache-Control no-cache; if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Max-Age' 1728000; add_header 'Content-Type' 'text/plain charset=UTF-8'; add_header 'Content-Length' 0; return 204; } types { application/vnd.apple.mpegurl m3u8; video/mp2t ts; } root /nginx/; } }
Сохраните файл и перезапустите веб-сервер. Самый простой способ сделать это — остановить процесс или процессы Nginx в диспетчере задач, а затем снова запустить сервер с помощью команды.
Шаг 4: Освободите порт
Чтобы ваш поток был загружен, вам нужно открыть порт. С IONOS это также возможно через облачную панель. В настройках брандмауэра (в разделе «Сеть») необходимо создать новую запись и включить TCP-порт 1935. Вам также следует открыть порт 80 для HTTP, если ваш сервер еще не открыл этот порт. Вы также предварительно указали эти два порта в файле конфигурации Nginx.

Освободите соответствующие порты, чтобы передача могла работать.
Шаг 5: Запустите прямую трансляцию HTTP
Для прямой трансляции вам по-прежнему нужно правильное программное обеспечение. Программное обеспечение Open Broadcaster (OBS) особенно популярно среди стримеров. Затем введите туда следующий адрес:
rtmp://<ip address>/show</ip>
На этом этапе вы должны ввести IP-адрес сервера. Клиенты IONOS могут найти их, например, в Cloud Panel. В целях тестирования вы также можете ввести localhost вместо IP-адреса.
Шаг 6: Интегрируйте поток на веб-сайт
Теперь вы можете получить доступ к своему потоку с помощью медиаплеера, такого как VLC. Однако HLS позволяет предлагать поток через веб-сайт. Для этого необходимо либо адаптировать существующий веб-сайт, либо создать новый HTML-документ. Веб-сервер Nginx уже поставляется с HTML-документом: index.html. Введите туда следующий исходный код:
<!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title>HLS</title> <link href="js/video-js.css" rel="stylesheet"> <script src='js/video.min.js'></script> <script src="js/videojs-http-streaming.js"></script> </head> <body> <div align="center"> <video-js id="live_stream" class="video-js vjs-default-skin vjs-big-play-centered" controls preload="auto" autoplay="true" width="1280" height="720" poster="/poster.jpg"> <source src="/hls/test.m3u8" type="application/x-mpegURL"> <p class='vjs-no-js'> To view this video please enable JavaScript, and consider upgrading to a web browser that <a href='https://videojs.com/html5-video-support/' target='_blank'>supports HTML5 video</a> </p> </video-js> <script> var player = videojs('live_stream'); player.play(); </script> </div> </body> </html>
Это рудиментарный веб-сайт, который отображает только проигрыватель Video.js с вашим потоком. Если вы хотите сделать трансляцию доступной для других, вам следует добавить дополнительный контент и сделать веб-сайт более привлекательным. Б. через CSS. Или вы встраиваете часть в существующий, уже оформленный веб-сайт. Важно, чтобы путь к видеофайлам был указан правильно: . Если вы хотите дать папке или файлу другое имя, вы также должны изменить его здесь.
Для того, чтобы плеер заработал, вам еще потребуются соответствующие файлы JavaScript и CSS. Их можно найти в официальном репозитории Video.js на GitHub. Поместите их в ту же подпапку, что и HTML-документы. Теперь на сайте виден видеоплеер с вашим стримом.








