Материал предоставлен http://it.rfet.ru

Физические основы генерации компьютерного звука

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

$$y =a_m* sin(wt) = a_m*sin(2nft)$$

где %%a_m%% - максимальная амплитуда синусоиды; %%w%% - частота (%%w=2n f%%); f- количество колебаний упругой среды в секунду (%%f=1/T%%); %%Т%%-период; %%t%% - время (параметрическая переменная).

Звук характеризуется частотой (%%f%%), обычно измеряемой в герцах, т.е. количеством колебаний в секунду, и амплитудой (%%y%%). Амплитуда звуковых колебаний определяет громкость звука.

Для монотонного звука (меандр) характерно постоянство амплитуды во времени. Затухающие звуковые колебания характеризуются уменьшением амплитуды с течением времени. Человек воспринимает механические колебания частотой 20 Гц - 20 КГц (дети - до 30 КГц) как звуковые. Колебания с частотой менее 20 Гц называются инфразвуком, колебания с частотой более 20 КГц - ультразвуком. Для передачи разборчивой речи достаточен диапазон частот от 300 до 3000 Гц.

Если несколько чистых синусоидальных колебаний смешать, то вид колебания изменится - колебания станут несинусоидальными.

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

Основная гармоника имеет частоту %%f_1%%, и амплитуду %%a_1%%; вторая гармоника - частоту %%f_2%% и амплитуду %%a_2%%; третья гармоника соответственно %%f_3%% и %%a_3%%. Причем %%f_1<f_2<f_3%%, %%a_1>a_2>a%%.

При бесконечном количестве таких гармоник образуется периодический сигнал, состоящий из прямоугольных импульсов:

%%Т%% - длительность периода; %%t_u%% длительность импульса; %%t_n%% - длительность паузы между импульсами; %%Q%% - скважность импульсов, %%Q=Tn/t_u%%

На слух всякое отклонение от синусоиды приводит к изменению звучания. В IBM PC источником звуковых колебаний является динамик (PC Speaker), воспроизводящий частоты приблизительно от 2 до 8 КГц. Для генерации звука в PC Speaker используются прямоугольные импульсы.

Синусоидальные сигналы в ЭВМ можно получить только с помощью специальных устройств - аудиоплат.

Без таких устройств хорошего качества звучания добиться не удается. Для улучшения качества звучания необходимо к ЭВМ подключить внешнюю аппаратуру. При этом следует преобразовать дискретные сигналы ЭВМ в аналоговые сигналы аудиоаппаратуры. Такое преобразование можно выполнить с помощью схемы цифро-аналогового преобразования (ЦАП), например, реализованной на аналоговом сумматоре (см. рис.), подключаемом к параллельному интерфейсу Centronics (LPT1 или LPT2).

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

Способов оцифровки аналогового сигнала существует много. Рассмотрим три из них.

  1. Аналого-цифровой преобразователь (АЦП), работающий по принципу измерения напряжения.
  2. Время-импульсное кодирование аналогового сигнала (клиппирование).
  3. Спектральный анализатор.

Измерительные АЦП имеют принцип действия, понятный из рисунка ниже. Амплитуда аналогового сигнала измеряется через определенные промежутки времени - кванты. Полученные числовые значения являются цифровыми величинами, характеризующими аудиосигнал. Величина промежутков времени, через которые производится измерение амплитуды аудиосигнала называется шагом квантования, а сам процесс называется оцифровкой звука.

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

Значения верхней и нижней критических амплитуд подбираются экспериментально. Весь остальной процесс клиппирования выполняется по строгому алгоритму:

  • при достижении увеличивающимся аналоговым сигналом уровня верхней критической амплитуды фиксируется время, и цифровой выход включается в 1;
  • при достижении уменьшающимся аналоговым сигналом НКА фиксируется время, а цифровой выход переключается в 0.

Графически этот процесс можно представить на рисунке. По накопленным значениям %%t%%. и соответствующим им значениям цифрового выхода определяются временные параметры аналогового сигнала: длительность импульсов и длительность пауз, которые и являются цифровыми значениями аналогового сигнала.

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

Для преобразования звукового сигнала в цифровой код используются специальные устройства ввода:

Для улучшения качества звука применяется дополнительное устройство ПЭВМ - звуковая плата (аудиоплата).

Обычно звуковая плата состоит из трех модулей:

  • модуля оцифрованного звука,
  • многоголосого частотного синтезатора (Freguency Modulation Synthesizer),
  • модуля интерфейсов внешних устройств.

Модуль оцифрованного звука предназначен для цифровой записи, воспроизведения и обработки оцифрованного звука.

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

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

  • частотный синтез (FM - Fregueney Modulation);
  • волновой синтез (WS - Ware Synthesys).

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

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

Волновые таблицы позволяют учесть особенности звучания различных инструментов, но набор их не является исчерпывающе полным. При работе под Windows результат волнового синтеза оформляется в файлы с расширением “Wav”. Сопряжение ЭВМ с электромузыкальными инструментами осуществляется с помощью интерфейса электромузыкальных инструментов (MIDI - Musical Instruments Digital Interface). В состав стандарта MIDI входят: стандарт электрический, стандарт на протоколы обмена данными, драйверы устройств и звуковые файлы.

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

Модуль интерфейсов внешних устройств может включать в себя интерфейс для подключения CD-ROM, игровой порт и др.

Основные характеристики звуковой карты - разрядность, частота дискретизации, количество каналов (моно, стерео), функциональные возможности синтезатора, совместимость. Под разрядностью звуковой карты понимается количество бит, используемых для кодирования цифрового звука. 8-битовые карты обеспечивают качество звука, близкое к телефонному, 16- битовые - обеспечивают звучание, близкое к студийному.

Частота дискретизации определяет, сколько раз в секунду производится измерение амплитуды аналогового сигнала. Чем больше частота дискретизации, тем точнее оцифрованный звук будет соответствовать исходному. Но при каждом измерении формируется 8- или 16-битовый код измеренного значения (1 или 2 байта), в связи с чем этот параметр оказывает сильное влияние на требуемый для хранения оцифрованного звука объем памяти. Для записи/воспроизведения речи достаточно иметь частоту дискретизации 6-8 КГц, для музыки среднего качества - 20-25 КГц, для высококачественного звука - не менее 44 КГц.

Звуковые карты, обеспечивающие работу со стереофоническим звуком, имеют два одинаковых канала, тогда как для работы с монозвуком требуется более простая карта. Стереозвук, кроме того, требует вдвое большего объема памяти.

Функциональные возможности карты характеризуют наличие на ней специальных комплектов микросхем: РМ-синтезатора, обеспечивающего частотный синтез звука; WT-синтезатора, обеспечивающего волновой синтез звука (при котором образцы звучания инструментов могут быть записаны в файле вместе с волновыми таблицами (например, формат WAV) или могут находиться в ПЗУ звуковой карты (например, формат MID)). Кроме того, большое значение имеют возможности синтезаторов по обработке звуков (количество голосов, модуляция, фильтрование и др.), наличие аппаратных ускорителей (спецпроцессоров) и аппаратурных средств сжатия - восстановления, возможность загрузки новых образцов звучания инструментов и др.

Совместимость обычно оценивается по отношению к моделям Sound Biaster фирмы Creativ Labs: SB Pro и SB 16. SB Pro - это 8-битовая карта, обеспечивающая запись/воспроизведение одного канала с частотой дискретизации 44.1 КГц либо двух каналов с частотой дискретизации 22.05 КГц, имеет FM- и WT-синтезаторы. SB 16 - 16-битовая карта допускает запись/воспроизведение стереозвука с частотой дискретизации от 8 до 44/1 КГц; имеет автоматическую регулировку уровня записи с микрофона и программную регулировку тембра; в ее состав входят FM- и WT- синтезаторы.

Для сравнения приведем характеристики двух звуковых карт. Карта AMD InterWave имеет 32 голоса, частоту дискретизации до 48 Кгц, встроенное ПЗУ емкостью 1 Мбайт с инструментами стандарта General MIDI (GM) и шестью наборами ударных стандарта Roland General Standart (GS). Имеет возможность расширения за счет установки модулей ОЗУ емкостью до 8 Мбайт и эффект - процессора. При наличии ОЗУ обеспечивается аппаратурная совместимость со звуковыми картами GUS (Gravis Ultrasound Standart).

Звуковая карта AWE32 производства Creative Labs предназначена для записи и воспроизведения высококачественного стереозвука, обеспечивает 8- и 16-битовое кодирование оцифрованного звука, частоту дискретизации от 5 до 44 КГц, имеет программируемый сигнальный процессор, позволяющий работать со звуком в реальном масштабе времени, осуществляющий в этом режиме сжатие и восстановление звуковых файлов, 20-голосый FM-стереосинтезатор, WT-синтезатор, работающий в соответствии со стандартами GM, GS и МТ-32 (Sound Canvas Multi-Timbral-32) ПЗУ, емкостью 1 Мбайт, в котором содержится 128 GM-совместимых инструментов и 10 GS- совместимых наборов ударных инструментов. Карта обеспечивает одновременное воспроизведение 32 голосов, имеет цифровой десятиканальный стереомикшер, оперативное ЗУ емкостью 512 Кбайт для дополнительных пользовательских библиотек звуков (память может быть расширена до 28 Мбайт). Предусмотрена возможность расширения дополнительным табличным синтезатором Wave Biaster II для получения 64-голосовой полифонии и еще 10 наборов ударных. Имеются интерфейс для подключения CDROM, встроенный усилитель мощности (4 Вт на канал), разъем для подключения голосового модема, обеспечивается работа в стандарте Plug&Play.

Устройства ввода-вывода звуковых сигналовВнешние запоминающие устройства (ВЗУ)