Первый шаг на рынке звуковых карт (речь в основном идет о звуковых картах, предназначенных для бытового применения) сделала в 1987 году фирма Creative Labs, разработавшая Creative Music System (C/MS) – 12-голосный стереомузыкальный синтезатор, который начал распространяться в 1989 году под названием Game Blaster. Успех карты Game Blaster, которая разошлась сотнями тысяч, привел в скором времени к появлению и других подобных карт, наиболее известная из которых – карта AdLib. В основе ее функционирования лежит метод, известный как «синтез путем частотной модуляции (FM Synthesis)».
Этот метод лежит в основе функционирования большинства современных звуковых карт. После внедрения этих карт персональный компьютер стал обладать способностью к воспроизведению музыки.
Появление карты Sound Blaster фирмы Creative Labs ознаменовало собой революцию – теперь прикладные программы могли воспроизводить и записывать оцифрованную музыку и различные звуковые эффекты, пока, правда, с 8-битным разрешением.
Постепенно стали появляться различные "клоны" карты Sound Blaster, а сама технология совершенствовалась. В дополнение к нескольким каналам и стереозвучанию появилась поддержка 16-битного разрешения. Запись сигналов с высоким разрешением требовала огромного количества ресурсов. запись одной минуты с качеством СО-Audio требует порядка 10 Мбайт.
Затраты на запись звуковой информации
Синтез посредством частотной модуляции имел ряд недостатков. Наиболее острый из них – искусственный характер звучания. Он находится в прямой зависимости от регулярности волн, генерируемых при FM-синтезе. Второй недостаток, частично связанный с первым, заключался в следующем: для хранения музыкального сопровождения высокого качества требовались большие объемы дискового пространства.
Одним из методов сокращения объемов, занимаемых музыкой, является Mid. Файлы в формате Mid обычно содержат инструкции типа: "сыграть на таком-то инструменте такую-то ноту в течение такого-то количества секунд". В результате Mid-файлы занимают незначительный объем. Тем не менее сам характер представления звуков не мог полностью удовлетворить как пользователей, так и разработчиков. Требовалось принципиально новое решение.
Mid (Musical Instruments Digital Interfaсe) – скорее не метод записи звука, а способ записи команд, посылаемых музыкальным инструментам. Mid-файл (обычно это файл с расширением MID) содержит ссылки на ноты, а не запись музыки как таковой. Когда Mid-совместимая звуковая карта получает Mid-файл, карта ищет необходимые звуки в таблице через эти ссылки. В таблице указано, какой инструмент должен звучать для определенной ссылки. Например, большой барабан определен как 55. Когда звуковая карта находит ссылку с номером 55, она выдает звук большого барабана. Mid-файлы могут проигрываться как на картах с FM-синтезом, так и на картах, основанных на табличном синтезе. Синтезаторы, которые установлены на недорогих звуковых картах, имеют ограниченное число одновременно воспроизводимых голосов (полифония) – до 20 при использовании синтезатора Yamaha OPL3.
Принципиально новым методом явился синтез на базе таблиц волн (Wave Table Synthesis). Его применение позволило радикальным образом решить проблему "в лоб". Вам хочется сыграть определенную ноту на инструменте? Возьмите образец и проиграйте его с более высокой или низкой скоростью – в зависимости от того, какую ноту вам требуется извлечь. В результате получите практически оригинальный звук. Карты, поддерживающие такой тип синтеза, обычно имеют несколько мегабайт памяти для хранения образцов звучания инструментов. Чем больше объем памяти на карте, тем реалистичней становится звучание, ибо в памяти хранится больше образцов, записанных с более высоким разрешением. Стандарт General Mid описывает около 200 инструментов, которые могут использоваться в Mid-файлах. Для хранения образцов звучания таких инструментов требуется от 2 до 9 Мбайт памяти. Отметим, что качество звучания карты, работающей на принципе табличного синтеза, сильно зависит от качества звучания образцов инструментов, хранящихся в памяти этой карты. Если, например, на хранение каждого образца отводится всего несколько килобайт, качество звучания не будет сильно отличаться от качества звучания при FM-синтезе. Обычно на каждый образец отводится порядка 20 Кбайт памяти, то есть всего около 4 Мбайт для всех образцов. Первой картой, использующей принцип хранения образцов звучания инструментов в ОЗУ вместо ПЗУ, стала карта Gravis Ultrasound фирмы Advanced Gravis. Образцы хранятся на диске и загружаются в процессе воспроизведения звуковых сигналов. Кроме того, существует возможность для изменения звучания инструментов, а также замены их.
Использование ОЗУ существенно сказалось на удешевлении данной технологии, ибо очень мало приложений, которым требуются вес Mid-инструменты. Если приложение поддерживает кэширование инструментов, оно загружает каждый инструмент перед его включением, а поскольку средний Mid-файл использует около 12 инструментов одновременно, затраты на память не столько существенны.
Основные принципы функционирования
Как известно, звуковые волны, преобразованные в электрический сигнал, например, через микрофон, представляют из себя так называемый аналоговый сигнал. Частоты звуковых (слышимых) колебаний лежат в диапазоне от 17-20 Гц до 20 кГц. Реальные звуки помимо громкости и частоты характеризуются также тембром. В этом случае кроме основного тона (колебания основной частоты) в сигнале присутствуют также колебания более высоких частот обертона. Именно амплитудами обертонов и характеризуется тембр (насыщенность) звука.
В общем случае IBM РС-совместимые компьютеры имеют несколько возможностей для генерирования (воспроизведения) звука с использованием звуковой карты. Разумеется, выбор конкретного способа зависит в первую очередь от типа конкретной карты. Обычно в функциональном составе звуковых плат можно выделить следующие узлы: модуль для записи и воспроизведения звука, модуль синтезатора и модуль интерфейсов. Таким образом, для воспроизведения звука может использоваться цифро-аналоговое преобразование. В этом случае цифровые выборки реального звукового сигнала хранятся в памяти компьютера (например, в виде .WAV-файлов) и преобразовываются в аналоговый сигнал через цифро-аналоговый преобразователь (ЦАП).
Второй способ воспроизведения звука заключается в его синтезе. Компьютер передает на звуковую карту некоторую управляющую информацию, по которой и формируется выходной аналоговый сигнал. В настоящее время применяются две основные формы для синтеза звукового сигнала. Это синтез с использованием частотной модуляции (Frequency Modulation), или FM-синтез, и синтез с использованием таблицы волн (WaveTable), так называемый табличный, или WT-синтез.
Помимо этого компьютер также может управлять устройством, которое либо выдает команды для синтеза звука другим устройством, либо само способно воспроизводить (или синтезировать) звук. В этом случае специальная управляющая информация между такими устройствами передается по так называемому Mid-интерфейсу (Musical Instruments Digital Interface), а устройство, подключаемое к такому интерфейсу, называется Mid-устройством. В настоящее время существует два вида Mid-интерфейса: UART Mid и MPU-401.
Ну и, пожалуй, не менее распространенным способом воспроизведения звука с компьютера со звуковой картой является управление приводом CD-ROM, в котором находится компакт-диск с записанной на нем аудиоинформацией.
Следует понимать, что в двух последних случаях звуковая карта выполняет только интерфейсные функции и не более того.
