Как решенить проблему
Вглядимся пристальнее
Потоки данных и серверы
Программы для потоковой передачи файлов

Представим себе: наступил первый понедельник месяца. В течение полутора часов несколько сотен, а то и тысяч сотрудников подключаются к интрасети, щелкают мышью на пиктограмме сообщений от управляющего и загружают видеофайл объемом 6-8 Мбайт. Нечего и говорить, что большинство сетей вряд ли выдержит такую нагрузку.

Аудио- и видеофайлы обычно имеют большие объемы: размер неуплотненного файла, содержащего одну минуту звука с качеством уровня компакт-диска, составляет около 10,5 Мбайт. Даже при хорошей степени сжатия (скажем, 10:1) объем 10-минутной записи будет достигать 10 Мбайт. Это значительная величина, особенно если такой файл загружают из сети одновременно множество пользователей. С видеоинформацией дело обстоит еще хуже. Одна секунда (!) неуплотненного видеосигнала занимает объем 27 МБайт.

Как решенить проблему

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

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

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

Первым продуктом, в котором была воплощена технология потоковой передачи звука, оказался пакет RealAudio компании Progressive Networks. Выпущенный в начале 1995 г., он сразу же стал сенсацией: с его помощью впервые появилась практическая возможность передачи звукового файла любого размера. Конечно, качество оставляло желать лучшего, но программа работала.

Теперь на рынке имеется программа RealAudio 3.0, обеспечивающая несравненно более высокое качество звука, а также множество других конкурирующих с ней продуктов. Выпущены вспомогательные программы для любых браузеров, дополнения к Web-браузеру Navigator компании Netscape Communications и компоненты ActiveX к пакету Internet Explorer корпорации Microsoft. Вдобавок ко всему этому на рынок уже выплеснулась первая волна продукции для потоковой передачи видеоинформации.

Вглядимся пристальнее

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

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

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

Видеофайлы передавать еще труднее, чем звук, так как здесь требуется более высокая степень компрессии данных. Поэтому уровень качества файлов в программах для передачи видео довольно низок, а размер изображения - невелик. Например, программа VDOLive корпорации VDONet позволяет передавать изображение размером всего 240х180 пикселов, а пакет StreamWorks компании Xing Technologies - 352х240 пикселов.

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

Потоки данных и серверы

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

Важен и способ связи между клиентом и сервером. Системы потоковой передачи, базирующиеся на серверах (например, RealAudio и StreamWorks), используют протокол пользовательских дейтаграмм UDP (User Datagram Protocol), входящий в набор TCP/IP и предназначенный для потоковой передачи данных. Благодаря этому, упомянутые продукты потенциально обеспечивают более высокую скорость передачи, по сравнению с теми программами, которые не используют сервер. В последнем случае, то данные передаются по протоколу HTTP, базирующемуся на протоколе ТСР, а поскольку в нем задействованы механизмы коррекции ошибок, то передача данных происходит значительно медленнее.

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

Процесс установки и настройки наиболее распространенных пакетов для передачи звуковых файлов (например, InternetWave компании VocalTec, RealAudio и TrueSpeech Internet компании DSP Group) достаточно прост. Однако документация к этим программам не всегда удачна.

Компоненты аудиопакетов для кодировки файлов и их воспроизведения на компьютере клиента поставляются бесплатно. Сейчас имеются версии программ для платформ Macintosh, Unix, Windows 3.x, 95 и NT, хотя только TrueSpeech и RealAudio имеют версии для каждой из этих платформ.

Только RealAudio и StreamWorks используют для своей работы сервер. Цены на эти продукты определяются числом одновременно работающих клиентов и поддерживаемой скоростью передачи данных. Минимальная цена на серверы для RealAudio составляет чуть меньше 2500 дол. для 10 клиентов, а программа StreamWorks стоит 3500 дол. при скорости передачи 1,5 Мбит/с.

Продукты для передачи видеоинформации стоят гораздо дороже. Минимальная цена StreamWorks для видео составляет 3500 дол. при скорости передачи 1,5 Мбит/с, и к этому нужно добавить стоимость компонента для декодирования файлов, то есть еще 6500 дол. Это единственный продукт, который обеспечивает декодирование в реальном времени. Другая серьезная программа для потоковой передачи видеоданных - пакет VDOLive; его минимальная стоимость - 1995 дол. для одновременной работы 10 пользователей.

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


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

Продукт
Компания
Телефон
URL
Программы для потоковой передачи звуковых файлов
InternetWave
VocalTec
(201) 768-9400
vocaltec.com
RealAudio
Progressive Networks
(206) 447-0567
realaudio.com
StreamWorks
Xing Technology
(805) 473-0145
xingtech.com
ToolVox
Voxware
(609) 514-4100
voxware.com
TrueSpeech Internet
DSP Group
(408) 986-4300
dspg.com
Программы для потоковой передачи видеофайлов
VDOLive
VDONet
(415) 846-7700
vdolive.com
StreamWorks
Xing Technology
(805) 473- 0145
xingtech.com
Vosaic
Vosaic
(310) 352-3147
vosaic.com
InterVu MPEG Player
InterVu
(619) 350-1600
intervu.com
IP/TV
Precept Software
(415) 845-5200
precept.com
Программы для потоковой передачи мультимедиа
Shockwave
Macromedia
(800) 470-7211
macromedia.com
Enliven
Narrative Communications
(617) 290-5300
narrative.com
PointPlus
Net-Scene
(972) 955-8260
net-scene.com

Поделитесь материалом с коллегами и друзьями