Смекни!
smekni.com

Система обработки аудиоинформации Подсистема фильтрации и обработки сигнала (стр. 10 из 24)

Таблица 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 – измененная совокупность значений амплитуд и времен с эффектом эха.

2.10.4. Используемые подпрограммы

В подпрограмме используются следующие подпрограммы:

1. ReadSample(Number, Channel: LongInt; var Value: Integer) – процедура чтения данных из звукового файла;

2. WriteSample(Number, Channel: LongInt; Value: Integer) – процедура записи данных в звуковой файл.

2.10.5. Схема подпрограммы «Echo»

Схема подпрограммы «Echo» приведена на рис. 2.18.


2.11. Описание подпрограммы «SetSpeedOfAudio»

2.11.1. Вводная часть

Подпрограмма SetSpeedOfAudio служит для измения темпа (скорости) указанного фрагмента звукового сигнала, записанного в файле. Текст подпрограммы приведен в приложении 1.

2.11.2. Функциональное назначение

Подпрограмма SetSpeedOfAudio предназначена для реализации алгоритма изменения темпа звука.

2.11.3. Описание информации

TempAudio: TAudioData; – получаемая совокупность значений амплитуд и времен. . Описание используемых в подпрограмме переменных представлено в табл.2.6.

Таблица 2.6

Переменные, используемые в подпрограмме «SetSpeedOfAudio»

Имена переменных Тип Описание
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 – измененная совокупность значений амплитуд и времен с измененным темпом.

2.11.4. Используемые программы

В подпрограмме используются следующие подпрограммы:

1) ReadSample(Number, Channel: LongInt; var Value: Integer) – процедура чтения данных из звукового файла;

2) WriteSample(Number, Channel: LongInt; Value: Integer) – процедура записи данных в звуковой файл.

2.11.5. Схема подпрограммы «SetSpeedOfAudio»

Схема подпрограммы «SetSpeedOfAudio» приведена на рис. 2.19.


2.12. Описание подпрограммы «SetVolumeOfAudio»

2.12.1. Вводная часть

Подпрограмма SetVolumeOfAudio служит для измения уровня громкости указанного фрагмента звукового сигнала, записанного в файле. Текст подпрограммы приведен в приложении 1.

2.12.2. Функциональное назначение

Подпрограмма SetVolumeOfAudio предназначена для реализации алгоритма изменения общего уровня громкости звука.

2.12.3. Описание информации

TempAudio: TAudioData; – получаемая совокупность значений амплитуд и времен. . Описание используемых в подпрограмме переменных представлено в табл.2.8.

Таблица 2.8

Переменные, используемые в подпрограмме «SetVolumeOfAudio»

Имена переменных Тип Описание
i integer Переменная-счетчик
MaxValue Cardinal Макс. значение ампли-туды в обрабатываемом фрагменте
Value Cardinal Текущее значение амплитуды
Channel Word Количество каналов

Описание входных данных подпрограммы представлено в табл.2.9.

Таблица 2.9

Входные данные подпрограммы «SetVolumeOfAudio»

Имена переменных Тип Описание
AudioData TAudioData Передаваемая исходная совокупность значений амплитуд и времен
Start Cardinal Стартовая позиция, с которой необходимо начать обработку
Count Cardinal Количество позиций, которые необходимо обработать относительно стартовой
Volume Real Новая громкость звуко-вого сигнала

Выходные данные подпрограммы:

AudioData – измененная совокупность значений амплитуд и времен с измененным уровнем громкости.

2.12.4. Используемые программы

В подпрограмме используются следующие подпрограммы: