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

2.3.1.                Назначение и характеристика алгоритма создания эффекта эха

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


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

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

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

T = {T1,T2,…,Tn} – массив со значениями времени;

n зависит от частоты дискретизации (ЧД), битрейта (Б) и размера файла;

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

При реализации алгоритма учитываются следующие параметры эффекта эха, которые подаются в качестве параметров на вход алгоритма:

To – время между откликами;

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

Kол – количество откликов.


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

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


2.3.4.      Математическое описание алгоритма создания эффекта эха

Для получения выходных массивов A’ и T’ необходимо предварительно получить Кол пар дополнительных массивов А(А1,А2,…,Акол) и Т(Т1,Т2,…,Ткол) с откликами, а затем совместить их:

m – размерности получаемых массивов A’ и T’;

m = n + n*Кол + То;

T1i = Tn + Ti + То;

T2i = 2*Tn + Ti + 2*То;

ТКолi =Кол*Тn + Ti + Кол*То;

A1i = Гр/100*Ai;

A2i = Гр/100*A1i;

Aколi = Гр/100*A[кол-1]i


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

Затем все полученные массивы амплитуд и времен объединяются в один общий массив (A’ и T’ соответственно).


2.3.5.      Алгоритм создания эффекта эха

1.            i::=1;

2.            MaxValue::=MaxValue*256;

3.            i::=i+1;

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

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

6.            TempAudio.nChannels ::= AudioData.nChannels;

7.            TempAudio.nSamplesPerSec := AudioData.nSamplesPerSec;

8.            TempAudio.nBitsPerSample := AudioData.nBitsPerSample;

9.            DelaySmp := Round(Delay*AudioData.nSamplesPerSec/1000);

10.       Channel :: =0;

11.       Если Channel > (AudioData.nChannels-1),то переход к п.31 иначе к п.12;

12.       i ::= Start;

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

14.       Прочитать Smp;

15.       SummSmp ::= Smp; Mult::=Volume;

16.       j ::= 1;

17.       Если j > Number, то переход к п.23 иначе к п.18;

18.       Если (i – Start) < (DelaySmp*j), то переход к п.19 иначе к п.20;

19.       Smp ::= 0;

20.       Прочитать Smp;

21.       SummSmp ::= SummSmp + Mult*Smp; Mult ::= Mult*Volume;

22.       j ::= j+1; переход к 17;

23.       Smp ::= SummSmp/(Number + 1);

24.       Если |Smp|>MaxValue, то переход к п.25 иначе к п.28;

25.       Если Smp<0, то переход к п.26 иначе к п.27;

26.       Smp ::= -MaxValue;

27.       Smp ::= MaxValue;

28.       Запись Smp в TempAudio;

29.       i ::= i+1; переход к п.13;

30.       Сhannel :: = Channel+1; переход к п.11;

31.       AudioData ::= TempAudio;

32.       Конец.


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

Контрольный пример должен содержать примеры применения эффекта реверберации с различными параметрами.


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

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

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

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

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

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

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

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

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

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

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

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

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

DelaySmp = Ti – Ti-1.

2.4.         Описание алгоритма изменения темпа звука

 

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

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


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

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

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

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

Страницы: 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 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.