Методы сжатия мультимедиа-данных в WWW и Online Streaming своими руками | ||||
| ||||
ВведениеРассмотренные нами в предыдущих статьях настоящего цикла примеры в основном рассматривали проблемы коммуникационного характера. Однако уже становится ясным, что CD-ROM постепенно уступают свое место Streaming-технологиям. Это особенно касается мультимедийных ресурсов. Если раньше звуковые дорожки и видеосюжеты были слишком «тяжелы» для Web, то современные скорости передачи данных по Всемирной компьютерной сети в совокупности с новыми технологиями сжатия мультимедиа-данных, а также постоянно нарастающий темп перехода в on-line диктуют совсем другие условия. Теперь ни для кого не секрет, что большинство мультимедиа-ресурсов доступно также и в режиме on-line. Причем если раньше это делалось в основном для скачивания с последующим просмотром (прослушиванием), то теперь это стало доступно также и в режиме потокового воспроизведения. В настоящей статье мы ознакомимся с современными методами компрессии видео и аудио для передачи последних по сетям Интернет в режиме потокового воспроизведения и попробуем самостоятельно разработать систему потокового воспроизведения аудиоданных. Кроме того, нами будут подробно рассмотрены основные принципы, положенные в основу алгоритмов сжатия мультимедиа-данных, позволяющих сжимать последние до размеров, реальных для передачи по Интернету. | ||||
Классификация типов сжатия данныхДля начала давайте определим степени сжатия данных, с тем чтобы в дальнейшем выбрать наиболее приемлемые для передачи информации через Web. Проведем классификацию типов сжатия по степеням потери качества. 1. Сжатие без потерь данныхПолученное после декомпрессии изображение будет в точности (побитно) совпадать с оригиналом. Примером такого сжатия может служить формат GIF для статической графики и GIF89a для видео. 2. Сжатие с потерями качестваПотери качества могут наблюдаться в случае, если в процессе сжатия информация была утеряна. Однако с точки зрения человеческого восприятия сжатием с потерями следует считать лишь то сжатие, при котором на глаз можно отличить результат сжатия от оригинала. Таким образом, несмотря на то, что два изображения – оригинал и результат сжатия с использованием того или иного компрессора — побитно могут не совпадать, разница между ними будет совсем незаметной. Примерами здесь могут служить алгоритмы JPEG для сжатия статической графики и алгоритм M-JPEG для сжатия видео. 2.1. Сжатие без потерь с точки зрения восприятияДанные после декомпрессии побитно не совпадают с исходными. Будучи сжатием с потерями качества, формально подобная схема сжатия с точки зрения восприятия ее человеком может считаться схемой без потерь. Большинство технологий сжатия с формальной потерей качества имеют так называемый фактор качества сжатия (ФКС), характеризующий именно качество восприятия и варьирующийся в пределах от 0 до 100. При факторе качества сжатия, равном 100, характеристики восприятия качества декомпрессированного видео по восприятию почти неотличимы от оригинала. 2.2. Сжатие с естественной потерей качестваJPEG, MPEG и другие технологии сжатия с потерей качества иногда сжимают, переступая за грань сжатия без потерь с точки зрения восприятия видеоинформации. Тем не менее сжатые видео- и статические изображения вполне приемлемы для адекватного восприятия их человеком. Иными словами, в данном случае наблюдается так называемая естественная деградация изображения, при которой теряются некоторые мелкие детали сцены. Похожее может происходить и в естественных условиях, например при дожде или тумане. Изображение в таких условиях, как правило, различимо, однако уменьшается его детализация. 2.3. Сжатие с неестественными потерями качестваНизкое качество сжатия, в значительной степени искажающее изображение и вносящее в него искусственные (не существующие в оригинале) детали сцены, называется неестественным сжатием с потерей качества. Примером тому может служить некоторая «блочность» в сильно сжатом MPEG,е и в других компрессорах, использующих технологию БДКП. Неестественность заключается в первую очередь в нарушении самых важных с точки зрения восприятия человеком характеристик изображения — контуров. Опыт показывает, что именно контуры позволяют человеку правильно идентифицировать тот или иной визуальный объект. Отметим также, что все широко используемые видеокомпрессоры используют технологии сжатия с потерями качества. При различных значениях ФКС может дать на выходе качество видео как без потерь с точки зрения восприятия, так и с неестественными потерями. | ||||
Сжатие мультимедиа-данных для их представления в WebОчевидно, что для представления информации в Web требуется качество без потерь с точки зрения усвоения или в крайнем случае — с естественными потерями качества. Тем не менее до последнего времени практически не существовало алгоритма, позволяющего передавать видео приемлемого качества в потоковом режиме по сети за реальное время. С этой точки зрения колоссальным прорывом явилось появление таких видеостандартов, как MPEG-4 и DivX. Ну а по части звука — лучше старого и всем известного MP3 пока ничего не придумано. Итак, давайте детально рассмотрим принципы, лежащие в основе каждого из перечисленных алгоритмов и способов компрессии мультимедийных данных. | ||||
MPEG-4. Что это такое?Основы разработки стандарта MPEG-4 (http://www.cselt.it/mpeg/standards/mpeg-4/mpeg-4.htm) были заложены группой ученых из MPEG еще в 1993 году, и уже к концу 1998 года произошло утверждение первого стандарта. Впоследствии стандарт неоднократно дорабатывался, в 1999 году получил официальный статус и затем был стандартизован со стороны ISO/IEC. Целью создания MPEG-4 была выработка стандарта кодирования, который обеспечил бы разработчиков универсальным средством сжатия видеоданных, позволяющим обрабатывать аудио- и видеоданные как естественного (снятого с помощью видеокамеры или записанного с помощью микрофона), так и искусственного (синтезированного или сгенерированного на компьютере) происхождения. Это обстоятельство кардинальным образом отличает MPEG-4 как видеостандарт от его предшественников MPEG-1 и MPEG-2, в которых эффективное сжатие данных достигается лишь применительно к естественному видео и аудио. | ||||
Принципы работы алгоритма сжатия MPEG-4MPEG-4 обеспечивает необходимые средства для описания взаимного расположения объектов (элементов) сцены в пространстве и времени с целью их последующего представления потенциальным зрителям в ходе воспроизведения. Разумеется, такая трактовка предполагает разделение сцены на составляющие ее объекты, что само по себе является весьма трудоемкой задачей, к которой по сути и сводится MPEG-4-кодирование. Кроме того, при разработке стандарта MPEG-4 решались проблемы обеспечения воспроизведения объектов сцены в различных условиях пропускной способности сетей передачи данных. Был разработан формат, допускающий «универсальный доступ» к мультимедийной информации с учетом возможных ограничений полосы пропускания, возникающих в сетях при самых разных условиях. Другими словами, один и тот же видеофрагмент может быть представлен с различным качеством для различных каналов в зависимости от их пропускной способности. Кодирование в формате MPEG-4 раздельное. Это означает, что для кодирования видеосоставляющей применяются одни способы и алгоритмы сжатия, а для кодирования аудиосоставляющей – другие. Естественной издержкой такого специфичного подхода к сжатию является необходимость сопоставления двух потоков в ходе их последующего совместного воспроизведения в режиме реального времени. | ||||
Основы сжатия видеоданных в MPEG-4В основу функций сжатия видеосоставляющей стандарта MPEG-4 была положена технология применения целого арсенала алгоритмов сжатия, применяемых как в зависимости от исходного качества и природы сжимаемого видеофрагмента, так и в совокупности и (или) последовательно обрабатывающих исходное видео с помощью различных по природе алгоритмов сжатия. Это методы прогрессивного и словарного кодирования, кодирования с использованием чересстрочного сканирования, технологии RLE (Run Length Encoding), технологии векторной квантизации (Vector Quantization), а также всевозможные преобразования (Фурье, Дискретное Косинусное, Wavelet). | ||||
Основы MPEG-кодирования видеоПервоначальное кодирование видео (имеющего естественную природу, см. выше) в MPEG-4 осуществляется аналогично MPEG-1 и MPEG-2. В этом смысле основа кодирования у группы алгоритмов MPEG общая. Основные идеи, применяемые в ходе сжатия видеоданных с ее помощью, следующие:
Кроме того, основная идея заключается в разделении кадров на опорные (I — intra), а также так называемые предсказанные (то есть строящиеся на основе опорных) — как однонаправленные (P – predicted), так и двунаправленно предсказываемые (B – bi-directionally predicted) кадры (под направлением здесь следует понимать временную последовательность представления кадров видео). Однако MPEG-4, кроме рассмотренного традиционного MPEG-кодирования, основанного на прямоугольных кадрах, использует технологию так называемого фрактального или контурно-основанного кодирования изображений. | ||||
Основы фрактального кодирования изображенийДля понимания принципов контурно-основанного кодирования изображений, применяющегося в MPEG-4, уясним себе несколько простых идей. Контур — это линия, очерчивающая границу фигуры на плоскости. Текстура – представление структуры поверхности изображения. Контурно-основанное кодирование изображений представляет изображения как контуры, огибающие текстурные области (области, заполненные текстурами). А так как контуры, как правило, совпадают с границами изображаемых объектов сцены, то задача контурно-основанного кодирования сводится к задаче объектно-основанного кодирования изображений, а именно: изображение представляется набором составляющих его объектов. После того как контуры и текстуры вычленены из изображения, контуры могут быть представлены как контрольные точки «сплина» (spline) – полиномиальной функции, используемой для представления кривых, «обтягивающих» тот или иной контур. Текстуры же, в свою очередь, могут быть представлены в качестве коэффициентов какого-либо пространственного преобразования частоты (например, дискретного косинусного или дискретного wavelet-преобразования). Сжатие же может быть достигнуто путем скалярной или векторной квантизации контрольных параметров «сплин-а» и коэффициентов преобразования, используемых для представления текстуры. Но не будем вдаваться в математические детали, используемые в ходе кодирования видео. Что и говорить, задача контурно-основанного кодирования в настоящее время является одной из наиболее перспективных и, пожалуй, одной из весьма трудоемких (с точки зрения вычислений). Говоря простыми словами, MPEG-4 обеспечивает возможность индивидуально кодировать специфические элементы в рамках видеосюжета. Поскольку разные объекты, используемые в видеосюжете, как правило, имеют различную природу (текстурный фон, персонажи переднего плана, мелкие детали сцены), то совокупность различных по природе способов сжатия, используемых для разных типов данных, в зависимости от их природы, позволяет добиться наиболее высокой степени сжатия. | ||||
Индивидуальные объектыОсновным отличием MPEG-4 сжатия от предшествующих алгоритмов сжатия видео MPEG-1 и MPEG-2 является не сжатие последовательности прямоугольных кадров, а использование принципа кодирования индивидуальных объектов произвольной формы. Кодирование формы, или альфа-канала, означает, что произвольная форма в сцене MPEG-4 может отслеживаться посредством двоичной альфа-карты, определяющей принадлежность данного пиксела к объекту. Это особенно полезно для разработчиков интерактивного контента по нескольким причинам. Во-первых, видеоинформация не обязательно должна быть оформлена в виде прямоугольных кадров. Во-вторых, индивидуально закодированные видеоформы можно интегрировать с другими объектами, такими как 2D-, 3D- или естественный видеофон, образуя сцены. Наконец, особый интерес для разработчиков представляет возможность использования отдельных объектов в качестве элементов интерактивного действия. Примерами могут служить простые взаимосвязи в рамках сюжета или смоделированные персонажи, реагирующие на действия пользователя. Результатом такого объектного подхода стала возможность интеграции естественных и синтетических видеоисточников. Стандарт MPEG-4 содержит средства интеграции для кодирования растровых видеоизображений и средства создания и интеграции синтезированных 2D- и 3D-элементов, включая геометрические формы и объекты, текст и синтезированную графику. | ||||
Что такое DivX?История возникновения этой аббревиатуры весьма таинственна. Дело в том, что изначально аббревиатурой DivX назывались обычные DVD-диски с ограниченным количеством возможностей просмотра видеофильма, однако не так давно ее смысл значительно изменился. Итак, речь идет о совершенно иной технологии, для обозначения которой используется аббревиатура DivX. Как утверждают источники (http://www.news.cnet.com/news/0-1005-200-1591614.html?tag=st), двое хакеров явили миру новый формат сжатия видеофайлов, названный ими DivX. На самом деле DivX является всего лишь взломанной версией Microsoft MPEG-4 Video Codeс (Low-Motion-кодек — это взломаная версия 4.1.00.4920 MPEG4v3, а High-Motion-кодек – 4.1.4917 MPEGv3). Как утверждают авторы, они его слегка доработали и улучшили. В частности, они сделали возможным вывод файлов после компрессии в формате *.avi, в то время как кодек MPEG-4 Video Codec поддерживает формат *.asf и устанавливается вместе с Windows Media Player или Windows Media Tools. То есть фактически данный алгоритм официально не поддерживается, по крайней мере в таком исполнении, тем не менее DivX базируется на формате MPEG-4. Прелесть алгоритма DivX заключается в том, что фильм длительностью до трех часов можно сжать до объема, умещающегося на одном CD, что вдвое меньше, чем у MPEG-1, при этом результатом будет более качественная картинка, особенно в плане разрешения. Появившиеся на рынках диски с записью фильмов в стандарте MPEG-4 — случай подобного использования алгоритма DivX. Их стоимость сегодня составляет от 50 до 100 рублей в зависимости от качества и содержимого. В качестве источника, как правило, используется DVD. Большинство фильмов записано в формате 16:9, дает не лучшую картинку на мониторе, однако качество таких фильмов, как правило, выше, чем фильмов с обычным форматом 4:3. Кроме того, чем меньше продолжительность фильма, тем большую скорость цифрового потока можно использовать, заполняя все пространство диска CD. Разумеется, и качество в этом случае будет выше. Предположим, к вам какими-то загадочными путями попал DVD-диск с хорошим фильмом. Благодаря технологии DivX вы можете сохранить файл фильма у себя, скажем, на жестком диске, да еще и прилично сжать его по объему, правда с некоторой потерей качества. В дальнейшем полученный сжатый файл можно записать на CD-R, как и любой другой файл, и использовать его в нужное время. Если же у вас нет желания или возможности заниматься самостоятельной компрессией, то вполне можно использовать готовую продукцию, объемы которой стремительно растут. Если говорить о недостатках DivX, то нельзя не отметить отсутствие возможности просмотра полученного фильма на обычном домашнем телевизоре. Правда, ситуация может оказаться разрешимой, если у вас имеется видеокарта с неплохим TVOUTом, однако даже в этом случае изображение будет слегка размытым и далеким от совершенства. Подробную информацию по DivX можно найти здесь (http://www.divx-digest.com/). | ||||
О MPEG Layer 3, и не толькоДля эффективного кодирования аудиоданных в Web применяются наиболее прогрессивные методы, в основе которых лежит свойство их универсальности и независимости от качества исходного звукового фрагмента, равно как и результирующего, в зависимости от установок, применяемых в ходе сжатия. В настоящее время наиболее известны Audio MPEG, PASC и ATRAC. Все они используют так называемое кодирование для восприятия (perceptual coding), при котором из звукового сигнала удаляется информация, малозаметная для слуха. В результате, несмотря на изменение формы и спектра сигнала, его слуховое восприятие практически не меняется, а степень сжатия оправдывает незначительное уменьшение качества. Такое кодирование относится к методам сжатия с потерями, когда из сжатого сигнала уже невозможно точно восстановить исходную волновую форму. Приемы удаления части информации базируются на особенностях человеческого слуха, называемой маскированием: при наличии в спектре звука выраженных пиков (преобладающих гармоник) более слабые частотные составляющие в непосредственной близости от них на слух практически не воспринимаются (маскируются). При кодировании весь звуковой поток разбивается на мелкие кадры, каждый из которых преобразуется в спектральное представление и делится на ряд частотных полос. Внутри полос происходит определение и удаление маскируемых звуков, после чего каждый кадр подвергается адаптивному кодированию прямо в спектральной форме. Все эти операции позволяют значительно (в несколько раз) уменьшить объем данных при сохранении качества, приемлемого для большинства слушателей. Каждый из описанных методов кодирования характеризуется скоростью битового потока, с которой сжатая информация должна поступать в декодер при восстановлении звукового сигнала. Декодер преобразует серию сжатых мгновенных спектров сигнала в обычную цифровую волновую форму. Audio MPEG — группа методов сжатия звука, стандартизованная MPEG (Moving Pictures Experts Group — экспертной группой по обработке движущихся изображений). В любом видео- или аудиопотоке содержится значительное количество избыточной информации, которая независимо от ее присутствия или отсутствия не может быть воспринята человеческим ухом или глазом. Информация в MPEG-файле записана последовательными блоками — кадрами (frames), которые последовательно считываются, а затем декодируются. Естественно, что чем больше поток, тем большее количество информации остается в файле и соответственно тем большее представление об оригинальном звуке в нем содержится. Аудиоинфоpмация, сжатая по данной схеме, может пеpедаваться потоком (streaming), а может храниться в файлах формата MP3 или WAV-MP3. Отличие второго от первого состоит в наличии дополнительного заголовка WAV-файла, что позволяет при наличии MP3-кодека в системе для работы с таким файлом использовать стандартные средства Windows. Основная идея, на котоpой основаны все методики сжатия аyдиосигнала с потеpями, — отказ от кодиpования тонких деталей звyчания оpигинала, лежащих вне пpеделов возможностей человеческого слyха. Звуки, находящиеся на границах резких перепадов уровня: после очень громкого звука на протяжении небольшого отрезка времени около 100 мс и перед ним на протяжении 5 мс, человеческое ухо неспособно воспринимать другие, более тихие звуки. Говоря об этом, обычно имеют в виду возможности сознательного восприятия, игнорируя часто встречающийся эффект подпорогового восприятия различных мелких, сравнительно тихих деталей; с их помощью, например, нередко обеспечивается эмоциональная окраска композиции. Но если пpи кодиpовании все же огpаничиваться только действительно невоспринимаемыми потерями, то можно говоpить о сохpанении исходного качества закодиpованного аyдио. Как известно, наиболее важную роль в передаче звукового сигнала играют вершины огибающей, в то время как переходами вблизи нулевой отметки можно пожертвовать (см. рис. 1). После такой обработки звуковая выборка без труда сжимается с помощью обычных алгоритмов кодирования LZ или Huffman. Но полученная ширина потока не yдовлетвоpила разработчиков. Ради дальнейшего уменьшения объема потока была разработана подробная психоакyстическая модель возможностей человеческого слуха, и из потока стала исключаться информация о деталях звука, полностью или частично маскируемых более сильным сигналом. В данную категорию из-за низкого уровня автоматически попадает большая часть сознательно не воспринимаемого сигнала (в принципе, на высших потоках происходил аналогичный процесс, но в несравнимо меньшей степени, с сохранением практически всех существенных деталей). Кроме того, для снижения уровня потерь на низких потоках применяются особые виды техники, главный из которых – режим кодирования объединенного стерео (joint stereo). Потери при кодировании в режиме joint stereo на низких потоках (и только на них) оказываются намного ниже, чем при кодировании в режиме нормального стерео, если стеpеоэффект особого значения не имеет; но, к сожалению, оно же приводит к плачевным результатам в часто встречающихся случаях записей с фазовым сдвигом, созданным при записи намеренно или появившимся в процессе эксплуатации записи. Суть кодирования в соответствии с техникой joint stereo состоит в пpеобpазовании всего стеpеосигнала в средний сигнал между каналами и разность между ними. Но это только один вариант joint stereo, называемый MS Stereo. На особо низких потоках, таких как 96 Кбит/с, применяется техника MS/IS Stereo, в которой для некоторых частотных диапазонов вместо разницы между каналами хранится лишь информация о соотношении мощностей сигнала в разных каналах. Продукция FhG IIS так кодирует только высокие частоты, но некоторые кодеры позволяют выбрать нужный диапазон вручную. К сожалению, выбор заключается в указании нужного значения одной из маловразумительных внутренних переменных формата, не разъясняемой в документации. Окончательной веpсии вышеyпоминаемой психоакустической модели пока не существует, как нет и опpеделенного стандаpтного алгоpитма кодиpования. В связи с этим в общем слyчае объем и степень ощyтимости потеpь опpеделяются, с одной стоpоны, потоком, а с дpyгой — особенностями конкpетной pазновидности психоакyстической модели, использованной в каждом конкpетном кодеpе. Последний момент имеет особенно большое значение на низких потоках. Существует набоp эффектов, которые на таких потоках крайне плохо поддаются кодиpованию. И еще одна особенность человеческого слуха была учтена при разработке алгоритма компрессии — использование минимального порога слышимости. Наибольшей чувствительностью (2-4 дБ) органы слуха обладают в среднем диапазоне частот порядка 2-5 кГц. На других частотах порогом чувствительности может стать значение громкости звука в 40 дБ. Иными словами, звуки, лежащие за порогом чувствительности, нет смысла сохранять, поскольку они все равно не будут услышаны. На основании подобных эффектов создается так называемая психоакустическая модель, разбивающая весь частотный спектр на части, в которых уровень звука примерно одинаков, после чего удаляет звуки, не воспринимаемые человеком, как это было описано выше. Существует три уровня Audio MPEG для сжатия стереофонических сигналов:
Теперь попробуем понять, какова разница между уровнями (Layers). Например, в Layer 3 части разбитого спектра намного меньше, чем в первых двух, и по этой причине сжатие этим методом является наиболее продуктивным, а коэффициент его достигает 1:12 без заметной на слух потери качества. Поэтому столь широкое распространенное получило расширение файлов MP3 (MPEG Layer 3). Для получения звука с качеством CD необходимо компрессировать аудиофайлы с потоком 256 Кбит/с, но для большинства слушателей и большинства применений вполне достаточно 128 Кбит/с (по 64 Кбит/с на канал). Однако среди великого множества кодеров MP3-файлов следует отметить немногие, позволяющие сжимать звуковой ряд с переменным потоком (variable bitrate), обеспечивая таким образом максимальное качество и экономя дисковое пространство. Основой таких кодеков является использование в каждый момент времени определенного значения потока и, как следствие, изменяющейся во времени природы звукового сигнала (частоты и амплитуды звуковых колебаний). Для сжатия речи с отличным качеством вполне достаточно 24 или 32 Кбит/с. Построение той самой психоакустической модели — сложный математический процесс, изобилующий вычислениями с плавающей запятой. Как следствие, подобный процесс, равно как и процесс сжатия методом Хаффмана, требует солидной вычислительной мощности и при декодировании файлов формата MPEG, и особенно — при кодировании. Первоначально для этой цели использовались специализированные устройства, выполнявшие все математические преобразования на аппаратном уровне, и лишь в последние годы, после появления достаточно мощных процессоров, способных справляться с подобными вычислениями без особого ущерба для остальных приложений, это стало возможным и с помощью специальных программ. | ||||
Постановка задачиТеперь, когда мы уяснили себе способы представления мультимедиа-данных в Web, попробуем решить конкретную задачу. Предположим, мы хотим реализовать страничку представления видео- и аудиопродукции в Интернете, причем без представления возможности скачивать видеофильмы и аудиофрагменты, а лишь позволяя их прослушивать в режиме on-line. Для реализации подобной задачи нам потребуется огранизовать хранилище видеофайлов (например, в формате MPEG-4 или DivX) и аудиофрагментов в формате MP3. Под хранилищем будем понимать файловую систему. Далее необходимо разработать два вспомогательных компонента:
| ||||
Что же нам понадобится?Для реализации первого компонента поставленной задачи мы будем использовать обычные ASP-средства представления файловой системы сервера (той ее части, где хранятся видео- и аудиоданные) в виде HTML. Результатом будет список ссылок на соответствующие файлы с видео или аудио. Поэтому мы будем использовать средства работы с файлами и каталогами ASP, уже знакомые нам из предыдущей статьи настоящего цикла. Для реализации второго компонента необходимо OLE-встраивание экземпляра объекта Windows Media, необходимого для всех наших потенциальных слушателей, который, собственно, и будет осуществлять буферизацию и потоковое воспроизведение. Однако неясным остается способ передачи параметра, чтобы, во-первых, объект Windows Media встраивался в наш HTML-документ, а во-вторых, осуществлялось именно потоковое воспроизведение ресурса. Сделать первое очень просто посредством следующего HTML-тэга в компоненте просмотра содержания при формировании ссылки: <EMBED src="ИМЯ_ФАЙЛА" width=350 height=43 controls=console volume=80 loop=false type='audio/mp3'> а второе — посредством следующего HTML- тэга: <A HREF="Player.asp?Play=ПОЛНЫЙ_WWW_ПУТЬ_К_РЕСУРСУ #stream "target='PlayerFrame'" TITLE="Прослушать"> Итак, в первом случае для корректного воспроизведения того или иного мультимедиа-ресурса необходимо прописать его MIME-тип. Приведенный тип 'audio/mp3 соответствует MIME-типу звукового фрагмента формата MP3. Во втором случае указывается файл ASP-страницы, осуществляющий встраивание компонента с его последующим воспроизведением, далее указывается параметр #stream, указывающий на то, что воспроизведение будет осуществляться в режиме потока. Для определения соответствующего MIME-типа какого бы то ни было другого формата данных (в нашем случае формата AVI) необходимо воспользоваться конфигуратором MIME-программы Internet Services Manager (см. рис. 2). Кроме всего прочего нам потребуется создать виртуальный каталог (Virtual Directory) который представляет собой реальный физический каталог на жестком диске нашего гипотетического сервера. Выбираемые нами для прослушивания (просмотра) ресурсы будут храниться именно в этом каталоге.. Для создания Virtual Directory также следует воспользоваться программой Internet Services Manager, в которой на нужном сайте щелчком правой кнопки мыши необходимо выбрать пункт «New» и доуточнение «Virtual Directory». В результате в появившемся мастере нужно назвать вируальный каталог (Alias) и сопоставить ему тот или иной физический (в нашем случае тот, в котором хранятся аудио- или видеоресурсы).
|