Polytech-soft.com

ПК журнал
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Потоковое вещание в сеть

Потоковое вещание (Live streaming). Общая информация

В этой статье обобщим информацию по такому популярному на сегодняшний день термину, как потоковое вещание. Рассмотрим основные компоненты и технологии, которые используются для создания Live streaming. Познакомится с основными серверами и кодерами.

Итак, начнем с короткого определения

Потоковое вещание – это доставка мультимедийных потоков информации (видео, аудио) удаленным пользователям, в реальном режиме времени.

Также можно встретить следующие обозначения это термина:

  • Живая трансляция.
  • Потоковое видео.
  • Линейное вещание.
  • Прямая трансляция в Интернет.
  • Трансляция в реальном режиме времени.
  • Потоковая передача мультимедийного контента.
  • Онлайн трансляция.

Примеры потокового вещания

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

  • Прямые видеотрансляции футбольных матчей.
  • Трансляции выступлений конференций.
  • Трансляция пользователем, в сеть Интернет, своего собственного ТВ-канала, например, изображения клетки, с любимым питомцем — попугаем.

Некоторые характеристики потокового вещания

  • Протоколы передачи (MPEG-DASH, HLS, MPEG-TS (UDP), RTMP, RTSP/RTP, HTTP и др.).
  • Разрешение видео.
  • Кодек.
  • Задержка воспроизведения.
  • Битрей потока.

Битрей потока может быть один для всех пользователей, например 500Кбит/сек, но лучше использовать технологии мультибитрейтного или адаптативного вещания, когда битрейт будет изменяться в зависимости от различных условий или характеристик сети. На сегодняшний день все новые сервера поддерживают технологии переключения битрейтов.

Конечные пользователи, в зависимости от ситуации, могут получать потоковое видео на разные устройства

  • Компьютер.
  • Мобильное устройство.
  • Телевизор с доступом в Интернет.

Источники потокового видео

Рассмотрим на примере трансляции с камеры. Для того чтобы организовать отправку изображения с камеры, необходимо в первую очередь, захватить и кодировать видео сигнал с камеры кодером. Далее кодер отправляет поток на медиа сервер, к которому уже подключаются удаленные пользователи и запрашивают трансляцию для просмотра.

Примеры кодеров.

  • Flash Media Live Encoder.
  • Telestream WireCast.
  • Haivision KulaByte Encoders.
  • Microsoft Expression Encoder Pro.
  • Flash web приложение.

Примеры Медиа серверов

  • Adobe Flash Media Streaming Server.
  • Wowza Streaming Server.
  • Red5 (бесплатный).
  • Erlyv >Подробнее почитать про медиа сервера вы можете в одной из моих статей.

Плееры для просмотра потокового вещания

  • Flash медиа плеер.
  • HTML5 видео плеер.
  • VLC плеер.

Популярные видео кодеки

  • H.264, H.263, VP6.

Популярные аудио кодеки

  • MP3, AAC.

Рассмотрим отличие мультимедийных потоков Видеочата от Потокового видео

По сути, видеочат — это множество одновременных взаимодействий по средствам передачи потокового видео. Но, как правило, Live streaming не предусматривает обратной связи через передачу видео и аудио с удаленными пользователями. В некоторых случаях пользователи все же могут влиять на сюжет видеотрансляции. Например, если это трансляция конференции, пользователь, как правило, может задавать вопросы в текстовом чате или по электронной почте, которые просматриваются и передаются выступающему человеку модераторами онлайн трансляции.

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

Если вам нужно что-то настроить или получить консультацию по медиа-серверам и системам, можете обращаться ко мне и нашей команде через форму контактов.

До встречи! Всем хорошего настроения!

VLC: Стрим и Стрим-Сервер #2


В этой части мы рассмотрим «Простой Стриминг» через GUI для домохозяек, а для примера нам послужат ситуации:
1. Когда мы выступаем в роли локального транслятора, для людей с лимитированным интернетом, с отключенным интернетом, или для тех, кто считается с вашим вкусом и хочет смотреть то, что вы им порекомендуете.
3. Если вы захотите передавать видео со своей вебкамеры, просто цифровой камеры и любых других подобных устройств, через DirectShow.

Комментарии:
1. Для удобства, в случае если вы будете засовывать множества файлов, советую заранее подготовить плейлист в формате M3U.
2. В последних версиях VLC, стрим можно смело настроить на вещание практически по всем протоколам сразу, если конечно это потребуется.
3. Для отладки и изучения, рекомендую начинать работу с VLC используя модуль «logger»

vlc -extraintf logger
4. Для наложения логотипа на стрим используйте фильтр logo, лучше в формате PNG.

5. В качестве альтернативных плееров для воспроизведения потоков с VLC брали Windows и Winamp Media Player.

Методы вывода потоков

Настройка входящих данных

Для всех типов вещание начальный GUI-диалог выглядит одинаково:

File: Достаточно выбрать плейлист или любой файл (Аудио/Видео), а зависимости от того, что вы собираетесь вещать в сеть.
Disk: DVD. AudioCD. VCD, здесь же можно отключить вывод меню, выбрать привод, и главу.
Network: здесь мы можем выбрать любой протокол и адрес входящего потока, который будем ретранслировать/конвертировать/сохранять (например с Youtube), Также вчера было проверено, что VLC отлично справляется с RTMP потоками, так что можете вещать видео со своей веб-камеры, поток которой идет на любой сервис управляемый red5.

Capture Device: Здесь можно выбрать, при наличии такового, любое устройство которое работают через Direct Show, Камеру, Вебкамеру, Цифровое или Спутниковое ТВ, а также Ваш Рабочий стол (Будет вещаться все, что происходит у вас на экране монитора).

После того как вы определились с выбором входящего потока, достаточно нажать кнопку «Stream». После чего откроется новое диалоговое окно, которое одновременно работает как настройка стриминга и/или конвертации, и конечный результат зависит от внесенных здесь настроек. Нажимаем кнопку Next, или вкладку Destination.
Как показано на рисунке, и как я уже упоминал, мы можем вести трансляции по всем поддерживаемым протоколам одновременно, в данном примере я показываю пример трансляции по HTTP/MMS.
Выбираем:
New Destination — HTTP, нажимаем Add, вбиваем адрес (0.0.0.0, или смотрим по ipconfig), указываем порт. Если нам нужны еще протоколы, то просто нажимаем «+».

Transcoding Options: Выбираем метод транскодинга из готовых профилей, или создаем свой (а также можно пустить поток без обработки для клиентского VLC).

Читать еще:  Локальная сеть между двумя ноутбуками

Наморочавшись с кодеками, я пришел к выводу, а потом почитав в сети, я понял что не я один, — передача видео стрима по протоколам mms и http с тех.данными:
Инкапсуляция — ASF
Кодек — DivX3
Ширина — 320 (для уменьшения нагрузки)
Высота — 200 (для уменьшения нагрузки)
Аудио — mp3
Битрейт — 96
cамая оптимальная, для передачи на большинство плееров.

При таких раскладах, протестировав на 10 клиентах, загрузка процессора была

Этот же метод можно использовать для людей у которых вообще нет медийного плеера, для просмотра/прослушивания стрима с вашего веб сайта (локального, или если у вас Внешний IP, то этот метод так же сработает на сайт в сети интернет).

Для этого создайте документ с расширением *.asx, например stream.asx и поместить туда код:

Где HREF, — Ваш IP и порт. Поместите этот файл на сервер, например в папку /stream/, а в html файле, где бы вы хотели отобразить стрим, напишите следующее:

В случае же если у клиентов стоит Mplayer или VLC, то можно поиграть с другими типами инкапсуляций и кодеков, таких как TS и h264 соответственно.

В таком случае мы получим меньшую нагрузку на систему, большую на канал, но при этом клиенты получают оригинальное видео.

Следующая/последняя вкладка Options не обязательна, в нее стоит заглянуть только для тех кто будет настраивать Анонсы, или захочет посмотреть сгенерированный скрипт, который можно будет в дальнейшем использовать из командной стройки, так же полезен если вы будете запускать вещания по «Крону». О том как использовать я уже писал.
Нажимаем последний раз «Stream» и приглашаем друзей.

Выводы: Качество стрима и его приема может быть достигнуто только при наличии VLC или Mplayer с обоих сторон, так как в случае с VLC не потребует заморочек с плагинами и кодеками, Все, что он стримает по любому протоколу, он быстро и безболезненно подхватывает и на стороне клиента, вне заисимости от кодеков и инкапсуляций и прочих раздражающих факторов. Данный вывод основан только на том факте, что рассматриваемый метод хорош для «домохозяек», и людей которые не умеют пользоватся консолями и командными строками. В следющей части мы попробуем раскрыть тему и возможности вещания на основе «Command Line», которые увеличивают спектр возможностей по стрмингу.

PS: Если возникают проблемы с доступностью из сети,
1. Проверьте Фаервол, Прокси, Файл C:****VideoLANVLChttp.hosts на наличие раскомментированных строк

UPD: Для передачи потока по UDP unicast
со стороны сервера необходимо указать IP и порт назначения. Например:
Сервер (192.168.0.1), Клиент (192.168.0.2)
На сервере в настройках стриминга указать
Media — Stream — UDP, 192.168.0.2:1234
У клиента для просмотра потока:
Media — Open Network Stream — UDP, @:1234

UDP Multicast
В multicast, стрим вещается на multicast IP адреса (IP адреса зарезервированные для этих целей, диапазон которых от 224.0.0.0 до 239.255.255.255). Затем, любая машина в сети, может присоединится к multicast группе, посылая запрос в сеть, автоматически получит транслируемый поток.

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

Читать еще:  Трансляция web камеры в сеть

Активация multicast, происходит также как в случае с unicast, только во вкладке Options необходимо указать количество TTL* (например 50) IP пакетов, Это означает, что multicast поток сможет пересекать 50 маршрутизаторов.
* — Time To Live
А со стороны клиента, достаточно просто открыть поток в любом плеере который поддерживает multiсast и в строке имени потока указать
udp://@_IP_:port

Более подробно multicast мы рассмотрим в теме продвинутого стриминга с использованием командной строки и телнета

Потоковое вещание через VLC

VLC — это известный медиаплеер, который поддерживает огромное количество возможностей и может работать в Windows, Linux и MacOS. Кроме воспроизведения видео, вы можете записывать экран, открывать различные интернет-источники, и даже транслировать свое видео в сеть. Можно настроить потоковое видео VLC для нужного файла, экрана или любых устройств захвата.

В этой статье мы рассмотрим как настроить потоковое вещание через VLC. Поговорим про настройку программы, а также подробно рассмотрим все особенности.

Как работает потоковое видео?

В наши дни потоковое воспроизведение видео уже вошло в привычку большинства пользователей. Сервер ожидает соединения на определенном порту, а затем всем подключившемся клиентам передает определенный участок видео. Вы можете настроить вещание в локальную сеть для ваших устройств, передачу на телевизор, плеер или смартфон.

Воспроизведение потокового видео поддерживается большинством плееров для компьютеров. Что касается воспроизведения с других устройств, то вам будет необходимо знать IP адрес вашего компьютера. Вы можете узнать IP адрес в Linux с помощью команды терминала:

А в Windows выполните в командной строке:

Теперь перейдем к тому как настроить потоковое вещание через VLC.

Потоковое вещание VLC

Прежде всего, программа должна быть установлена на вашем компьютере. Если вы еще не установили VLC используйте такую команду в Ubuntu:

sudo apt install vlc

Или же скачайте установщик на официальном сайте для своей операционной системы. Когда программа установлена, мы можем перейти к тому как настраивается трансляция через vlc.

Сначала запустите программу, и если это был первый запуск, то вам нужно принять лицензию:

Затем откройте меню Медиа и выберите пункт Открыть устройство захвата:

Затем перейдите на вкладку Файл, и выберите файл, который вы собираетесь транслировать с помощью кнопки Добавить:

Далее нажмите на стрелку вниз около кнопки Воспроизвести, затем выберите Поток:

В открывшемся окне прочитайте информацию и нажмите Следующий:

Затем нужно выбрать способы вещания в сеть. В строчке Новое назначение выберите HTTP. Затем выберите порт и url по которому будет открываться поток. Данные лучше оставить по умолчанию:

На следующей вкладке отметьте Включить перекодирование, в строчке профиль выберите Video — H.264 +MP3 (MP4):

В следующем окне вы можете настроить различные параметры ffmpeg для потока если это нужно, затем осталось нажать кнопку Поток, чтобы запустить вещание:

Если все прошло успешно появиться главное окно VLC с индикатором воспроизведения, начнется потоковое вещание VLC:

Дальше вы можете проверить работает ли передача видео vlc с помощью mplayer:

Точно также вы можете подключиться к передачи из другого компьютера указав ip адрес, который вы узнали в первом пункте, перед установкой. Поскольку это живой поток, а не воспроизведение из файла, то вы не можете поставить на паузу, использовать ускоренную перемотку.

Из основного компьютера вы можете воспроизводить не один файл, а целые списки воспроизведения, можно добавлять несколько потоков, перезапускать потоки, контролировать позицию воспроизведения. Все что вы будете делать на основном устройстве отразиться на других, поскольку выполняется потоковое вещание vlc. Можно транслировать не только файлы, но и видео с различных источников захвата, например, веб-камеры, микрофона или даже экран.

VLC поддерживает сетевую передачу про протоколах HTTP и RTSP. Вы можете использовать различные плееры для приема потокового видео, например Kodi поддерживает HTTP и даже RTSP.

Выводы

В этой статье мы рассмотрели как настроить потоковое видео через vlc, а также как воспроизвести потоковое видео. Теперь вы можете транслировать потоковое видео на свои устройства. А вы используете потоковое видео? Напишите в комментариях!

Трансляция потокового видео и аудио по Интернету с помощью VLC Media Player

Самый простой, к тому же, бесплатный способ передачи видео или аудио по Интернету – это использование возможностей облачных хранилищ. Медиафайл загружается в «облако», а ссылка на него передаётся получателю. Некоторые из облачных хранилищ, как, например, Microsoft OneDrive или Яндекс.Диск, даже позволят воспроизвести этот медиафайл в окне браузера без скачивания. Причём для этого получателю ссылки не потребуется ни регистрация в «облаке», ни авторизация в нём, как этими процедурами усложнены соцсети, где легко и просто медиафайлы передаются только кругу пользователей внутри каждой отдельной соцсети. Но бывают такие случаи, когда получатель либо не должен получить информацию в виде файла как конечного продукта, либо вес файла настолько огромен, что загружаться в «облако» он будет очень долго, тогда как необходимость в его передаче по Интернету стала здесь и сейчас. Альтернативой передачи медиаконтента по Интернету без необходимости закачивания отправителем и возможности скачивания получателем видео- и аудиофайлов является процесс потоковой трансляции, он же процесс передачи медиаданных по сети в реальном времени.

Читать еще:  Http вконтакте социальная сеть

Потоковая передача медиа через Интернет предусматривается штатным функционалом Windows. Штатный проигрыватель Windows Media Player позволяет настроить потоковую передачу медиа не только в рамках локальной сети, но также по Интернету. Только вот возможность эта ограничена необходимостью иметь компьютерные устройства на базе Windows версии не ниже 7 и обязательной подвязкой к одной учётной записи Microsoft (в целях безопасности). Куда проще в этом вопросе ведёт себя сторонний медиаплеер, популярный, плюс к тому же, бесплатный VLC Media Player, в число возможностей которого входит потоковая передача медиа и по локальной сети, и по Интернету. VLC – продукт кроссплатформенный, он существует для всех известных операционных систем — настольных Windows, Linux, Mac OS X, а также мобильных iOS и Android. Его и задействуем для потоковой трансляции видео и аудио по Интернету.

Как настроить трансляцию потокового видео и аудио по Интернету с помощью VLC Media Player?

Трансляция потока медиа по Интернету с помощью VLC Media Player осуществляется средствами этого медиаплеера, потому он должен быть установлен на всех компьютерах цепи – и на компьютере-передатчике трансляции потока, и на компьютерах-приёмниках. iOS- и Android-приложения VLC Media Player опционально предусматривают возможность принятия интернет-потока, но в мобильном варианте медиаплеера процесс открытия трансляции не в каждом случае будет увенчан успехом. Итак, скачиваем и устанавливаем VLC Media Player, если его ещё нет на компьютере.

1. Настройка передачи потока

Для запуска трансляции потока видео- и аудиофайлов в меню VLC «Медиа» выбираем пункт «Передавать».

Откроется окошко выбора источника. Здесь жмём кнопку «Добавить» и указываем путь к медиафайлу на компьютере.

После того, как файл будет добавлен, жмём кнопку внизу «Поток».

Далее кликаем кнопку «Следующий».

Чтобы видео не только транслировалось по Интернету, но и запустилось в окне VLC на текущем компьютере, в следующем окошке ставим галочку на опции «Воспроизводить локально». В выпадающем перечне доступных протоколов, по которым возможна потоковая трансляция медиа, выбираем «HTTP» и жмём кнопку рядом «Добавить».

Для потоковой трансляции VLC использует порт 8080 – стандартный порт для прокси-серверов. Если этот порт закрыт или занят, его можно заменить на другой порт. Если с портом 8080 проблем нет, ничего не трогая, жмём кнопку внизу «Следующий».

Следующее окно предназначено для установки параметров перекодирования видео и аудио. От перекодирования можно отказаться, сняв галочку с опции «Включить перекодирование», если трансляция осуществляется в рамках локальной сети или в условиях высокоскоростного Интернета. Этот ход обеспечит исходное качество видео.

Если скорость Интернета оставляет желать лучшего, для передачи потока лучше прибегнуть к процедуре перекодирования в целях оптимизации передачи данных. Для этого в выпадающем списке «Профиль» выбираем либо «Video–MPEG-2+MPGA(TS)», либо «Video–H.264+MP3(TS)». Последний будет передавать видео в чуть лучшем качестве, чем первый, но оба они, естественно, качество видео, в отличии от исходного, ухудшат.

Определившись с необходимостью и параметрами перекодирования, жмём кнопку внизу «Следующий».

Завершающий этап – жмём кнопку «Поток».

Разрешаем работу VLC в окне брандмауэра.

Всё – трансляция потокового видео и аудио началась, VLC Media Player, естественно, не закрываем.

2. Приём потоковой трансляции

Для просмотра потокового видео на любом компьютере земного шара, подключённом к Интернету, его пользователь должен запустить VLC Media Player, открыть меню «Медиа» и выбрать пункт «Открыть URL». Путь проще – горячие клавиши, нажатые в окне проигрывателя, Ctrl+N.

В открывшемся окошке выбора источника вещания в графе «Введите сетевой адрес» вводим IP-адрес и порт компьютера, с которого транслируется потоковое медиа, по типу:
http://192.168.0.100:8080/

Вместо IP-адреса 192.168.0.100, как в нашем примере, вводим, соответственно, IP-адрес того компьютера, с которого идёт трансляция потокового медиа. Ну и если менялся порт с дефолтного 8080 на иной, его и прописываем после двоеточия. Слеш в конце обязателен.

Далее остаётся только нажать кнопку внизу «Воспроизвести».

Ссылка на основную публикацию
Adblock
detector