procesamiento digital de señales de audio · 2020. 3. 24. · filtros peine •...

30
Procesamiento digital de se˜ nales de audio Filtros digitales y aplicaciones en audio Instituto de Ingenier´ ıa El´ ectrica, Facultad de Ingenier´ ıa Universidad de la Rep´ ublica, Uruguay Grupo de Procesamiento de Audio Filtros digitales en audio (2 clases) Procesamiento digital de se˜ nales de audio GPA - AudioDSP 2020 1 / 62 Agenda 1 Algunos filtros empleados en modelado ac´ ustico Filtros peine Analog´ ıa de los filtros peine con ondas estacionarias Filtros pasa-todos 2 Aplicaciones en s´ ıntesis y efectos de audio ıntesis de cuerdas pulsadas Reverberadores Filtros digitales en audio (2 clases) Procesamiento digital de se˜ nales de audio GPA - AudioDSP 2020 2 / 62

Upload: others

Post on 08-Aug-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Procesamiento digital de senales de audio

Filtros digitales y aplicaciones en audio

Instituto de Ingenierıa Electrica, Facultad de IngenierıaUniversidad de la Republica, Uruguay

Grupo de Procesamiento de Audio

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 1 / 62

Agenda

1 Algunos filtros empleados en modelado acusticoFiltros peineAnalogıa de los filtros peine con ondas estacionariasFiltros pasa-todos

2 Aplicaciones en sıntesis y efectos de audioSıntesis de cuerdas pulsadasReverberadores

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 2 / 62

Page 2: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine

• Constituyen unidades basicas de procesamiento en muchasaplicaciones en audio para generar y transformar sonidos:

I Efectos de audio que consisten en combinar copias de la senal (echo,flanging, phasing, reverb).

I En sıntesis de sonido, para crear senales con espectros armonicos.

• Son filtros recursivos de implementacion muy sencilla. Requieren unpar de operaciones aritmeticas para obtener cada muestra de la salida.Permiten la sıntesis de senales con espectros complejos.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 4 / 62

Filtros peine realimentados hacia adelante

(Feedforward Comb, FIR Comb o Inverse Comb)

Ecuacion en recurrencia

y [n] = x [n]− RLx [n − L]

Respuesta al impulso

h[n] = δ[n]− RLδ[n − L]

Diagrama de bloques

+-

0 5 10 15 20 25−0.5

0

0.5

1

...

Respuesta al impulso (R = 0.9, L = 8)

Numero de muestra

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 5 / 62

Page 3: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine realimentados hacia adelante

Funcion de transferencia

H(z) = 1− RLz−L =zL − RL

zL

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

8

R

2π/L

Diagrama de polos y ceros (R = 0.9, L = 8)

Parte real

Part

e im

agin

aria

Ceros

zL − RL = 0 ⇒

z = Re j2πk/L, k = 0, . . . , L−1

Polos

zL = 0 ⇒

z = 0 con multiplicidad L

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 6 / 62

Filtros peine realimentados hacia adelante

Respuesta en frecuencia

H(e jθ) = 1− RLe−jθ

Magnitud de la respuesta enfrecuencia

|H(e jθ)| =√

1 + R2L − 2RLcos(θL)

0 0.5 1 1.5 2 2.5 30

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

Frecuencia (rad)

Ma

gn

itu

d

Magnitud de la respuesta en frecuencia (L = 8)

R = 0.9

R = 0.95

R = 1

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 7 / 62

Page 4: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine

(Feedback Comb, Comb)

Ecuacion en recurrencia

y [n] = x [n] + RLy [n − L]

Respuesta al impulso

h[n] =

{RkL si n = kL, k = 0, 1, . . .0 en otro caso

Diagrama de bloques

+

0 5 10 15 20 25 30 35 40 45 500

0.2

0.4

0.6

0.8

1

...

Respuesta al impulso (R = 0.9, L = 8)

Numero de muestra

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 8 / 62

Filtros peine

Funcion de transferencia

H(z) =1

1− RLz−L=

zL

zL − RL

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

8

R

2π/L

Diagrama de polos y ceros (R = 0.9, L = 8)

Parte real

Part

e im

agin

aria

Ceros

zL = 0 ⇒

z = 0 con multiplicidad L

Polos

zL − RL = 0 ⇒

z = Re j2πk/L, k = 0, . . . , L−1

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 9 / 62

Page 5: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine

Funcion de transferencia

−1.5−1

−0.50

0.51

1.5

−1.5

−1

−0.5

0

0.5

1

1.50

1

2

3

4

5

6

Parte realParte imaginaria

|H(z

)|

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 10 / 62

Filtros peine

Respuesta en frecuencia

H(e jθ) =1

1− RLe−jθ

Magnitud de la respuesta enfrecuencia

|H(e jθ)| =1√

1 + R2L − 2RLcos(θL)

0 0.5 1 1.5 2 2.5 3−10

0

10

20

30

40

50

Frecuencia (rad)

Ma

gn

itu

d (

dB

)

Magnitud de la respuesta en frecuencia (L = 8)

R = 0.9

R = 0.95

R = 0.999

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 11 / 62

Page 6: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine

Comparacion con el filtro peine inverso

• Tienen funciones de transferencia inversas. Equivale a cambiar lospolos por ceros y los ceros por polos en el diagrama de polos y ceros.

• Las respuestas en frecuencia son inversas.

Observaciones• El espectro tiene frecuencias de resonancia en multiplos de la

frecuencia fundamental 2πL radianes.

• Una aplicacion directa es en el modelado de senales armonicas. Lafrecuencia fundamental de la senal armonica es fs

L Hertz.

• Permite generar espectros complejos con solo 2 operaciones (unasuma y una multiplicacion). Por ejemplo, con una lınea de retardo de40 muestras se logra un espectro con 20 frecuencias de resonancia.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 12 / 62

Filtros peine con realimentacion negativa

Ecuacion en recurrencia

y [n] = x [n]− RLy [n − L]

Respuesta al impulso

h[n] =

{(−1)kRkL si n = kL, k = 0, 1, . . .0 en otro caso

Diagrama de bloques

+-

0 5 10 15 20 25 30 35 40 45 50−0.5

0

0.5

1

...

Respuesta al impulso (R = 0.9, L = 8)

Numero de muestra

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 13 / 62

Page 7: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine con realimentacion negativa

Funcion de transferencia

H(z) =1

1 + RLz−L=

zL

zL + RL

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

8

R

π/L

Diagrama de polos y ceros (R = 0.9, L = 8)

Parte real

Part

e im

agin

aria

Ceros

zL = 0 ⇒

z = 0 con multiplicidad L

Polos

zL + RL = 0 ⇒

z = Re j(2k+1)π/L, k = 0, . . . , L− 1

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 14 / 62

Filtros peine con realimentacion negativa

Respuesta en frecuencia

H(e jθ) =1

1 + RLe−jθ

Magnitud de la respuesta enfrecuencia

|H(e jθ)| =1√

1 + R2L + 2RLcos(θL)

0 0.5 1 1.5 2 2.5 3−10

0

10

20

30

40

50

Frecuencia (rad)

Ma

gn

itu

d (

dB

)

Magnitud de la respuesta en frecuencia (L = 8)

R = 0.9

R = 0.95

R = 0.999

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 15 / 62

Page 8: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtros peine con realimentacion negativa

Comparacion con el filtro peine

• El diagrama de polos y ceros es una rotacion de angulo πL radianes

respecto al del filtro peine con realimentacion positiva.

Observaciones• El espectro tiene frecuencias de resonancia en multiplos impares de la

frecuencia fundamental πL radianes.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 16 / 62

Filtros peine

Filtros peine usando una lınea de retardo de 40 muestrasL = 40, R = 0.999

0 0.5 1 1.5 2 2.5 30

5

10

15

20

25

30

Realimentacion positiva

Magnitud (

dB

)

0 0.5 1 1.5 2 2.5 30

5

10

15

20

25

30

Realimentacion negativa

Frecuencia (rad)

Magnitud (

dB

)

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 17 / 62

Page 9: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Ondas viajeras y ondas estacionarias

La ecuacion de onda

∂2y

∂t2= c2∂

2y

∂x2

Interpretacion intuitiva de onda viajera en una cuerda

• La aceleracion vertical de un punto de la cuerda es proporcional a lacurvatura de la cuerda en ese punto. La fuerza sobre el punto se debea que la cuerda trata de restablecerse al equilibrio.

• curvatura positiva: la cuerda tiene forma ∪ y se acelera hacia arriba.

• curvatura negativa: la cuerda tiene forma ∩ y se acelera hacia abajo.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 18 / 62

Ondas viajeras y ondas estacionarias

Onda viajera en una cuerda

y(x , t) = f (t − x/c), (1)

donde

• f (·) es una funcion arbitraria que representa la forma del pulso.

• c es la velocidad de propagacion del pulso.

Observaciones

• La ecuacion 1 representa un pulso de forma dada por la funcion f (·)viajando hacia la derecha con velocidad c .

• Es facil verificar que la ecuacion 1 cumple la ecuacion de onda.

• La ecuacion 1 es valida si la cuerda es infinita.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 19 / 62

Page 10: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Ondas viajeras y ondas estacionarias

Solucion general de la ecuacion de onda

La solucion general de la ecuacion de onda es la superposicion de una ondaviajera moviendose hacia la derecha y otra moviendose hacia la izquierda,

y(x , t) = f (t − x/c) + g(t + x/c). (2)

Observaciones• No se impuso ninguna restriccion sobre la cuerda:

es de largo inifinito y no esta sujeta en ningun punto.

• De la ecuacion 2 no se deduce una vibracion periodica.

• Para que la cuerda vibre de forma periodica (como una cuerda deguitarra) debe ser restringida en un par de puntos.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 20 / 62

Ondas viajeras y ondas estacionarias

Reflexion en un extremo fijo

• Se fija la cuerda en el punto x = 0 (no puede moverse).

• Esto implica que para todo t se debe cumplir

y(0, t) = f (t) + g(t) = 0 =⇒ g(t) = −f (t)

• La solucion general de la ecuacion 2 queda

y(x , t) = f (t − x/c)− f (t + x/c). (3)

Interpretacion

• Se comienza con la onda y = f (t + x/c) en la region de las x positivasviajando hacia la izquierda.

• Para que el punto en x = 0 sea estacionario, debe existir una onda viajandoen el sentido opuesto que llegue simultaneamente al punto x = 0.

• La onda continua viajando hacia la derecha con el signo opuesto.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 21 / 62

Page 11: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Ondas viajeras y ondas estacionarias

Reflexion en un extremo fijo

El efecto de un extremo fijo es que la onda reflejada se invierte.

x

x

x

Extremofijo

x=0

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 22 / 62

Ondas viajeras y ondas estacionarias

Reflexion en un extremo libre

El efecto de un extremo libre es que la onda se refleja sin invertirse.

x

x

x

Extremo

abierto

x=0

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 23 / 62

Page 12: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Ondas viajeras y ondas estacionarias

Ondas estacionarias• Se considera que la cuerda se fija en los puntos x = 0 y x = L.

y(L, t) = f (t − L/c)− f (t + L/c) = 0 =⇒ f (t) = f (t + 2L/c)

• Se forman patrones de onda estacionarias que vibran a frecuencia:

Cuerda con dos extremos fijos Cuerda con un extremo fijo y unextremo libre

ω0 =πkc

L, k = 1, 2, 3, . . . ω0 =

π(2k − 1)c

2L, k = 1, 2, 3, . . .

Ondas estacionarias• Al especificar condiciones de borde en dos puntos la cuerda vibra con cierta

frecuencia fundamental (inversamente proporcional al largo L de la cuerda).

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 24 / 62

Ondas viajeras y ondas estacionarias

Modos de vibracion de ondas estacionarias

Cuerda con dosextremos fijos

ωk =kπc

L

λk =2Lk

Cuerda con unextremo fijo y un

extremo libre

ωk =(2k − 1)πc

2L

λk =4L

2k − 1

• Mitad de lafrecuenciafundamental

• Solo armonicosimpares

ω =πc

L,

2πc

L,

3πc

L, . . . ω =

πc

2L,

3πc

2L,

5πc

2L, . . .

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 25 / 62

Page 13: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Ondas viajeras y ondas estacionarias

Columna de aire vibrando en un tubo• Analogıa con cuerdas (ondas de presion)

I Ambos extremos abiertos: cuerda con dos extremos fijos.I Extremos abierto y cerrado: cuerda con extremo fijo y libre.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 26 / 62

Ondas viajeras y ondas estacionarias

Columna de aire vibrando en un tubo• Ejemplos de instrumentos de viento

I Ambos extremos abiertos: flauta, flauta dulce, organo de tubos.I Extremos abierto y cerrado: clarinete (aproximacion).

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

−70

−60

−50

−40

−30

−20

−10

0

10

20

Magnitude spectrum and spectral envelope of a fragment of a clarinet sound (Bb3)

Frequency (Hz)

Magnitude (

dB

)

Magnitude spectrum

Spectral envelope

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 27 / 62

Page 14: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Analogıa entre propagacion de ondas y filtros peine

Ondas Viajeras

Ambos extremos fijos(o ambos extremos abiertos).

Un extremo fijo y otro libre(o uno cerrado y otro abierto).

Al realizar un viaje de ida y vuelta,la onda regresa con el mismo signo.

Al realizar un viaje de ida y vuelta, laonda regresa con el signo invertido.

• Si el medio tiene largo L, el viaje de ida y vuelta es de largo 2L.

• En el recorrido, el medio absorbe energıa y la onda se atenua.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 28 / 62

Analogıa entre propagacion de ondas y filtros peine

Filtro peine

• La salida del filtro peine viaja a traves del lazo de realimentacion yretorna atenuada luego de L muestras.

• La salida atenuada y retardada puede compararse con el retorno deuna onda viajera.

• El retardo L es el tiempo de ida y vuelta de la onda en muestras. Laatenuacion puede compararse con la perdida de energıa de la onda enel tiempo (atenuacion R por muestra).

+

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 29 / 62

Page 15: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Analogıa entre propagacion de ondas y filtros peine

Salida de filtro peine

0 50 100 150 200 250 300 350−1

0

1

Entrada (L = 80 muestras, R = 0.995)

Am

plit

ud

0 50 100 150 200 250 300 350−1

0

1

Realimentacion positiva

Am

plit

ud

0 50 100 150 200 250 300 350−1

0

1

Realimentacion negativa

Numero de muestra

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 30 / 62

Analogıa entre propagacion de ondas y filtros peine

Salida de filtro peine

Realimentacion positiva Realimentacion negativa

La salida realimentada no cambiade signo al sumarse con la entrada

La salida realimentada cambia designo al sumarse con la entrada

Analogıa

• El filtro peine con realimentacion positiva modela:I la cuerda con dos extremos fijosI el tubo con dos extremos abiertos.

• El filtro peine con realimentacion negativa modela:I el tubo con un extremo cerrado y el otro abierto.

• La longitud del medio L (tubo de aire, cuerda) se corresponde en elfiltro peine a un retardo de L/2 muestras, ası el recorrido de ida yvuelta es de L muestras.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 31 / 62

Page 16: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Analogıa entre propagacion de ondas y filtros peine

Resonancias de filtro peine de retardo L

Realimentacion positiva Realimentacion negativa

θk =2πk

L, k = 0, . . . , L− 1

θ = 0,2π

L,

L,

L, . . .

θk =(2k + 1)π

L, k = 0, . . . , L− 1

θ =π

L,

L,

L, . . .

Modos de vibracion de ondas estacionarias

Ambos extremos fijos/abiertos Extremos abierto y cerrado

ω =πc

L,

2πc

L,

3πc

L, . . .

Largo Lω =

πc

2L,

3πc

2L,

5πc

2L, . . .

ω

c=

L,

L,

L, . . .

L =⇒ L/2 ω

c=π

L,

L,

L, . . .

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 32 / 62

Resolucion de filtros peine

Resolucion

• Frecuencia fundamental: θ0 =2π

Lrad/muestra =⇒ f0 =

fsL

Hz.

• Si fs = 22050 Hz,I L = 14 =⇒ f0 = 1575 Hz (G6 : 1567, 98Hz)I L = 13 =⇒ f0 = 1696 Hz (G#6 : 1661, 22Hz)

0 2000 4000 6000 8000 100000

5

10

15

20

Filtros peine de retardos sucesivos

Frecuencia (Hz)

Ma

gn

itu

d

L = 14

L = 13

L = 12

L = 11

L = 10

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 33 / 62

Page 17: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Resolucion de filtros peine

Resolucion• Para controlar la frecuencia fundamental con mayor resolucion hay

que encontrar la forma de introducir retardos fraccionarios arbitrarios.

• El filtro que implementa el retardo no puede alterar la magnitud.

+

Retardofraccionario

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 34 / 62

Filtro pasa-todos de primer orden

Ecuacion en recurrencia Diagrama de bloques

y [n]−ay [n−1] = −ax [n]+x [n−1]+ +-

Funcion de transferencia

H(z) =z−1 − a

1− az−1=

1− az

z − a

Ceros

1− az = 0 ⇒ z =1

a

Polos

z − a = 0 ⇒ z = a−1 −0.5 0 0.5 1 1.5

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

a 1/a

Diagrama de polos y ceros

Parte real

Part

e im

agin

aria

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 35 / 62

Page 18: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtro pasa-todos de primer orden

Respuesta en frecuencia

Se evalua la funcion detransferencia en el cırculo unidad

H(e jθ) =e−jθ − a

1− ae−jθ=

e−jθ/2 − ae jθ/2

e jθ/2 − ae−jθ/2

Se observa que consiste en elcociente entre un complejo y suconjugado

H(e jθ) =re jΨ(θ)

re−jΨ(θ)⇒

|H(e jθ)| = 1

∠H(e jθ) = 2Ψ(θ)

Se desarrolla el numeradorusando la ecuacion de Euler paraencontrar la fase

re jΨ(θ) = (1−a) cos

2

)−j(1+a) sin

2

)

La respuesta en frecuencia ennotacion polar es

|H(e jθ)| = 1

∠H(e jθ) = −2 arctan

(1 + a

1− atan

2

))

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 36 / 62

Filtro pasa-todos de primer orden

• Respuesta en faseI La respuesta en fase es

φ(θ) = −2 arctan

(1 + a

1− atan

2

))I Definiendo δ =

1 + a

1− ala respuesta en fase queda

φ(θ) = −2 arctan

(δ tan

2

))• Retardo de fase: cantidad de muestras que se retarda cada componente.

τφ(θ) = −φ(θ)

θτφ(θ) =

2

θarctan

(δ tan

2

))

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 37 / 62

Page 19: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtro pasa-todos de primer orden

Respuesta en fase

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

−3

−2.5

−2

−1.5

−1

−0.5

0

Respuesta en fase

Frecuencia normalizada

Fase (

rad)

δ = 0.1

δ = 0.2

δ = 0.3

δ = 0.4

δ = 0.5

δ = 0.6

δ = 0.7

δ = 0.8

δ = 0.9

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 38 / 62

Filtro pasa-todos de primer orden

Retardo de fase

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Retardo de fase

Frecuencia normalizada

Re

tard

o (

mu

estr

as)

δ = 0.1

δ = 0.2

δ = 0.3

δ = 0.4

δ = 0.5

δ = 0.6

δ = 0.7

δ = 0.8

δ = 0.9

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 39 / 62

Page 20: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtro pasa-todos de primer orden

Respuesta en fase

Objetivo

• Se requiere un filtro que logre retardos fraccionarios arbitrarios.

• Idealmente, igual retardo para todas las frecuencias (fase lineal).

• Ademas, se quiere controlar el retardo. Dado cierto retardo de fasedeseado, se quiere encontrar el coeficiente a del filtro.

Filtro pasa-todos

• No es de fase lineal. Distinto retardo para distintas frecuencias.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 40 / 62

Filtro pasa-todos de primer orden

Aproximacion lineal de la respuesta en fase en bajas frecuencias

Teniendo en cuenta que

θ ≈ 0 =⇒ tan θ ≈ θ, arctan θ ≈ θ

la fase y retardo de fase se pueden aproximar respectivamente por

φ(θ) ≈ −θδ τφ(θ) ≈ δ

Observaciones• El retardo de fase es δ en bajas frecuencias (ver figura del retardo de fase).

• a debe ser menor que 1 (filtro sea estable), por tanto, δ es siempre positivo.

• No tiene sentido implementar retardos mayores de 1 porque la parte enterapuede ser implementada facilmente con la linea de retardo (δ < 1).

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 41 / 62

Page 21: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Filtro pasa-todos de primer orden

Observaciones

• El error es muy pequeno en frecuencias menores a 0.05fs (0.0031muestras para δ = 0.5 muestras). El error crece con la frecuencia,donde no se cumple la hipotesis de linealidad.

• El error es menor para valores de retardo cerca de 0 o 1 que paravalores cerca de 0.5 (un retardo fraccionario implica interpolar la senal, y la

interpolacion es mas imprecisa en valores lejanos a valores de muestras conocidos).

• Dado el retardo δ requerido, el coeficiente a del filtro se calcula como

a =δ − 1

δ + 1

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 42 / 62

Sıntesis de cuerdas pulsadas

Kevin Karplus, Alex Strong.“Digital Synthesis of Plucked String and Drum Timbres”Computer Music Journal (MIT Press), 7(2): 43–55, 1983.

Caracterısticas generales del algoritmo

• Emplean un filtro peine para sintetizar sonidos de cuerda pulsada.Una cuerda en un instrumento tiene ambos extremos fijos, ası que seemplea un filtro peine con realimentacion positiva.

• Incluyen un pasabajos para hacer que el espectro varıe en el tiempoatenuando mas rapidamente las altas frecuencias.

• Incluyen un filtro pasa-todos para afinar el instrumento a cualquierfrecuencia deseada.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 44 / 62

Page 22: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Sıntesis de cuerdas pulsadas

Modelado fısico de la onda estacionaria en una cuerda• Una cuerda fija en sus dos extremos soporta patrones de onda

estacionaria. El comportamiento de un filtro peine con realimentacionpositiva es similar.

• Una cuerda no vibra por siempre. Eso esta modelado en el filtro peinepor el factor de atenuacion, haciendo que la amplitud de la forma deonda decaiga en el tiempo un factor R por cada muestra.

+

Se podrıa esperar que la respuesta al impulso suene como una cuerda pulsada.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 45 / 62

Sıntesis de cuerdas pulsadas

Fre

cuencia

(H

z)

Respuesta al impulso de filtro peine (L = 200, R = 0.99995, fs = 44100 Hz)

0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

1 1.02 1.04 1.06 1.08 1.1 1.12 1.14 1.16 1.18 1.20

0.2

0.4

Tiempo (s)

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 46 / 62

Page 23: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Sıntesis de cuerdas pulsadas

Espectrograma de cuerda pulsada

Tiempo (s)

Fre

cu

en

cia

(H

z)

Espectrograma, Cuerda pulsada, Nota B3

0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 60

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

Espectro varıa en el tiempo. Las frecuencias mas altas se atenuan mas rapido.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 47 / 62

Sıntesis de cuerdas pulsadas

Implementacion del espectro variable en el tiempo

Inclusion de un filtro pasabajos en el lazo. Cada vez que la salida retorna,sus componentes de alta frecuencia se atenuan.

+ Pasabajos

Caracterısticas deseables del filtro• El roll-off debe ser lento ası las altas frecuencias no se atenuan

demasiado rapidamente.

• Debe ser de fase lineal para no agregar complejidad al sistema. Ladistorsion de fase puede ser crıtica ya que esta en lazo cerrado.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 48 / 62

Page 24: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Sıntesis de cuerdas pulsadas

Implementacion del espectro variable en el tiempo

Como filtro pasabajos se propone un filtro de media movil de primer orden.

++

Ecuacion de recurrencia y [n] =1

2x [n] +

1

2x [n − 1]

Respuesta en frecuencia H(e jθ) = e−jθ/2 cos

2

)Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 49 / 62

Sıntesis de cuerdas pulsadas

Observaciones sobre el filtro de media movil

• Es de fase lineal. Introduce un retardo de 12 muestra en todas las frecuencias.

• El retardo adicional introducido por el filtro de media movil cambia elretardo total del bucle. Ahora es L + 1

2 muestras en lugar de L muestras.

• La frecuencia fundamental generada es por lo tanto

f0 =fs

L + 12

.

• Por cada vuelta en el bucle, la senal se filtra con el pasabajos. Luego de mvueltas alrededor del bucle, el espectro de la senal fue multiplicado por

|H(e jθ)|m = cosm(θ

2

)

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 50 / 62

Page 25: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Sıntesis de cuerdas pulsadas

Implementacion del espectro variable en el tiempo

0 0.5 1 1.5 2 2.5 30

0.2

0.4

0.6

0.8

1

Respuesta en frecuencia del filtro de media movil

Frecuencia (rad)

Magnitud

m = 1

m = 2

m = 3

m = 4

m = 5

m = 6

m = 7

m = 8

m = 9

m = 10

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 51 / 62

Sıntesis de cuerdas pulsadas

Fre

cu

en

cia

(H

z)

Respuesta al impulso de filtro peine con pasabajos en la realimentacion (L = 200, R = 0.99995, fs = 44100 Hz)

0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

1 1.02 1.04 1.06 1.08 1.1 1.12 1.14 1.16 1.18 1.2

0.010.020.030.040.05

Tiempo (s)

Am

plit

ud

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 52 / 62

Page 26: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Sıntesis de cuerdas pulsadas

Afinacion

• Las frecuencias fundamentales posibles de ser generadas son

f0 =fs

L + 12

.

• Se agrega un pasa-todos en el bucle para lograr retardos arbitrarios, y por lotanto, frecuencias fundamentales arbitrarias.

+ Pasabajos Pasatodos

• El pasa-todos se afina especificando su retardo de fase δ para obtener lafrecuencia fundamental deseada,

f0 =fs

L + 12 + δ

.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 53 / 62

Reverberadores

fuente

escucha

onda

directa

re exión

En un recinto cerrado el sonidorecorre diversos caminos desde lafuente a los oıdos de un escucha.

La reverberacion en un recinto esel producto de la superposicionde muchas reflexiones.

Se compone de

• Onda directa

• Primeras reflexiones

• Reflexiones tardıas

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 54 / 62

Page 27: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Reverberadores

J. A. Moorer,“About This Reverberation Business”,

Computer Music Journal, vol. 3, no. 2, pp. 13-28, 1979.

Modelado de las reflexiones

Buscando generar el efecto general de las reflexiones se pueden hacer lassiguientes aproximaciones:

• Las reflexiones consisten en versiones repetidas del sonido original.

• Cada copia llega un tiempo fijo luego de la anterior.

• Cada copia llega con una atenuacion R fija respecto a la anterior.

y [n] = x [n − L] + Rx [n − 2L] + R2x [n − 3L] + . . .

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 55 / 62

Reverberadores

Modelo matematico del eco

• La relacion entre la entrada y la salida es

y [n] = x [n−L]+Rx [n−2L]+R2x [n−3L]+. . .+

• La relacion entre la senal original y el eco es

y [n] = Ry [n − L] + x [n − L]Y (z)

X (z)=

z−L

1− Rz−L.

• Excepto por el retardo, es igual a la funcion de transferencia de unfiltro peine.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 56 / 62

Page 28: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Reverberadores

Observaciones sobre el modelo• En este caso, el retardo del filtro modela el tiempo de ida y vuelta de

la onda de sonido en un recinto y no en la longitud de un instrumentocomo en la aplicacion anterior (60 ms vs 1 ms o frecuencias deresonancia del orden de 20 Hz vs 1 kHz).

• En un recinto tıpicamente hay varias superficies reflectoras de sonido.No alcanza con un solo filtro peine, se deben combinar varios paraobtener un efecto similar al de la reverberacion.

• Al usar varios filtros peine, hay que evitar la regularidad. Esconveniente que los retardos de los distintos filtros peine seannumeros primos entre sı.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 57 / 62

Reverberadores

Modelo de Moorer

+

Filtro peine

Filtro peine

Filtro peine

Filtro peine

Filtro peine

Filtro peine

+ Pasatodos

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 58 / 62

Page 29: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Reverberadores

Observaciones sobre el modelo de Moorer• Contiene seis filtros peine en paralelo, cada uno con sus parametros.

• El camino directo con ganancia K representa la onda directa.

• El filtro pasa-todos se incluye para la “difusion” de las reflexiones.

• Los filtros peine se refinan incluyendo un filtro pasabajos (IIR deprimer orden) en el bucle. Modela la absorcion del sonido, lasfrecuencias mas altas se absorben mas rapidamente.

+

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 59 / 62

Reverberadores

Respuesta al impulso

0 0.5 1 1.5 2 2.5 3

x 104

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

Tiempo (muestras)

Am

plit

ud

Respuesta al impulso

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 60 / 62

Page 30: Procesamiento digital de señales de audio · 2020. 3. 24. · Filtros peine • Constituyenunidades b asicas de procesamientoen muchas aplicaciones en audio para generar y transformar

Bibliografıa por tema

• Algunos filtros empleados en modelado acustico [Steiglitz, 1996]I Filtros peineI Filtros pasatodos

• Aplicaciones en sıntesis y efectos de audio [Steiglitz, 1996]I Sıntesis de cuerdas pulsadas [Karplus and Strong, 1983]I Reverberadores [Moorer, 1979]

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 61 / 62

Referencias I

Karplus, K. and Strong, A. (1983).Digital synthesis of plucked string and drum timbres.Computer Music Journal, 7(2):43–55.

Moorer, J. A. (1979).About this reverberation business.Computer Music Journal, 3(2):13–28.

Steiglitz, K. (1996).Digital Signal Processing Primer: With Applications to Digital Audioand Computer Music.Prentice Hall.

Filtros digitales en audio (2 clases) Procesamiento digital de senales de audio GPA - AudioDSP 2020 62 / 62