Metrónomo Absoluto es una aplicación diseñada para mantener el tempo de una obra musical con precisión profesional. No se trata de una caja de ritmos o percusión, como la mayoría de las aplicaciones al uso; la aplicación realiza sólo la función de metrónomo.

Los parámetros ajustables, en esta versión, son los siguientes:

Número de pulsos o tiempos por minuto: Nos indica la velocidad absoluta de la obra musical. El software nos permite elegir entre un mínimo de 10 pulsos por minuto (Beats Per Minute en inglés) que se corresponde con un tempo Larghissimo, hasta 210 pulsos por minuto que se corresponde con un tempo Prestissimo.

El numerador del tipo de compás: Si el compás es simple, nos indica el número de tiempos que contiene el compás, y si es compuesto, nos indica el número de subdivisiones totales del compás (el tiempo de un compás compuesto se divide en tres subdivisiones)

El denominador del tipo de compás: Para compases simples indica la figura musical correspondiente a cada tiempo del compás, y para compases compuestos se corresponde con cada una de las subdivisiones del compás.

Subdivisiones: Indica si deseamos dividir cada tiempo de compás. Naturalmente, para compases simples cada tiempo se subdivide en dos y para compases compuestos se subdivide en tres.

En la siguiente figura tenemos una imagen de la vista de configuración de la aplicación:

 La pantalla principal contiene un novedoso sistema para indicar el transcurso del tempo: Se trata de una esfera completa, como la de un reloj, que representa un compás completo. En función del tipo de compás escogido y de si permitimos o no las subdivisiones, sobre la esfera se representan las correspondientes figuras musicales.

En la figura anterior podemos apreciar un compás 12/8, es decir, un compás compuesto de cuatro tiempos; cada uno de ellos se subdivide en tres partes con una duración de una corchea. Las líneas negras indican la división en tiempos y las líneas rojas las subdivisiones.

En el artículo Metrónomo tenemos una descripción detallada de los diversos tipos de compases.

En esta aplicación hemos tenido en cuenta sólo los compases regulares, que son los más usuales, esto es, compases simples y compuestos binarios, ternarios y cuaternarios. No se han tenido en cuenta, de momento, los compases de amalgama compuestos por la unión de compases simples.

Multitarea

La aplicación está diseñada siguiendo las directrices para multitarea de Apple, de modo que sigue funcionando en background, es decir, el metrónomo sigue sonando aunque el iPhone se bloquee o se oscurezca la pantalla por tiempo. Esto es sumamente importante dado que normalmente los terminales se ajustan para que al cabo de un determinado tiempo sin tocar la pantalla, esta se oscurezca o se bloquee. En tal situación, el sistema operativo pasa la aplicación activa a background y la pone en pausa. Evidentemente, esto es un gran inconveniente si estamos tocando un instrumento dado que tendríamos que liberar de nuevo la pantalla para seguir escuchando al metrónomo. Esta aplicación no presenta ese problema.

La generación del sonido

El núcleo de la aplicación es el módulo que crea el sonido de un compás. Apple pone a disposición de los desarrolladores una gran cantidad de frameworks para el tratamiento del sonido; desde las más sencillas que nos permiten simplemente leer o escribir archivos de audio hasta los más complejos (y mucho más difíciles de manejar) que nos permiten manejar todos los aspectos de la señal de audio hasta el nivel de las muestras individuales.

Por supuesto, la manera más sencilla de generar el sonido del metrónomo sería realizando una repetición del sonido en los tiempos adecuados, para lo que nos podríamos ayudar de temporizadores. Sin embargo, un iPhone (como cualquier otro teléfono u ordenador convencional) no va equipado con un sistema operativo de tiempo real, y las tareas temporizadas están consideradas de baja prioridad para el sistema operativo, lo que quiere decir que no se respetarán, en general, los tiempos entre pulsos de forma exacta y la temporización del compás será errática. Desde luego, no podríamos construir una aplicación profesional con este mecanismo.

Sin embargo, los procesos generados con el framework que gestiona colas de audio tienen la completa atención del sistema operativo, lo cual es lógico dado que de otro modo la reproducción o grabación de audio no serían procesos fiables. 

Dicho lo anterior, lo que se hace es generar una trama utilizando muestras reales de audio de un metrónomo mecánico y componer con ellas, muestra a muestra, un compás completo que se repite continuamente. La precisión de la temporización es entonces la de una muestra, esto es 1/44.100 segundos.