Nivel 3 · Lección 8

El filtro que se vuelve loco

La idea en una imagen

Una voz entra por el micrófono, pasa por el amplificador, sale por el altavoz, cruza el aire de la sala y vuelve a entrar por el micrófono. En cada vuelta regresa multiplicada por el mismo número, y a la derecha se apunta cómo queda tras cada una: en verde lo que entra y en naranja lo que vuelve.

Un micrófono conectado a un altavoz es un eco que se alimenta de sí mismo: lo que sale por el altavoz vuelve a entrar un instante después, y lo que entra vuelve a salir. Lo único que decide cómo acaba la historia es cuánto regresa en cada vuelta, y por eso el mando de la imagen va del 0 al 120 %.

Por debajo del 100 % los ecos se hacen cada vez más pequeños hasta desaparecer. Por encima, cada eco supera al anterior y todos crecen sin parar hasta chocar con el tope del amplificador, que es lo que se oye como un pitido. Justo en el 100 % ni se apagan ni crecen, y esa frontera es lo que busca el primer reto.

Paso a paso

El pitido es un eco que vuelve

Un micrófono, un amplificador, un altavoz y el aire de la sala forman un círculo cerrado: lo que entra por el micrófono sale por el altavoz, cruza la sala y vuelve a entrar un instante después. Cuando un sistema usa así lo que él mismo acaba de producir, se habla de realimentación, y el pitido que aparece cuando se descontrola se llama acople.

En cada vuelta, el sonido regresa multiplicado por un número que depende de todo lo que hay en el círculo: lo sensible que es el micrófono, lo alto que está el volumen, hacia dónde apunta el altavoz, la distancia entre los dos y lo que reflejan las paredes. Ese número es la ganancia del lazo, y es el mando de la imagen de arriba. Además, no todas las frecuencias vuelven igual: la sala refuerza unas y apaga otras, y cada una llega con la onda en un punto distinto de su vuelta, la fase de la lección 1.

Para que algo pite hacen falta las dos cosas a la vez: que en alguna frecuencia el sonido vuelva igual de fuerte o más, y que llegue a tiempo, con la onda en el mismo punto de su vuelta, de modo que se sume a sí mismo en lugar de restarse. Entonces cada vuelta multiplica el sonido por un número mayor que uno, el crecimiento es exponencial y en un instante el pitido llega a lo máximo que da el amplificador, y ahí se queda. Lo que oyes es el pico de la sala que mejor encaja, y por eso pita una frecuencia concreta y no todas.

La misma historia se puede contar con números, sin altavoces. Un filtro que suma a su salida una fracción de lo que salió un rato antes es un eco que se alimenta de sí mismo. Si la fracción es menor que uno, cada eco es más pequeño que el anterior; si es uno, todos son iguales, y si es mayor, cada uno supera al anterior. En el reto, el eco tarda un cuarto de segundo en volver y la fracción es el mando.

Encuentra el valor del mando en el que el eco ni se apaga ni crece. Escucha cómo suena una palmada al pasar por el eco y, cuando creas haberlo encontrado, pulsa «Comprobar».

Recordar o escuchar

En la lección 7 filtrar era estampar sellos: cada muestra que entra deja una copia de la respuesta del filtro, y la salida es la suma de todos los sellos. Si el sello es de longitud finita, el filtro solo necesita recordar las últimas muestras que han entrado: multiplica cada una por un peso y suma. Es un filtro FIR, y su respuesta a una palmada termina cuando se acaban los pesos, por larga que sea la receta.

Hay otra familia que, además de lo que entra, usa lo que ella misma ha sacado antes. Es el eco que se alimenta del reto anterior, y se llama filtro IIR, o recursivo. Como cada salida depende de salidas anteriores, que dependen de otras anteriores, su respuesta a una palmada no termina nunca: está hecha de exponenciales que se apagan, y de ahí su nombre en inglés, infinite impulse response, respuesta infinita al impulso.

El IIR más sencillo es la media que olvida: cada salida mezcla un poco de la entrada nueva con mucho de la salida anterior, y un único número, cuánto se conserva de una muestra a la siguiente, decide cuánto tarda en olvidarse. Con una memoria de 0,99, a 16.000 muestras por segundo, su respuesta cae a la mitad en unos 4 milisegundos; con 0,999, en unos 43. Esa memoria tiene que ser menor que uno: con 1,01 la salida se duplica cada 70 muestras, y en una décima de segundo se multiplica por unos ocho millones.

Esa memoria sale muy barata. Para un paso bajo que deje pasar hasta 1 kHz con una caída de 1 dB como mucho y que quite al menos 40 dB desde 2 kHz, con muestreo a 16 kHz, un IIR de tipo Butterworth de orden 8 necesita unas 20 multiplicaciones por muestra, y un FIR de ventana de Hamming, 51. Con plantillas más exigentes la diferencia crece: Steven Smith, en su libro abierto, estima que un FIR es del orden de diez veces más lento que un IIR comparable. A cambio, el FIR es siempre estable y puede tener una fase lineal exacta, y el IIR puede volverse inestable.

Cada tarjeta describe un filtro con una receta, un diagrama de cajas y su respuesta a una palmada. Decide en cada una si solo recuerda lo que ha entrado (FIR) o si también escucha su propia salida (IIR), y pulsa «Comprobar».

Dos pistas para decidir: en el diagrama de un IIR hay una flecha naranja que vuelve de la salida a la suma, y su respuesta a una palmada se va apagando sin llegar a cero del todo.

Postes y lona

Para saber de antemano si un IIR se va a volver loco no hace falta probarlo: basta mirar dónde están sus polos. La respuesta en frecuencia de la lección 6, la curva que dice cuánto se queda cada nota al pasar por el filtro, puede imaginarse como la altura de una lona tendida sobre un plano. En ese plano hay unos puntos que levantan la lona como postes, los polos, y otros que la clavan al suelo como chinchetas, los ceros.

Recorrer las frecuencias es caminar por el borde de un círculo pintado en el plano: se empieza a la derecha, en 0 Hz, y a media vuelta, a la izquierda, se llega a la mitad de la frecuencia de muestreo. Lo que el filtro deja pasar en cada frecuencia es la altura de la lona en ese punto del borde. Un poste cerca del borde levanta mucho la lona justo ahí, y el filtro resuena con un pico alto y estrecho en la frecuencia que marca su ángulo. Cuanto más cerca del borde está el poste, más estrecho es el pico y más tiempo suena la respuesta a una palmada.

Un poste dentro del círculo se apaga solo; uno justo en el borde da un tono que no se apaga nunca, y uno fuera hace que la respuesta a una palmada crezca sin freno, que es lo que significa volverse loco. Un filtro es estable cuando todos sus polos están dentro del círculo. Es la misma frontera del primer reto: en el eco que se alimenta, los polos están a una distancia del centro que cruza el 1 justo cuando la fracción que vuelve cruza el 100 %.

Por eso los filtros IIR de orden alto no se escriben en un solo bloque: con coeficientes redondeados, los polos pueden salirse del círculo sin que nadie lo note, y lo habitual es programarlos como una cascada de secciones pequeñas de dos polos, que se controlan por separado.

Haz que el filtro resuene a 1.000 Hz con un pico de menos de 52 Hz de ancho, sin que se vuelva loco. Arrastra el poste por el plano y afina su frecuencia y su distancia al borde con los mandos.

Todo filtro llega tarde

Un filtro que trabaja en directo solo puede usar el pasado: no sabe lo que va a llegar después, y por eso se llama causal. Para producir cada muestra de salida tiene que esperar a tener las muestras que la forman, y eso retrasa la salida. Cuánto la retrasa depende de la frecuencia, y esa medida es el retraso de grupo: lo que tarda en salir del filtro la envolvente de un grupo de frecuencias cercanas.

Retrasar una noria un tiempo fijo equivale a girar su punto de partida, y cuanto más deprisa gira la noria, más ángulo es ese giro. Un filtro que retrasa todas las frecuencias el mismo tiempo gira cada noria un ángulo proporcional a su velocidad, y la forma de la onda llega intacta, pero tarde. Es lo que hace un FIR simétrico, con los pesos iguales a ambos lados del centro, y retrasa todo la mitad de su longitud: es la fase lineal. Un FIR de 641 coeficientes a 16.000 muestras por segundo llega 320 muestras tarde, que son 20 milisegundos. Un IIR, en cambio, retrasa más unas frecuencias que otras, sobre todo cerca de su corte, y por eso deforma los golpes: el borde de subida y el de bajada salen distintos.

Los filtros finos llegan más tarde, y es la misma ley del afinador de la lección 5: para distinguir dos frecuencias muy cercanas hay que escuchar durante bastante tiempo. En un FIR de ventana, la longitud es inversamente proporcional a la anchura de la banda de transición, y el retraso es la mitad de la longitud: unos 2 milisegundos si la transición mide 1.000 Hz, 20 si mide 100 Hz y 200 si mide 10 Hz.

Cada aplicación tiene su presupuesto de retraso. En televisión, según las pruebas con espectadores de la recomendación UIT-R BT.1359-1, el desfase entre sonido e imagen empieza a notarse, de media, cuando el sonido va unos 125 ms por detrás o unos 45 ms por delante. Son medias de pruebas subjetivas, y la televisión digital pide tolerancias más estrictas. En un audífono, según una revisión divulgativa de la investigación de Stone y Moore, no conviene pasar de unos 15 ms para la propia voz. Y en unos auriculares con cancelación de ruido el margen se cuenta en microsegundos: en un modelo sencillo de un solo tono, un desajuste de una décima de milisegundo deja sin cancelar el 6 % de un tono de 100 Hz y el 62 % de uno de 1.000 Hz. Lo contamos en el Vídeo 11 del canal, Entiende la cancelación de ruido antes de comprar auriculares.

Esta palmada pasa por un filtro FIR simétrico de 641 coeficientes, con muestreo a 16.000 muestras por segundo. Arrastra la traza naranja hacia la izquierda hasta que encaje con la verde y comprueba qué pasa si cambias a un IIR.

Con el teclado: pulsa la gráfica con el tabulador y usa las flechas, de 0,1 ms en 0,1 ms (con Mayús, de 1 en 1).

Hacia delante y hacia atrás

Si la grabación ya está hecha, hay un truco para quitar el retraso: se filtra la señal, se le da la vuelta en el tiempo, se filtra otra vez y se vuelve a girar. Lo que el primer paso retrasa, el segundo, que trabaja con la señal del revés, lo adelanta, y los dos giros de fase se cancelan. Es el filtrado de fase cero: el resultado queda en su sitio, con la magnitud elevada al cuadrado, es decir, con el doble de decibelios de atenuación.

El precio tiene tres partes. Cuesta el doble de cálculo; en los extremos de la señal aparecen transitorios, que se suavizan prolongándola con su reflejo; y, sobre todo, necesita la grabación entera, porque para darle la vuelta hay que saber cómo acaba. En directo, el final todavía no existe.

Por eso un audífono, unos auriculares con cancelación de ruido o el ecualizador de un concierto en directo tienen que convivir con su retraso, mientras que un electrocardiograma ya grabado, del que se quiere medir el instante exacto de cada latido, o un pódcast al que se le quiere quitar un zumbido pueden filtrarse de ida y vuelta.

Consigue que el latido salga filtrado, del derecho y sin retraso, usando solo las operaciones «Filtrar» y «Dar la vuelta». Después prueba qué pasa en directo.

Vuelta al micrófono

Con todo esto, la boda se entiende mejor. Un sonido que da una vuelta al círculo tarda lo que tarda en recorrer el camino de vuelta, y solo las frecuencias a las que cabe un número entero de ondas en ese tiempo llegan en fase. Con el micrófono a 3 metros, el sonido tarda unos 9 milisegundos y esas frecuencias candidatas están separadas unos 114 Hz. La que pita es la candidata que además cae sobre un pico de la sala. Alejar o girar el micrófono cambia el trayecto, las candidatas y cuánto vuelve, y por eso basta con moverlo para que se calle.

Los técnicos de sonido lo aprovechan antes de un concierto: suben el volumen hasta que algo empieza a pitar, buscan esa frecuencia y la recortan con un ecualizador como el de la lección 6. Así ganan unos decibelios, hasta que empieza a pitar la siguiente, y repiten. El volumen más alto antes de que el lazo empiece a pitar es la ganancia máxima estable. Según la revisión de van Waterschoot y Moonen, los métodos manuales, que incluyen colocar bien micrófonos y altavoces, poner filtros de muesca en los modos de la sala y ecualizar, la suben unos 5 a 8 dB. Y siempre se deja un margen de 2 o 3 dB por debajo, porque justo antes de pitar el sistema ya «timbra»: un sonido que tarda en apagarse, como el de un poste pegado al borde del círculo.

Hay otras formas de bajar la ganancia del lazo: alejar el micrófono o girarlo para que no apunte al altavoz, bajar el volumen o desplazar toda la señal unos 5 Hz, un truco que Schroeder describió en los años sesenta y que llegó a ganar 14 dB en las medidas, aunque sin que se oigan batidos solo son aceptables unos 6 dB. También existen filtros que se reajustan solos.

El reto usa un modelo simplificado: la sala y el altavoz solo cambian el volumen de cada frecuencia, con picos en 630, 1.250 y 2.600 Hz, y el camino solo añade retraso. En una sala de verdad, el recorte también cambia la fase y puede crear frecuencias de pitido nuevas a su lado: en una simulación más completa, con la fase incluida, los recortes ganaron solo uno o dos decibelios y alguno empeoró las cosas.

Con el micrófono a 3 metros, sube el volumen al menos 4 dB por encima del máximo que aguantaba el sistema, sin que pite. Busca la frecuencia que pita y mueve el recorte hasta ella.

Modelo simplificado. Arrastra sobre la gráfica para mover el recorte, o usa las flechas del teclado (10 Hz por pulsación).

En tu voz

Qué grabar. Tres palmadas, o una frase hablada, de unos cinco segundos: son los tramos 6 y 5 de la grabación de referencia de la serie. Graba con el micrófono si tu navegador lo deja; si no, sube un audio grabado con el móvil o prueba con los ejemplos sintéticos.

Qué mirar. El laboratorio pasa tu voz por un filtro paso bajo que suena como si hablaras al otro lado de una pared, una vez en directo y otra de ida y vuelta, y mide cuánto se retrasa la versión en directo respecto de la de ida y vuelta, que se queda en su sitio. Con el IIR deberían salir unos tres o cuatro milisegundos, y con el FIR muy fino, 50, que al mezclarlos con tu voz se oyen como un eco corto que desaparece con la versión de ida y vuelta. Más abajo puedes meter tu voz en un eco que se alimenta y oír cómo se alarga al subir la realimentación.

Lo que tienes que recordar

  1. Un filtro que escucha su propia salida, un IIR, consigue con unos pocos números una respuesta que no termina nunca, y por eso sale barato, pero solo es estable mientras cada vuelta devuelva menos de lo que recibe, es decir, mientras todos sus polos estén dentro del círculo. Un FIR no tiene salida que escuchar y no puede dispararse. El pitido de un micrófono es el mismo fenómeno: la ganancia del lazo llega a 1 en una frecuencia que vuelve en fase.
  2. Todo filtro que trabaja en directo llega tarde. Un FIR simétrico retrasa todas las frecuencias la mitad de su longitud, así que la forma llega intacta; un IIR retrasa más unas que otras y la deforma. Cuanto más fino es el filtro, más tarde llega.
  3. Si la grabación ya está hecha, filtrar hacia delante y hacia atrás deja el resultado en su sitio y duplica la atenuación, al precio de doblar el cálculo y de necesitar la señal entera. En directo no se puede, y cada aplicación tiene que vivir con su presupuesto de retraso.

Errores típicos

Abrir

Rincón matemático

Las fórmulas, para quien las quiera. Cada una va después de su lectura en palabras.

La receta general

Cada muestra de salida es una suma de las entradas recientes, cada una con su peso, menos una suma de las salidas recientes, también con sus pesos. Si en la receta no hay salidas, el filtro es un FIR; si las hay, es un IIR:

y[n] = \sum_{k=0}^{M} b_k\,x[n-k] \;-\; \sum_{k=1}^{N} a_k\,y[n-k]

Un FIR es una convolución con un sello finito

Sin salidas en la receta, los pesos son la respuesta a una palmada, el sello de la lección 7, y la salida es la convolución de la entrada con él:

y[n] = \sum_{k=0}^{M} h[k]\,x[n-k], \qquad h[k] = b_k

La media que olvida

La salida mezcla la entrada nueva con la salida anterior. Su respuesta a una palmada es una exponencial que no termina nunca, es estable si la memoria a vale menos de 1 en valor absoluto, y su semivida son \ln(1/2)/\ln a muestras:

y[n] = (1-a)\,x[n] + a\,y[n-1], \qquad h[n] = (1-a)\,a^{n}\quad (n \ge 0), \qquad n_{1/2} = \frac{\ln\tfrac{1}{2}}{\ln a}

Función de transferencia, polos y ceros

El filtro entero es un cociente de dos polinomios. Los ceros anulan el numerador, las chinchetas, y los polos anulan el denominador, los postes. Un filtro causal es estable si y solo si todos sus polos cumplen |p| < 1:

H(z) = \frac{\sum_{k=0}^{M} b_k\,z^{-k}}{1 + \sum_{k=1}^{N} a_k\,z^{-k}}

La lona en el borde

La respuesta en frecuencia es la altura de la lona sobre el círculo de radio 1, en un ángulo que crece con la frecuencia:

H\!\left(e^{i\omega}\right), \qquad \omega = 2\pi\,\frac{f}{f_s}

Un resonador de dos polos

Con los polos a una distancia r del centro y con ángulos \pm\theta, el filtro resuena cerca de \theta f_s/2\pi, y su pico se estrecha al acercar r a 1:

y[n] = x[n] + 2r\cos\theta\;y[n-1] - r^{2}\,y[n-2], \qquad f_0 \approx \frac{\theta\,f_s}{2\pi}, \qquad B_{-3\,\mathrm{dB}} \approx \frac{(1-r)\,f_s}{\pi}

El eco que se alimenta

Un eco de retraso D muestras que devuelve una fracción g de su salida tiene picos cada f_s/D hercios, de altura 1/(1-g), y es estable si |g| < 1:

y[n] = x[n] + g\,y[n-D] \;\Longrightarrow\; H(z) = \frac{1}{1 - g\,z^{-D}}, \qquad f_k = k\,\frac{f_s}{D}, \qquad |H|_{\max} = \frac{1}{1-g}

El lazo del micrófono

Si G es el camino del micrófono al altavoz y F, el camino acústico de vuelta, lo que sale del altavoz por cada unidad de sonido que entra es

\frac{U(\omega)}{V(\omega)} = \frac{G(\omega)}{1 - G(\omega)\,F(\omega)}

Hay acople cuando el denominador puede anularse: en alguna frecuencia la ganancia del lazo llega a 1 y su fase es un número entero de vueltas. Es el criterio de estabilidad de Nyquist (1932), definido para sistemas lineales e invariantes; en acústica se aplica suponiendo que todo cambia despacio:

\left|G(\omega)\,F(\omega)\right| \ge 1 \quad \text{y} \quad \angle\,G(\omega)\,F(\omega) = 2\pi n, \quad n \in \mathbb{Z}

Retraso de fase y retraso de grupo

El retraso de fase dice cuánto se retrasa cada noria por separado, y el de grupo, cuánto se retrasa la envolvente de las frecuencias cercanas:

\tau_\phi(\omega) = -\frac{\phi(\omega)}{\omega}, \qquad \tau_g(\omega) = -\frac{d\phi(\omega)}{d\omega}

Fase lineal

Un FIR simétrico de M+1 coeficientes retrasa todas las frecuencias M/2 muestras:

h[k] = h[M-k] \;\Longrightarrow\; H\!\left(e^{i\omega}\right) = A(\omega)\,e^{-i\omega M/2}, \qquad \tau_g = \frac{M}{2}

Hacia delante y hacia atrás

La ida multiplica la señal por H y la vuelta, por su conjugado, de modo que queda la magnitud al cuadrado y una fase igual a cero:

H_{\text{ida y vuelta}}\!\left(e^{i\omega}\right) = H\!\left(e^{i\omega}\right)\,\overline{H\!\left(e^{i\omega}\right)} = \left|H\!\left(e^{i\omega}\right)\right|^{2}

Lo fino cuesta tiempo

En un FIR de ventana, la longitud es inversamente proporcional a la anchura de la transición, medida como fracción de la frecuencia de muestreo, y el retraso es la mitad de esa longitud:

M \approx \frac{4}{\mathrm{BW}}, \qquad \tau \approx \frac{M}{2 f_s} = \frac{2}{\Delta f}

Para saber más

Términos nuevos

Examen