Por Qué a Tu Imagen de Forma de Onda Le Falta la Batería

14 de septiembre de 2026 · 8 min de lectura

Dibujar una forma de onda es un problema de reducción: varios millones de números tienen que convertirse en unos cientos de columnas de píxeles. Casi todas las herramientas lo resuelven igual, en una línea, y esa línea está mal de una manera que se puede medir con exactitud.

Esta es la aritmética que lo convierte en un problema. Una pista de tres minutos a 44,1 kHz son 7.938.000 muestras. Dibujada a 800 px de ancho, cada columna de píxeles tiene que representar 9.922,5 de ellas. Algo tiene que decidir qué significa la altura de una columna.

La respuesta habitual es tomar una muestra de cada columna y dibujar su altura. Eso lee 800 muestras de 7.938.000 — el 0,0101 % del archivo. No es un resumen de la columna. Es un muestreo puntual de ella, a una tasa miles de veces por debajo de la de la propia señal, que es el escenario de manual del aliasing.

Un tono a escala completa dibujado como línea plana

La forma más limpia de verlo es dibujar un audio cuyo dibujo correcto ya conoces. Generamos 180 segundos de un tono constante a amplitud 1,0 — escala completa desde la primera muestra hasta la última. El dibujo verdadero es un bloque sólido de altura 1,000, en todas las columnas, sin discusión.

Esto es lo que devuelve una muestra por columna cuando lo único que cambia es la frecuencia:

TonoUna muestra por columnaTodas las muestras (pico)
100 Hz0,00361,0000
220 Hz0,00781,0000
261,63 Hz0,63611,0000
440 Hz0,01571,0000
441 Hz0,63521,0000
1000 Hz0,03561,0000
2000 Hz0,07101,0000
5000 Hz0,17441,0000

Audio idéntico, al mismo volumen, y las respuestas van de 0,0036 a 0,6361. Ciento ochenta segundos de un tono que nunca sale de la escala completa se dibujan como una línea plana a 440 Hz — y a 441 Hz, un hercio más allá, como una onda al 64 % de altura.

Nada de eso es una propiedad del audio. Es una propiedad de cómo el periodo del tono se divide en el paso de las columnas: 440 Hz a 44,1 kHz son 100,227 muestras por ciclo, y 9.922,5 muestras por columna son 99,0 de esos ciclos — así que columna tras columna cae casi en la misma fase. El retrato es de la aritmética, no del sonido.

Cambia el tamaño y la onda cambia de forma

Esta es la señal que mucha gente ya ha visto sin saber nombrarla. Coge ese mismo archivo de 440 Hz y redibújalo a distintos anchos, sin tocar nada más:

AnchoMuestras por columnaUna muestra por columnaTodas las muestras
600 px13.230,00,00001,0000
700 px11.340,00,62591,0000
800 px9.922,50,01571,0000
900 px8.820,00,00001,0000
1000 px7.938,00,61551,0000
1200 px6.615,00,00001,0000
1920 px4.134,40,51141,0000

Un archivo, un tono, siete dibujos — tres de ellos en blanco. Si alguna vez has exportado una onda en dos tamaños y el segundo te pareció raro, tenías razón, y es por esto. Un dibujo que cambia cuando cambias el lienzo no está describiendo el audio.

Una pista de batería sin batería

El caso de la frecuencia es una demostración limpia, pero el caso que cuesta trabajo de verdad son los transitorios. Un estallido de 2 ms a 44,1 kHz son 88 muestras — el 0,89 % de una columna de 9.922 muestras. Leer una muestra por columna cae encima de él alrededor del 0,89 % de las veces.

Montamos una pista de clics: 360 estallidos a escala completa, uno cada 500 ms, a lo largo de tres minutos. Luego la dibujamos de las dos maneras.

MediciónUna muestra por columnaTodas las muestras (pico)
Columnas que muestran un estallido0 de 800360 de 800
Columna más alta0,00000,8973
Muestra única a escala completa encontrada (200 posiciones al azar)0 / 200200 / 200
Estallido de 2 ms encontrado (200 posiciones al azar)3 / 200200 / 200

Cero. No una batería más floja — ninguna batería. Cada uno de los 360 golpes a escala completa cayó entre las muestras observadas, y el dibujo volvió como una línea plana. Escondiendo una única muestra a escala completa en un archivo silencioso y moviéndola a 200 posiciones al azar, el atajo la encontró ninguna de las 200 veces; ensanchándola a un estallido de 2 ms, encontró tres.

Por qué nadie se da cuenta

Porque nunca falla a gritos. Una onda un 65 % más baja, o sin sus transitorios, o con otra forma a otro tamaño, sigue pareciendo una onda. Tiene picos y valles, empieza donde empieza el audio y acaba donde acaba, y en general es más alta en las partes altas. No hay error, no hay aviso y no hay con qué compararla — que es exactamente la forma de los otros defectos que seguimos encontrando en herramientas creativas pequeñas: un anillo dibujado a la mitad del ancho que pediste parece un anillo más fino, no un fallo, y una rodaja de carrusel desplazada medio píxel parece una foto un poco blanda.

La razón para que te importe no es estética. Si estás cortando por la onda, alineando un subtítulo con un golpe o quitando silencio a ojo, estás decidiendo a partir de un dibujo que ha tirado el 99,99 % de las pruebas.

El arreglo, y lo que cuesta

Guarda el mínimo y el máximo de cada columna. Eso es todo. No puede perderse una muestra porque las lee todas, es estable al cambiar de tamaño porque no depende de qué muestras se miran por casualidad, y atrapa un transitorio de 88 muestras por el mismo motivo.

El coste: reducir las 7.938.000 muestras a 800 columnas llevó 4,70 ms, mejor de cinco ejecuciones, en un navegador normal. El atajo llevó 0,00 ms. Ese es todo el ahorro que se está defendiendo, y compra un dibujo que no es de tu audio.

El RMS es otra pregunta, no una respuesta equivocada

Hay una tercera opción que conviene nombrar, porque las herramientas la mezclan en silencio. El RMS es la energía media de la columna y no su muestra más fuerte. Para una sinusoide, el RMS es 0,7071 frente a un pico de 1,0000 — una onda en RMS es un 29,29 % más baja que una onda en pico del mismo audio.

Ninguna está mal. El pico te enseña los transitorios; el RMS sigue el volumen percibido y sale más suave. Lo que está mal es no saber cuál estás mirando, o una herramienta que usa una para la vista previa y la otra para la exportación.

Confirmado en un archivo real, después de publicar la herramienta

Las señales sintéticas demuestran el mecanismo; un archivo real demuestra que sobrevive al contacto con audio de verdad. Soltamos un fragmento de voz de 20 segundos — 960.000 muestras, mono, 48 kHz — en el generador de imagen de forma de onda terminado y leímos los números de la propia página, no de una reimplementación suya.

AnchoPico real (todas las muestras)Pico hallado por una muestra
600 px0,29640,2387
800 px0,29640,2172
1000 px0,29640,1886
1200 px0,29640,2387
1920 px0,29640,2343

El pico real es 0,2964 a todos los anchos, porque es un hecho sobre el archivo. La respuesta del atajo vaga entre 0,1886 y 0,2387 según únicamente el ancho que pediste para la imagen. En el mismo fragmento, 88 de 480 columnas llegan a la mitad del pico real; leer una muestra por columna encuentra 10. Su dibujo es un 65,42 % más bajo de media.

La herramienta dibuja tu archivo de las dos maneras, lado a lado, e imprime esos números para lo que le des — así que la comparación es algo que ejecutas, no algo que te crees.

Preguntas frecuentes

¿Es un defecto real o una queja de purista?

Es un defecto con números detrás. En una pista de clics sintética el atajo dibujó 0 de 360 golpes y devolvió una columna más alta de 0,0000 para un audio que llega a escala completa una y otra vez. En un fragmento de voz real de 20 segundos informó del pico entre 0,1886 y 0,2387 según únicamente el ancho de la imagen, frente a un pico real de 0,2964. Nada de eso es cuestión de gusto.

¿Por qué iba alguien a leer una muestra por columna?

Porque es gratis y se ve bien. Reducir 7.938.000 muestras como es debido llevó 4,70 ms en un navegador; el atajo llevó 0,00 ms. Y el resultado sigue pareciendo una forma de onda, así que nada se queja — no hay error ni nada obvio con lo que compararlo.

¿Afecta también a los archivos cortos?

Mucho menos. El daño crece con cuántas muestras tiene que representar una columna. Un archivo de 10 segundos a 800 px son 551 muestras por columna y uno de 10 minutos son 33.075. Los clips cortos dibujados anchos son el caso más seguro; los archivos largos dibujados estrechos son el peor.

¿Y si hago la media de la columna?

La media de las muestras con signo es peor que las dos — una onda simétrica promedia hacia cero, así que el audio fuerte se dibuja como una línea plana por otro motivo. La media de los valores absolutos o el RMS son defendibles, pero ambos son más bajos que el pico por construcción: el RMS de una sinusoide es 0,7071 frente a un pico de 1,0000.

¿Leer todas las muestras hace lenta la página?

No. 4,70 ms para una pista de tres minutos es imperceptible, y ocurre una vez por redibujado, no continuamente. El coste dominante en el navegador es decodificar el archivo comprimido en muestras, algo que cualquier enfoque tiene que hacer igual.

¿Dónde pruebo la comparación con mi propio audio?

El generador de imagen de forma de onda dibuja tu archivo de las dos maneras en la misma página e informa del pico real, del pico que encontró el atajo, de cuántas columnas enseña cada método por encima de la mitad del pico real y de cuánto más bajo es el dibujo del atajo. No se sube nada: la decodificación y el dibujo ocurren en tu navegador.