A downloadable game for Android

Download NowName your own price

MANUAL DE USUARIO: 

MIDIFANTASMA

Esta es la interface de la aplicación, en la pantalla PATTERN (patrón):

[PLAY]--[STOP]--[P--]--[RECORD]
[BPM:---]---[COPY]---[STEPS:--]
---|--:  [####################]
[][]                           
[][]                           
-------------------------------
  |--BS1--|------BS2------|BS3|
__|ZY1|ZY2|SA1|SA2|SA3|SA4|-L-|
01|---|---|---|---|---|---|---|
02|---|---|---|---|---|---|---|
03|---|---|---|---|---|---|---|
04|---|---|---|---|---|---|---|
05|---|---|---|---|---|---|---|
06|---|---|---|---|---|---|---|
07|---|---|---|---|---|---|---|
08|---|---|---|---|---|---|---|
09|---|---|---|---|---|---|---|
10|---|---|---|---|---|---|---|
11|---|---|---|---|---|---|---|
12|---|---|---|---|---|---|---|
13|---|---|---|---|---|---|---|
14|---|---|---|---|---|---|---|
15|---|---|---|---|---|---|---|
16|---|---|---|---|---|---|---|
 [1-16]-[17-32]-[33-48]-[49-64]

MODO PATRÓN (PATTERN MODE):

[PLAY]--[STOP]--[P--]--[RECORD]
  • [PLAY] da inicio al secuenciador desde el paso #1.
  • [STOP] detiene el secuenciador y lo devuelve al primer paso del patrón.
  • [P--] es el botón de PATTERN o patrón. Indica en cuál PATTERN (patrón) estamos en el momento. Son 10 patrones en total, y se ven así: [P01], [P02], [P03], [P04], [P05], [P06], [P07], [P08], [P09], [P10]. Además de mostrar el patrón actual, al tocarlo abre la pantalla de SONG MENU (Modo Canción).
  • [RECORD] arma la grabación para el instrumento que esté seleccionado en la línea 8. 
    • Si están seleccionados los sintetizadores 1 o 2 ([ZY1] o [ZY2]), y se arma el RECORD, se grabarán los movimientos de diferentes parámetros manejados con controladores externos. 
    • Si están seleccionados los samplers, cuando se arma el RECORD y se toca otra vez el encabezado de los samplers, este cambia a REC y graba directamente del micrófono del dispositivo (o lo que esté conectado). 
    • Si está seleccionado el looper ([-L-]), y se arma RECORD, al darle [PLAY], la secuencia se reproduce y al siguiente primer paso, empieza a grabar un loop. Se puede escuchar el monitoreo en vivo subiéndole el volumen en el BUS3 (más info de los BUSES más adelante) para cuadrar los parámetros, así que CUIDADO AL USAR [RECORD] EN EL LOOPER CON MICRÓFONOS INTERNOS!!
[BPM:---]---[COPY]---[STEPS:--]
  • [BPM:---] muestra cuál es el tempo (beats per minute). El default es 120, y se ve así: [BPM:120]. Este se puede manipular tocándolo y luego usando la BARRA DE CONTROL en la línea 3. También funciona como [TAP TEMPO]: tocar este parámetro repetidamente calcula el BPM.
  • [COPY] cuando se toca se pone rojo así: [COPY] y significa que puedes copiar las características del paso actual en la matriz del patrón, a otro paso que comparta las mismas características, así que [ZY1] sólo copia a [ZY1], [ZY2] a [ZY2], y cualquier sampler a cualquier sampler, por ejemplo de [SA3] a [SA1].
  • [STEPS:--] dice cuántos pasos tiene este patrón disponibles para hacer una secuencia. Por default tiene todos los pasos disponibles, viéndose así: [STEPS:16]. Se modifica con la cinta de edición en la línea 3.
---|--:  [####################]

EL CONTROL MÁS IMPORTANTE DE LA APP: LA BARRA DE CONTROL

  • Las primeras letras son las coordenadas, donde el primer valor es un indicador de instrumento o bus y el segundo valor es el paso en el que está el cursor dentro de la matriz del patrón. Por default empiezan en el primer instrumento, [ZY1] y el primer paso, viéndose así: ZY1|01:. Si el tercer sampler está seleccionado y el cursor está en el octavo paso, se ve así: SA3|08:, etc.
  • [####################] es la BARRA DE CONTROL, es como un dial, una cinta tactil, o un fader horizontal. Cuando un parámetro está seleccionado (BPM, volumen, efectos, filtros, etc), arrastrar el dedo horizontalmente sobre esta cinta es la forma de editar el valor de dicho parámetro.
SA3|08:  [####################]

PARÁMETROS DE INSTRUMENTO (LÍNEAS 4 Y 5)

El contenido de las líneas 4 y 5 cambia dependiendo del instrumento seleccionado en la cuadrícula. Para editar cualquiera de estos valores, se debe tocar parámetro correspondiente (que se pondrá verde) y luego deslizar el dedo en la BARA DE CONTROL de la línea 3.

Los primeros instrumentos, o generadores de sonido son los Sintetizadores.

Sintetizadores son generadores de sonido a partir de osciladores (ondas que se suceden rápidamente, generando sonido a partir de su oscilación, como una soga que se gire muy rápido) en este caso como los que se escuchan en videojuegos de consolas los 80s y 90s, NES, Gameboy, etc.  

Sintetizador 1 ([ZY1]): Es un motor diseñado para timbres complejos y saturados. Al controlar los parámetros VSO (osiclador de volicidad variable), puedes moverte desde una onda senoidal pura hasta una onda cuadrada distorsionada. Tiene una textura "gruesa" y orgánica, ideal para bajos agresivos o leads que necesitan calidez digital. Se le pueden añadir armónicos que le dan un carácter de sintetizador analógico de hardware.

  • Línea 4: [V: . ][NOTA][VSY: . |X: . ][ G]
    • [V:  ]: Volumen de la pista.
    • [NOTA]: Nota actual asignada al paso (ej. [C 4]).
    • [VSY: . |X: . ]: El VSO (Variable Speed Oscillator / Oscilador de Velocidad Variable)  emula el comportamiento de los motores de cinta analógicos y los variadores de velocidad físicos en magnetófonos de baja fidelidad
      • Eje Y, (Saturación / Transformación a Square): Controla la distorsión de amplitud. Al incrementarlo la onda se empuja contra un limitador que aplana la onda y la transforma de una curva suave a una onda cuadrada o de pulso, produciendo un sonido hueco, agresivo y rico en armónicos impares. (Incluye compensación automática de volumen).
      • Eje X, (Asimetría de Fase / Transformación a Saw): Controla la distorsión temporal (warp) dentro de un solo ciclo de la onda. Un incremento en este eje desplaza el punto de pivote: acelera drásticamente la primera mitad del ciclo y estira la segunda. Esto deforma la curva senoidal hasta convertirla en una onda de diente de sierra (sawtooth) afilada y brillante.
    • [ G]: Ajuste de Glide/Portamento (0G, 1G, 2G).
    • El Glide desliza suavemente el tono entre las notas asignadas en lugar de hacer un saltoentre ellas. Para que el efecto funcione, las notas con GLIDE deben ser [-] en la cuadrícula, estas son sus especificaciones: 0G Apagado (no hay deslizamiento entre una nota y otra, sino que salta de una), G1 Rápido (60 ms), G2 Lento (200 ms)-
  • Línea 5: [OF: . ][A: |D: |S: |R: ][RT: ]
    • [OF: . ]: Offset (compensación de inicio), medido en fracciones de la duración de la nota, en 0.0, su valor por default, comienza inmediatamente cuando es activado el paso, en 0.5 la nota es activada a la mitad del paso, y en 0.9 casi al final, casi encima del siguiente paso.
    • [A: |D: |S: |R: ]: Envolvente ADSR (Attack, Decay, Sustain, Release), cada una tiene 3 niveles: 0, 1 y 2, siendo 0 la más corta y 2 la más duradera.
    • [RT: ]: Ajuste de Retrigger. (0, sin retrigger la nota suena una vez, 1, repite la nota, 2, repite la nota 3 veces como un tresillo)

Ejemplo de las líneas 3, 4 y 5, en la pantalla modo patrón con el Synth 1 seleccionado:

ZY1|05:  [####################]
[V:1.0][C#4][VSY:0.0|X:0.6][0G]
[OD:0.0][A:0|D:2|S:2|R:2][RT:0]    

Sintetizador 2 ([ZY2]): Es un sistema de doble oscilador clásico con detune, un filtro bidireccional y capacidad para formas de onda senoidal, triangular o saw. Es más versátil y "abierto" que el ZY1; gracias a la posibilidad de desafinar el segundo oscilador, genera texturas densas y coros orgánicos que parecen llenar más el espectro sonoro. El filtro bidireccional permite transiciones sutiles, desde sonidos opacos y profundos (LPF) hasta texturas delgadas y metálicas (HPF). Es un mejor synth que el primero para pads, texturas envolventes y sonidos con movimiento tímbrico.


  • Línea 4: [V: . ][NOTA][WAVE][F: . ][D: . ]
    • [WAVE]: Forma de onda. Opciones: [SN] (Senoidal), [TR] (Triangular), [SA] (Sierra).
    • [F: . ]: Filtro con una pendiente fija de 12 dB por octava (Filtro de 2 polos). Su default es 0.5. sin filtro, (una zona muerta desde 0.49 hasta 0.51) al decrecer desde 0.49 hacia abajo, la frecuencia de corte (Cutoff) desciende exponencialmente desde los 20,000 Hz hasta los 20 Hz, atenuando las frecuencias altas (efecto low pass). al incrementar el número desde 0.51 la frecuencia de corte (Cutoff) asciende desde los 20 Hz hasta los 20,000 Hz, eliminando el contenido de frecuencias graves (high-pass).
    • [D: . ]: Detune (Desafinación). su default es 0.5, sin detune, al decrecer el número se baja el pitch, al incrementar el número se sube el pitch
  • Línea 5: Idéntica a [ZY1].

ZY2|08:  [####################]
[V:1.0][C#4][SA][F:0.5][D:0.]
[OD:0.0][A:0|D:2|S:2|R:2][RT:0]    

Samplers ([SA1], [SA2], [SA3], [SA4]):

Samples: Son pequeñas capturas de audio, como fragmentos de sonidos reales, efectos o voces, que actúan como la "materia prima" para crear música. Puedes imaginarlos como piezas de un rompecabezas sonoro que uno selecciona o graba y va armando.

Sampler: Es el instrumento que permite activar esos sonidos. No solo reproduce el archivo, sino que lo transforma: al asignar diferentes notas, el Sampler cambia la nota y el tono del sonido original, permitiéndote convertir un simple audio en una melodía, un bajo o una percusión completa. El sample es un ingrediente y el sampler es la cocina. (y los parámetros que manipulan al sampler son la receta, supongo, :P)

NOTA: mientras los sintetizadores pueden generar sonidos por su cuenta, los samplers no, por eso debes cargar ó grabar sonidos para usarlos. 


  • Línea 4: [V: . ][NOTA][F: . ] (el filtro funciona igual que el filtro en ZY2)
  • Línea 5: Idéntica a [ZY1].
SA2|04:  [####################]
[V:1.0][C#4][F:0.5]                           
[OD:0.0][A:0|D:2|S:2|R:2][RT:0]    

Looper ([-L-]): 

El Loop: Es una grabación continua y cíclica que se reproduce una y otra vez de forma ininterrumpida. A diferencia de un sonido que se dispara y se desvanece (como un sample), el loop está diseñado para ser el fondo o el "colchón" musical que suena toda la duración del patrón.

El Looper: Es la herramienta dedicada a capturar y gestionar estos loops. Su función es grabar lo que tocas en tiempo real o permitirte cargar archivos preexistentes, asegurando que quede sincronizado con el tempo y duración de patrones de tu canción. 
Cuando grabas o cargas un Loop, este siempre tendrá la duración completa del patrón, es decir que si reduces el número de pasos, o incrementas el tempo, el mismo loop irá más rápido para acomodarse a esa duración, y por tanto su tono o notas, subirán. Si al contrario agregas más pasos al patrón, o reduces el tempo, el patrón durará más, así que el loop irá más lento y sonará más grave, su tono o notas, bajarán. Esta es una limitació deliberada.

Diferencias clave con el Sampler:
  • Sampler vs. Looper: Mientras que el sampler toma un sonido para que tú lo interpretes como un instrumento (melodías, bajos, percusiones), el looper sirve como una plataforma de soporte: captura tu interpretación o reproduce archivos cargados para liberarte y permitirte añadir capas musicales encima.
  • El alcance del Looper: En MidiFantasma, el looper no se limita a un paso o sección aislada; se extiende a lo largo de todo el patrón en su canal dedicado. Funciona como una cinta infinita que sostiene tu base musical durante toda la estructura de la pieza, garantizando una fundación constante mientras tú exploras otras ideas.

Parámetros y controles del Looper en la pantalla (ESTOS PARÁMETROS SÓLO AFECTAN LA GRABACIÓN DE LOOPS, NO AFECTAN LOS LOOPS QUE SE CARGUEN):

  • Línea 4: [G: . ][COMP:   |ATT:   ] 
    • [G: . ] Ganancia general de entrada del loop
    • [COMP:   |ATT:   ] nivel de Compresión Low/Mid/High, estos alteran simultáneamente el umbral de captación y la ganancia de compensación, COMP en la opción "High" actúa como un brickwall limiter extremo. ATT es Attack, la velocidad de ataque de el compresor, medida como Fast/Mid/Slow. El ataque  del compresor está atado al release, así que un Fast Attack, también es un Fast Release.
  • Línea 5: [BIT: . ][FLD: . ][F: . ] [LOAD] 
    • [BIT: . ] El Bitcrush reduce la resolución de cuantización de bits (de 16 bits nativos hacia rangos inferiores a 4 bits), generando ruido de aliasing y aspereza digital
    • [FLD: . ] El Wavefolder es un circuito de distorsión no lineal, cuando la amplitud de la señal del looper excede el umbral máximo digital, el algoritmo no recorta la señal (clipping ordinario) sino que invierte la dirección matemática del vector de audio, "doblando" los picos hacia adentro de forma simétrica, esto introduce armónicos impares de alta frecuencia extremadamente densos, transformando señales sinusoidales simples o loops limpios en timbres metálicos, rasposos y armónicamente complejos sin alterar el volumen peak. Dado que esta saturación procesa el flujo en un bloque posterior a la cuantización de amplitud (bitcrush), el circuito somete los bordes inarmónicos rectos de la onda de baja fidelidad a inversiones de fase repetidas, logrando la densidad frecuencial metálica descrita.
    • [F: . ] Filtro, este filtro se comporta igual que el del ZY2 y de los samplers.
    • [LOAD] botón para cargar un loop pregrabado. LOS PARÁMETROS NO AFECTAN A LOOPS QUE SE CARGUEN, SÓLO A LOS QUE SE GRABEN CON LA FUNCIÓN [RECORD]
L |--:  [####################]
[G:1.0][COMP:High][ATT:Fast]                           
[OD:0.0][A:0|D:2|S:2|R:2][RT:0]    

BUSES DE AUDIO (LÍNEAS 6 Y 7). Los buses son grupos que reúnen instrumentos. Así que en el Bus 1 tendremos los sintetizadores, en el Bus 2 tendremos los samplers y en el Bus 3 tendremos el Looper.

La línea 6 contiene: ------------------------------- (Divisor visual). 
La línea 7 contiene: |--BS1--|------BS2------|BS3|

Tocar cualquier bus cambia el menú de las líneas 4 y 5 para controlar los ruteos y efectos globales. 
La coordenada en la línea 3 cambiará a BS1|--:, BS2|--: o BS3|--:.

-------------------------------
  |--BS1--|------BS2------|BS3|   

Bus 1 ([BS1]) y Bus 2 ([BS2])

  • Línea 4: [V: . ][SND: . ] 
    • [V: . ] Volumen principal del bus 
    • [SND: . ] Nivel de envío de los efectos, para que los efectos suenen, el BUS seleccionado se debe enviar (SEND) al canal de efectos. 
  • Línea 5: [CLIP:   ][DLY:  %][RV:  %] 
    • [CLIP:   ] Nivel de saturación Low/Mid/High, 
    • [DLY:  %] Porcentaje de Delay
    • [RV:  %] Porcentaje de Reverb

Los efectos son compartidos por los buses 1 y 2, así que el nivel de Delay, o el nivel de Reverb será el mismo para ambos, lo que diferenciará qué tanto cada bus participará de ese efecto es el SEND, si por ejemplo los niveles de Delay y de Reverb están en 100%, pero el BUS1, el de los sintetizadores, tiene su SEND en [SND:0.0], los sintetizadores no participarán de estos efectos. Pero si el BUS2, el del los samplers, tiene su send en [SND:0.5], los samplers participarán de estos efectos en un 50%

[V:0.8][SND:0.0]                           
[Clip:Mid ][DLY:  0%][RV:  0%]   

Bus 3 ([BS3])

  • Línea 4: [Loop: . ][Live: . ] (Balance de mezcla exclusivo del bus 3 para nivel de looper vs señal en vivo).
    • [Loop: . ] Volumen del loop
    • [Live: . ] Volumen del micrófono en vivo conectado al android. POR DEFAULT VIENE EN 0.0 PARA MONITOREAR O AUDITAR LA SEÑAL QUE SERÁ GRABADA PARA EL LOOP, ESTE VOLUMEN DEBE SUBIRSE, HAY QUÉ TENER CUIDADO SI SE USA EL MICRÓFONO INTERNO.
  • Línea 5: [CLIP:    ] (Saturación Low/Mid/High exclusiva para el bus 3).


[Loop: 80%] [Live:  0%]                           [Clip:Mid ]   

La línea 8 contiene: __|ZY1|ZY2|SA1|SA2|SA3|SA4|-L-|

  • Estas son las cabeceras de pista. Tocarlas selecciona el instrumento para editar sus parámetros en las líneas superiores. Si [RECORD] está activo, tocarlas arma la grabación y cambia su texto a REC.

Modo Cabecera para Sintetizadores Si se vuelve a tocar la cabecera [ZY1] o [ZY2] en la línea 8:

  • Línea 4: [OCT:DN|UP][NOTE:DN|UP] (Herramienta rápida para transponer toda la pista por octavas o semitonos).
ZY1|--:  [####################]
[OCT:DN|UP][NOTE:DN|UP]                               

Modo Cabecera para Samplers Si se vuelve a tocar la cabecera [SA ] en la línea 8 mientras ya está seleccionada (sin [RECORD] armado), se entra a los parámetros globales del sample:

  • Línea 4: [OCT:  ][PIT:  ] 
    • [OCT:  ] Herramienta para subir o bajar una octava del sample
    • [PIT:  ] Herramienta para subir o bajar hasta 5 semitonos el pitch del sample
  • Línea 5: [ST: . ][EN: . ] [LOAD] 
    • [ST: . ] Puntos de inicio del audio
    • [EN: . ] Corte de fin del audio. 
    • [LOAD] abre el explorador de archivos para cargar un WAV al slot.
SA1|--:  [####################]
[OCT: 0][PIT: 0]
[ST:0.0][EN:1.0]         [LOAD] 

MATRIZ DE SECUENCIA (LÍNEAS 8 A 25)


  • Las líneas 9 a 24 contienen La cuadrícula de 16 pasos, cada paso puede tener 3 modos:
    • ---: El paso está inactivo.
    • [+]: El paso está activo y contiene un trigger o nuevo ataque de nota.
    • [-]: El paso está activo con legato, es decir, continúa o sostiene la nota anterior sin disparar un nuevo ataque, sólo es posible utilizar el GLIDE del Synth 1 [ZY1] en estado activo con legato.
  • La pista [-L-] tiene un indicador animado que muestra el estado de grabación o reproducción del loop continuo en lugar de pasos individuales.

En el siguiente ejemplo se muestran algunos pasos en diferentes modos de activación:

01|---|---|---|---|---|---|---|
02|---|---|---|---|---|---|---|
03|---|[+]|---|---|---|---|---|
04|[+]|---|---|---|---|---|---|
05|---|[+]|---|---|---|---|---|
06|---|[-]|---|---|---|---|---|
07|---|[-]|---|---|---|---|---|
08|[+]|---|---|---|[+]|---|---|
09|[-]|---|---|---|---|---|---|
10|[+]|---|---|---|---|---|---|
11|---|---|---|---|[+]|---|---|
12|---|---|[+]|---|---|---|---|
13|---|---|[-]|---|---|---|---|
14|---|---|---|---|---|---|---|
15|---|---|---|---|---|---|---|
16|---|---|---|---|---|---|---| 

La línea 25 contiene: [1-16]-[17-32]-[33-48]-[49-64]

  • Selector de páginas. Tocar estos corchetes avanza el secuenciador visual a las siguientes páginas de pasos en patrones de hasta 64 pasos. Si [COPY] está activo, tocar una página de destino copia todo el contenido de la página actual a la seleccionada. Esta copia sobreescribe el contenido de la página a la que se va a copiar, así que debe usarse con cuidado.


 [1-16]-[17-32]-[33-48]-[49-64]

Esta es la interface de la aplicación, en la pantalla SONG (canción):

[PLAY]--[STOP]--[PAT]--[CONFIG]
[BPM:120]-[COPY]-[SONGPARTS:04]
01:      [####################]
[P01]-[P02]-[P03]-[P04]-[L05]
[P06]-[P07]-[P08]-[P09]-[P10]
-------------------------------
[RANDOM]               ____  
Song:                 /     \
01:[---]X1           |  O  O |
02:[---]X1           |    O  |
03:[---]X1           |       |
04:[---]X1           UUUUUUUU
05:
06:
07:
08:
09:
10:
[SAVE]:Keep your progress
[LOAD]:Load a file
[CLEAR]:Clear steps
[NEW]:Start from scratch
[EXPORT]:Save as WAV+MIDI
[filename]
[00:00:00]


MODO CANCIÓN (SONG MENU)


Se accede tocando la etiqueta [P--] en la línea 1 del Modo Patrón. Este modo se utiliza para encadenar los patrones creados.

[PLAY]--[STOP]--[PAT]--[CONFIG]
  • [PLAY] / [STOP]: Arranca o detiene la reproducción completa de la canción.
  • [PAT]: Cierra el menú de canción y regresa al Modo Patrón (en el patrón que esté seleccionado en las líneas 4 o 5)
  • [CONFIG]: Entra a la pantalla de configuración general y hardware.
[BPM:120]-[COPY]-[SONGPARTS:04]
  • [BPM:---] muestra cuál es el tempo (beats per minute). El default es 120, y se ve así: [BPM:120]. Este se puede manipular tocándolo y luego usando la cinta de edición en la línea 3. También funciona como [TAP TEMPO]: tocar este parámetro repetidamente calcula el BPM manualmente.
  • [COPY]: Copia la estructura de la parte seleccionada a otra fila.
  • [SONGPARTS:xx]: Define cuántas filas o partes estructurales conforman la canción (Máximo 10).
01:      [####################]
  • Muestra en qué songpart está ubicado el cursor, y la cinta de edición capacitiva para ajustar BPM o repeticiones de partes.
[P01]-[P02]-[P03]-[P04]-[L05][P06]-[P07]-[P08]-[P09]-[P10]
  • Las líneas 4 y 5 muestran los patrones de [P01] a [P10]. Tocar uno de estos asignará ese patrón a la fila de la canción actualmente seleccionada, y hara la selección para volver al modo de patrón.
[RANDOM]
  • La acción [RANDOM] permite generar, aleatoreamente, secuencias en el patrón selecionado. Al activarlo, [RANDOM] se pone rojo y al siguiente patrón que se toque ([P01]... [P10]) se llena de secuencias al azar en la duración selecionada. El patrón debe estar vacío para que esto funcione.
                        ____  
Song:                 /     \
01:[---]X1           |  O  O |
02:[---]X1           |    O  |
03:[---]X1           |       |
04:[---]X1           UUUUUUUU
05:[---]X1
06:[---]X1
07:[---]X1
08:[---]X1
09:[---]X1
10:[---]X1
  • Cada fila en esta lista es una "songpart" o parte de una canción, se le asignan differentes patrones y cuántas repeticiones tendrá.
  • Al tocar la fila se selecciona y se resalta en amarillo.
  • El número final (X4) indica cuántas veces se repetirá el patrón antes de avanzar a la siguiente fila. Se modifica arrastrando el dedo en la línea 3.
[SAVE]:Keep your progress
[LOAD]:Load a file
[CLEAR]:Clear steps
[NEW]:Start from scratch
[EXPORT]:Save as WAV+MIDI
[filename][00:00:00]
  • La lista final son opciones de proyecto.
  • [SAVE]: Guarda el progreso del proyecto en almacenamiento local.
  • [LOAD]: Carga un archivo de proyecto JSON previamente guardado.
  • [CLEAR]: Limpia la cuadrícula actual.
  • [NEW]: Inicia un proyecto desde cero sin samplers en memoria.
  • [EXPORT]: Exporta la canción completa como archivos de audio WAV y MIDI con el mismo nombre (diferente extensión de archivo)
  • El nombre del archivo de proyecto actual.
  • La duración en Horas:Minutos:Segundos de la canción.

Esta es la interface de la aplicación, en la pantalla CONFIG (configuración):

                         [BACK]
[MIDIdevice]:
[PLAY]:MIDI CC 103
[STOP]:MIDI CC 103
[PrevPAT]:MIDI CC 104
[NextPAT]:MIDI CC 105
[PATERN mode/SONG mode]
[TAP TEMPO]:MIDI Pedal CC 106
[BUS1 solo]:Gamepad START
[BUS2 solo]:Gamepad R1
[BUS3 solo]:Gamepad R2
[SA1 trigger]:Gamepad Y
[SA2 trigger]:Gamepad X
[SA3 trigger]:Gamepad B
[SA4 trigger]:Gamepad A
[Move/Adjust]:Gamepad D-Pad
[TWEAK]:Gamepad L(hold)
[STEP/PASTE]: Gamepad SELECT
[COPY]:Gamepad L2
[SYNTH1]:Gamepad Left Stick
[SYNTH2]:Gamepad Right Stick
It's dangerous to go aloneTAKE THIS

PANTALLA DE CONFIGURACIÓN (CONFIG SCREEN)


Se accede tocando [CONFIG] desde la línea 1 del Modo Canción.

  • Línea 1: [BACK] (Regresa al Modo Canción).
  • Línea 2: [MIDIdevice]:NONE (Tocar esta línea abre el menú nativo del sistema para seleccionar la salida MIDI de hardware conectado. El texto cambiará al nombre del dispositivo).
  • Líneas 3 a 20: Referencia de ruteo de hardware. Las funciones mapeadas no son botones de pantalla, sino el registro estricto de entradas externas.

Entradas MIDI Soportadas:

  • [PLAY]: MIDI CC 103
  • [STOP]: MIDI CC 103
  • [PrevPAT]: MIDI CC 104
  • [NextPAT]: MIDI CC 105
  • [TAP TEMPO]: MIDI Pedal CC 106

Entradas de Gamepad Soportadas:

  • [BUS1 solo]: Gamepad START
  • [BUS2 solo]: Gamepad R1
  • [BUS3 solo]: Gamepad R2
  • [SA1 trigger]: Gamepad Y
  • [SA2 trigger]: Gamepad X
  • [SA3 trigger]: Gamepad B
  • [SA4 trigger]: Gamepad A
  • [Move/Adjust]: Gamepad D-Pad
  • [TWEAK]: Gamepad L (Hold)
  • [STEP/PASTE]: Gamepad SELECT
  • [COPY]: Gamepad L2
  • [SYNTH1]: Gamepad Left Stick
  • [SYNTH2]: Gamepad Right Stick


FUNCIONALIDADES MIDI 

FUNCIONALIDAD MIDI (Musical Instrument Digital Interface)

[ENTRADAS MIDI / MIDI IN] El sistema recibe comandos CC (Control Change) para manipular el transporte y la navegación:

  • [CC 103]: Alterna el estado de reproducción (Play / Stop).
  • [CC 104]: Retrocede al patrón anterior.
  • [CC 105]: Avanza al patrón siguiente.
  • [CC 106]: Tap Tempo. Calcula el BPM (Beats Per Minute) promediando los últimos 5 pulsos.

[SALIDAS MIDI / MIDI OUT] La matriz del secuenciador transmite nativamente comandos de Note On (0x90) y Note Off (0x80) con velocidad escalada a parámetros de 0 a 127. El ruteo aísla estrictamente cada instrumento en su propio canal MIDI:

  • ZY1 (Sintetizador 1): Transmite en el Canal 1. Notas variables.
  • ZY2 (Sintetizador 2): Transmite en el Canal 2. Notas variables.
  • SA1 (Sampler 1): Transmite en el Canal 3. Notas mapeadas 1:1 desde la raíz.
  • SA2 (Sampler 2): Transmite en el Canal 4. Notas mapeadas 1:1 desde la raíz.
  • SA3 (Sampler 3): Transmite en el Canal 5. Notas mapeadas 1:1 desde la raíz.
  • SA4 (Sampler 4): Transmite en el Canal 6. Notas mapeadas 1:1 desde la raíz.

[SINCRONIZACIÓN Y TRANSPORTE DE RELOJ] El motor de transporte procesa señales de sincronización de reloj por hardware y Mensajes del Sistema en Tiempo Real:

  • Start (0xFA): Inicializa los contadores de pasos a cero, activa el estado de reproducción (isPlaying = true) e interrumpe el temporizador interno del sistema.
  • Stop (0xFC): Detiene el secuenciador de forma inmediata y reestablece el control de temporización al reloj interno del dispositivo Android.
  • MIDI Clock (0xF8): Sincronización temporal externa con una resolución fija de 24 PPQN (Pulses Per Quarter Note / Pulsos por Negra). El motor avanza internamente 1 paso de la matriz cada 6 tics de reloj recibidos, garantizando sincronía exacta con hardware externo.

[CONTROL DE PARÁMETROS CC (CONTROL CHANGE)] Las variables flotantes internas se traducen directamente al rango de 7 bits (0-127), las señales de control modifican las variables internas del paso (Event) seleccionado en la pista activa de la matriz:

  • Volumen General de Pista: Mapeado a CC 7 (Channel Volume). Traduce el rango 0-127 a un valor flotante lineal entre 0.0f y 1.0f.
  • Filtro (FLT X): Mapeado a CC 91 (Effects Level). Modifica el nivel del bitcrusher en el looper o la profundidad del VSO en el sintetizador.
  • Bitcrush / VSO Y: Mapeado a CC 91 (Effects Level). Modifica el nivel del bitcrusher en el looper o la profundidad del VSO en el sintetizador.
  • Detune (DTN Y): Mapeado a CC 95 (Phaser/Detune Depth). Controla la desafinación fina de la pista.
  • Ataque (ADSR Envelope Attack): Mapeado a CC 73. Asigna valores discretos: 0 (valores 0-42), 1 (valores 43-85), o 2 (valores 86-127).
  • Decaimiento (ADSR Envelope Decay): Mapeado a CC 75. Asigna valores discretos (0, 1, o 2) según el rango de entrada de 7 bits.
  • Sostenido (ADSR Envelope Sustain Level): Mapeado a CC 70. Determina el nivel de sostenido en tres estados analizados por rangos de tensión discretos.
  • Relajación (ADSR Envelope Release): Mapeado a CC 72. Modifica el tiempo de liberación final del amplificador de la nota.

Tabla de Referencia Rápida de Controles (Gamepad y MIDI)

Control Acción Lógica y Comportamiento
D-Pad Navegar / Ajustar Selecciona pista/paso por defecto; mantener presionado L1 cambia la función a selección y ajuste rápido de parámetros.
SELECT (-) Disparar / Modificar Alterna el estado del paso en la matriz; mantener L2 activa la función de pegado; mantener L1 ajusta el valor numérico del parámetro seleccionado.
Gatillo L2 Modificador de Copia Al mantenerlo presionado, el sistema entra en "Modo de Copia", transformando el botón SELECT en el comando ejecutor de "Copiar".
START Solo Bus 1 Activa el Bus 1 (Sintetizador 1 / ZY1) de forma exclusiva; silencia instantáneamente los demás canales.
R1 Solo Bus 2 Activa el Bus 2 (Sintetizador 2 / ZY2) de forma exclusiva; silencia instantáneamente los demás canales.
R2 Solo Bus 3 Activa el Bus 3 (Samplers y Looper) de forma exclusiva; silencia instantáneamente los demás canales.
Botón Y Seleccionar Pista 2 Mueve el cursor y asigna el control directo al Sampler 1 (SA1).
Botón X Seleccionar Pista 3 Mueve el cursor y asigna el control directo al Sampler 2 (SA2).
Botón B Seleccionar Pista 4 Mueve el cursor y asigna el control directo al Sampler 3 (SA3).
Botón A Seleccionar Pista 5 Mueve el cursor y asigna el control directo al Sampler 4 (SA4).
Stick Izquierdo Deformación Synth 1 Mapea el Eje 0 (X) a la posición del VSO (rango 0.0–0.5) y el Eje 1 (Y) a la profundidad/modulación del VSO.
Stick Derecho Efectos Synth 2 Mapea el Eje 11 (X) a la frecuencia de corte del filtro (Cutoff) y el Eje 14 (Y) a la desafinación de tono (Detune).
Pedal MIDI CC 103 Play / Stop Alterna el estado de ejecución del secuenciador; restablece los valores dspStep y currentStep a 0 en la detención.
Pedal MIDI CC 104 Patrón Anterior Decrementa de forma secuencial el índice del parámetro activePattern (bucle automático de 0 a 9).
Pedal MIDI CC 105 Patrón Siguiente Incrementa de forma secuencial el índice del parámetro activePattern (bucle automático de 9 a 0).
Pedal MIDI CC 106 Tap Tempo Calcula y actualiza el BPM global basándose en la latencia promedio de los últimos pulsos.

Easter Egg (Afinaciones Alternativas) 

Dentro del Modo Canción, si mientras tienes uno de los 4 patrónes (P01 a P04) seleccionado, presionas [COPY] y tocas repetidamente el mismo patrón seleccionado, se revelará un texto en la línea 7 indicando el nuevo sistema de afinación global del motor: [12-TET], [24-TET], [JUST], o [PYTH].

Sistemas de Afinación (Tuning Systems)

Los cuatro sistemas determinan cómo el motor de audio divide las frecuencias y calcula la distancia matemática entre las notas.

[12-TET] (12-Tone Equal Temperament / Temperamento Igual de 12 Notas)

  • Definición: Es el sistema de afinación estándar de la música occidental moderna. Divide la octava en 12 semitonos exactamente iguales.
  • Comportamiento acústico: La relación de frecuencia entre cada nota adyacente es constante. Para lograr esta simetría, todos los intervalos (excepto la octava) están ligeramente "desafinados" respecto a la serie armónica natural.
  • Uso práctico: Permite cambiar de tonalidad (modular) libremente sin que ningún intervalo suene mal o disonante. Es el comportamiento por defecto de casi cualquier sintetizador o DAW.

[24-TET] (24-Tone Equal Temperament / Temperamento Igual de 24 Notas)

  • Definición: Divide la octava en 24 partes matemáticas iguales, introduciendo "cuartos de tono". Cada paso es exactamente la mitad de un semitono convencional occidental.
  • Comportamiento acústico: Duplica la resolución del teclado/matriz. Mantiene la propiedad modular del 12-TET pero con el doble de densidad frecuencial.
  • Uso práctico: Utilizado para música microtonal contemporánea o para aproximar escalas de sistemas no occidentales (como los maqams árabes o los dastgáhs persas) que requieren intervalos menores a un semitono.

[JUST] (Just Intonation / Afinación Justa)

  • Definición: Utiliza proporciones matemáticas simples y números enteros puros (ej. 3:2 para la quinta, 5:4 para la tercera mayor) derivados directamente de la serie armónica natural. Todo se afina respecto a una única frecuencia base.
  • Comportamiento acústico: Produce acordes tríadas completamente puros, sin los "batimentos" (oscilaciones de fase) presentes en el 12-TET. La resonancia es acústicamente perfecta.
  • Uso práctico: Excelente para drones, música estática o progresiones limitadas a una sola tonalidad. Al cambiar a un tono lejano a la frecuencia base, las proporciones matemáticas colapsan, resultando en intervalos extremadamente disonantes (conocido como el intervalo del "lobo").

[PYTH] (Pythagorean Tuning / Afinación Pitagórica)

  • Definición: Un sistema construido apilando exclusivamente quintas perfectas puras (relación 3:2).
  • Comportamiento acústico: Las cuartas, quintas y octavas son acústicamente puras y estables. Sin embargo, matemáticamente, esto obliga a que las terceras y sextas asuman proporciones complejas (ej. 81:64).
  • Uso práctico: Históricamente asociado a la música medieval. Es altamente expresivo para líneas melódicas de una sola voz (monofónicas) o armonías basadas únicamente en quintas y cuartas (power chords). Usar acordes de tercera bajo este sistema resulta en una sonoridad deliberadamente áspera y tensa en comparación con [JUST] o [12-TET].


Note System 0 (12TET) System 1 (24TET) System 2 (Just) System 3 (Pythagorean)
C2 65.41 Hz 169.64 Hz 66.00 Hz 66.00 Hz
C#2 69.30 Hz 174.61 Hz 70.40 Hz 69.53 Hz
D2 73.42 Hz 179.73 Hz 74.25 Hz 74.25 Hz
D#2 77.78 Hz 185.00 Hz 79.20 Hz 78.22 Hz
E2 82.41 Hz 190.42 Hz 82.50 Hz 83.53 Hz
F2 87.31 Hz 196.00 Hz 88.00 Hz 88.00 Hz
F#2 92.50 Hz 201.74 Hz 92.81 Hz 93.97 Hz
G2 98.00 Hz 207.65 Hz 99.00 Hz 99.00 Hz
G#2 103.83 Hz 213.74 Hz 105.60 Hz 104.30 Hz
A2 110.00 Hz 220.00 Hz 110.00 Hz 111.38 Hz
A#2 116.54 Hz 226.45 Hz 118.80 Hz 117.33 Hz
B2 123.47 Hz 233.08 Hz 123.75 Hz 125.30 Hz
C3 130.81 Hz 239.91 Hz 132.00 Hz 132.00 Hz
C#3 138.59 Hz 246.94 Hz 140.80 Hz 139.06 Hz
D3 146.83 Hz 254.18 Hz 148.50 Hz 148.50 Hz
D#3 155.56 Hz 261.63 Hz 158.40 Hz 156.44 Hz
E3 164.81 Hz 269.29 Hz 165.00 Hz 167.06 Hz
F3 174.61 Hz 277.18 Hz 176.00 Hz 176.00 Hz
F#3 185.00 Hz 285.30 Hz 185.63 Hz 187.95 Hz
G3 196.00 Hz 293.66 Hz 198.00 Hz 198.00 Hz
G#3 207.65 Hz 302.27 Hz 211.20 Hz 208.59 Hz
A3 220.00 Hz 311.13 Hz 220.00 Hz 222.75 Hz
A#3 233.08 Hz 320.24 Hz 237.60 Hz 234.67 Hz
B3 246.94 Hz 329.63 Hz 247.50 Hz 250.59 Hz
C4 261.63 Hz 339.29 Hz 264.00 Hz 264.00 Hz
C#4 277.18 Hz 349.23 Hz 281.60 Hz 278.12 Hz
D4 293.66 Hz 359.46 Hz 297.00 Hz 297.00 Hz
D#4 311.13 Hz 369.99 Hz 316.80 Hz 312.89 Hz
E4 329.63 Hz 380.84 Hz 330.00 Hz 334.13 Hz
F4 349.23 Hz 392.00 Hz 352.00 Hz 352.00 Hz
F#4 369.99 Hz 403.48 Hz 371.25 Hz 375.89 Hz
G4 392.00 Hz 415.30 Hz 396.00 Hz 396.00 Hz
G#4 415.30 Hz 427.47 Hz 422.40 Hz 417.19 Hz
A4 440.00 Hz 440.00 Hz 440.00 Hz 445.50 Hz
A#4 466.16 Hz 452.89 Hz 475.20 Hz 469.33 Hz
B4 493.88 Hz 466.16 Hz 495.00 Hz 501.19 Hz
C5 523.25 Hz 479.82 Hz 528.00 Hz 528.00 Hz
C#5 554.37 Hz 493.88 Hz 563.20 Hz 556.25 Hz
D5 587.33 Hz 508.35 Hz 594.00 Hz 594.00 Hz
D#5 622.25 Hz 523.25 Hz 633.60 Hz 625.78 Hz
E5 659.25 Hz 538.58 Hz 660.00 Hz 668.25 Hz
F5 698.46 Hz 554.37 Hz 704.00 Hz 704.00 Hz
F#5 739.99 Hz 570.61 Hz 742.50 Hz 751.78 Hz
G5 783.99 Hz 587.33 Hz 792.00 Hz 792.00 Hz
G#5 830.61 Hz 604.54 Hz 844.80 Hz 834.38 Hz
A5 880.00 Hz 622.25 Hz 880.00 Hz 891.00 Hz
A#5 932.33 Hz 640.49 Hz 950.40 Hz 938.67 Hz
B5 987.77 Hz 659.26 Hz 990.00 Hz 1002.38 Hz


Control

Action

Logic

D-Pad

Navigate / Adjust

Selects track/step by default; L1 Hold shifts function to parameter selection/adjustment.

SELECT (-)

Trigger / Modify

Toggles cell state; L2 Hold targets paste function; L1 Hold adjusts selected parameter value.

L2 Trigger

Modifier

L2 Hold switches the system to "Copy Mode," turning SELECT into the "Copy" command.

START

Bus 0 Solo

Holds Bus 0 (Oscillator 1) active, mutes all others.

R1

Bus 1 Solo

Holds Bus 1 (Oscillator 2) active, mutes all others.

R2

Bus 2 Solo

Holds Bus 2 (Samplers/Looper) active, mutes all others.

A

Select Track 5

Selects Sampler 4 (SA4).

B

Select Track 4

Selects Sampler 3 (SA3).

X

Select Track 3

Selects Sampler 2 (SA2).

Y

Select Track 2

Selects Sampler 1 (SA1).

Left Stick

Synth 1 Warp

Maps Axis 0 (X) to VSO position (0.0–0.5 range) and Axis 1 (Y) to VSO depth.

Right Stick

Synth 2 FX

Maps Axis 11 (X) to Filter Cutoff and Axis 14 (Y) to Pitch Detune.

MIDI Pedal CC 103

Play / Stop

Toggles playback state; resets dspStep and currentStep to 0 on stop.

MIDI Pedal CC 104

Prev Pattern

Decrements activePattern index (wraps 0 to 9).

MIDI Pedal CC 105

Next Pattern

Increments activePattern index (wraps 9 to 0).

MIDI Pedal CC 106

Tap Tempo

Calculates BPM based on the average delta of the last 5 incoming tap timestamps.

Updated 3 days ago
Published 5 days ago
StatusReleased
PlatformsAndroid
Authordanielceniza
TagsAudio, Music
ContentNo generative AI was used

Download

Download NowName your own price

Click download now to get access to the following files:

MIDIfantasma.apk 16 MB

Leave a comment

Log in with itch.io to leave a comment.