Newcomposers.ru

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

Потоковая передача видео

Как транслировать (передавать) видео и музыку в сеть — делаем собственное вещание в локалку и интернет

Доброго дня!

Если у вас есть какая-нибудь камера или ТВ-тюнер, и вы хотите сделать свою трансляцию в локальной сети (или в интернет) — то эта заметка для вас. 👌

Впрочем, никто не мешает с таким же успехом вещать и просто какие-нибудь фильмы/музыку, например, с ПК на ТВ или мобильные гаджеты.

Единственное, учитывайте, что ваш компьютер (который транслирует) должен быть достаточно производительным (чтобы избежать лагов и подвисаний). К тому же, нужно иметь хорошее и стабильное подключение к сети (не ниже 10 Мбит/с). В помощь: тест скорости интернета.

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

Ладно, ближе к теме.

Трансляция видео в сеть: пример настройки вещания

Запуск трансляции

ШАГ 1

И так, для нашей задачи понадобится универсальный кросс-платформенный плеер VLC. Программа позволяет не только смотреть потоковое видео в сети, но и создавать трансляцию самостоятельно.

VLC

Основные преимущества проигрывателя:

  1. «всеядность»: воспроизводит файлы, внешние диски, сетевые трансляции и т.д.;
  2. поддерживает все популярные форматы файлов: MPEG-2, MPEG-4, H.264, MKV, WebM, WMV, MP3 (даже, если у вас не установлены кодеки в системе);
  3. работает на Windows, Android, Linux, Mac OS X, iOS;
  4. программа бесплатна (и без рекламных вставок).

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

ШАГ 2

Теперь необходимо запустить VLC на том компьютере (устройстве), с которого будем вести трансляцию.

После перейти в меню «Медиа/Передать» (Ctrl+S). См. скриншот ниже.

ШАГ 3

Далее нужно выбрать, что мы будем транслировать:

  • файл;
  • диск;
  • ТВ-тюнер, камеру или др. устройства захвата.

В своем примере я просто добавил один из фильмов.

ШАГ 4

Затем нужно уточнить источник вещание: при выборе обычного файла (как в моем случае) можно сразу же нажать далее (т.е. следующий) .

ШАГ 5

Нужно выбрать в списке «HTTP» и нажать на кнопку «Добавить» . У вас появится вкладка с одноименным названием, в которой можно указать порт и путь трансляции (по умолчанию порт 8080). Рекомендую не менять эти значения и перейти к дальнейшей настройке.

Вывод потока (порт)

ШАГ 6

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

ШАГ 7

Здесь можно задать доп. параметры вещания. В большинстве случаев можно сразу же нажать «Поток» .

ШАГ 8

При первом запуске трансляции брандмауэр Windows попросит вас дать разрешение на работу VLC — просто согласитесь, нажав на «Разрешить доступ» .

ШАГ 9

Если трансляция запустилась вы увидите тикающий таймер времени (см. нижнюю часть окна программы). То есть с этого момента — вещание можно принять на другое устройство и посмотреть «что-там. «. 👌

Как смотреть трансляцию

По локальной сети

Т.е. и компьютер (который вещает), и устройство (которое принимает трансляцию) находится в одной общей локальной сети. В своем примере ниже: трансляция ведется с ПК, а принимается на телефон под андроидом. Оба устройства подключены к одной Wi-Fi сети.

ШАГ 1

Для начала нам нужно узнать локальный IP-адрес компьютера, который ведет трансляцию. Сделать это можно через командную строку: введя в ней ipconfig и нажав Enter.

См. ниже скриншот — мой IP 192.168.0.106 (это нужно для дальнейшего подключения).

ipconfig / Командная строка

Кстати, узнать IP-адреса также можно в настройках роутера.

IP-адрес в настройках роутера

ШАГ 2

Теперь запускаем VLC на том устройстве, с которого будем принимать трансляцию (например, телефон). Далее переходим в меню программы и выбираем «Поток» (или «открыть URL-адрес трансляции») .

ШАГ 3

Далее нужно указать сетевой адрес — http://192.168.0.106:8080

Важно!

1) Вместо 192.168.0.106 — у вас будет свой IP-адрес того компьютера, который ведет трансляцию (например, 192.168.10.102 или 192.168.0.103). Мы этот IP-адрес узнавали в ШАГЕ 1.

2) Вместо порта 8080 может использоваться другой (если при создании трансляции вы изменили его).

VLC для андроид

ШАГ 4

Если вы все указали правильно, то через 3-5 сек. устройство «прогрузит» кэш и VLC начнет показывать вещание.

Разумеется, к одной трансляции можно одновременно подключить несколько устройств.

По интернету

ШАГ 1

Всё отличие здесь будет сводится к тому, что нам нужно узнать не локальный IP-адрес (который «дал» нам роутер), а внешний/глобальный (у того ПК, который ведет трансляцию) . Сделать это можно по-разному, ссылку на инструкцию привожу ниже.

Как узнать свой локальный и глобальный IP-адрес — https://ocomp.info/kak-uznat-ip-adres.html

Например, мне импонирует утилита Speccy — достаточно открыть раздел Network и вы знаете и локальный IP, и внешний.

Speccy — просмотр IP-адресов, раздел Network

Разумеется, подобную информацию также можно узнать в настройках роутера. Скрин ниже в качестве примера.

ШАГ 2

Чтобы к вашей трансляции могли подключиться из интернета — необходимо открыть (пробросить) нужный порт (в нашем случае 8080). По умолчанию, в целях безопасности, роутер не позволяет подключаться из вне.

Делается это обычно в настройках роутера в разделе «Перенаправление портов» (Port Forwarding). Вообще, у меня на блоге есть подробная заметка на эту тему (для начинающих), ссылка ниже.

В помощь! Как пробросить порты на роутере (открываем порты для игр, Skype, uTorrent и др. приложений) — https://ocomp.info/kak-probrosit-portyi-na-routere.html

ШАГ 3

Теперь запускаем VLC на том устройстве, где будем принимать трансляцию и открываем сетевой адрес вида: http://89.118.10.32:8080

Важно!

Вместо 89.118.10.32 — у вас будет свой внешний IP-адрес (который мы уточняли в ШАГЕ 1, см. чуть выше).

Вводим глобальный IP

ШАГ 4

Если вышеприведенные настройки были корректно заданы — то через несколько секунд начнется показ трансляции (см. скрин ниже). Задача выполнена?!

Потоковое видео: что это такое?

Дата публикации: 2018-02-01

От автора: поскольку все больше и больше клиентов используют сети с высокой пропускной способностью, потоковое видео стало нормой в Интернете. Социальные медиа, веб-сайты и потоковые сервисы, такие как YouTube и Netflix, передаются прямо на ваш телефон. Исследование показало, что видео повышает взаимодействие с клиентами, поэтому мы должны ожидать, что количество видео в Интернете и на мобильных устройствах будет продолжать расти быстрыми темпами. Но что нужно для хорошего воспроизведения видео? И (возможно, что более важно), как вы можете реализовать хорошее воспроизведение видео, которое также очень высокоэффективно? В этой статье я сосредоточусь на нескольких способах оптимизации потоковой передачи HTTP Live Streaming (HLS) для улучшения доставки. Эти передовые методы также применяются к форматам MPEG-DASH и другим потоковым форматам и ни в коем случае не являются исчерпывающим списком, а просто представляют собой способы повышения производительности потоковой передачи видео.

Исследование: что делает хороший поток?

Ответ: зависит от разных факторов. Клиенты демонстрируют различное поведение для разных типов потоков. Это интуитивно имеет смысл — если вы сидите и смотрите телешоу или фильм (более 15 минут), вы будете более терпеливыми, чем, если это будет видео с котом, едущем на Roomba.

Я рассмотрю 3 основных показателя качества видео, которые необходимо учитывать.

Задержка запуска: время от нажатия воспроизведения до тех пор, как начнётся поток.

Столбцы. В буфере устройства видео не остается, и воспроизведение останавливается.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Качество видео: сколько пикселей на экране в любой момент времени.

Эти показатели сильно зависят от того, насколько быстро видео можно транспортировать по сети. В исследовательской работе Akamai обнаружено, что после 2 секунд задержки запуска клиенты начинают отказываться со скоростью 5,8% за дополнительную секунду. Они также считают, что более длинные (и более многочисленные) торможения приводят к отказу. Наконец, видео высокого качества более приятно смотреть, поэтому важно избегать пиксельного и низкого качества видео.

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

Скриншоты в этой статье взяты из AT & T Video Optimizer, бесплатного инструмента, который собирает сетевые захваты на вашем мобильном устройстве. Он оценивает сетевой трафик против

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

Как мы можем обеспечить быструю и регулярную доставку видео?

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

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

Запуск видео

Первым битрейтом, указанным в манифесте, является качество видео, которое первоначально запросит пользователь. Если этот список был последовательным, видеопоток начался бы с очень низкого качества 1 (128 × 320 @ 193 KBPS). С положительной стороны, 193 KBPS будет загружаться очень быстро в большинстве сетей.

Читать еще:  Как настроить видеоплеер

Если бы порядок был отменен, начальное качество видео было бы чрезвычайно высоким (676 × 1024 3.6 MBPS). И хотя большое качество видео важно, это может привести к очень большой задержке запуска в сети с пропускной способностью менее 3,6 МБ.

Лучшая практика № 1: Чтобы сбалансировать начальное качество видео и задержку запуска, поместите поток средней полосы пропускания / качества в качестве первого выбора, чтобы сбалансировать быструю загрузку / запуск видео и начальное качество видео.

Проигрывание видео

После того, как плеер начнет загружать видео сегменты (2-8 сек фрагментов видео для воспроизведения), проигрыватель будет измерять скорость загрузки. Если он подсчитает, что сеть может обеспечить видео более высокого качества достаточно быстро, он попытается загрузить более качественную версию видео. И наоборот, если сеть работает медленнее, она снизится до более низкого качества видео, чтобы обеспечить постоянный поток. Каждый раз при изменении качества видео загружается манифест для нового потока, и видео может начать загрузку новой версии.

Video Optimizer может отслеживать количество сегментов в буфере локального устройства и отчитывается количество буферизованного видео в секундах и МБ во время сбора данных:

Если любое из этих чисел достигает 0, на устройстве больше нет видеозаписи, и видео будет остановлено.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Используя функцию «Затухание сети» в «Оптимизаторе видео», я изменил пропускную способность сети с 5 Мбайт до 1 Мбит / с в среднем потоке, и мы видим, что видеопроигрыватель начинает запрашивать более качественные видео сегменты, снижая с 1,5 МБПС и в конечном итоге устанавливая 500 КБ.

(Кроме того, можно подумать: если пропускная способность сети составляет 1 Мбайт, то почему 800 KBPS-видео плохо транслируется? Оказывается, есть два потока: один для видео и аудио — поток размером 128 Кбайт. Плеер определил, что 928 килобайт (+ накладные, + аналитика) были слишком приближены к 1024 KBPS и понизил видео. В этом случае можно было бы сделать аргумент за то, что более низкое качество звуковой дорожки, чтобы гарантировать, что более высокое разрешение видео воспроизводится. Кроме того, Лучшая практика: Качество звука (отдельный поток или встроенный в видеопоток) влияет на общую скорость передачи видео).

Очевидно, что несколько битрейтов помогут обеспечить хорошее видео. Примеры, показанные выше, имеют кодировки с изменениями битрейта, которые увеличиваются в довольно регулярные интервалы. Это означает, что небольшие изменения пропускной способности сети будут лишь незначительно влиять на качество видео на экране. Сравните это с рекомендуемым списком битрейтов, который я обнаружил в Интернете:

Представьте, что вы просматриваете видео, закодированное на мобильном устройстве с пропускной способностью 1,4 Мбайт. Единственный возможный вариант — ID 1, а это означает, что любой из пользователей 3G будет видеть только видео с самым низким качеством видео. Кроме того, разница в качестве видео между потоками 1 и 2, вероятно, значительна. Если видео перемещается между битрейтами 1 и 2 несколько раз, изменение качества видео, скорее всего, будет очевидным для конечного пользователя. Этот набор кодировок не очень подходит для потоковой передачи данных на мобильных устройствах.

Лучшая практика № 2: Доступны несколько битрейтов с регулярными интервалами между качествами. Это помогает обеспечить плавное прогрессирование качества видео и предотвратить значительные изменения качества видео.

Видеоплееры отличаются своей агрессивностью, чтобы улучшить качество видео. Некоторые видеопроигрыватели, почувствовав более высокую пропускную способность, начнут процесс замены сегмента — где видео сегменты, уже загруженные с более низким качеством, загружаются снова с более высоким качеством. Это приводит к тому, что один и тот же сегмент загружается более одного раза, но поскольку он улучшает отображаемое видео, я считаю его компромиссным, который обычно оценивается. Например, в таблице ниже сегменты 111-112 изначально загружаются с качеством 0. Плеер регистрирует всплеск пропускной способности и оценивает, что эти 2 сегмента можно заменить и повторно загружать по качеству 2. Однако плеер также довольно агрессивный, загружая 112 третий время в качестве 4. В целом для 4-секундного сегмента 112. потребляется

2 МБ данных. Это может считаться слишком агрессивным — поскольку он тратит большой объем данных.

Мы также видели примеры «замены обратного сегмента», когда плеер загружает более качественную версию после того, как уже имеет более качественную версию на устройстве. В этом случае сегменты 134-134 загружаются с качеством 4 (1,6 MBPS), а затем загружаются с качеством 1 (447 KBPS):

По крайней мере, если качество 4 воспроизводится конечному пользователю,

370 КБ будет потрачено впустую (сумма качественных 1 сегментов). Если воспроизводится качество 1,

1,3 МБ данных теряется, и пользователю предоставляется ухудшенное воспроизведение видео.

Лучшая практика № 3: если ваш видеопроигрыватель агрессивно продвигается к высокоскоростному видео, убедитесь, что замена сегмента только улучшает качество видео. Мониторинг использования данных замены сегмента для ваших пользователей (в Video Optimizer это сообщается как избыточность).

Для видео с несколькими высокими потоками битрейта агрессивный алгоритм битрейта может привести к увеличению количества остановок. Если локальный буфер составляет 30 МБ, но поток работает с 8 Мбайт / с, то локальная локация может быть только 2-3 секунды. Внезапное изменение пропускной способности, вероятно, приведет к остановке, прежде чем сеть и сервер смогут отреагировать.

Лучшая практика # 4: при потоковой передаче видео с высоким битрейтом убедитесь, что буфер устройства может поддерживать много секунд видео для учета внезапных изменений пропускной способности. Альтернатива: ограничить максимальные битрейты для устройств с ограниченной памятью.

Вывод:

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

Автор: Doug Sillars

Редакция: Команда webformyself.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

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

Термином «потоковое видео» (streaming video) сегодня обозначают технологии сжатия и буферизации данных, которые позволяют передавать видео в реальном времени через Интернет. Главная особенность потокового видео заключается в том, что при его передаче пользователь не должен ждать полной загрузки файла для того, чтобы его просмотреть. Streaming video пересылается непрерывным потоком в виде последовательности сжатых пакетов и проигрывается по мере того, как передается на компьютер получателя.

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

Способы передачи

Существуют два способа передачи потокового видео — последовательный (progressive streaming) и в реальном времени (Real-time streaming). При передаче последовательным способом качество изображения всегда лучше, поскольку видео воспроизводится с вашего жесткого диска. Для такого способа передачи видео можно использовать стандартный веб-сервер.

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

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

Потоковые серверы дают возможность управлять медиа-передачей, однако, они более сложны в настройке и администрировании, чем обычные HTTP-серверы. Кроме специальных серверов, используются и особые сетевые протоколы, например, RTSP (Real-Time Streaming Protocol). Этот протокол используется Windows Media по умолчанию, но он также поддерживается Real Video.

RTSP — это протокол, с возможностью контролируемой передачи видеопотока в интернете. Протокол обеспечивает пересылку информации в виде пакетов между сервером и клиентом. При этом получатель может одновременно воспроизводить первый пакет данных, декодировать второй и получать третий.

Протокол RTP (Real-time transport protocol) определяет и компенсирует потерянные пакеты, обеспечивает безопасность передачи контента и распознавание информации. Вместе с RTP работает протокол RTCP (Real-Time Control Protocol). Он отвечает за проверку идентичности отправленных и полученных пакетов, идентифицирует отправителя и контролирует загруженность сети. Форматы

Существует несколько основных форматов потокового видео в интернете. Это — Real Media, Windows Media и Quicktime. До недавнего времени наряду с ними широко использовался MPEG, однако, в последнее время он сильно сдал позиции.

Формат MPEG был разработан компанией Moving Picture Experts и до недавнего времени считался стандартом потокового вещания. Существует несколько версий MPEG.

Формат MPEG-1 был создан в далеком 1988-м году и обеспечивал качество VHS при записи видео на CD-ROM. Несмотря на то, что MPEG-1 разрабатывался как формат хранения, а не передачи файлов, он обеспечивает отличное качество потокового видео на высоких битрейтах. Оптимальный битрейт для этого формата — 1.5мб/с для разрешения 352×240 при частоте 30 кадров в секунду. Однако, файлы MPEG-1 обычно слишком велики для передачи по интернету.

Формат MPEG-2 был разработан для вещания цифрового телевидения и со временем также стал использоваться при записи DVD. Его битрейт еще выше, чем у MPEG-1 (между 4 и 9 мб/c), что позволяет добиться изображения высокой четкости. Его использование как потоковой технологии не очень распространено, так его скорость передачи информации очень велика. Для просмотра файла в формате MPEG-2 в режиме онлайн нужно иметь скорость передачи данных около 400 кб/c и выше.

Читать еще:  Конвертер видео онлайн

Формат MPEG-4 был специально разработан для передачи данных по интернету и мобильной связи. Его оптимальный битрейт — между 385 и 768 кб/c. MPEG-4 может использоваться для передачи аудио и видео потоков, обеспечивая при этом высокое качество кодирования при большой степени компрессии. Однако, если на небольшой скорости передачи данных он обеспечивает хорошее качество, для широкополосной передачи он не приспособлен.

RealVideo

RealVideo — это формат, который был разработан для потоковой трансляции. Для передачи данных на DVD или CD-ROM он практически не используется из-за высоких аппаратных требований. Особенностью файлов RealVideo является невозможность редактирования или повторной компрессии. Этот формат использует методы компрессии, которые уменьшают количество кадров в видео, и удаляет ненужную информацию из кадров. Качество при этом будет зависеть от количества деталей в кадрах и от динамики событий. Благодаря большому уровню компрессии этот формат подходит для пользователей с низкой скоростью соединения.

QuickTime

Этот формат, разработанный Apple, широко используется как на компьютерах Mac, так и в среде Windows. QuickTime имеет много общего с форматом Real Media. Степень сжатия файла QuickTime — 1 мб для 3.75 секунд видео, поэтому размер изображения может быть увеличен и уменьшен без потери качества. Это означает, что видеофайл с разрешением 320×240 может быть просмотрен в полноэкранном режиме с таким же качеством. Формат QuickTime лучше всего подходит для последовательной передачи потокового видео, так как в процессе загрузки файла запускается плеер, который воспроизводит полученную информацию.

Windows Media

Windows Media — это относительно молодой формат в области потокового вещания, поддерживаемый Microsoft. Последняя разработка компании — Windows Media Video 9. Этот формат превосходит по производительности своего предшественника WMV8 на 15-30 процентов. Сравнение же с другими форматами потокового вещания тоже говорит только в его пользу. Так, например, видео в формате MPEG-4, транслируемое с битрейтом 6 мб/c, будет выглядеть аналогично сделанному при помощи WMV9 при 2 мб/c. А качество видео в формате WMV9, передаваемого на скорости 150 кб/с, ничуть не хуже, чем аналогичного в формате MPEG-4 на 300 кб/c.

Какой формат выбрать

На сегодняшний день еще можно говорить о том, что значительная часть пользователей выходит в интернет через dial-up, а значит, на очень низких скоростях. Лишь немногие могут себе позволить скорость более 2 мб/c, однако в последние пару лет значительно увеличилось количество пользователей, которые выходят в интернет через выделенную линию со скоростями от 128 кб/с. На таких скоростях уже возможна передача данных с качеством на уровне VHS.

Скорость вашего интернет-соединения имеет значение при выборе формата. Windows Media 7,8, Windows MPEG-4, Real Media, Quicktime лучше всего подходят для диапазона скорости от 36 кб/c до 500 кб/c. Windows media 9, MPEG4 (ISO и DivX) можно выбирать, если ваша скорость от 500 кб/c до 3 мб/c. Для высоких скоростей (от 1 мб/c до 3 мб/c) лучше всего подойдет MPEG-1, а для очень высоких (от 3 мб/c до 15 мб/c) — MPEG2. Хороший кодировщик MPEG-1 даст качество VHS на скорости 1.5 мб/c, качество SVHS — на 2.5 мб/c. MPEG-2 обеспечит качество DVD (4:2:0) на 5 мб/c, видео качество 4:2:2 — на 10 — 15 мб/c. Таким образом, MPEG 1, 2 позволяют достичь очень высокого качества передачи видео, правда, и интернет-доступ для получения этого качества должен быть соответствующий.

Проблемы передачи

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

Перебои в связи

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

Маломощный компьютер

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

Помехи на телефонной линии

Эта проблема актуальна только для пользователей, которые выходят в интернет через dial-up. Всевозможные потрескивания, щелчки и прочие шумы снижают качество передачи. Решением этой проблемы может быть использование более качественного доступа в интернет посредством cable или DSL.

Как сохранить видео на диск

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

Обычно ссылка скрыта в метафайле (RAM, ASX, SMIL). Если кликнуть правой кнопкой мыши по ссылке на видеофайл в окне браузера и выбрать команду «Save target as . «, метафайл будет сохранен на жесткий диск. После этого его можно открыть в любом текстовом редакторе (например, в Блокноте) и скопировать ссылку на файл. Если метафайл защищен паролем или скрыт при помощи JavaScript, Flash и т.д., можно попытаться открыть файл в плеере и просмотреть его свойства.

Например, чтобы увидеть ссылку на видео файл в RealOne Player, нужно выполнить команду View > Clip > Clip Info или View > Clip > Clip Source. В качестве альтернативы этому способу можно использовать программы, позволяющие отследить источник файла, например URLSnooper.

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

HiDownload

Основное преимущество этого менеджера перед аналогичными — возможность записи потоков в форматах Windows Media и RealVideo. HiDownload поддерживает все стандартные протоколы, которые используются для передачи потокового видео. При помощи программы можно также загружать потоковое видео, защищенное паролем.

Net Transport

Бесплатная программа, работающая с большинством потоковых протоколов. Поддерживает протоколы HTTP, HTTPS, FTP, MMS (Microsoft Media Services), и RTSP (Real-Time Streaming Protocol). Как и большинство современных download-менеджеров, Net Transport может разбивать скачиваемый файл на отдельные части, что увеличивает скорость передачи данных. Net Transport позволяет загружать видео в форматах Windows Media и RealVideo, защищенное паролем.

Offline Explorer

Оффлайн-браузер, позволяющий скачивать файлы по протоколам HTTP, FTP, HTTPS, MMS и RTSP. Программу особенно удобно использовать для загрузки больших файлов. Программа доступна в трех версиях, и только две из них (Pro и Enterprise) поддерживают потоковые протоколы.

WM Recorder

WM Recorder записывает потоковое видео в формате Windows Media в процессе просмотра через Windows Media Player. Потоковые данные перехватываются и записываются в файл ASF, который впоследствии может быть воспроизведен любым проигрывателем, поддерживающим этот формат. WM Recorder поддерживает докачку файлов при последовательной передаче. При передаче в реальном времени докачка невозможна. Недостатком WM Recorder можно считать невозможность перехвата файлов, защищенных DRM (Digital Rights Management).

При попытке сохранения видеопотока можно столкнуться с проблемой недостаточной пропускной способности линии. Видео высокого качества требует и большой скорости соединения. Однако, в некоторых случаях возможно сохранить видео высокого качества и при низкоскоростном коннекте. Если используется передача в реальном времени, видео поток не может быть записан на скорости, которая превышает скорость вашего соединения. Если же передача ведется последовательным способом, это возможно. Для этого нужно изменить настройки пропускной способности канала. Некоторые утилиты, например, упомянутые выше HiDownload и WM Recorder позволяют сделать это автоматически.

5 способов потоковой передачи видеоигр с ПК на телевизор

1 min

Вы хотите играть в свои любимые компьютерные игры на своем телевизоре?

Но часто возникает проблема: ваш компьютер находится в одной комнате, а телевизор – в другой.

Проложить длинный HDMI-кабель между комнатами нецелесообразно. Ответ заключается в потоковой передаче игр с вашего компьютера на телевизор через домашнюю сеть.

Вот несколько методов, которые вы можете использовать для потоковой передачи игр с ПК на телевизор.

1. Miracast и беспроводная потоковая передача HDMI

Вы найдете несколько доступных беспроводных HDMI-систем, совместимых с настольными операционными системами. Беспроводной HDMI позволяет передавать аудио и видео сигналы между двумя устройствами, что делает возможными технологии, которые вы видите ниже.

Более ранние беспроводные устройства HDMI (например, использующие WiDi от Intel и AMD Wireless Display) были заменены Miracast. Miracast является стандартом для беспроводных соединений. Благодаря поддержке Windows вы можете легко транслировать игры с вашего ПК или ноутбука на телевизор через совместимый ключ.

Некоторые производители смарт-телевизоров также включают поддержку Miracast, а это значит, что вы даже можете транслировать любимые игры на телевизор, не тратя деньги на ключ Miracast. Если вам нужен ключ, он обычно доступен менее чем за 100 долларов.

2. Steam Link

Изначально Steam Link представлял собой отдельное оборудование, которое можно использовать как сервис, совместимый с телефонами и планшетами Android. Самое главное, что он также может работать на смарт-телевизорах Samsung и даже Raspberry Pi (см. Ниже).

Каждую игру в библиотеке Steam можно транслировать с помощью Steam Link, создавая собственную виртуальную игровую консоль.

Если на вашем ПК работает Steam и у вас активирован In Home Streaming, вы можете транслировать игры. Это активируется в Steam> Настройки и требует, чтобы телевизор, подключенное потоковое устройство и компьютер находились в одной сети.

Читать еще:  Самый лучший монтаж видео скачать

Используете Android TV? Вот как можно использовать приложение Steam Link для Android. Это, вероятно, лучший способ получить опыт игры на ПК на Android.

Не хотите покупать дополнительное оборудование? Не беспокойтесь: уже не выпускаемое Steam Link устройство все еще доступно в некоторых магазинах.

3. Создайте свою собственную ссылку на Steam с Raspberry Pi

Если все эти варианты кажутся немного дорогими, но у вас есть Raspberry Pi 2 или более поздней версии, вы можете повторить функции Steam Link на маленьком компьютере!

Благодаря специальному программному обеспечению Steam Link от Valve, Raspberry Pi идеально подходит для потоковой передачи компьютерных игр на телевизор.

Более того, вам не нужно ограничиваться играми Steam с Raspberry Pi. Благодаря программе потоковой передачи игр Parsec вы можете передавать компьютерные игры на Raspberry Pi.

Неважно, какую цифровую службу загрузки вы используете, или как вы установили игру. Когда Raspberry Pi подключен к вашему телевизору, игры будут транслироваться в вашей гостиной.

4. Nvidia Gamestream

Предлагая решение, аналогичное Steam Link, Nvidia Gamestream (доступное через устройство Nvidia Shield TV) также способно передавать потоковое видео и другие медиафайлы из Интернета.

Это, наряду со встроенным игровым контроллером и пультом дистанционного управления (оба со встроенными микрофонами для голосовых команд), объясняет, почему он значительно дороже, чем Steam Link. Обратите внимание, что подходящая видеокарта Nvidia обойдется вам в дополнительные 100 долларов.

После настройки, если у вас есть компьютер или ноутбук в той же сети с подходящим графическим процессором серии Nvidia GTX, Nvidia Shield TV может управлять потоковой передачей игр с вашего компьютера на телевизор.

Между тем, если ваша игровая установка не на пустом месте, Nvidia Shield TV позволит вам транслировать видеоигры из облака. Сервис GeForce NOW доступен по цене 7,99 долл. США в месяц и будет транслировать игры на телевизор через телевизионную приставку Nvidia Shield.

5. Chromecast и Apple TV

Читая выше, вы, возможно, рассматривали некоторые альтернативы, основанные на оборудовании, которое у вас уже есть. Например, у вас может быть Apple TV или Google Chromecast.

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

Между тем, когда дело доходит до Apple TV, AirPlay имеет аналогичные ограничения. Хотя были предприняты попытки взломать Apple TV для потоковой передачи, результаты в настоящее время неадекватны.

Любопытно, что через Xbox One невозможно передавать потоковые компьютерные игры с компьютера на телевизор. Вместо этого сервис Xbox Play Anywhere позволяет играть в игры как на ПК с Windows, так и на вашем Xbox One за одну покупку.

Так, например, вы можете сыграть в Gears of War 4 на своем ПК, когда член семьи смотрит телевизор, а затем продолжить игру на Xbox One, когда они покинут дом.

Это не тот тип потоковой передачи, который вам нужен, но, тем не менее, это отличное решение.

Теперь вы можете транслировать компьютерные игры на свой телевизор

Хотя некоторые из этих решений могут потребовать некоторых затрат, в целом они все более выгодны и требуют меньше шума, чем длинный кабель HDMI. Давайте вспомним способы потоковой передачи видеоигр с ПК на телевизор:

  1. Miracast и беспроводной HDMI
  2. Steam Link с Android
  3. Сделай сам Raspberry Pi Steam Ссылка коробка
  4. Nvidia Gamestream
  5. Chromecast / Apple TV / Xbox Play Anywhere

Какой из них выбрать? Это сложный вызов, но если вы ищете доступное, ориентированное на игру решение, то Steam Link имеет смысл. Он не только дешев, он прост в настройке и имеет контроллер для сопутствующей игры.

Что такое потоковая передача мультимедиа?

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

В чем разница между потоковой передачей и загрузкой?

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

Можно подумать об этом, как о разнице между озером и рекой: оба содержат воду, и река может содержать столько же воды, сколько озеро. Разница в том, что в реке вода не находится в одном и том же месте в одно и то же время. Загруженный видеофайл больше похож на озеро, поскольку он занимает много места на жестком диске (и для перемещения озера требуется много времени). Потоковое видео больше похоже на реку, в том, что данные видео непрерывно, быстро течет в браузер пользователя.

Как работает потоковая передача мультимедиа?

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

Отправка видео через интернет, в отличие от отправки текста и неподвижных изображений, требует более быстрого метода передачи данных, чем TCP/IP, который отдает приоритет надежности над скоростью.

Как протокол UDP улучшает потоковую передачу?

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

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

Для потоковой передачи скорость намного важнее надежности. Например, если кто-то смотрит эпизод телешоу онлайн, не каждый пиксель должен присутствовать на каждом кадре эпизода. Пользователь предпочел бы иметь смотреть эпизод на нормальной скорости, чем сидеть и ждать каждый бит данных, которые будут доставлены. Поэтому, несколько потерянных пакетов данных не является огромной проблемой, и именно поэтому потоковая передача использует UDP.

Если TCP похож на службу доставки пакетов, которая требует, чтобы получатель подписал его, то UDP похож на службу доставки, которая оставляет пакеты на переднем крыльце, не стуча в дверь, чтобы получить подпись. Служба доставки TCP теряет меньше пакетов, но служба доставки UDP работает быстрее, так как пакеты могут быть выгружены, даже если их никто не подписывает.

Потоковая передача и буферизация

Потоковые медиаплееры загружаются на несколько секунд раньше времени, чтобы видео или аудио могли продолжить воспроизведение, если соединение ненадолго прервано. Это называется буферизацией. Буферизация обеспечивает плавное и непрерывное воспроизведение видео. Однако при медленных соединениях или большой задержке в сети буферизация видео может занять много времени.

Какие факторы замедляют стриминг?

На стороне сети:

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

На стороне пользователя:

  • Проблемы wi-fi: перезапуск маршрутизатора LAN или переключение на провод вместо Wi-Fi может помочь улучшить производительность потоковой передачи.
  • Медленные клиентские устройства: для воспроизведения видео требуется большая вычислительная мощность. Если устройство, на котором просматривается потоковое видео, имеет много других работающих процессов, или просто медленно в целом, потоковое производительность может быть затронута.
  • Недостаточно пропускной способности: для потокового видео домашним сетям требуется около 4 Мбит/с пропускной способности. Для видео высокой четкости им, вероятно, потребуется больше.

Как сделать потоковую передачу быстрее?

Потоковая передача подвержена тем же задержкам и снижению производительности, что и другие виды веб-контента. Поскольку потоковое содержимое хранится в другом месте, расположение хостинга имеет большое значение, как и в случае с любым типом содержимого, доступного через интернет. Если пользователь в Нью-Йорке пытается выполнить потоковую передачу с сервера Netflix в Лос Гатос, видеоконтент должен будет пересечь 3000 миль, чтобы достичь пользователя, и видео придется потратить много времени на буферизацию или может даже не воспроизводиться вообще. По этой причине Netflix и другие поставщики потоковой передачи широко используют распределенные сети доставки контента (CDN), хранящие контент в местах по всему миру, которые намного ближе к пользователям.

CDN оказывают огромное положительное влияние на производительность потоковой передачи. Cloudflare Stream Delivery использует сеть CDN Cloudflare для хранения видеоконтента во всех точках присутствия Cloudflare по всему миру. В результате сокращается задержка для времени запуска видео и уменьшается буферизация.

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