HTML существовал стандарт языка разметки печатных документов - StandardGeneralisedMarkupLanguage, который и был взят в качестве основы HTML.
Такой подход предполагает наличие еще одной компоненты технологии - интерпретатора языка. В WWW функции интерпретатора разделены между сервером гипертекстовой базы данных и клиентом.
Язык виртуальной реальности VRML. После создания HTML естественным было создание открытого, общепринято го языка, позволяющего описывать трехмерные сцены и увя зывать их с гиперсвязями, принятыми в WWW, - что-то типа HTML, но применительно к виртуальной реальности. Так воз ник термин VirtualRealtyMarkupLanguage (VRML), где слово Markup было позднее заменено на Modelling для того, чтобы подчеркнуть его графическую сущность. Первая версия VRML появилась в 1994 г. на основе формата
OpenlnventorASCIIFileFormat (IFF) фирмы SGI. Подмножество IFF, расширенное сетевыми возможностями, было положено в основу базовых форм VRML.
Язык программирования Java. Java - это современный язык для разработки приложений, созданный специально для распределенных сред. Java является простым объектно-ориентированным языком, не требующим длительного обучения программистов. Для работы в сетецентрической среде возрастающей сложности система программирования должна соответствовать объектно-ориентированной концепции.
Java является знакомым языком программирования, так как синтаксис Java во многом напоминает C++. Исключение адресной арифметики, по мнению создателей, должно обеспечить более надежный код по сравнению с C++. Надежность программ обеспечивается проверками на этапе компиляции и последующей проверкой во время выполнения.
Средства безопасности, встроенные в Java, обеспечивают защиту как от внешнего проникновения в файловую систему, так и от модификации кода вирусами. Другими важными свой-
ствами Java являются независимость от платформы, переносимость, многопоточность и динамическая сборка программы.
Многопоточность встроена на уровень языковых примитивов. Достаточно объявить некоторый метод синхронным, чтобы на время его работы с объектами, они автоматически блокировались. Снимается блокировка также автоматически, независимо от того, нормально или аварийно завершилась работа метода. Блокировки сделаны реентерабельными, что исключает возможность зависания при повторном блокировании объекта одним и тем же процессом.
Java-технология состоит из следующих основных частей: программирования на объектно-ориентированном языке Java в классическом смысле этого слова и разработки мобильных Java байт-кодов. Сюда часто относят и программирование на JavaScript.
Система программирования в среде Java позволяет компилировать программы для компьютерной платформы, на которой она стоит в том же ключе, как и любая другая, например, С или C++. В этом случае главным отличием Java-программ является использование Java-классов, обеспечивающих разработку безопасных распределенных систем. При этом утверждается, что язык позволяет делать гораздо меньше ошибок при разработке программ, главным образом, из-за отсутствия адресной арифметики.
Концепция мобильных Java байт-кодов (апплетов) была специально разработана для использования в WWW. Для использования апплетов в язык гипертекстовой разметки HTML был введен тег APPLET, указывающий имя апплета и параметры его вызова. При этом обработка HTML-документов выполняется броузером так же, как и при обработке встроенной в документ графики. Сначала запрашивается документ, анализируется его содержание, а потом, если имеются теги APPLET, подгружаются апплеты. После получения всех апплетов они могут быть выполнены. Из этой схемы ясно, что броузер является одновременно и интерпретатором байт-кодов. Используя библиотеку классов, можно разработать эффектные динамические мультимедийные страницы. Кроме того, применение байт-кодов позволяет организовать распределенные процедуры вычислений с использованием различных серверов, с которыми можно взаимодействовать по разным протоколам.
В настоящее время выпущено несколько систем визуальной разработки программ на Java. Наиболее известными являются:
JavaWorkShop фирмы Sun;
SymantecCafeforWindows 7
Latte фирмы Borland;
VisualJ++ фирмы Microsoft.
Языки сценариев JavaScript. Язык JavaScript разрабаты- вался компанией Netscape как язык сценариев просмотра HTML-страниц. JavaScript является объектно-
ориентированным языком. В целом язык ориентирован на встроенные объекты NetscapeNavigator: окна, формы, поля форм, элементы рабочих областей Navigator. Это сильно облегчает обучение языку и позволяет сразу писать интересные и полезные программы.
Используя JavaScript, можно организовать многооконный интерфейс с локальной справочной системой и встроенной графикой, возложив при этом многие вопросы проверки вводимых пользователем данных на JavaScript. По своим функциональным возможностям JavaScript довольно сильно уступает Java: можно организовать прокрутку текста, организовать открытие нового окна, запрограммировать калькулятор, но не более того.
VisualBasicScript. В настоящий момент во всем мире программисты широко используют для быстрой разработки своих приложений язык VisualBasic, который не требует применения разнообразных SDK и нескольких месяцев на его изучение, как это происходит с языком C++.
Так же, как VisualBasic облегчает разработку приложений для Windows, a VisualBasicforApplication (VBA) делает то же для приложений, базирующихся на MicrosoftOffice,
VisualBasicScript (VBScript) дает в руки тех, кто создает Internet-приложения, аналогичный по мощности инструмент.
VBScript является простым подмножеством
VisualBasicforApplication и, следовательно, полностью с ним совместим. Все эти три продукта можно рассматривать следующим образом: VisualBasic - полная интегрированная среда разработки, VisualBasicforApplication - инструмент для создания приложений, работающих в рамках MicrosoftOffice, VBScript - инструмент для написания приложений, функционирующих в программах, работающих в Internet.
VBScript позволяет разрабатывать клиентские приложения, автоматически загружаемые вместе с Web-страницей. Затем скрипты могут выполняться на клиентской ЭВМ как обычные программы. VBScript был разработан для применения в корпоративных Интранет-сетях как средство для создания приложений клиент-сервер. VBScript поддерживается броузером InternetExplorer, начиная с версии 3.0 на платформах Macintosh и Windows.
PERL. Объектно-ориентированный язык PERL (PracticalExtractionandReportLanguage) является переносимым, интерпретируемым языком, хорошо приспособленным для фильтрации и преобразования текста. Интерпретаторы PERL являются бесплатными программными продуктами. PERL находит широкое распространение в Internet в среде UNIX. Предшественники PERL - редактор sed и утилита awk. Язык в определенной части похож на С, но имеет и существенную специфику.
Язык PERL представляет программисту широкий спектр возможностей:
ассоциативные массивы;
автоматическое преобразование типов;
автоматическое изменение размера массивов;
поддержка регулярных выражений для разбора текста;
файловый ввод/вывод;
форматированный вывод с генерацией отчетов на основе шаблонов;
функции обработки списковых структур данных;
сетевые операции по сокетам.
Основное назначение PERL в Internet связано с разработкой серверных приложений на основе CGI.
Tcl/Tk. Пакет Tcl/Tk (ToolCommandLanguage / ToolKit) состоит из языка Tel и Тк - средства для работы с библиотеками виджетов. Язык Tel - это интерпретируемый язык сценариев, особенно удобный при написании пользовательских интерфейсов программ. В отличие от тяжеловесного Motif, Tcl/Tk может обходиться без C/C++.
Tel разработан в SunMicrosystems, ориентирован на сетевые применения, платформно независим (работает на всех Windows, Macintosh и Solaris 2.x) и имеет мощные механизмы защиты (тиклеты могут исполняться в безопасном окружении Safe-Tel). Tcl/Tk будет работать в паре с Java, а не с C++. Tel по применению расположится рядом с VisualBasic, a Tk соответственно рядом с ActiveX.
Sun выпустила семейство программ для работы с технологией Tcl/Tk. В основной пакет Тс17.5 Тк4.1 входят две программы: оболочка командного интерпретатора SHELL и графический интерфейс разработки Wish, библиотека и документация. Наиболее популярен модуль расширения к NetscapeNavigator. Для работы он не требует пакета Тс17.5 Тk4.1, при этом пользователь может не только исполнять тиклеты в окне NetscapeNavigator, но и встраивать Tcl-сценарии в свои Web-страницы. Мощная среда разработки графических интерфейсов SpecTcl (вместе с SpecJava) для работы требует пакет Тсl7.5 Тk4.1.
Редактор для гипертекстовой графики
WebTklmagemapEditor для работы требует пакет Тс17.5 Тk4.1. Компактный полнофункциональный HTTP-сервер
TclWebServer целиком написан на Tcl (около 1000 строк кода), работает с CGI и использует безопасный режим SafeTcl.
4. ОСНОВЫ МУЛЬТИМЕДИА ТЕХНОЛОГИЙ
4.1. Представление звука в компьютерных системах: ввод, обработка и вывод мультимедиа информации
Мультимедиа - это технология, объединяющая информацию (данные), звук, анимацию и графические изображения. Кроме того, мультимедиа - это средства обмена информацией между компьютером и внешней средой. Слово "мультимедиа" означает множество носителей. Мультимедийный продукт -интерактивная компьютерная разработка, в состав которой могут входить музыкальное и речевое сопровождение, видеоклипы, анимация, графические изображения и слайды, базы данных, текст и т.д. Мультимедийные продукты делятся на энциклопедии, обучающие и развивающие программы, игры и программы для детей, рекламные программы и презентации. У мультимедиа есть две стороны: аппаратная и программная. Аппаратная сторона мультимедиа может быть представлена как стандартными средствами - видеоадаптерами, мониторами, дисководами, накопителями на жёстких дисках, так и специальными средствами - звуковыми картами, приводами CD-ROM и звуковыми колонками. Программная сторона без аппаратной лишена смысла. Программные средства делятся на чисто прикладные и специализированные. Прикладные - это сами приложения Windows, предоставляющие пользователю информацию в том или ином виде.
Звук в компьютере. Существуют две технологии записи и воспроизведения звука: аналоговая и цифровая. Известные всем бытовые магнитофоны и проигрыватели долгоиграющих пластинок ориентированы на аналоговую технологию. Запись и воспроизведение звука в компьютере и проигрывателях CD (лазерных дисков) основаны на цифровой технологии.
Звук по природе своей является набором волн, вызванных колебанием физических устройств (струн, мембран). Для того чтобы ввести звук в компьютер, его надо преобразовать в цифровой вид, т.е. представить в виде последовательности цифр (или нулей и единиц в двоичной системе исчисления). Для преобразования аналоговых данных в цифровые используется аналого-цифровой преобразователь (ADC - Analog-to-Digital Converter). Для воспроизведения звука необходим цифро-аналоговый преобразователь (DAC - Digital-to-Analog Converter).
При преобразовании звука в цифровой вид ADC измеряет поступающий сигнал с регулярными интервалами и присваивает цифровые значения уровню звука. Частота измерений называется скоростью выборки. Количество бит, используемых для кодирования данных, называется разрешающей способностью. Например, при записи звука разрешающая способность может быть 4, 8 или 16 бит, а скорость выборки может составлять 11 кГц, 22 кГц, 44 кГц. Чем выше скорость выборки и больше разрешающая способность, тем более качественный звук будет записываться и воспроизводиться.
Для ввода и воспроизведения звука в компьютере нужна аудиоплата (карта). Обычно при покупке аудиоплаты пользователю предлагается полный набор аудиоустройств компьютера: наушники и колонки, микрофон.
Звук в компьютер можно ввести с микрофона или с любого аудиоустройства, например, с магнитофона. Предварительно эти устройства нужно подключить к аудиоплате. На задней панели аудиоплаты имеется вход "Mic" для подключения микрофона, вход "Line In" для подключения аудиоустройств. Возможно, для подключения придется использовать переходники, поскольку размеры штекеров у бытовых приборов могут отличаться от стандартных размеров входов на плате. Но если вы приобрели микрофон, специально предназначенный для подключения к компьютеру, то проблем с разъемами обычно не возникает. Для того чтобы записать звук с микрофона, можно воспользоваться либо стандартными средствами Windows, либо программным обеспечением, которое поступает пользователю вместе с аудиоплатой.
MIDI-файлы. MIDI (Musical Instrument Digital Interface) -это другой способ представления звука в компьютере. В отличие от WAVE-файлов, которые хранят цифровое представление звуковых волн, MIDI-файлы хранят только описание звука, представленного как сумма звучания нескольких стандартизованных музыкальных инструментов. Данные в MIDI-файлах представляют собой последовательность записей, содержащих номера нот, их длительность, номера инструментов, а также команды, управляющие звучанием этих музыкальных инструментов.
Аудиокарты, поддерживающие MIDI-формат, имеют встроенные синтезаторы нескольких десятков музыкальных инструментов. Некоторые карты предоставляют возможность создавать собственные инструменты. Качество воспроизведения файлов MIDI зависит от звуковой платы, установленной в компьютере: на разных компьютерах MIDI-файлы могут звучать по-разному.
Как правило, звуковые карты обеспечивают общий MIDI-стандарт:
128 инструментов;
47 барабанных звуков.
Звуковые карты с MIDI-синтезатором отличаются по количеству воспроизводимых инструментов и качеству звучания инструментов, по возможностям совмещения нескольких инструментов, по количеству нот, хранящихся в памяти, по размерам волновых таблиц.
Для создания MIDI-файлов используется специальное программное обеспечение. Программная среда, имитирующая на компьютере музыкальные инструменты, показывает на экране устройство, внешне похожее на магнитофон с несколькими дорожками. Такие магнитофоны обычно используются в профессиональных студиях записи. Данное устройство хранит музыкальный фрагмент, например партию скрипки, виолончели или тромбона. При воспроизведении дорожек записанная на них информация собирается вместе в единую последовательность для создания необходимого звука.
В плане практического применения отличия звуковых форматов MIDI и Wave состоят в следующем:
файлы MIDI значительно меньше по объему, чем файлы Wave при той же длительности звучания музыкального фрагмента;
мелодии в формате MIDI явно относятся к жанру "электронной музыки", в формате Wave записываются "живой" голос и звучание "живых" инструментов;
мелодии, записанные в виде MIDI-файла, можно изменять путем несложного редактирования записи на нотном стане, в то время как мелодию в файле Wave изменять гораздо сложнее;
файлы Wave используются для непродолжительных "аудио-эффектов", файлы MIDI используются в качестве звукового сопровождения.
Проигрыватель лазерных дисков. Компакт-диски, известные также под названием CD/DA (Compact Disk/Digital Audio), появились в 1980 г., когда фирмы Phillips и Sony ввели стандарт для цифрового аудио под названием "Красная книга". Звук на компакт-дисках помещается на нескольких дорожках, причем одна дорожка обычно содержит одну песню. В соответствии со стандартом "Красной книги" компакт диск может иметь до 99 дорожек, что составляет 74 мин звучания. Каждая дорожка делится на сектора, рассчитанные на 1/75 с звучания и состоящие из 2352 байтов цифровой информации. Компакт-диск имеет также дополнительные зоны, содержащие так называемый перекрестный чередующийся код Рида-Соломона (CIRC), который управляет защитой данных. Если компакт-диск поцарапан или загрязнен, CIRC позволяет создать музыку. Если восстановить звуковую информацию не удается, то музыка не звучит.
Устройство CD-ROM компьютера может проигрывать обычные музыкальные компакт-диски, причем воспроизведение музыки идет в фоновом режиме, позволяя параллельно выполнять на компьютере любую другую работу. Для прослушивания компакт-диска можно использовать инструмент
Windows "Лазерный проигрыватель" из набора стандартных мультимедиа устройств.
4.2. Графическое представление информации
Технология ввода, создания и обработки графических изображений - одно из направлений компьютерных технологий, которое заслуживает особого рассмотрения. При создании мультимедиа произведения, в котором непременно присутствуют элементы графики, пользователю приходится иметь дело с программными средами, с помощью которых он готовит необходимые графические материалы.
Технология формирования изображения. Рассмотрим более подробно технологию получения изображений в компьютере на экране монитора.
В недалеком прошлом наиболее распространенным типом монитора являлся 14-или 15-дюймовый цветной монитор с коэффициентом обновления около 70 Гц и отображением 256 цветов. Такие дисплеи основываются на технологии электронно-лучевых трубок (CRT - cathode ray tube). Это в основном такая же технология, которая используется в телевизионных приемниках. Эта технология требует достаточно больших размеров монитора, в отличие от технологии жидкокристаллических дисплеев (LCD - liquid crystall display), применяемой для компьютеров типа записных книжек (notebook) или портативных компьютеров (laptop).
Наиболее популярные в настоящее время жидкокристаллические экраны могут быть пассивными, обладая при этом не слишком высокой четкостью изображений, или активными. У активных LCD-экранов каждая точка (пиксел) отображается самостоятельным транзистором. Большой размер экрана требует большого числа транзисторов, что приводит к значительному удорожанию монитора.
CRT-мониторы создают изображение на экране, получая от графической карты RGB (red-green-blue) данные и направляя электронный пучок на покрытый фосфором экран. Экран покрыт фосфорицирующими группами (тремя фосфорици-рующими точкам трех цветов). Электроны вызывают свечение фосфора надлежащих цветов. Фосфор светится только короткое время, поэтому он должен постоянно получать электронные сигналы, чтобы удерживать изображение на экране. Частота регенерации - это время, которое требуется для перерисовки экранного изображения. Более высокая частота регенерации означает меньшее число мерцаний и меньшее напряжение для глаз.
Для работы монитора в компьютере имеется графический адаптер. Обычно адаптеры поддерживают несколько графических режимов, которые отличаются качеством изображения в двух направлениях: разрешающей способности и глубине цветовой гаммы. Разрешение монитора определяется количеством пикселей по горизонтали и вертикали. Цветовая глубина - это количество цветов, в которое может быть окрашен каждый пиксел.
Графические адаптеры имеют память для хранения и обработки информации, поступающей на экран. Для хранения информации для каждого пиксела можно использовать разное число бит, что и определяет в конечном итоге глубину цвета на экране. С помощью 8 бит можно отобразить 256 цветов, 15 бит достаточно для хранения 32000 цветов, 24 бита могут отображать 16,7 млн цветов.
4.3. Форматы графических файлов
Существует множество форматов файлов растровой графики, и каждый из них предусматривает собственный способ кодирования информации об изображении. Перечислим особенности лишь наиболее распространенных форматов.
• BMP - растровый формат, разработанный фирмой Microsoft в качестве способа хранения и обмена данными. Этот формат может отображать изображения с глубиной до 24 бит. Созданные в этом формате файлы могут передавать очень качественные и реалистичные изображения.
GIF - Graphic Interchange Format, может сохранять несколько растровых изображений в одном файле. Поддерживает до 256 цветов и может создавать высококачественные изображения. Формат использует сжатие данных, которое может уменьшить 8-битовое изображение примерно на 40 %. Широко используется для создания изображений, помещаемых в сети Интернет. Может иметь "прозрачный" фон, что также привлекательно для разработчиков Web-страниц.
PCX использовался в программе Paitbrush, которая стала входить в пакеты фирмы Microsoft. Этот формат может поддерживать изображения вплоть до 24-битового цвета. Файлы могут сжиматься в случае 16-цветого изображения на 40-70 %, а 256-цветовое изображение может быть уменьшено на 10-30%.
TIF широко используется в издательских системах. Формат может поддерживать несколько различных алгоритмов сжатия данных. Нередко возникает ситуация, когда некоторый конкретный пакет не поддерживает используемый в файле TIF метод сжатия, и могут возникать ошибки типа "Неподдерживаемый тип сжатия". Иногда проблемы возникают из-за того, что пакет может читать только черно-белые TIF-файлы, а изображение является цветным.
WMF - метафайл Windows, созданный фирмой Microsoft для хранения векторной и растровой графики. Формат может создавать и хранить изображения вплоть до 24 бит на пиксел, передавая высококачественные изображения. Изображения в этом формате хорошо масштабируются.
JPG - формат (Joint Photographic Experts Group - Объединенная экспертная группа по фотографии), разработанный компанией C-Cube Microsystems, как эффективный метод хранения изображений с большой глубиной цвета, например, получаемых при сканировании фотографий с многочисленными едва уловимыми оттенками цвета.