РЕКЛАМА
ИНФОРМАЦИЯ
Rambler's Top100 Рейтинг@Mail.ru

СЕТИ

Передача потокового видео в сетях: руководство THG. Часть I
Краткое содержание статьи: Производители потребительского сетевого оборудования очень часто рекомендуют использовать WLAN для трансляции видео по домашней сети. Но на практике всё обстоит гораздо сложнее. В первой части нашего руководства мы рассмотрим потоковое вещание видео и изучим влияние на него потерь пакетов и других сбоев.

Передача потокового видео в сетях: руководство THG. Часть I


Редакция THG,  16 ноября 2006
Страница: Назад  1 2 3 Далее


Эмуляция ошибок

Компания Apposite Technologies позволила нам воспользоваться её решением Linktropy 4500 WAN Emulator (рис. 1), чтобы ответить на возникшие вопросы. Устройство является аппаратным эмулятором, который позволяет выполнять настройки скорости входящего и исходящего потока, задержки и потери. Для настройки используется web-интерфейс, для доступа к которому необходимо подключиться к специальному порту Ethernet (или через клиентский компьютер после задания соответствующей опции в настройке). Если вам более по душе интерфейс командной строки, то можно подключиться через последовательный порт и получить консольный доступ.

Apposite Technologies Linktropy 4500 WAN Emulator

Рис. 1. Apposite Technologies Linktropy 4500 WAN Emulator.

Для работы 4500 нужно подключить его между любыми двумя сегментами Ethernet LAN. Для подключения на эмуляторе имеются два порта 10/100/1000: LAN A и B. По умолчанию устройство работает как прозрачный интеллектуальный мост с любым протоколом. Однако, при желании, его можно переключить в режим маршрутизатора для работы с IP, но в этом режиме не поддерживается работа с трафиком multicast-приложений.

При подключении на интерфейсе управления задаются желаемые параметры сети (рис. 2). Эмуляцию можно включить или отключить при помощи специальной кнопки на интерфейсе (Emulation On/Off) без изменения других настроек.

Как уже упоминалось ранее, можно настраивать пропускную способность, задержки и потери для всего трафика, проходящего через 4500 в обоих направлениях. Задержка (delay) - единственный параметр, который может не только быть фиксировано заданным (Constant), но и может динамически меняться с равномерным (Uniform) или нормальным (Normal) статистическим распределением. Вообще, неплохо было бы получить подобное динамическое изменение параметров потерь и, возможно, пропускной способности. Тогда мы смогли бы лучше эмулировать беспроводное соединение. Впрочем, посмотреть на эффект от потери кадров можно и в статическом режиме.

Экран эмуляции соединения Link Emulation

Рис. 2. Экран эмуляции соединения Link Emulation. Нажмите на картинку для увеличения.

4500 может отображать статистику трафика для обоих направлений (но только при включенной эмуляции), а также строить график скорости (рис. 3).

Экран статистики соединения Link Statistics

Рис. 3. Экран статистики соединения Link Statistics. Нажмите на картинку для увеличения.

Теперь можно подключать 4500 к сети. В нашем случае мы подключили порт LAN A к порту коммутатора LAN, а порт LAN B - к одному из компьютеров. Мы без проблем разобрались с работой 4500. Хотя, надо сказать, весьма долго искали опцию, которая включает доступ к web-интерфейсу администрирования из локальной сети, а не только через выделенный порт.

Размер потока и кодирование

На самом деле, есть два способа воспроизведения удалённых медиа-файлов. Можно просто взять ПК или другое устройство, способное работать с локальными и сетевыми файлами. Тогда достаточно будет найти в сети и запустить на воспроизведение нужный файл. Он будет воспроизводиться через ту сетевую файловую систему, которую использует ваша ОС. В большинстве случаев это будет SMB (Server Message Block), работающая на верхних уровнях стека TCP/IP.

Другой способ - использовать для воспроизведения медиа-сервер и протокол потокового вещания, который будет доставлять медиа-поток от сервера к плееру. Для передачи потока используются такие протоколы, как RTP и RTCP, работающие поверх UDP.

Отличие в том, что TCP/IP обеспечивает надёжную доставку, а UDP - нет, поскольку TCP имеет встроенные механизмы контроля доставки и целостности данных. Однако TCP нельзя назвать лучшим решением для передачи мультимедиа, поскольку этот протокол добавляет в пакеты данных большое количество служебной информации. Для TCP главное - безошибочно передать данные, а время доставки вторично.

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

Мы протестировали оба описанных выше способа, используя для этого три тестовых файла:

  • DVD VOB, кодек MPEG 2;
  • файл DivX с кодеком DX50 в разрешении 640x300 при 24 кадрах в секунду;
  • PSP avc1 (MPEG 4), разрешение 368x208 при 30 кадрах в секунду.

Для вещания и воспроизведения потока мы использовали VideoLAN VLC Media player 0.8.5. Выбор пал на плеер VLC, потому что он позволяет работать со всеми перечисленными типами файлов и может как просто открывать медиа-файл, так и воспроизводить поток с другого VLC-плеера, работающего в серверном режиме. Вещание выполнялось в режиме VLC UDP при настройках по умолчанию без перекодировки.

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

Чтобы узнать реальный битрейт воспроизводимого файла, нужно взять утилиту, показывающую поток данных, проходящий через сетевой адаптер. Мы испробовали несколько решений, после чего остановились на Hoo Technologies Net Meter. Утилита позволяет практически всё, что можно ожидать от измерителя скорости (кроме кнопки очистки графика; для этого приходилось перезапускать утилиту). Hoo Technologies Net Meter совместима с Win 98, ME, NT, 2000 и XP, имеет бесплатный тестовый период 30 дней, цена составляет $20.

На рис. 4 и 5 показаны графики, полученные при воспроизведении первых четырёх минут тестового VOB-файла в обоих режимах.

График для воспроизведения файла VOB (MPEG 2)

Рис. 4. График для воспроизведения файла VOB (MPEG 2).

Для VOB значение максимальной и средней скорости при воспроизведении потока оказались примерно на 20% ниже, чем при воспроизведении файла. При этом отношение максимальной скорости потока к средней в обоих случаях составило около 1,6.

График для воспроизведения VOB (MPEG 2) в потоковом режиме

Рис. 5. График для воспроизведения VOB (MPEG 2) в потоковом режиме.

На рис. 6 и 7 показаны графики, полученные при воспроизведении тестового DivX файла в обоих режимах.

График для воспроизведения файла DivX

Рис. 6. График для воспроизведения файла DivX.

В этот раз максимальный битрейт при воспроизведении файла DivX оказался примерно на 20% ниже, чем при воспроизведении потока, при этом средние значения практически не отличались. Отношение максимальной скорости к средней при файловом режиме составило 4,3, в потоковом - 4,8, максимум из всех тестов.

График для воспроизведения DivX в потоковом режиме

Рис. 7. График для воспроизведения DivX в потоковом режиме.

И, наконец, на рис. 8 и 9 показаны графики для PSP/MPEG4.

График для воспроизведения файла PSP

Рис. 8. График для воспроизведения файла PSP.

И снова средняя скорость для потока и для файла оказалась практически одинаковой, а максимальная для потока оказалась ниже, чем для файла, примерно на 10%. Отношение максимальной скорости к средней составило 2,8 для файла и 2,2 для потока.

График для воспроизведения потока PSP

Рис. 9. График для воспроизведения потока PSP.

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

Изначально мы также включили в тестирование файлы Quicktime 7 HD, сжатые при помощи H.264, но были вынуждены отказаться от этой затеи. VLC поддерживает H.264 лишь в экспериментальном режиме (подробнее здесь), и у нас возникли проблемы при воспроизведении различных файлов с сайта Apple. А от плеера Quicktime нам пришлось отказаться, поскольку он не смог открыть поток с сервера VLC.
Страница: Назад  1 2 3 Далее


СОДЕРЖАНИЕ

Обсуждение в Клубе Экспертов THG Обсуждение в Клубе Экспертов THG


РЕКЛАМА
РЕКОМЕНДУЕМ ПРОЧЕСТЬ!

История мейнфреймов: от Harvard Mark I до System z10 EC
Верите вы или нет, но были времена, когда компьютеры занимали целые комнаты. Сегодня вы работаете за небольшим персональным компьютером, но когда-то о таком можно было только мечтать. Предлагаем окунуться в историю и познакомиться с самыми знаковыми мейнфреймами за последние десятилетия.

Пятнадцать процессоров Intel x86, вошедших в историю
Компания Intel выпустила за годы существования немало процессоров x86, начиная с эпохи расцвета ПК, но не все из них оставили незабываемый след в истории. В нашей первой статье цикла мы рассмотрим пятнадцать наиболее любопытных и памятных процессоров Intel, от 8086 до Core 2 Duo.

ССЫЛКИ
Реклама от YouDo
YouDo: переезд в зеленограде недорого - смотреть здесь.