====== Программирование звука ======
--- //[[romiras@users.sourceforge.net|Romtek]] 2010/08/07 01:04//
--- //Pavia//
===== Введение =====
Оцифровка сигнала включает в себя два процесса: дискретизацию и квантизацию.
После оцифровки (процесс Analog-Digital-Conversion, ADC) непрерывный аналоговый сигнал звука (a-analog) принимает форму (d-digital).
Если аналоговый сигнал может принимать вещественные значения, , то оцифрованный сигнал может принимать целочисленные значения, . При оцифровке функция аналогового сигнала разбивается на равные промежутки времени (доли секунды), задаваемые частотой дискретизации (s-sample), определяемой как количество семплов (промежутков времени) в секунду.\\ Часто используется частота дискретизации 44100 герц. Но это зависит от диапазона передаваемых частот. Чем шире диапазон передаваемых частот, тем выше должна быть частота дискретизации .
Для синтеза (см. ниже) звукового сигнала с частотой необходимо задать частоту дискретизации не менее согласно теореме Найквиста-Котельникова (([[wpru>Теорема_Котельникова|теорема Найквиста-Котельникова]])).
При оцифровке сигнала учитывается и уровень квантизации амплитуды, задаваемый в битах (''N'' бит).\\
Таким образом, амплитуда звуковой волны задаётся числами в диапазоне . Как правило, для оцифровки звука используют 16 бит и, реже, 32 бита. Для оцифровки сигналов с микрофона достаточно 8 бит.
===== Генерация примитивных звуковых сигналов =====
Любой звуковой сигнал может быть представлен в виде суммы колебаний (волн) разных частот и амплитуд. Накладываясь одна на другую, вместе они составляют сложный звук.
Каждая волна задана формулой для аналогового сигнала и - для цифрового. ''A'' - амплитуда волны, а ''f'' - частота волны. ''t'' и ''n'' - текущий отсчёт во времени времени или семпл.
Составляющие (колебания) звукового сигнала называют //гармониками//.
=== Синусоида ===
=== Прямоугольный ===
=== Треугольный ===
=== Пилообразный ===