Как проигрыватели потокового мультимедиа, работающие внутри страниц HTML и обслуживаемые серверами HTML, устанавливают потоковые (RTSP и т. Д.) Соединения с серверами потокового мультимедиа (обслуживающими запросы RTSP)?
Общие приложения
RTSP в настоящее время, кажется, больше используется с интерфейсами приложений / устройств, которые непосредственно транслируют (например, IP-камера) или повторно (как движок), чем для потоковой передачи сохраненных медиафайлов из физического местоположения через интерфейс веб-воспроизведения HTTP с встроенный плеер
Кажется, что RTSP является протоколом с отслеживанием состояния , и он использует UDP больше, чем TCP при потоковой передаче, и он больше используется в качестве серверного устройства (например, IP-камеры), который подключен к сети TCP / IP и передает потоки через UDP и т. Д. Затем вы подключаетесь к этим каналам (серверу) как клиент в той же сети, и вы можете выдавать RTSP-запросы для соответствующего использования.
Хотя RTSP в некотором смысле похож на HTTP, он определяет управляющие последовательности, полезные для управления воспроизведением мультимедиа. Пока HTTP не имеет
состояния , RTSP имеет состояние; идентификатор используется при необходимости для отслеживания одновременных сеансов. Как и HTTP, RTSP использует TCP для поддержания сквозного соединения, и, хотя большинство управляющих сообщений RTSP отправляются клиентом на сервер, некоторые команды передаются в другом направлении (то есть от сервера к клиенту).
Здесь представлены основные запросы RTSP. Некоторые типичные HTTP-запросы, такие как запрос OPTIONS, также доступны. Номер порта транспортного уровня по умолчанию - 554 [3] для TCP и UDP, причем последний редко используется для запросов управления.
источник
Протокол без сохранения состояния не требует, чтобы сервер сохранял информацию о сеансе или статус о каждом коммуникационном партнере в течение нескольких запросов. В отличие от этого, протокол, который требует сохранения внутреннего состояния на сервере, называется
состоянием .
Недостаток безгражданства заключается в том, что может потребоваться включение дополнительной информации в каждый запрос, и эта дополнительная информация должна будет интерпретироваться сервером.
источник
Логический поток
Как я понимаю поток потокового мультимедиа в этой форме:
- сервер, на котором находится мультимедийный контент, будет инкапсулировать, сжимать, кодировать и т. д. контент видео / аудиоданных в надлежащих форматах и сегментах для доставки потока
- веб-сервер, который прослушивает соединения для доступа к потоковому мультимедиа, доставит все ресурсы, необходимые для потоковой передачи мультимедиа
- клиент запрашивает и загружает соответствующие ресурсы и файлы, а затем непрерывно собирает их для воспроизведения через указатель URL-адреса в соответствии с настройкой и другими параметрами. Программное обеспечение воспроизведения на уровне клиента собирает пакеты, передаваемые последовательно, чтобы обеспечить надлежащее воспроизведение контента.
Пожалуйста, ознакомьтесь с разделом « Технологии потоковой передачи» ниже для общего сравнения HTTP и RTSP.
более того
В приведенных ниже 10 причинах, почему вы никогда не должны размещать свои собственные видео », я процитировал части, которые помогут вам ответить на ваш вопрос «в общих чертах», не будучи слишком конкретными.
По сути, это говорит о том, что веб-сайт, который имеет встроенные элементы управления медиаплеером, будет:
- (1) определить клиентские настройки веб-браузера при «соединении и запросе» от клиента и
- (2) это установит кодек и любые другие параметры обнаружения на стороне клиента в соответствующие значения параметров, а затем
- (3) он будет транслировать видео непосредственно с сервера потоковой передачи, на котором размещены видео- и аудиофайлы, на основе дополнительного кода в конфигурациях встроенного медиаплеера, указывающего URL-адрес медиа-файла на размещенном сервере.
Клиентский браузер должен получить данные с сервера и передать их потоковому приложению для обработки. Потоковое приложение преобразует данные в изображения и звуки. Важным фактором успеха этого процесса является способность клиента быстрее получать данные, чтобы приложение могло отображать информацию. Избыточные данные хранятся в буфере - области памяти, зарезервированной для хранения данных в приложении. Если данные задерживаются при передаче между двумя системами, буфер очищается, и представление материала не будет гладким.
Протокол HTTP
HTTP является основным способом связи документов в Интернете. Клиент устанавливает соединение с сервером, содержащим файл для потоковой передачи, файл извлекается и соединение закрывается. HTTP-сервер сообщает браузеру тип файла для передачи.
Преимущества использования HTTP
При потоковой передаче файла по HTTP специальный потоковый сервер не требуется. Пока ваш браузер распознает типы MIME, он может получать потоковый файл с HTTP-сервера. Одним из явных преимуществ потоковой передачи файлов с использованием HTTP является то, что он может проходить через брандмауэры и использовать прокси-серверы.
Некоторые недостатки
Для потоковой передачи HTTP используется протокол TCP / IP (протокол управления передачей и Интернет-протокол). Этот процесс проверяет отсутствующие пакеты и запрашивает их повторную передачу. Это становится проблематичным в сценарии потоковой передачи, когда вы хотите, чтобы данные игнорировались, если они теряются при доставке, поэтому динамические файлы продолжают воспроизводиться. HTTP не может определить скорость модема, поэтому администраторы сервера должны целенаправленно создавать файлы с разными степенями сжатия для пользователей серверов с разными типами соединений. Потоковая передача файлов с HTTP-серверов не рекомендуется в ситуациях с высокими требованиями.
Протокол RTSP
RTSP - это стандартный протокол, используемый большинством поставщиков потоковых серверов. Серверы RTSP используют UDP (протокол пользовательских дейтаграмм) для передачи мультимедийных файлов. UDP постоянно не проверяет, что файлы прибыли в пункт назначения. Это является преимуществом для потоковых приложений, поскольку оно позволяет прерывать передачу файлов, если задержка не слишком велика. Результатом этого метода является то, что иногда происходит потеря данных, но файлы продолжают воспроизводиться, если задержка мала.
источник
Мы говорим о встраивании против собственного размещения видео
Сначала вы загружаете видеофайл в сторонний видеохостинг, например, YouTube, Vimeo или Wistia.
Затем вы копируете небольшой кусочек кода, который они вам предоставляют, и вставляете его в свой пост или страницу на своем собственном сайте WordPress. Видео появится на вашем сайте, в том месте, куда вы вставили код для встраивания, но само видео транслируется с серверов хоста видео, в отличие от вашего собственного веб-сервера, на котором размещен ваш сайт WordPress.
4. Нет стандартного формата файлов для веб-видео
В текущем проекте спецификации HTML5 не указано, какие форматы видео должны поддерживать браузеры. В результате основные веб-браузеры разошлись, каждый из которых поддерживает свой формат. Internet Explorer и Safari будут воспроизводить видео H.264 (MP4), но не WebM или Ogg. Firefox будет воспроизводить видео Ogg или WebM, но не H.264. К счастью, Chrome будет воспроизводить все основные форматы видео, но если вы хотите, чтобы ваше видео воспроизводилось во всех основных веб-браузерах, вам придется конвертировать видео в несколько форматов: .mp4, .ogv и .webm.
5. Надеюсь, вам нравится конвертировать видео. Много.
Большая часть вашей аудитории, вероятно, будет смотреть ваши видео со своего настольного компьютера или ноутбука с помощью высокоскоростного подключения к Интернету. Для этих людей вы захотите предоставить большой файл HD-качества, чтобы они могли просматривать его в полноэкранном режиме, если захотят. Как правило, это означает файл 1080p или 720p с высокой скоростью передачи данных (5000–8000 кбит / с).
Но вы также захотите закодировать меньшую версию с меньшим разрешением для доставки на мобильные устройства, такие как телефоны и планшеты, а также для доставки зрителям с более медленными интернет-соединениями.
6. Видеоплееры
Видеоплеер - это небольшая часть веб-программного обеспечения, которое вы устанавливаете на своем сайте и которое автоматически определяет, какое устройство запрашивает ваше видео, а также скорость соединения, а затем доставляет соответствующую версию этому человеку.
7. Громоздкий код [или шорткоды]
Независимо от того, используете ли вы сторонний плагин или встроенные в WordPress видео-возможности, вам нужно будет создать немного кода, чтобы сообщить видеопроигрывателю, какие форматы вы создали, а также их расположение на сервере. Это выглядит примерно так ...
<video poster="movie.jpg" controls>
<source src="movie.webm" type='video/webm; codecs="vp8.0, vorbis"'/>
<source src="movie.ogg" type='video/ogg; codecs="theora, vorbis"'/>
<source src="movie.mp4" type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"'/>
<p>This is fallback content</p>
</video>
Итак, что является лучшим решением для добавления видео на ваш сайт?
Просто используйте сторонний видеохостинг, а затем просто вставьте свое видео в пост или страницу WordPress.
Шаг первый: загрузите ваше видео в один из популярных, хорошо зарекомендовавших себя сервисов видеохостинга, таких как Vimeo PRO.
Шаг второй: Как только ваше видео было загружено и готово к просмотру, скопируйте URL на ваше видео. Вернитесь на свой сайт WordPress и вставьте URL в свой пост или страницу, где вы хотите, чтобы видео появилось.
Когда люди просматривают вашу страницу, видео появится в том месте, куда вы вставили URL. Но сам видеофайл будет транслироваться с серверов видеохоста, а не с вашего собственного сервера, на котором размещен ваш сайт WordPress.
Встроенный видеоплеер автоматически определяет устройство пользователя, браузер и скорость интернет-соединения, а затем подает им соответствующую версию видеофайла. Нечего устанавливать на свой сайт. Нет плагинов, чтобы быть в курсе. Нет хитрого кода.
источник