Электронная библиотека книг Александра Фролова и Григория Фролова.
 
Библиотека
Братьев
Фроловых
Электронная библиотека книг Александра Фролова и Григория Фролова.
Библиотека системного программиста
Программирование на JAVA
ПК. Шаг за шагом
Другие книги
Восстановление данных
Антивирусная защита
Статьи для
программистов
Пользователю компьютера

Мультимедиа для Windows

© Александр Фролов, Григорий Фролов
Том 15, М.: Диалог-МИФИ, 1994, 284 стр.

[Назад] [Содеожание] [Дальше]

1.3. Программы, работающие со звуком и видео

Для работы со звуковыми адаптерами существует большое количество программ, рассчитанных на работу в среде MS-DOS, Windows и других операционных систем. Прежде чем приступать к созданию собственных программ, полезно познакомиться с тем, что уже сделано в этом направлении. Отметим, что наибольшей популярностью пользуются мультимедиа-приложения, разработанные для операционной системы Windows, хотя есть интересные программы MS-DOS, работающие со звуком и анимацией. Следующие версии Windows, такие, как Chicago, будут иметь очень мощные встроенные средства мультимедиа, поэтому, на наш взгляд, в первую очередь имеет смысл научиться создавать мультимедиа-приложения для Windows.

В составе операционной системы Windows версии 3.1 поставляются драйверы, dll-библиотеки и некоторые приложения, предназначенные для работы со звуком. Дополнительно можно приобрести такое изделие, как Microsoft Video for Windows версии 1.1, которое можно считать средством для создания систем мультимедиа второго поколения.

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

В качестве примера можно привести такой программный продукт, как Sound Galaxy Software Developer Kit. В него входит набор драйверов для MS-DOS, библиотеки функций языка программирования С для работы с этими драйверами в среде MS-DOS, а также подробное описание особенностей аппаратуры. К сожалению, в комплекте поставки нет ни одного примера программы, работающей на уровне портов ввода/вывода звукового адаптера, что необходимо, если ваша программа работает не в среде MS-DOS или Windows.

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

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

Стандартные приложения Windows

Первое, что вы можете сделать после установки звукового адаптера и драйвера для него - это "озвучить" Windows. Запустите приложение Control Panel и выберите для работы пиктограмму "Sound". На экране появится диалоговая панель "Sound" (рис. 1.8).

Рис. 1.8. Диалоговая панель "Sound" в Windows for Workgroups версии 3.11

Из списка "Events" вы можете выбрать то или иное событие в системе, назначив ему соответствующий звуковой фрагмент из файла с расширением имени wav. Если произойдет событие, например, запуск или завершение работы Windows, критическая ошибка и т. п., звуковой адаптер проиграет соответствующий звуковой файл. Несколько таких файлов поставляются в комплекте с операционными системами Windows или Windows for Workgroups. Для прослушивания подключенного фрагмента можно воспользоваться кнопкой "Test".

Для отключения фрагмента выберите строку "<none>". Вы можете отключить "музыкальное сопровождение" Windows, если переведете переключатель "Enable System Sounds" в выключенное состояние.

Если вас не удовлетворяет набор звуковых wav-файлов, поставляемых в составе Windows, с помощью стандартного приложения Sound Recorder (рис. 1.9) можно записать свои файлы (а также прослушать и отредактировать записанные ранее).

Рис. 1.9. Приложение Sound Recorder

Для прослушивания wav-файла загрузите его с помощью строки "Open..." меню "File" и нажмите на среднюю кнопку. Вы можете "перематывать" звуковую запись в любом направлении с помощью полосы просмотра или левых двух кнопок, а также временно останавливать ее, нажимая вторую кнопку справа. В центре окна приложения для наглядности отображается осциллограмма звукового сигнала.

Кнопка с нарисованным на ней микрофоном включает режим записи. Записанную фонограмму можно сохранить в файле при помощи строки "Save as..." меню "File".

Что еще, кроме записи и воспроизведения звуковых файлов, можно делать при помощи приложения Sound Recorder?

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

Меню "Edit" также предоставляет вам некоторые возможности для редактирования звукового файла. Вы можете объединять звуковые файлы или накладывать их друг на друга, удалять ненужные фрагменты, и, что самое интересное, копировать содержимое звукового файла в универсальный буфер обмена Clipboard. Зачем это нужно?

Современные приложения, такие как Microsoft Write, Microsoft Word for Windows версий 2.0 и 6.0, Microsoft Excel и т. п. позволяют вставлять в документ из Clipboard не только текст и графические изображения, но и звук! Разумеется, звук нельзя распечатать на принтере, но зато можно добавить звуковые комментарии в текстовый документ или электронную таблицу. Звук будет записан в Clipboard в виде OLE-объекта. Такой объект можно впоследствии не только прослушивать, но и редактировать.

В результате вставки звука из Clipboard в документе появится пиктограмма в виде микрофона. Если сделать по этой пиктограмме двойной щелчок левой клавишей мыши, вы услышите звук, вставленный ранее в документ.

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

Еще одно приложение, которое работает со звуком и поставляется вместе с Windows, называется Media Player (рис. 1.10).

Рис. 1.10. Приложение Media Player

С помощью этого приложения вы можете проигрывать звуковые wav-файлы, файлы в стандарте MIDI (mid- и rmi-файлы), а также звуковые компакт диски. Можно также записывать в Clipboard звуковые фрагменты в виде OLE-объектов приложения Media Player. Для проигрывания MIDI-файлов и звуковых компакт-дисков необходимо установить соответствующие драйверы: MCI MIDI Sequencer, MIDI Mapper (которые входят в дистрибутив Windows и устанавливаются по умолчанию), а также драйвер, специфический для звукового адаптера (поставляется вместе с адаптером). Например, вместе с адаптером Sound Galaxy NX Pro поставляется драйвер Galaxy NX-Pro FM Synth, который можно использовать для проигрывания MIDI-файлов. Вопросы, связанные с MIDI, будут рассмотрены нами позже в отдельной главе.

Приложение Media Player можно использовать и для проигрывания звуковых компакт-дисков. Для этого из меню "Device" следует выбрать строку "CD Audio". Однако следует убедиться, что в системе установлен драйвер MCI CD Audio. Если такого драйвера нет (а по умолчанию он не устанавливается), его следует добавить при помощи приложения Control Panel. Драйвер MCI CD Audio входит в комплект поставки операционной системы Windows. Кроме того, перед запуском Windows следует установить драйвер устройства чтения компакт-дисков (поставляется вместе с устройством), и запустить резидентную программу mscdex.exe (поставляется вместе с MS-DOS).

Звуковые компакт-диски содержат отдельные дорожки (треки), каждый из которых обычно соответствует одной музыкальной записи. С помощью Media Player вы можете проигрывать их последовательно или в произвольном порядке.

Если включить электронный микшер, аналоговый выход проигрывателя компакт-дисков будет подключен ко входу аналого-цифрового преобразователя звукового адаптера, что позволит переписать музыкальный фрагмент в wav-файл. Для записи wav-файла можно воспользоваться приложением Sound Recorder. Не пытайтесь переписать весь компакт-диск, так как для этого придется создать wav-файл огромного размера (некоторые приложения, предназначенные для записи wav-файлов, могут накладывать ограничения на размер файла).

На этом мы завершим обзор стандартных приложений Windows, предназначенных для работы со звуком. Более подробное описание вы сможете найти в руководстве пользователя Windows. Подводя итоги, заметим, что сервис, предоставляемый этими приложениями, нельзя назвать очень мощным. Такие приложения, как Sound Recorder и Media Player, позволяют записать, прослушать и отредактировать звуковой wav-файл, вставить звук в документ в виде OLE-объекта, проиграть MIDI-файлы и звуковые компакт-диски. Но это и все, что с их помощью можно сделать.

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

Инструментальные средства

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

Заслуживает внимания приложение WinDAT, которое создано фирмой Voyetra Technologies и поставляется вместе со звуковым адаптером Sound Galaxy (рис. 1.11).

Рис. 1.11. Приложение WinDAT

Это приложение работает со звуковыми файлами в стандарте Windows (с расширением имени wav) и в стандарте Sound Blaster (с расширением имени voc). Оно намного мощнее приложения Sound Recorder.

В частности, вы можете выделить звуковой фрагмент на осциллограмме при помощи мыши (выделенный фрагмент отображается инвертированием цвета, что видно на рис. 1.11). Выделенный фрагмент может быть скопирован в Clipboard или удален при помощи стандартного меню "Edit". При помощи строки "Mix Paste" меню "Edit" можно наложить фрагмент, записанный в Clipboard, на любой участок фонограммы, указанный при помощи полосы просмотра. Можно вставить паузу или вырезать ненужный участок фонограммы. Все изменения нетрудно отменить, выбрав в меню "Edit" строку "Undo".

Меню "Transforms" позволяет вносить изменения в выделенный участок фонограммы. Можно, например, изменить громкость, определить расположение и максимальную амплитуду сигнала в выделенном фрагменте.

В отличие от приложения Sound Recorder, приложение WinDAT при записи позволяет выбрать стереофонический или монофонический режим, а также задать частоту дискретизации, выбрав ее из возможных для данного адаптера значений. Для этого следует воспользоваться строкой "Setup..." меню "Windows" (достаточно странное место для строки "Setup...", не правда ли?).

Еще одно интересное приложение для работы со звуковыми файлами разработано фирмой IPI (Interactive Products Inc). Оно называется Audio Server (рис. 1.12).

Рис. 1.12. Приложение Audio Server

Это приложение может служить звуковым OLE-сервером, при этом оно поддерживает технологию Drag & Drop. С помощью его вы можете записать звуковой фрагмент (воспользовавшись кнопкой с изображением микрофона), а затем вставить этот фрагмент в документ как объект, просто переместив мышью изображение магнитофонной кассеты из окна приложения Audio Server в нужное место документа. При необходимости с помощью меню "Edit" можно вставить фрагмент в Clipboard не как объект, а как звуковой файл.

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

Другая разработка фирмы IPI - приложение Voice Toolkit, предназначенное для тех, кто занимается решением проблемы распознавания речи (рис. 1.13).

Рис. 1.13. Приложение Voice Toolkit

С помощью Voice Toolkit вы можете не только записывать и воспроизводить монофонические звуковые фрагменты, но и исследовать их характеристики, в первую очередь спектральные. На рис. 1.13 показан звуковой фрагмент и соответствующий ему двухмерный энергетический спектр, позволяющий исследовать распределение мощности сигнала в зависимости от частоты и времени. Спектр может быть цветной или черно-белый, при этом мощность выделяется либо цветом, либо яркостью.

Однако наиболее впечатляющая возможность приложения Voice Toolkit - отображение трехмерных энергетических спектров (рис. 1.14).

Рис. 1.14. Трехмерный энергетический спектр

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

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

Рис. 1.15. Поворот участка спектра в пространстве

В приложении Voice Toolkit предусмотрен расширяемый набор фильтров для обработки звуковых фрагментов (звуковые эффекты), такие, как эхо, изменение уровня сигнала, проигрывание в обратном направлении, изменение скорости воспроизведения и т. д. (рис. 1.16).

Рис. 1.16. Звуковые эффекты

Другие приложения мультимедиа

Приложение World Atlas (атлас мира) поставляется на дискетах или компакт-диске. Его можно использовать как справочник, содержащий многочисленные сведения о различных странах и городах мира. Справочник содержит высококачественные цветные графические изображения карт и мощные средства поиска информации (рис. 1.17).

Рис. 1.17. Приложение World Atlas

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

С помощью World Atlas вы сможете без труда узнать поясное время в любом городе мира, определить расстояние между любыми двумя городами, узнать другие сведения о стране, необходимые для путешественника. Вы можете отметить нужные вам города на карте. Любая карта или диаграмма может быть скопирована в Clipboard и вставлена затем в документ (рис. 1.18).

Рис. 1.18. Карта Австралии, скопированная из атласа мира

Еще одно интересное приложение, использующее технологию мультимедиа - электронная книга "Guinness Multimedia Disk of Records" (вариант "Книги рекордов Гиннеса"), которая поставляется на компакт-диске (рис. 1.19).

Рис. 1.19. Приложение Guinness Multimedia Disk of Records

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

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

Рис. 1.20. Пиктограммы для просмотра фотографии и прослушивания звуковой записи

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

  • Audobon's Mammals

Многотомное описание животных Северной Америки с цветными фотографиями и записями звуков.

  • Cameron's Fine Art Catalog

Работы художников и фотографов со звуковым сопровождением.

  • Compton's Interactive Encyclopedia

26-томная энциклопедия с фотографиями, звуковыми и видеозаписями.

  • Macmillian Dictionary for Children

Словарь, предназначенный для обучения детей. Использование средств мультимедиа позволяет значительно улучшить восприятие материала.

  • Mayo Clinic Family Health Book

Электронный семейный доктор. Фотографии, видеозаписи и звуковые записи иллюстрируют информацию о том, как сохранить свое здоровье.

Microsoft Video for Windows 1.1

Система Microsoft Video for Windows открыла новые области применения компьютера, обеспечив запись, хранение, редактирование и воспроизведение видеофильмов (рис. 1.21).

Рис. 1.21. Воспроизведение видеофильма в окне Windows

Одновременно и синхронно с видеоизображением записывается звук, поэтому теперь на экране компьютера можно посмотреть полноценное кино со звуковым сопровождением.

Вы спросите: а зачем? Для записи и просмотра видео есть видеокамеры, видеомагнитофоны, видеоплееры и телевизоры. Для чего впутывать в это хорошо освоенное дело компьютеры? К тому же стоимость компьютера не сравнима со стоимостью видеомагнитофона. Особенно такого, который способен воспроизводить видео с приемлемым качеством.

Согласны, технологию Video for Windows пока еще невыгодно использовать для записи обычных фильмов. Если вы желаете иметь дома коллекцию фильмов, купите себе видеоплеер, телевизор, кассеты с фильмами и забудьте про компьютеры и Video for Windows.

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

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

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

Видеофильмы хранятся в компьютере в виде файлов с расширением имени avi (файлы в стандарте AVI). Эти файлы могут содержать не только видео, но и также многоканальное звуковое сопровождение (например, на разных языках), текстовую и любую другую информацию.

Для проигрывания avi-файлов можно использовать специальную версию приложения Media Player, которая поставляется вместе с Video for Windows и Video for Windows Runtime (рис. 1.22).

Рис. 1.22. Версия приложения Media Player для проигрывания avi-файлов

Изображение появляется в отдельном окне (рис. 1.23). Это окно можно уменьшить до пиктограммы, при этом "кино" не остановится.

Рис. 1.23. Окно, в котором проигрывается видеоизображение

Если же у вас очень много avi-файлов, вы можете их каталогизировать и просматривать с помощью приложения Microsoft Media Browser (рис. 1.24).

Рис. 1.24. Приложение Microsoft Media Browser

Вы можете создать несколько коллекций видеофильмов и сохранить их в виде файла на диске. В дальнейшем при помощи кнопки "Add Collection..." можно указать путь к каталогу, в котором находятся файлы коллекций, при этом список "Collections" будет содержать названия коллекций видеофрагментов, а список "Files" - названия файлов, входящих в состав выбранной коллекции. Для каждого avi-файла, входящего в коллекцию, вы можете подготовить краткое описание, которое будет отображаться в окне "File Information" вместе с первым кадром фрагмента. В этом же окне отображается имя файла и его размер.

Обратите внимание, что размер файла, выбранного на рис. 1.24, составляет около 37 Мбайт. Время проигрывания этого файла - примерно 4,5 минуты, следовательно, для хранения одной минуты видео нужно примерно 8 Мбайт памяти (при использовании данного размера изображения, цветового разрешения и метода компрессии изображения). Поэтому в качестве памяти для хранения avi-файлов используются цифровые компакт-диски, магнитооптические лазерные диски с перезаписью, лазерные диски с однократной записью (WORM), и магнитные диски большой емкости (порядка 1 Гбайт).

В продаже есть компакт-диски с записанными на них видеофильмами, базами данных, содержащими видеофрагменты и другие аналогичные информационные системы.

Что вам нужно для того чтобы самостоятельно записывать avi-файлы?

В дополнение к звуковому адаптеру вам необходимо приобрести адаптер для ввода видеоизображения. Этот адаптер должен продаваться вместе с драйвером для Windows. Желательно также, чтобы он мог выполнять аппаратную компрессию изображения в реальном времени. Это значительно сократит требования к объему диска, на который будет записываться полученный avi-файл. Стоимость такого адаптера может составлять порядка нескольких сотен долларов.

Источником видеосигнала может служить видеокамера, видеоплеер, телевизор или лазерный проигрыватель видеодисков.

Ну и конечно, необходимо приобрести Microsoft Video for Windows версии 1.1 или более поздней версии. В его состав входит приложение VidCap, с помощью которого вы сможете создать avi-файл из видеосигнала, поступающего в адаптер ввода изображения. Следует также установить драйвер для Windows, который поставляется вместе с адаптером.

Записанное изображение можно отредактировать, воспользовавшись приложением VidEdit. При этом avi-файл можно сжать, использовав один из методов компрессии.

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

Системы распознавания речи

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

Примером системы, относящейся к первой группе, может послужить приложение Voice Mouse, созданное фирмой IPI (рис. 1.25).

Рис. 1.25. Приложение Voice Mouse

Это приложение добавляет в Windows голосовое управление, что позволяет выполнять некоторые функции, не прикасаясь к мыши или клавиатуре. Во время своей работы Voice Mouse анализирует структуру меню активного приложения, формируя в своем окне список команд, входящих в меню. Этот список можно расширить произвольным образом. Для каждой команды можно определить звуковую последовательность, при распознавании которой данная команда будет запущена на выполнение, а также действия, которые нужно выполнить.

Для редактирования команд используется диалоговая панель "Command Editor" (рис. 1.26).

Рис. 1.26. Редактор команд

С помощью кнопки "Train..." можно обучить Voice Mouse распознавать команду, повторив в микрофон соответствующее этой команде слово два раза.

С помощью кнопки "Edit..." можно назначить действие, которое должно быть выполнено при распознавании команды. В качестве действия можно задать либо запуск произвольного приложения, либо имитацию ввода с клавиатуры произвольной последовательности символов. Например, исходный текст приложения, показанный на рис. 1.25, был "набран" без использования клавиатуры, мы просто надиктовали его в микрофон, предварительно обучив систему Voice Mouse таким словам, как WinMain и HINSTANCE.

Аналогичная система создана фирмой Cylogic Software и называется Voice User. Среди возможных областей ее применения - помощь пользователям-инвалидам.

К системам распознавания речи второй группы можно отнести IBM Personal Dictation System, разработанную фирмой IBM Personal Software Products. Эта система имеет словарь размером 32 тыс. слов и способна работать с английским, немецким, французским, итальянским и испанскими языками. Аналогичные системы создаются и в России.