Передача видеоданных через интернет: форматы и протоколы. - Студенческий научный форум

XIV Международная студенческая научная конференция Студенческий научный форум - 2022

Передача видеоданных через интернет: форматы и протоколы.

Долгачев В.А. 1
1БИТИ НИЯУ МИФИ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

ВВЕДЕНИЕ

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

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

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

1 ПРОТОКОЛЫ ПЕРЕДАЧИ ВИДЕОДАННЫХ ЧЕРЕЗ ИНТЕРНЕТ

Интернет стал полноценной средой доставки видеоуслуг, конкурирующей с администрируемыми сетями и выделенным оптическим волокном. Причем интернет-технологии применяются не только для доставки услуг конечным пользователям, но и для передачи видео между студиями или в точки ретрансляции. Два базовых интернет-протокола, использующиеся для доставки видео, — UDP/RTP и TCP. У каждого из них свои плюсы. Первый более быстрый, второй более надежный.

1.1 Интернет-протокол UDP/RTP

В сегменте доставки видео конечным потребителем протокол UDP/RTP используется достаточно редко. Из распространенных систем, работающих на его основе, можно вспомнить только бесплатную медиаплатформу VLC, включающую медиаредактор и медиаплеер. Она получила популярность в основном потому, что позволяла простыми средствами решать множество насущных задач, таких как ретрансляция видео в локальную сеть, конвертация видеофайлов, просмотр YouTube без Flash-плеера (это было актуально 5—7 лет назад). Некоторые из этих функций востребованы и сейчас, но именно как платформа для получения видео из интернета VLС не слишком удобна и не очень надежна.

Основная масса коммерческих технологий доставки видео пользователю опирается на протокол ТСР/IP.

1.2 Интернет-протокол TCP/IP

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

Надежность TCP/IP определяют две встроенные функции: повторный запрос пропущенных пакетов и выстраивание пакетов в нужном порядке. Тем не менее TCP/IP не обеспечивает постоянство скорости доставки — она напрямую зависит от загруженности маршрутизаторов, через которые проходит поток. Более того, у данного протокола есть ограничения по расстоянию. Эти проблемы в определенной степени можно компенсировать протоколами, работающими поверх TCP/IP.

Первым таким решением, получившим реальное распространение, стал протокол RTMP от Adobe, работающий на базе медиаплатформы Flash. Долгое время решение RTMP/Flash оставалось лидером рынка в области интернет-стриминга. Однако на роль по настоящему массовой технологии оно не годилось из-за высокой стоимости, сложности реализации, а также из-за того, что компания Adobe так полностью и не открыла его спецификацию. В результате лидирующие позиции заняли более дешевые технологии на базе стека TCP/IP/HTTP. Этот стек имел еще больше встроенных механизмов для доставки видео, но одновременно создавал еще больше препятствий для обеспечения ее качества.

Во времена расцвета RTMP/Flash, 12—15 лет назад, технологии на базе HTTP вообще не могли обеспечить полноценный стриминг, а только загрузку видео последовательными фрагментами с началом проигрывания после получения определенного количества фрагментов. Сегодняшние протоколы на базе HTTP, по сути, работают по тому же принципу, с той лишь разницей, что после множества оптимизаций это практически перестало быть заметно конечным пользователям. В хорошо отлаженных коммерческих сетях, использующих CDN в комбинации с небольшими кластерами доступа, видео доставляется с минимальными колебаниями качества. Поэтому современные технологии доставки видео на базе HTTP — HLS и MPEG-DASH — имеют полное право считаться стриминговыми .

1.3 Оптимизация TCP

Оптимизация проводилась по нескольким направлениям. Первое — сокращение цикла отправка/подтверждение за счет появления и оптимизации режима скользящего окна в протоколе TCP. Второе — введение адаптивной передачи. На уровне HTTP адаптивность реализована добавлением в клиентские устройства постоянного мониторинга качества видеопотока и возможности на лету запрашивать другой профиль видео. Этому способствует и совершенствование систем компрессии, в том числе появление новых ABR-кодеров, в которых профили видео формируются не по формальным параметрам потока, а по уровню качества картинки.

Последнее направление оптимизации, на котором сейчас сфокусированы усилия разработчиков, — сокращение времени от запроса услуги до начала воспроизведения видео. Цель разработчиков — довести стартовую задержку до 3 секунд, что сопоставимо с задержкой в вещательных сетях. Сегодня она может составлять 40 секунд и более. Отметим, что проблема связана именно со спецификой стандарта HTTP. В RTMP/Flash стартовая задержка на уровне вещательных сетей обеспечивалась без дополнительных усилий.

Технологии HTTP-стриминга в сочетании с CDN могут предоставить почти такое же качество видеоуслуг, как в вещательных сетях, и проблема задержки старта тоже близка к разрешению. Тем не менее проблемы, связанные со спецификой работы протокола TCP/IP и непредсказуемостью качества каналов открытого интернета, не устраняются, а просто сводятся к минимуму за счет вышеописанных механизмов. Причем уровни качества обслуживания, сравнимые с теми, которые обеспечиваются при использовании VPN или выделенного оптоволокна, остаются недостижимыми. Поэтому, несмотря на надежность TCP/IP, для профессиональной доставки видео чаще используются технологии на базе RTP-протокола, специально разработанного для передачи аудио/видео-трафика в реальном времени. Чаще всего в IP/RTP-пакеты инкапсулируются транспортные пакеты MPEG-2 (до 7 в одном IP-пакете), но могут использоваться и другие транспортные форматы, например, SDI.

1.4 Профессиональная доставка видео по интернет-каналам

Протокол RTP работает на базе UDP, но дополнительно передает информацию о порядковых номерах пакетов. Это позволяет восстановить порядок следования пакетов и выявить пропажи. Но для восстановления пакетов требуются дополнительные механизмы. Один из них —помехоустойчивое кодирование средствами PRO MPEG FEC.

Достоинство этого метода заключается в низкой вносимой задержке, обусловленной только дополнительными вычислениями. Она составляет от 100 до 500 мс. Тем не менее помехоустойчивое кодирование хорошо подходит только для каналов с прогнозируемым или более-менее стабильным уровнем потерь, таких как вещательные. В условиях непредсказуемости состояния транспортного канала PRO MPEG FEC неэффективен. При плохом канале он может не сработать, а при хорошем — неоправданно загрузить линию передачей ненужных контрольных бит. Поэтому PRO MPEG FEC в основном используется для переброса с одной головной станции на другую, при сомнительном качестве выделенного IP-канала или при передаче по спутниковому каналу в IP-формате, где отсутствует обратная связь.

Рассматривать это решение как надежный и эффективный способ доставки через открытый интернет нельзя.

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

Производитель сообщает только, что в технологии используется комбинация адаптивного помехоустойчивого кодирования, системы восстановления пакетов (Automatic Repeat reQuest, ARQ), параллельной доставки по нескольким каналам и бесшовного переключения при сбоях с одного канала на другой.

Эти инструменты могут применяться в разных сочетаниях в зависимости от требований к параметрам передачи. Если приоритетна скорость доставки, то, по словам разработчиков, платформу несложно настроить так, что прохождение потока будет занимать менее секунды вне зависимости от расстояния между передатчиком и приемником. А при другой конфигурации платформа может гарантировать надежность доставки 99,9999 % в отношении джиттера и потерь. Этот показатель подтвержден тестами. Скорость доставки при такой надежности падает, но по-прежнему может составлять конкуренцию вещательным сетям. Использование ARQ позволяет оператору точно задать уровень задержки из диапазона, достижимого при требуемой надежности, например, чтобы синхронизировать поток с другим, передаваемым по вещательному каналу. Платформа поддерживает конфигурации точка—точка или точка—многоточка.

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

2 КОДЕКИ ПЕРЕДАЧИ ВИДЕОДАННЫХ ЧЕРЕЗ ИНТЕРНЕТ

Кодеком называют программу, предназначенную для кодирования и декодирования данных мультимедиа (например, аудио- и видеопотоков). Каждый кодек «специализируется» только на одном типе данных. За обработку звуковых записей отвечают аудиокодеки, с видео работают видеокодеки (DivX, AVI, H.261, H.263, H.264, MPEG, RM, RV, WMV). Над роликами, в которых содержится и звук, и видео, работают оба типа кодеков.

2.1 Как работают кодеки

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

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

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

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

2.2 Процесс уменьшения кодеком размера файла

Сжатие видео и аудио происходит за счет устранения так называемой избыточности данных.

Предположим, что камера снимает со скоростью 30 кадров в секунду. Получается, за 1 секунду записи она сохраняет в своей памяти 30 уникальных изображений. А за 5 минут (300 секунд) она снимет целых 9000 кадров.

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

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

Компенсация движения – это всего лишь один из множества методов, применяемых видеокодеками при обработке записей с камер. Свои способы устранения избыточной информации используют и аудиокодеки. В результате работы кодеков из аудио- и видеопотоков удаляется большая часть «лишних» данных. За счет этого и происходит изменение объема закодированного файла.

2.3 Типы кодеков

Существует множество видео- и аудиокодеков, предназначенных для различных целей. Вот краткий список самых популярных кодеков:

H.264 (MPEG-4). Самый популярный видеокодек. Обладает высокими показателями сжатия и производительности. Поддерживается всеми современными устройствами, поэтому специалисты рекомендуют использовать именно его.

HAP. Кодек, позволяющий разгрузить центральный процессор и перенести нагрузку на видеокарту.

H.265 (MPEG-H, HEVC). Перспективный кодек, созданный в 2013 году с применением более эффективных алгоритмов, чем версия H.264. По ряду причин все еще не нашел спроса у онлайн-сервисов и производителей оборудования, поэтому является не популярным.

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

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

В основе современных кодеков лежат сложные комплексные алгоритмы сжатия данных, которые помогают свести потери информации к минимуму.

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

2.4 Типы медиаконтейнеров

Медиаконтейнер – это формат файла, который хранит данные и информацию о том, как данные будут сохраняться внутри файла.

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

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

OGM контейнер представляет собой полностью открытую систему, являющуюся частью проекта OGG. В нем можно разместить видеопоток любого формата и звук в формате Ogg, но также имеется поддержка треков в MP3 формате. Основное преимущество перед AVI заключается в возможности мгновенной перемотки и наличие встроенной коррекции ошибок.

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

MP4 разрабатывался группой MPEG для хранения видео и аудио информатики, а также поддерживает некоторые виды анимации. Для воспроизведения анимации в 2D и 3D форматах требуется установка специальных проигрывателей, но данные возможности все еще находятся на стадии тестирования. В MP4 контейнер сохраняют свои файлы большинство мобильных портативных устройств.

Quick Time контейнер в основном используется на платформе Apple. Файлы с этим контейнером имеют расширение MOV и содержать сжатое видео и звук высокого качества.

ЗАКЛЮЧЕНИЕ

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

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

Просмотров работы: 140