Таблица 2.4
Переменные, используемые в подпрограмме «Echo»
| Имена переменных | Тип | Описание |
| i, j, k | integer | Переменные-счетчики |
| DelaySmp | Cardinal | Равно Ti – Ti-1 |
| SmpBuf | array[0..64] of Int64 | Хранит выборку аудио-данных |
| Mult | Real | Коэффициент для полу-чения значения амплиту-ды отражения |
| Smp | Integer | Текущая амплитуда |
| Channel | Word | Количество каналов |
| MaxValue | Cardinal | Макс. значение ампли-туды в обрабатываемом фрагменте |
Описание входных данных подпрограммы представлено в табл.2.5.
Таблица 2.5
Входные данные подпрограммы «Echo»
| Имена переменных | Тип | Описание |
| AudioData | TAudioData | Передаваемая исходная совокупность значений амплитуд и времен |
| Start | Cardinal | Стартовая позиция, с которой необходимо начать обработку |
| Count | Cardinal | Количество позиций, которые необходимо обработать относительно стартовой |
| Number | Cardinal | Количество откликов |
| Delay | Cardinal | Время между откликами |
| Volume | Real | Громкость отклика отно-сительно предыду-щего |
Выходные данные подпрограммы:
AudioData – измененная совокупность значений амплитуд и времен с эффектом эха.
В подпрограмме используются следующие подпрограммы:
1. ReadSample(Number, Channel: LongInt; var Value: Integer) – процедура чтения данных из звукового файла;
2. WriteSample(Number, Channel: LongInt; Value: Integer) – процедура записи данных в звуковой файл.
Схема подпрограммы «Echo» приведена на рис. 2.18.
| Имена переменных | Тип | Описание |
| i, j, k, n, NewCount | integer | Переменные-счетчики |
| Buf | Int64 | Выравнивание (число каналов х разрядность) |
| Interval | Real | Интервал времени между двумя значениями амплитуд |
| Smp1, Smp2 | Integer | Значения амплитуд |
| Channel | Byte | Количество каналов |
Описание входных данных подпрограммы представлено в табл.2.7.
Таблица 2.7
Входные данные подпрограммы «SetSpeedOfAudio»
| Имена переменных | Тип | Описание |
| AudioData | TAudioData | Передаваемая исходная совокупность значений амплитуд и времен |
| Start | Cardinal | Стартовая позиция, с которой необходимо начать обработку |
| Count | Cardinal | Количество позиций, которые необходимо обработать относительно стартовой |
| Speed | Real | Новая скорость звуко-вого сигнала |
Выходные данные подпрограммы:
AudioData – измененная совокупность значений амплитуд и времен с измененным темпом.
В подпрограмме используются следующие подпрограммы:
1) ReadSample(Number, Channel: LongInt; var Value: Integer) – процедура чтения данных из звукового файла;
2) WriteSample(Number, Channel: LongInt; Value: Integer) – процедура записи данных в звуковой файл.
Схема подпрограммы «SetSpeedOfAudio» приведена на рис. 2.19.
| Имена переменных | Тип | Описание |
| i | integer | Переменная-счетчик |
| MaxValue | Cardinal | Макс. значение ампли-туды в обрабатываемом фрагменте |
| Value | Cardinal | Текущее значение амплитуды |
| Channel | Word | Количество каналов |
Описание входных данных подпрограммы представлено в табл.2.9.
Таблица 2.9
Входные данные подпрограммы «SetVolumeOfAudio»
| Имена переменных | Тип | Описание |
| AudioData | TAudioData | Передаваемая исходная совокупность значений амплитуд и времен |
| Start | Cardinal | Стартовая позиция, с которой необходимо начать обработку |
| Count | Cardinal | Количество позиций, которые необходимо обработать относительно стартовой |
| Volume | Real | Новая громкость звуко-вого сигнала |
Выходные данные подпрограммы:
AudioData – измененная совокупность значений амплитуд и времен с измененным уровнем громкости.
В подпрограмме используются следующие подпрограммы: