18c0693f

Синтез звуков — Audio


Подпакет Audio служит для генерации стандартных звуковых сигналов разной формы, частоты и длительности, модуляции сигналов по амплитуде и по частоте и считывания звуковых файлов с дисков. Для создания звуковых объектов служит функция Waveform:

Приведенный на рис. 13.1 пример дает генерацию прямоугольного сигнала частотой 1000 Гц и длительностью 0.5 с. Следует обратить внимание.на то, что созданный звуковой объект проигрывается и показывается после команды Show.

Звуковой объект, как отмечалось, ассоциируется с графическим объектом. К сожалению, явной связи между осциллограммой звукового сигнала и его графическим образом нет. Более того, вид графического объекта сильно зависит от компьютерной платформы, на которой установлена система Mathematica. Так что графический звуковой объект — это просто некий условный графический образ звукового сигнала.

Рисунок 13.2 показывает генерацию прямоугольного сигнала с двумя гармониками. Здесь используется опция Overtones->2. Ее нельзя применять к синусоидальному сигналу, поскольку он принципиально не имеет гармоник.

Рис. 13.1. Создание и просмотр звукового объекта — синусоидального сигнала

Рис. 13.2. Генерация прямоугольного сигнала с двумя гармониками

Когда указана опция Overtones, функция Waveform использует ряд Фурье для создания высших гармоник, обогащающих тембр звука. При этом возможно изменение числа гармоник. Возможно также создание сигнала с заданными номерами и амплитудами гармоник. Для этого служит функция ListWaveform:

На рис. 13.3 представлен пример создания звукового объекта сложного типа, содержащего ряд частотных составляющих.
Данные представлены списком partial-List. С помощью функции Table подготовлен объект, содержащий шесть звуковых подобъектов.



Рис. 13.3. Генерация многочастотного сигнала Для создания звуковых объектов, порождающих звук с амплитудной и частотной модуляцией, служат следующие функции:

Рисунок 13.4 демонстрирует создание звукового объекта с амплитудной и частотной модуляцией. Обратите внимание на то, что объект показывается сразу, поскольку в состав его выражения включена команда //Show.

Для создания сложных сигналов с частотной модуляцией функция Frequency-Modulation используется в следующем виде:

Рисунок 13.5 показывает создание и воспроизведение композитного звуковок сигнала. Он представлен списком объектов {s 1, s 2, s 3}.

 

Рис. 13.4. Генерация звуковых объектов с амплитудной (сверху) и частотной (снизу) модуляцией
 

Рис. 13.5. Генерация композитного звукового сигнала Для считывания звуковых файлов с магнитного диска служит функция Read-Soundfile:

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





Все публикации раздела