MainStage 2.2.1: Optimización de la latencia en MainStage 2.2.1

MainStage 2.2.1 ofrece el nuevo ajuste Latencia del driver para ayudarte a ajustar la latencia de tu equipo. Aprende a optimizar MainStage para obtener la mejor relación entre latencia y rendimiento.

¿Qué es la latencia?

La latencia de audio es el tiempo que transcurre entre el momento de emisión de un sonido y el momento en que lo perciben nuestros oídos. En el mundo real, la latencia se debe a la distancia física a la que se encuentra la fuente de sonido. Aunque estés a poca distancia de una fuente de sonido, hay un retraso entre cuando se emite un sonido y cuando lo percibes. Cuanto más lejos esté la fuente de sonido, más latencia habrá. Con el audio digital también se produce latencia, en este caso debido al almacenamiento del audio en la memoria intermedia. MainStage (o cualquier otro software de audio) necesita un tiempo para procesar los datos de audio antes de transferirlos al driver Core Audio. Para ello, el audio se divide en trozos denominados buffers. El tamaño de estos buffers determina la cantidad de latencia introducida. Los buffers de menor tamaño producen menos latencia debido a que el ordenador transfiere el sonido al driver Core Audio con mayor frecuencia. No obstante, debido a que el equipo dispone de menos tiempo antes de procesar el siguiente buffer, requiere más potencia de procesamiento que la necesaria para buffers de mayor tamaño. Si el ordenador no puede procesar un buffer completo antes de procesar el siguiente, oirás fallos o irregularidades en la señal de audio.

 

Gestión de la latencia en MainStage

MainStage 2.2.1 ofrece tres ajustes que influyen en la cantidad de latencia del equipo. Para acceder a estos ajustes, selecciona MainStage > Preferencias y haz clic en el botón Audio situado en la parte superior del panel de preferencias.

Haz clic en el botón Ajustes avanzados del panel de preferencias Audio.

 

Tamaño del buffer de E/S

El primer y más importante de los ajustes es el menú desplegable Tamaño del buffer de E/S. Para los canales de audio, este ajuste establece un buffer de entrada y otro de salida. Para los canales de instrumentos de software, solo establece un buffer de salida, ya que no hay ninguna entrada de audio en estos canales. El tamaño del buffer puede oscilar entre 16 y 1024 samples. 

 

A medida que introduces cambios en Tamaño del buffer de E/S, verás que se produce un cambio notable en Latencia actual de ida y vuelta, que se muestra en milisegundos en la parte inferior del panel Ajustes de audio avanzados.

Puedes hacer clic en la pantalla Latencia actual de ida y vuelta para que muestre únicamente la pantalla Latencia actual de salida. Esto resulta útil para ver cuál será la latencia de los canales de instrumentos de software.

Un ajuste más bajo conllevará un tiempo de latencia más corto, pero podrás utilizar menos canales y módulos de forma simultánea antes de encontrarte con artefactos no deseados mientras tocas. Configura el ajuste Tamaño del buffer de E/S en función del uso específico que hagas de los canales y módulos y de la potencia de procesamiento que ofrezca tu ordenador. Si utilizas muchos módulos que consumen mucha potencia, puede que tengas que usar un tamaño de buffer superior al que utilizarías con módulos con menor intensidad de procesamiento, o menos canales simultáneos.

Buffer de seguridad de E/S

El siguiente ajuste es Buffer de seguridad de E/S. Cuando este ajuste está activado, MainStage añade un buffer de salida adicional como protección contra las sobrecargas generadas por picos de uso de la CPU inesperados. Su tamaño es igual al del ajuste Tamaño del buffer de E/S, pero solo afecta al buffer de salida. Por ejemplo, si ves que hay demasiada latencia con un tamaño del buffer de E/S de 256 samples, pero oyes fallos o irregularidades de sonido con un tamaño del buffer de E/S de 128 samples, prueba a establecer un tamaño del buffer de E/S de 128 y activa el buffer de seguridad de E/S. Esto producirá algo más de latencia que con 128 samples sin el buffer de seguridad, pero menos que la que se produce con 256 samples sin él.

Regulador Latencia del driver

El siguiente ajuste es el regulador Latencia del driver. Este ajuste es nuevo en MainStage 2.2.1. Por defecto, el regulador está en el valor máximo posible y equivale al valor de Tamaño del buffer de E/S actual, que produce el mismo comportamiento que en las versiones anteriores de MainStage. En la imagen siguiente, se ha configurado MainStage con un tamaño de buffer de 128 samples. Cada buffer está representado por un bloque azul. Cuando MainStage termina de procesar un buffer de 128 samples, el buffer, representado por los bloques rosas, pasa al driver Core Audio, que lo transfiere a la salida del hardware de audio.

Si mueves el regulador Latencia del driver una vez hacia la izquierda, hasta 64 samples, la latencia del equipo disminuirá varios milisegundos:

El diagrama que aparece a continuación muestra lo que ocurre:

MainStage sigue procesando el sonido en buffers de 128 samples, pero en lugar de esperar a que los 128 samples pasen cada buffer al driver Core Audio, la aplicación solo espera 64 samples antes de empezar a transferir el buffer al driver.

Como ocurre con Tamaño del buffer de E/S, un ajuste inferior de Latencia del driver puede producir fallos o irregularidades de audio. El ajuste mínimo posible para un equipo concreto viene determinado principalmente por el driver de audio. El ajuste Latencia del driver no tiene ningún efecto sobre el número de módulos o canales que se pueden ejecutar. 

En resumen

Una buena estrategia para encontrar la combinación óptima de ajustes es empezar por la parte superior del panel Ajustes de audio avanzado e ir bajando. Para empezar, deshabilita Buffer de seguridad de E/S y deja el regulador Latencia del driver en el extremo derecho (el valor máximo):

  1.  Carga el patch que requiera más CPU de los que pretendas utilizar cuando interpretes.
  2.  Determina el Tamaño del buffer de E/S más bajo que puedes utilizar sin que se produzca ningún fallo o irregularidad de audio.  Ten en cuenta que no solo influye la potencia de procesamiento de tu ordenador, sino también el tipo y el número de módulos y el número de canales que utilices simultáneamente. 
  3.  Si el ajuste mínimo de Tamaño del buffer de E/S que puedes utilizar produce tanta latencia que no te permite interpretar con comodidad, prueba a elegir el siguiente tamaño más bajo y activa Buffer de seguridad de E/S.
  4.  Una vez que hayas determinado los mejores ajustes de buffers, intenta bajar el valor de Latencia del driver para reducir aún más la latencia general del equipo. Dado que el principal factor a la hora de determinar el ajuste más bajo posible es tu driver Core Audio, sería buena idea que revisaras este ajuste si cambias a una interfaz de audio distinta o instalas un driver actualizado para tu interfaz actual.
Fecha de publicación: