Podcast & Blog de Sick Tom Toms Music

La señora y las papas milagrosas

el problema de la latencia, el buffer y los cortes de audio

La señora vive en la cima de una montaña muy alejada. Tiene una enfermedad letal muy extraña.

Buenas noticias. La señora estará bien si cada día come un kilo de papas milagrosas. De lo contrario morirá. En un pueblo cercano a la montaña existe el único productor del mundo de papas milagrosas. Él puede proveerle.

Malas noticias. Algunos días el productor produce menos de un kilo de papas milagrosas y otros más. Las papas milagrosas se pudren 5 días desde su recolección. Tirar papas milagrosas no es una opción.

Para proveer a la señora de papas milagrosas, el hombre deja diariamente su producción en un canasto en la puerta de la casa de la señora. La señora saca exactamente un kilo del canasto cada día.

El problema: ¿Qué tamaño debe tener el canasto?

Si el canasto es muy pequeño, para contener sólo un kilo de papas, puede suceder que la señora saque un kilo de papas hoy y el productor tenga un mal día mañana, no llegue a rellenarlo a tiempo y la señora no tenga su kilo listo para mañana.
Si el canasto es más grande, el productor puede poner más kilos de papas los días de buena producción. Pero como las papas se pudren a los 5 días y la señora sólo consume un kilo de papas por día, un canasto de más de 5 kilos hará que las papas se pudran.

La mejor solución posible, pero imperfecta.

El mejor tamaño para el canasto es 5 kilos. Con esto la señora puede sobrevivir hasta 5 días de mala producción de papas, y las papas no se pudrirán.

El productor de papas milagrosas, la señora y el canasto en el mundo del audio.

En el mundo del audio, el problema eres tú queriendo escuchar música sin cortes y, si estás grabando una guitarra, tu voz, o tocando algún instrumento MIDI en tu DAW, no quieres latencia: no quieres escuchar tarde el sonido de una tecla o una cuerda de la guitarra que pulsas, porque así no puedes tocar.

El audio digital funciona como el video: para ver un video lo que hace una pantalla es mostrarte fotos a una cierta velocidad que te da la ilusión del movimiento continuo.
Para dar la ilusión de música o sonido continuo y sin cortes, al dispositivo de sonido de tu computadora conectado a tus parlantes le debe llegar una cierta cantidad de “fotos” de audio desde el programa de computadora que está “produciendo” el audio. Para que el audio no se entrecorte deben llegarle unas 48.000 fotos de audio por segundo. Cada foto de audio se llama muestra, del inglés “sample”.

La señora es el dispositivo de audio. Debe consumir 48.000 samples por segundo. Menos generará cortes: la señora morirá.

El productor es el programa de computadora. Debe producir al menos 48.000 samples de audio por segundo para enviar al dispositivo de sonido.
Al igual que el productor de papas milagrosas, tu computadora puede tener mayor o menor dificultad en cada momento para producir samples de audio (papas milagrosas). Algunos segundos produce mas de 48000 y otros menos. Algunos samples son más difíciles de calcular para tu computadora (como algunos días es más difícil encontrar papas para cosechar). Otros más fácil y pueden calcularse rápidamente, como un día de buena cosecha de papas milagrosas.

El canasto es el buffer. El programa de computadora dejará samples de audio con el objetivo de que el dispositivo de audio consuma 48000 por segundo. * Los samples son papas milagrosas: se pudren. Cuando estás grabando un instrumento o cantando con un micrófono conectados a tu computadora, o estás tocando un teclado midi, necesitas que la computadora reproduzca rápidamente lo que estás tocando. Al tiempo que pasa desde que tocas o cantas hasta que escuchas lo que has tocado se le llama latencia. Si esta latencia es muy grande, las papas milagrosas se pudren. No puedes tocar porque la demora es muy grande y te molesta.

El problema del tamaño del buffer (el canasto).

Cuando no estás grabando o tocando el problema es simple: las papas no se pudren. Un canasto lo más grande posible es la mejor opción. Los días de buena producción, los segundos en que tu computadora produce muchos samples, el buffer se llena y nos protege lo máximo posible de los momentos de mala producción. Nos protege de los cortes de audio.

Cuando estás grabando las papas sí se pudren. Si el canasto es demasiado grande, el tiempo que pasa desde que el productor produce una papa hasta que la señora la come es demasiado grande, y se pudren. Si el buffer es demasiado grande, la latencia es alta. El tiempo que pasa desde que pulsas una tecla y tu computadora produce las muestras de sonido hasta que el dispositivo de audio consume ese sample y lo hace sonar es grande. El dispositivo de audio tiene que consumir (hacer sonar) todos los samples que están en el buffer antes de las notas que tocaste. El resultado: samples podridos que no te permiten tocar.

No existe una solución perfecta a este problema

Un buffer demasiado grande generará latencia al tocar, un buffer demasiado chico tiene más probabilidad de generar cortes de audio cuando tu computadora no llegua a producir suficientes samples.

Lo que sí podemos controlar es la producción de papas milagrosas

En el caso del audio, la dificultad de producir un sample, una papa milagrosa, puede ser controlada. El tiempo que demora producir un sample y, por lo tanto, la cantidad de samples que podemos producir por segundo, depende de la potencia de tu computadora y la complejidad de hacer lo que quieres hacer.

La potencia de tu computadora. Una computadora potente genera buena cosecha de papas milagrosas: puede producir samples con mayor velocidad. Tiene menos riesgos de generar cortes. Por lo tanto puede trabajar con buffers más chicos y, en consecuencia, generar latencias más bajas.

La complejidad de lo que estás pidiendo a tu computadora que calcule. Si conectas sólo tu guitarra y abres una sesión limpia y vacía en tu DAW (sin efectos ni otros instrumentos ni nada más), le estás pidiendo a tu computadora que haga un trabajo relativamente sencillo y no tendrá problemas en producir samples rápidamente. Podrás usar un buffer pequeño y no tendrás latencia. Ahora, si quieres grabar tu guitarra, voz, o instrumento MIDI en una sesión en tu DAW donde hay otros dispositivos como instrumentos digitales (ejemplo sintetizadores de software), efectos de audio, procesamiento del mix o master, será mucho más complicado.
Calcular un sample de audio resulta de calcular el resultado del resultado de la combinación de todos los instrumentos y efectos presentes en esa sesión: la producción de papas milagrosas será difícil. Un buffer chico dará riesgo de cortes de audio y necesitarás buffers más grandes para evitarlos. Buffers grandes generarán más latencia.

Conclusión

Cuando no estés grabando, usa tamaños de buffer grandes. La latencia no es un problema y evitarás cortes en sesiones con muchos instrumentos y efectos.

Cuando estés grabando, usa tamaños de buffer pequeños para evitar latencia Intenta grabar en sesiones livianas para evitar cortes de audio.

Utiliza la computadora más potente que puedas. Te permitirá cargar más instrumentos y efectos tanto cuando estés grabando como cuando no, ya sea que utilices tamaños de buffer chicos o grandes.

Alex Toms

El Corte
18 de febrero de 2023
anterior índice siguiente