En primer lugar, soy nuevo en DSP y no tengo una educación real en él, pero estoy desarrollando un programa de visualización de audio y estoy representando una matriz FFT como barras verticales como en una visualización de espectro de frecuencia típica.
El problema que tuve fue que los valores de la señal de audio cambiaron demasiado rápido para producir una salida visual agradable si solo asignaba los valores de FFT directamente:
Así que aplico una función simple a los valores para "suavizar" el resultado:
// pseudo-code
delta = fftValue - smoothedFftValue;
smoothedFftValue += delta * 0.2;
// 0.2 is arbitrary - the lower the number, the more "smoothing"
En otras palabras, estoy tomando el valor actual y lo comparo con el último, y luego agrego una fracción de ese delta al último valor. El resultado se ve así:
Entonces mi pregunta es:
¿Es este un patrón o función bien establecida para la cual ya existe un término? Es así, ¿cuál es el término? Utilizo "suavizado" arriba pero soy consciente de que esto significa algo muy específico en DSP y puede no ser correcto. Aparte de eso, parecía estar relacionado con un sobre de volumen, pero tampoco era exactamente lo mismo.
¿Hay mejores enfoques o más estudios sobre soluciones a esto que debería mirar?
Gracias por su tiempo y disculpas si esta es una pregunta estúpida (leyendo otras discusiones aquí, soy consciente de que mi conocimiento es mucho más bajo que el promedio que parece).