Главная arrow Микрокомпьютер arrow Управление звуком
Как начинался компьютер
Компьютерная революция
Двоичный код
Разработки военных лет
Интегральные микросхемы
Микрокомпьютер
Персоны
Сеть
Язык компьютера
Развитие ПО
Гибкие системы
Средства разработки
Информатика
Вычислительная наука
Операционные системы
Искусственный интеллект
Предыстория
Поиск
Знания и рассуждения
Логика
Робототехника
 

 
Управление звуком Печать
Музыка - это искусство облагораживать звуки, порождаемые человеческим голосом или механическими средствами - например, вибрирующей струной или колеблющейся поверхностью барабана. Обычно композитор рассматривает звуки, создаваемые голосом или инструментами, как исходный материал, из которого можно строить ритм и мелодию, устанавливая громкость звучания каждой ноты. Звуки сами по себе, т. е. их тон и тембр, зависят от физических свойств инструмента.

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

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

Выявление тонкой структуры звука

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

Волны давления можно представить графически как волновые функции, простейшей из которых является синусоида. Синусоида характеризуется двумя параметрами - частотой и амплитудой. Частота определяет число периодов (т. е. одного максимума и одного минимума) волны в 1 с. Этот параметр наш мозг и воспринимает как высоту тона. Амплитуду волны, т. е. интенсивность изменения давления, наше ухо и мозг воспринимают как громкость. Как и все периодические колебания, музыкальные звуки состоят из десятков синусоид разной частоты. В 1822 г. французский математик и физик Жан Батист Фурье, исследовавший сложную структуру волн, разработал мощный математический метод, позволяющий раскладывать периодические функции на синусоидальные составляющие. Принципы анализа Фурье - как называют этот метод - используются теперь в программах, с помощью которых компьютер анализирует звуковую волну подобно тому, как это автоматически делает слуховой аппарат человека.
 
Энергия от пальцев пианиста передается через клавиши, молоточки и струны резонатору фортепьяно, который, начиная колебаться, по рождает пульсирующие сферические звуковые волны.
 
Волны давления, проходя через внешнее ухо, барабанную перепонку и косточки среднего уха, достигают заполненного жидкостью внутреннего уха, имеющего форму улитки. Жидкость, колеблясь, ударяется о мембрану, покрытую крохотными волосками, ресничками. Синусоидальные составляющие сложного звука вызывают колебания различных участков мембраны. Колеблющиеся вместе с мембраной реснички возбуждают связанные с ними нервные волокна; в них возникают серии импульсов, в которых «закодированы» частота и амплитуда каждой составляющей сложной волны; эти данные электрохимическим способом передаются мозгу.
 
Характерный «почерк» синусоидальной волны
Синусоида - это симметричная волна с периодически чередующимися гребнями и впадинами; она характеризуется частотой и амплитудой. Человеческое ухо обычно улавливает звуки, начиная с частоты 25 Гц (колебаний в секунду), т. е. с частоты, немного меньшей, чем частота самой низкой ноты пианино. Дети со здоровым слухом способны слышать звуки частотой до 20 тыс. Гц, для взрослых же верхний предел слышимости обычно не превышает 15 тыс. Гц, что соответствует свистящему звуку телевизора, когда полностью убирается громкость. Амплитуда звукового давления определяет интенсивность звука, которая связана с его громкостью; последняя измеряется в децибелах (дБ). Гудок в телефонной трубке, вплотную при жатой к уху, имеет громкость около 80 дБ, тогда как звук низко летящего реактивного самолета достигает 120 дБ; это болевой порог для человеческого уха.
 
 
Построение звука путем сложения

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

Каждое конкретное сочетание синусоидальных составляющих сложной волны определяет тембр звучания: один и тот же тон может звучать по-разному, например, как исполненный на фортепьяно или на трубе. Самая низкочастотная синусоидальная составляющая сложного звука, которая обычно звучит наиболее громко, называется основной составляющей. Она определяет высоту сложного звука. Составляющие более высоких частот, как правило, звучащие слабее, называются обертонами. Еще одна характеристика, определяющая тон того или иного инструмента,- огибающая сложной волновой функции; в ней отражены как частотная, так и амплитудная характеристики звука. В огибающей можно выделить три фазы: фаза нарастания звука от полной тишины до максимальной громкости ноты; стационарная фаза, в пределах которой громкость более или менее постоянна, и фаза затухания. Для синтеза одной-единственной ноты, звучащей на протяжении секунды, требуется произвести десятки тысяч арифметических операций. Таким образом, описанный метод весьма не экономен, это «грубый» подход к музыкальному синтезу.
 
В этом упрощенном примере программа аддитивного синтеза генерирует пять синусоидапьных волн - основную низкочастотную составляющую и четыре высокочастотных обертона, - которые затем комбинирует. При совпадении максимумы (как и минимумы) усиливаются, тогда как при совпадении максимумов с минимумами они взаимно гасятся. Результирующая волна имеет сложный профиль. Тон звука определяется основной составляющей, а тембр - обертонами.
 
 
Построение звука путем вычитания

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

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

Синтезируя пение, компьютер генерирует последовательность чисел, которые образуют сложный пульсирующий сигнал. Подобно звуку, рождаемому голосовыми связками, этот сигнал содержит компоненты различных частот. Он становится входом программы, в основе которой лежит метод анализа человеческого голоса, называемый линейным предсказанием. По существу, такая программа действует подобно фильтру, выделяющему частоты, наиболее ярко выраженные в том голосе, который имитируется. Таким образом удается синтезировать, например, звучание сопрано, выделяя частоты вблизи 3 кГц.
 
Голос рождается из беззвучного потока воздуха, который, выходя из легких, проходит через вибрирующие голосовые связки, расположенные в верхней части дыхательного горла. Вибрации передаются воздушному потоку, создавая многочисленные звуковые волны различной частоты. Частотный спектр изменяется при прохождении воздуха через голосовой тракт, который действует как акустический фильтр, усиливая одни частоты и приглушая другие. В результате хаотическая смесь колебаний превращается в ноту мелодии.
 
Частота человеческого голоса
Между голосовыми связками находится голосовая щель, которая сужается и расширяется в процессе пения. На одном из концов каждой связки имеется подвижный хрящик. Чем чаще движутся связки, тем выше частота колебаний воздуха, проходящего через голосовую щель. Частота среднего мужского голоса равна примерно 120 Гц, среднего женского - 250 Гц.
 
 
 
На первом этапе синтеза человеческого голоса методом вычитания компьютер генерирует сложный пульсирующий сигнал, состоящий из многих синусоидальных составляющих - гармоник. (Этот сигнал, порождающий гласные звуки, можно комбинировать с другим, напоминающим «белый», т. е. случайный шум, который по своим характеристикам близок к согласным в человеческой речи.)
Далее сигнал проходит через математический фильтр, который может быть построен на основе анализа голоса певца. Анализ выявляет сочетания частот, свойственные естественно звучащему тону. Эти частоты усиливаются, а другие приглушаются.
Выходной сигнал фильтра - нота мелодии представлен в цифровой форме. Последовательность чисел, кодирующих песню, обрабатывается цифро-аналоговым преобразователем, который генерирует последовательность дискретных уровней напряжения. Последние сглаживаются с помощью специального фильтра, превращаясь в непрерывный сигнал, который преобразуется громкоговорителем в слышимые звуки.
 
 
Эффективный метод синтеза - умножение

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

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

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

Для воспроизведения звука на протяжении секунды требуется выполнить десятки тысяч арифметических операций. Но поскольку в описываемом процессе участвует лишь несколько волн, а не несколько десятков, как при аддитивном синтезе, количество вычислений удается значительно сократить.
 
На первом шаге процесса частотной модуляции подпрограмма, называемая частотно моделируемым генератором, по двум числовым параметрам, частоте и амплитуде, генерирует модулирующую волну. Характеристики модулирующей волны передаются второму генератору, запрограммированному на другую частоту и амплитуду; он создает несущую волну. При наложении этих двух волн несущая обогащается обертонами.
На этой диаграмме два генератора создают модулирующие сигналы, которые поступают на вход одного или нескольких дополнительных генераторов; каждый из них запрограммирован на определенные частоту и амплитуду. Последний генератор в каждой цепочке создает несущий сигнал, видоизменяемый всеми предшествующими модулирующими сигналами. Затем выходы двух цепочек объединяются в соответствии с правилами аддитивного синтеза - образуется сложная волновая функция.
 
Клавиатура синтезатора
Клавиатура синтезатора, работающего по принципу цифровой частотной модуляции, напоминает клавиатуру пианино, но это лишь видимость. Клавиши не соединены здесь с молоточками, струнами и резонатором - они посылают электрические импульсы частотно модулируемым генераторам. Последние взаимодействуют между собой, следуя определенным алгоритмам. Разные алгоритмы порождают разные звуки. Алгоритмы хранятся в памяти синтезатора вместе с другими характеристиками, которыми композитор может манипулировать в процессе исполнения: громкостью, вибрацией или преднамеренными искажениями.
 
 
Создание гипотетического музыкального инструмента

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

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

Однако не обязательно ограничиваться моделированием скрипок и других реально существующих инструментов. Описанный метод позволяет создавать с помощью компьютеров совершенно новые «инструменты», наиболее подходящие для выражения идеи композитора. Компьютер дает музыканту возможность подняться над реальностью.
 
 
Чтобы создать математическую модель скрипичной струны, программист должен указать ее длину, жесткость и натяжение. В модели следует также учесть «эффект глушения», создаваемый деревянными деталями, к которым крепится струна. На звук, рождаемый такой моделью, влияют и другие факторы, определяемые математически: трение смычка о струну, место его соприкосновения со струной, скорость его движения и давление, оказываемое им на струну.
 
 
Математика делает возможным то, что нереально физически, - создает скрипичную струну, имеющую больше двух концов. Математическую модель можно построить так, чтобы струна с двумя концами постепенно превращалась в струну с тремя, четырьмя и даже восемью концами. Такая модель создает многотоновые звуки, напоминающие перезвон церковных колоколов.