Проникновение мультимедийных данных во все сферы применения компьютерной техники стало возможным благодаря созданию и развитию специального аппаратного и программного обеспечения. Прорыв в аппаратных технологиях привел к значительному удешевлению памяти, появлению высокопроизводительных процессоров и графических контроллеров, быстродействующие каналы обмена данными которых способны обеспечивать живую анимацию с фотографическим качеством. Разработка новых программных методов, а также внедрение новых архитектур построения мультимедийных систем позволили сегодня приступить к широкому практическому внедрению хранилищ данных, предполагающих активное использование звука, высококачественных графических изображений и видео. Продолжая начатый в предыдущих выпусках журнала обзор решений в области обработки мультимедийной информации [1,2,3], познакомимся теперь с архитектурой медиа-серверов NetVideo, предложенной компанией Siemens Nixdorf.
Справочные базы данных, словари, энциклопедии и картографические системы стали уже традиционными сферами применения мультимедиа. Однако наиболее бурно развиваются мультимедиа в области интерактивных средств (IMM Environment), обеспечивающих возможность доступа к удаленным источникам данных в режиме реального времени. Подобные средства активно используются, например, в системах видео по запросу, интерактивном цифровом телевидении и для организации виртуальных университетов.
Общие требования к системам обработки медиаданных
Несмотря на явный прогресс в технологиях, возможностей многих современных рабочих станций оказывается явно недостаточно для того, чтобы в одиночку справится с огромным потоком мультимедийных (основных и управляющих) данных, возникающих при интерактивной работе в реальном масштабе времени. Объем одной секунды видео в формате PAL составляет 27-32 Мбайт, одной минуты - 2 Гбайт, одного часа - 115 Гбайт. В исходной форме такие файлы невозможно ни хранить, ни передавать без искажений даже по сетям с высокой пропускной способностью. Поэтому любое интерактивное медиаприложение предполагает работу с потоками упакованных данных и их декомпрессией "на лету" на станциях клиентов. Тем не менее несмотря на современные технологии сжатия IMM-системы оперируют массивами объемом в сотни терабайт и даже Пбайт, как в совместном проекте Siemens Nixdorf и SAT.1 по организации телевизионного цифрового архива Германии.
Сегодня не существует какого-либо одного типа устройств, полностью отвечающего требованиям интерактивной обработки медиа-данных по скорости и объему. Обычно используются различные комбинации из устройств оперативной, дисковой, оптической памяти и памяти на лентах. Напомним, что наиболее распространенный стандарт MPEG-1 требует скорости передачи данных не менее 1,544 Мбит/с (каналы типа T1), а более качественное видео MPEG-2, увеличивает этот порог до 6, а в некоторых приложениях - до 50 Мбит/с. Жесткие и оптические диски, а также электронная память могут, в отличие от устройств на магнитной ленте, обеспечить скорость передачи данных, соответствующую каналу T1.
Организация конфигураций систем хранения медиа-данных зависит в первую очередь от максимального количества каналов передачи цифровых данных, максимально допустимого времени задержки и распределения частоты обращения к различным фрагментам медиа-данных. Иными словами, если система предназначена для доставки нескольких десятков популярных видеосюжетов, большинство устройств памяти такой системы должно быть готово работать в режиме реального времени. Если система управляет тысячами различных сюжетов, существенно отличающихся по частоте обращения к ним, то, скорее всего, в ней заметную часть будут составлять устройства хранения данных на ленте, с которой временами извлекаются те или иные данные. Очевидно, что для управления такими потоками требуются большие объемы дисковых массивов и быстрые процессоры. А если эти данные нужны одновременно многим пользователям? Тогда требуется мощный диспетчер и быстрая сеть. И здесь не обойтись без медиа-серверов, специализирующихся на управлении мультимедийными массивами информации, кроме всего прочего включающего текст и исполняемый код для обеспечения интерактивного доступа и обратной связи.
От медиасервера требуется общая высокая производительность для обработки больших объемов медиаданных в реальном масштабе времени по большому числу параллельно работающих каналов ввода/вывода [1]. Сервер должен обеспечить постоянную скорость передачи данных в течение длительного времени, равного продолжительности видеосюжета. Примером могут служить системы цифрового телевидения, с которыми, как показывает практика, связаны наиболее сложные задачи в этой области. Особую роль медиасерверы играют при работе с "нелинейными" данными. В отличие от видеосюжетов, состоящих из последовательных сцен заданной продолжительности, "нелинейные" медиаданные состоят из небольших кусков, собираемых вместе по разным принципам для получения нового сюжета. Конечный результат такой обработки обычно отличается от запроса к запросу. В качестве примера можно привести видеосюжеты игр, которые набираются в зависимости от состояния игры на данный момент, или учебные данные, которые выстраиваются в сюжет в зависимости от подготовленности ученика и его способности воспринимать новую информацию в заданном темпе.
Медиасерверы напрямую могут управлять задержками доступа к памяти и задержками при переключении медиа-потоков, однако конечные пользователи располагаются далеко за пределами зоны влияния медиа-сервера, поэтому следует принимать во внимание и задержки управления - время передачи через сеть управляющей команды от удаленного блока управления к исполнительному блоку и обратно. В случае, когда управляющую команду инициирует сам медиа-сервер, он, скорее всего, уже осведомлен о предполагаемых задержках и в состоянии их компенсировать определенным образом. Критичными являются задержки при инициировании управляющих команд со стороны рабочей станции, поэтому медиа-сервер должен уметь отрабатывать эти команды за минимально возможное время.
Важную роль играет стоимость хранения данных, поэтому медиа-сервер должен хранить данные наиболее эффективным способом: работать с высокопроизводительной сетью, поддерживать быстрый и расширяемый внутренний канал ввода/вывода, быстро реагировать на интерактивные средства контроля, используемые при связывании медиа-данных с приложениями. Настоящий медиа-сервер должен содержать широкий спектр возможностей увеличения эффективности хранения данных, чтобы обеспечить работу самых разноплановых приложений.
Общая архитектура медиа-сервера
Поддержка мультимедийных потоков зависит от четырех ресурсов: каналов ввода/вывода для извлечения содержимого из памяти, канала для доставки извлеченных данных в сеть, переключателя для коммутации извлеченных из памяти данных с сетью и ресурсов центрального процессора, как общего управляющего устройства. Эти четыре ресурса необходимо наращивать пропорционально относительно друг друга, иначе будут потрачены лишние средства на дополнительные или неиспользуемые в полной мере ресурсы. Возможность масштабирования устройств хранения данных и управления - критичный параметр при объединении информационных программных продуктов с различными службами и приложениями. Полезная информация должна быть доступна всем потенциальным конечным пользователям. По мере роста объема этой полезной информации должны расти и пропускные способности каналов ввода/вывода, а также полоса пропускания средств коммутации. Баланс достигается при соблюдении правильных пропорций между этими параметрами и ресурсами центрального процессора, осуществляющего общее управление.
Модульный подход к архитектуре медиа-сервера, предполагающий разделение групп устройств поддержки мультимедийных потоков и устройств хранения и управления данными, позволяет решить проблему масштабирования системы в сбалансированном виде, даже если общие пропорции будут изменяться со временем. Один тип модулей может быть использован для масштабирования возможностей хранения/управления полезными данными, а другой - для поддержки мультимедийных потоков. Оба типа модулей должны обеспечивать увеличение функциональных возможностей центрального процессора и системы коммутации. Это позволяет приспособить систему к текущим требованиям, а потом легко расширять возможности системы обработки полезных данных или системы поддержки мультимедийных потоков, либо и того, и другого. В любом случае, добавление одного или нескольких типов модулей позволяет расширять возможности медиа-сервера, при сохранении правильного баланса между ресурсами.
Надежность - критичный параметр для медиа-сервера, который всегда должен иметь необходимый запас прочности на отказ и быстро восстанавливаться. При этом, учитывая опыт электронной индустрии - чем меньше компонентов добавлено в систему, тем больше ее среднее время наработки на отказ, - медиа-сервер должен обеспечивать высокую степень интеграции компонентов (при как можно меньшем их по количестве) и возможность "горячей" замены модулей.
Еще одним оценочным показателем медиа-серверов является их универсальность: открытая архитектура и поддержка работы с программным обеспечением различных производителей.
Что касается сетевой части, то медиа-сервер должен поддерживать сетевой ATM-интерфейс, что позволяет объединять локальные и региональные сети на основе ATM, а также передавать данные в формате MPEG, используя стандарты, разрабатываемые группой ATM и DAVIC. Однако и сети Ethernet по-прежнему являются распространенной сетевой технологией.
Медиа-сервер SNI NetVideo
Сегодня все большее число компаний используют механизм WWW не только для доставки и передачи информации извне, но и для внутренних нужд, задействуя корпоративные сети. NetVideo - это вариант клиент-серверного решения задач хранения, выборки, передачи и представления цифровых аудио/видео данных в intranet. Основной областью применения NetVideo являются локальные кабельные сети, поддерживающие интерактивное телевидение и доступ к WWW для домашних пользователей. Не менее актуально для NetVideo обслуживание предприятий, эксплуатирующих intranet, поскольку это решение позволяет интегрировать видеоклипы со средствами WWW.
Система NetVideo версии V2.1 построена по принципу клиент/сервер и предназначена для проигрывания медиа-данных в сетях intranet, что позволяет приложениям выбирать с медиасервера данные для воспроизведения их на рабочей станции в режиме реального времени (рис. 1).
Структурная схема NetVideo
По сути, NetVideo - это программное обеспечение для медиа-сервера, обеспечивающее хранение и доставку в реальном времени цифрового видео форматов MPEG-1 и MPEG-2 при достаточно разумных затратах. Интегрированный интерфейс MS Active Movie позволяет использовать аппаратно-программные декодеры MPEG, а также работать с дополнительными файлами .DAT, .WAV и .AVI. Одним из основных достоинств NetVideo, несомненно, является то, что клиентская часть решения интегрирована с популярными у пользователей ПК WWW-браузерами Netscape и т.д. Это позволяет, установив медиа-сервер в корпоративной сети, совместно использовать механизм WWW и интерактивное видео в одном, хорошо известном программном приложении, при этом пользователи получают одновременный доступ к ресурсам WWW видеоданным с корпоративного медиа-сервера. Все видеоданные представлены как кнопки на HTML-страницах и становятся доступны после простого щелчка мышью.
Получая медиа-данные, конечные пользователи как правило, используют команды, типичные для работы с видео и аудиозаписями: "начать проигрывание", "остановить медиасюжет", "выполнить паузу" и пр. Все эти команды поддерживаются специальным средствами, которые в большинстве своем состоят из серверной части, расположенной на одном или нескольких аппаратных медиа-серверах, и клиентской части, расположенной на рабочих станциях. Именно эту часть огромной системы генерации, доставки и управления медиа-данными видит перед собой конечный пользователь, и от того, насколько эта система будет удобна и привычна для него, зависит в конечном счете ее коммерческий успех.
Все видеосюжеты, которые должны быть показаны клиенту, запрашиваются у центрального медиасервера, инициирующего процесс проигрывания, а затем доставляющего клиенту данные в режиме реального времени. Медиа-данные на клиентской стороне декодируются и отображаются на экране с постоянной скоростью, при этом не требуется хранить их на жестком диске клиента. Этот подход отличается от традиционных, в которых содержимое, доставленное с сервера, хранится перед отображением у клиента.
Серверная часть NetVideo способна доставлять медиа-данные параллельно нескольким клиентам. В зависимости от конфигурации сети (ее пропускной способности, расположения медиа-сервера и т.д.), а также качества медиа-данных общее количество поддерживаемых медиа-потоков изменяется от нескольких единиц до нескольких десятков на одну инсталляцию пакета (Таблица 1). Пользователь, работая с клиентской частью, имеет в своем распоряжении набор кнопок, расположенных в окне просмотра NetVideo. Они обеспечивают стандартные возможности управления: "воспроизведение", "пауза", "стоп", а также более сложные функции - "быстрая прокрутка вперед", "быстрая прокрутка назад". Отдельно надо отметить функцию произвольного поиска, которая дает пользователю возможность напрямую указать нужную точку в сюжете. Указание ведется с помощью бегущего индикатора и счетчика времени воспроизведения.
Таблица 1 | ||
Тип системы | Число параллельных потоков | Назначение |
RM 300 | 32 | Системы презентации и разработки |
RM 400 (1 CPU ) | 40 | Видео-сервер (entry) |
RM 400 (4 CPU) | 80 | Видео-сервер (medium) |
RM 600-E20 (4 CPU) | 140 | Видео-сервер (large) |
RM 1000 (1 узел) | 100 | Масштабируемый видео-сервер |
Окно просмотра NetVideo встроено в Netscape Navigator, что дает возможность разработчику приложений полную свободу при проектировании интерфейсов, специфических для конкретных групп пользователей. Окно, где воспроизводится видеосюжет, может быть легко вставлено в HTML страницу с помощью команды вставки объекта браузера Netscape. Параметры окна, используемые в команде вставки объекта, включают указатель на файл с описанием запрашиваемого видеосюжета, высоту и ширину окна.
Медиа-сервер NetVideo позволяет работать со всеми основными протоколами, используемыми для построения корпоративных сетей: Ethernet, FDDI и ATM, что обеспечивает возможность его применения и в гетерогенных средах. Для того чтобы расширить возможности доставки медиа-данных в intranet, допускается использовать несколько медиа-серверов, каждый из которых обеспечивает доступ Web-приложений к одному Web-серверу. Поскольку NetVideo организован на основе архитектуры клиент-сервер, вся информация хранится на сервере и выдается только по запросу клиента. Программное обеспечение клиентской части NetVideo состоит из средства просмотра медиа-данных, которое запрашивает эти данные с медиа-сервера, получает их по сети, передает аппаратуре восстановления данных из формата MPEG-1 и позволяет пользователю осуществлять контроль и управление.
Программное обеспечение серверной части NetVideo - это средство подкачки видеоданных, обеспечивающее чтение данных из дисковой памяти и пересылку их клиенту в режиме реального времени. Со стороны клиента это средство подкачки управляется специальными командами, позволяющими затормозить процесс передачи данных, возобновить его, сделать паузу и совсем прекратить передачу. Допускается множественная инсталляция на несколько медиа-серверов в сети. NetVideo полностью интегрирован в клиент-серверную архитектуру Netscape - инсталляция NetVideo требует наличия на всех рабочих станциях браузера Navigator и хотя бы одного Netscape Web-сервера (рис. 2). Допускается также наличие нескольких Web-серверов в одной сети.
Инсталляция NetVideo в сетях Intranet
Серверная часть NetVideo обеспечивает расширенные возможности регистрации - вся учетная информация собирается ежедневно и хранится на сервере до тех пор, пока администратор не удалит ненужные журнальные файлы. Регистрационная информация включает сообщения об ошибках и отладочные сообщения, используемые при восстановлении конфигурации. Здесь же хранится статистика по использованию NetVideo. Система NetVideo запускается автоматически при загрузке медиа-сервера и в процессе работы постоянно контролируется операционной системой. В случае нарушения работоспособности происходит автоматическая перезагрузка. Состояние работоспособности NetVideo проверяется и фиксируется в журнальном файле один раз в несколько секунд.
Для того чтобы гарантировать плавную передачу медиа-данных, на сервере используются специальные утилиты, которые позволяют копировать данные из внешней памяти без нарушения режима работы средства подкачки видеоданных в реальном времени.
Пока NetVideo поддерживает форматы MPEG-1 и MPEG-2. В силу того, что оборудование большинства клиентских станций не в состоянии поддерживать восстановление видеоданных из формата MPEG-2, при инсталляции NetVideo применяется только стандарт MPEG-1.
ие поддержки H.263 позволит работат Protocol) и RSVP (Resource Reservation Protocol) вместе позволят в реальном времени работать с сетями Ethernet. Интеграция NetVideo с NT расширит системную базу медиа-сервера и даст возможность использовать его вместе с широким спектром приложенийдля ПК. P с линиями ISDN.
Заключение
Медиа-серверы NetVideo уже нашли сегодня широкое применение в таких областях, как корпоративные информационные системы, электронная коммерция, магазины на дому, видео по запросу для системы отелей, информационные системы для жителей городов, телерадиовещание на уровне стран и регионов (врезка 2). Так, к примеру, на всемирной выставке EXPO2000, где ежедневно бывает до 300 тысяч посетителей, в качестве системы для хранения и доставки видеоданных планируется использовать NetVideo на серверах RM400-C90. Вся сеть планируется как intranet с высокой пропускной способностью, обеспечивающей функционирование многих мультимедийных приложений.
Базовая конфигурация на основе NetVideo предусматривает:
- для клиента: компьютер Pentium 60, 16Мбайт памяти, аппаратный MPEG-1 декодер, сетевой адаптер (Ethernet, ATM, FDDI), Netscape Navigator и ОС Win95;
- для сервера: RM200 - RM1000, 64-128 Мбайт памяти, периферийные устройства в зависимости от приложения, ОС Reliant UNIX, Netscape Webserver.
Дальнейшее развитие архитектуры SNI NetVideo будет осуществляться по следующим направлениям:
- поддержка различных аппаратно-программных средств восстановления MPEG-данных на рабочих станциях;
- поддержка программного продукта Multimedia PC, обеспечивающего оперативный удаленный контроль;
- расширение средств проектирования окон просмотра медиа-данных;
- интеграция взаимосвязи между NetVideo клиентом и сервером на основе использования со стороны сервера протокола NS-API;
- использование Netscape Commerce API на Web-сервере, что обеспечит взаимодействие с программными продуктами других разработчиков.
Телевизионный цифровой архив емкостью 1 Пбайт
Компания SNI и телевещательная корпорация SAT.1 начали работы по созданию цифрового видео-архива для немецкоговорящих стран. Архив будет использоваться для создания телепрограмм, а объем данных, постоянно хранящихся в этом архиве, составит 1 Пбайт.
Специальная система поиска позволяет избавить редакторов SAT.1 от необходимости работы с аналоговыми носителями (МЛ, МД, кассеты), которые к 2002 г. будут полностью заменены цифровым архивом. Записи данного архива не подвержены старению и могут быть воспроизведены в любой момент времени без потери качества.
Доступ к архиву возможен одновременно по необходимому, наращиваемому числу каналов.
Литература
- В.Коваленко. Медиа-серверы. Открытые системы, # 4, 1996 с. 71-77
- В.Черный. Alpha на пути к видео. Открытые системы, # 2, 1997 с. 77-80
- В.Черный. Серверы MediaStreamer как инструмент в решениях IBM. Открытые системы, # 4, 1997 с. 69-74