Рефераты. Система обработки аудиоинформации. Подсистема фильтрации и обработки сигнала

18.                 Channel ::= Channel+1; переход к п.7;

19.                 Конец.


2.5.6.      Требования к контрольному примеру

Контрольный пример должен содержать примеры изменения громкости звука: увеличение и уменьшение амплитуды звукового сигнала.


2.5.7.      Список условных обозначений

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

Start – указатель на место в массиве данных,с которого начинать обработку;

Count – количество элементов массивов, которые необходимо обработать;

Number – количество отражений;

Delay – время между отражениями;

Volume – громкость отклика относительно предыдущего;

TempAudio – получаемая совокупность значений амплитуд и времен;

SmpBuf – хранит выборку аудиоданных;

Mult – коэффициент для получения значения амплитуды отражения;

Smp – текущая амплитуда;

Channel – количество каналов;

MaxValue – макс. значение амплитуды в обрабатываемом фрагменте;

DelaySmp = Ti – Ti-1.






2.6.         Описание алгоритма создания эффекта возрастающей громкости

 

2.6.1.                Назначение и характеристика алгоритма изменения громкости звука

Данный алгоритм применяется для плавного увеличения громкости от нулевого уровня в начале фрагмента до максимального в конце.


2.6.2.      Используемая информация

При реализации данного алгоритма используются массивы информации, сформированные из входных данных. Массивы содержат информацию о величине амплитуды звукового сигнала в определенные моменты времени. Количество пар массивов определяется числом каналов (ЧК).

A = {A1,A2,…,An} – массив амплитуд звукового сигнала;

T = {T1,T2,…,Tn} – массив со значениями времени, где n зависит от частоты дискретизации (ЧД), битрейта (Б) и размера файла;

Ti – Ti-1 определяется частотой дискретизации.


2.6.3.      Результаты решения

В результате реализации алгоритма формируется новый массив значений амплитуд A’, массив с временем T остается неизменным. Структура выходного файла при этом соответствует описанной в п.2.1.2.


2.6.4.                Математическое описание алгоритма создания эффекта возрастающей громкости

Для получения выходного массива A’ используются следующие формулы:


A’1 = А1 * 1/n;

A’2 = А2 * 2/n;

A’n = An.

Описание используемых обозначений приведено в п.2.6.2.

 

2.6.5.      Алгоритм создания эффекта возрастающей громкости


1.                      MaxValue ::= 1;

2.                      i ::= 0;

3.                      Если i > (AudioData.nBlockAlign/AudioData.nChannels), то переход к п.5 иначе к п.4;

4.                      MaxValue ::= MaxValue * 256;

5.                      MaxValue ::= MaxValue/2 – 1; FinalVolume ::= Volume;

6.                      Channel ::=0;

7.                      Если Channel > (AudioData.nChannels – 1), то переход к п.20 иначе к п.8;

8.                      Volume ::= 1; i ::= Start;

9.                      Если i > (Start+Count-1), то переход к п.19 иначе к п.10;

10.                 Прочитать Value из файла;

11.                 Value ::= ]Value*Volume[;

12.                 Если |Value|>MaxValue, то переход к п.13 иначе к п.16;

13.                 Если Value<0, то переход к п.14 иначе к п.15;

14.                 Value ::= -MaxValue; переход к п.16;

15.                 Value ::= MaxValue;

16.                 Записать Value в файл;

17.                 Volume ::= Volume + FinalVolume/Count;

18.                 i ::= i+1; переход к п.9;

19.                 Channel ::= Channel+1; переход к п.7;

20.                 Конец.


2.6.6.      Требования к контрольному примеру

Контрольный пример должен содержать примеры применения эффекта возрастающей громкости к звуковому сигналу.


2.6.7.      Список условных обозначений

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

Start – указатель на место в массиве данных,с которого начинать обработку;

Count – количество элементов массивов, которые необходимо обработать;

Number – количество отражений;

Delay – время между отражениями;

Volume – громкость отклика относительно предыдущего;

TempAudio – получаемая совокупность значений амплитуд и времен;

SmpBuf – хранит выборку аудиоданных;

Mult – коэффициент для получения значения амплитуды отражения;

Smp – текущая амплитуда;

Channel – количество каналов;

MaxValue – макс. значение амплитуды в обрабатываемом фрагменте;

DelaySmp = Ti – Ti-1.





2.7.         Описание алгоритма создания эффекта затухающей громкости



2.7.1.                Назначение и характеристика алгоритма создания эффекта затухающей громкости

Данный алгоритм применяется для плавного уменьшения громкости от максимального уровня в начале фрагмента до нулевого в конце.


2.7.2.      Используемая информация

При реализации данного алгоритма используются массивы информации, сформированные из входных данных. Массивы содержат информацию о величине амплитуды звукового сигнала в определенные моменты времени. Количество пар массивов определяется числом каналов (ЧК).

A = {A1,A2,…,An} – массив амплитуд звукового сигнала;

T = {T1,T2,…,Tn} – массив со значениями времени, где n зависит от частоты дискретизации (ЧД), битрейта (Б) и размера файла;

Ti – Ti-1 определяется частотой дискретизации.


2.7.3.      Результаты решения

В результате реализации алгоритма формируется новый массив значений амплитуд A’, массив с временем T остается неизменным. Структура выходного файла при этом соответствует описанной в п.2.1.2.


2.7.4.  Математическое описание алгоритма создания эффекта затухающей громкости

Для получения выходного массива A’ используются следующие формулы:

n – количество временных интервалов;

A’1 = А1 * n/n;

A’2 = А2 * (n-1)/n;

A’n-1 = An-1 * 2/n;

A’n = An * 1/n.

Описание используемых обозначений приведено в п.2.7.2.


2.7.5.      Алгоритм создания эффекта затухающей громкости


1.                      MaxValue ::= 1;

2.                      i ::= 0;

3.                      Если i > (AudioData.nBlockAlign/AudioData.nChannels), то переход к п.5 иначе к п.4;

4.                      MaxValue ::= MaxValue * 256;

5.                      MaxValue ::= MaxValue/2 – 1; FinalVolume ::= Volume;

6.                      Channel ::=0;

7.                      Если Channel > (AudioData.nChannels – 1), то переход к п.20 иначе к п.8;

8.                      Volume ::= 1; i ::= Start;

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.