Organizador
Vos ponés los acordes
Escribís la progresión en cifrado americano, o la importás de un archivo MusicXML, y el programa reparte las voces. Con el candado podés fijar el reparto de un acorde, y los de alrededor se acomodan a ese.
Código abierto · Licencia MIT · Windows
Tus acordes, tu melodía o una hoja en blanco.
ChordWeaver escribe cualquiera de las tres a varias voces. Un algoritmo genético decide qué nota canta cada voz y en qué octava, con el menor movimiento que permitan las reglas del género que elijas.
Una vez elegidos los acordes, el algoritmo no los cambia ni los reordena. Sólo decide cómo se reparten entre las voces.
Cómo funciona
Un acorde de Do mayor tiene tres notas. A cuatro voces una de ellas se dobla, y cada voz puede cantar su nota en más de una octava. En una progresión entera las combinaciones son demasiadas para probarlas de a una. ChordWeaver las explora con un algoritmo genético y te muestra las tres mejores.
Ocho acordes a cuatro voces, con las reglas del barroco. Señalá o tocá un nombre de la leyenda para resaltar esa voz.
— de movimiento en total, sumando las cuatro voces. El salto más grande es una cuarta, y el bajo se mueve cinco semitonos en toda la pieza.
Los tres modos
Los tres modos terminan en una progresión escrita a varias voces, lista para exportar. Lo que cambia es quién pone los acordes. En la pantalla inicial, cada tarjeta muestra qué ponés vos y qué escribe el programa.
Vos ponés los acordes
Escribís la progresión en cifrado americano, o la importás de un archivo MusicXML, y el programa reparte las voces. Con el candado podés fijar el reparto de un acorde, y los de alrededor se acomodan a ese.
El programa pone los acordes
Elegís la tonalidad, el modo, el acorde inicial y el final, y qué acordes prestados permitís. El programa escribe la progresión (qué grado sigue a cuál, dónde caen las cadencias, cuándo usa un préstamo) y después la reparte entre las voces.
Vos ponés la melodía
Escribís una melodía en el pentagrama, con el mouse o con el piano de abajo, y el programa busca acordes que la acompañen. Las notas doradas muestran de antemano cuáles van a llevar acorde. Las que salen de la escala se pintan de naranja.
En el Armonizador, una nota fuera de la escala que sube un semitono lleva la dominante de la nota siguiente (V/x). En barroco y en jazz puede llevar en su lugar el acorde de séptimo grado de esa nota (vii°/x). En jazz, la que baja un semitono lleva la sustitución tritonal. Si la melodía termina en la relativa menor, el programa armoniza en menor.
El resultado
Las tres mejores soluciones se ven escritas en un sistema de dos pentagramas, con el cifrado arriba de cada acorde y un color por voz. La tabla con el nombre de cada nota queda a un click.
Todos los pentagramas del programa, del Armonizador al analizador, se dibujan con Bravura, la fuente de referencia del estándar musical SMuFL. Las figuras, las claves y los accidentes se ven como en una partitura impresa.
Las herramientas
Además de los tres modos hay tres herramientas que no escriben música. El experimentador descompone el sonido de una nota en sus armónicos. El analizador hace el camino inverso al resto del programa, porque recibe una partitura ya escrita y la analiza. La escuelita enseña lectura musical y armonía con ejercicios que corrige el programa.
De qué está hecha una nota
Una nota afinada no suena en una sola frecuencia. Suena en la suya y en sus múltiplos enteros, los armónicos, y el peso de cada uno explica buena parte de la diferencia entre un violín y una flauta. El experimentador muestra los doce primeros como barras que podés apagar, subir, bajar o desplazar de su frecuencia exacta. Trae ocho recetas para empezar (seno, diente de sierra, cuadrada, triangular, cuerda pulsada, clarinete, órgano y voz cantada), y todas son la misma serie con barras de distinta altura.
El gráfico y el sintetizador leen los mismos datos, así que el
dibujo coincide con lo que se escucha. El timbre se guarda como
.wav afinado y con el bucle marcado. Sirve para cargarlo
en un sampler o como timbre de reproducción del propio programa.
Vos traés la partitura
Escribís la música en un sistema de dos pentagramas, o la importás de un MusicXML, y el programa nombra cada acorde con su inversión, su cifrado, su grado y su función en la tonalidad. También señala lo que pasa entre las voces (quintas y octavas paralelas, quintas ocultas, cruces, saltos de tritono) y separa las notas del acorde de las de adorno. Las cadencias quedan marcadas en el compás donde caen.
Para las paralelas y las quintas ocultas usa el mismo código con el que el algoritmo genético evalúa sus soluciones, y las juzga según el estilo que elijas. En jazz y en gregoriano no son falta. Trae los primeros ocho compases del Preludio BWV 846 de Bach para probarlo sin buscar un archivo.
Aprender escribiendo
Son ocho unidades con cincuenta y tres ejercicios en total. Las tres primeras enseñan a leer en clave de sol y de fa, las figuras y el compás, y a reconocer intervalos de oído. Las otras cinco son movimientos de las voces, armonías, cadencias, estilos y serie armónica. En unos ejercicios mirás o escuchás y elegís una respuesta. En otros escribís o corregís un fragmento en el pentagrama, y el programa corrige lo que entregás. Si algo está mal, te dice en qué compás.
Cada lección cita el apartado del libro que la explica, y se abre cuando aprobaste la anterior. Si elegís mal, la corrección te dice qué tiene de malo tu respuesta y dónde mirar, sin revelar la buena. Para leer más rápido hay una práctica libre de notas sueltas, que lleva la racha y el tiempo por nota. Al aprobar las ocho unidades hay una graduación con su propia escena y el logro «Nace una leyenda».
Para medirla, sus lecturas se compararon acorde por acorde con análisis de referencia. Estos números salen de esa comparación.
Lee anacrusas y compases partidos por una repetición. Con más de cuatro voces se queda en cada momento con el bajo, la voz más aguda y las dos del medio que más aportan al acorde, así que también analiza partituras de piano. Dos voces que se mueven en tiempos distintos no cuentan como paralelas.
Armonía
Si seis voces cantan un acorde de tres notas, tres de ellas repiten una nota que ya canta otra. Qué nota se dobla cambia cómo suena el acorde, y el programa lo decide acorde por acorde. Los tres modos tienen una opción para que las voces que sobran agreguen una sexta o una novena en lugar de doblar.
Soprano, mezzo, alto, tenor, barítono y bajo. Señalá o tocá un nombre de la leyenda para resaltar esa voz.
— de movimiento en total. Ninguna voz cruza a otra, no hay unísonos y el salto más grande es una quinta.
En el G7 del gráfico, la sensible (Si) aparece una sola vez. El barroco castiga duplicarla, y el modo coral la castiga más todavía.
Las reglas
El género influye en dos partes del trabajo. Cuando el programa elige los acordes, define qué cadencias se premian, cuánto se premia que la dominante resuelva por quinta, cuánto cuesta un acorde de color y qué préstamos vienen activados. Cuando reparte las voces, define qué movimientos se prohíben, cuáles se premian y con qué peso. El algoritmo minimiza la suma de los dos costos, y un dial regula cuánto pesa cada uno.
Contrapunto de la práctica común. Prohíbe las quintas y octavas paralelas, premia el movimiento contrario y castiga los saltos de tritono y de séptima. Incluye el modo coral, que aplica las mismas reglas con más fuerza.
Escritura modal, anterior a la tonalidad. Casi todo el movimiento es por grado conjunto, el ámbito es estrecho y el tritono está prohibido. Permite las quintas y octavas paralelas, que en el organum eran la norma.
Armonía extendida. Premia que la tercera y la séptima de cada acorde pasen por grado conjunto al acorde siguiente, mantiene las notas comunes y evita las novenas menores.
El código incluye audit.py, que corre las mismas
progresiones con cada género y otra vez con las reglas de estilo
apagadas, para comparar. Estos números salen de esas corridas (cuatro
progresiones, dos semillas). La tabla completa está en el README del
programa, también con los casos en que un género se diferencia poco.
En el gregoriano las quintas y octavas paralelas no cuentan como error. El estilo premia que la vox organalis acompañe a la vox principalis una cuarta, una quinta o una octava por debajo, como en el organum.
Qué más hace
Soprano, mezzo, alto, tenor, barítono y bajo. El registro de cada voz se puede editar si tu coro no entra en los valores de fábrica.
Canto (SATB), piano y cuarteto de cuerdas. Cada atajo marca las cuatro voces y les asigna el registro en un solo paso.
Exporta en los dos formatos. Los archivos se abren en MuseScore, Sibelius, Finale o cualquier otro editor de partituras.
Cada solución tiene su botón para escucharla. En la configuración se elige el timbre entre cuerda pulsada, órgano, cuerdas frotadas, clave y coro, y una flauta dulce escolar incluida como broma. También puede usar un archivo WAV como timbre.
La mejor y las dos que le siguen, en partitura o en tabla, para comparar en qué se diferencian.
Si en una solución aparece una cadencia rota, un 6/4 cadencial o una sexta en lugar de quinta, el resultado lo señala y lo explica en una línea.
Rellena saltos con notas de paso por grado conjunto y puede agregar adornos de época sobre el resultado.
Napolitana, bVII, sustituto tritonal y dominantes aplicadas, con un control para decidir cuánto se usan.
Lee archivos MusicXML, también los .mxl comprimidos, y toma sus acordes, su ritmo y sus compases.
Las últimas diez producciones quedan guardadas y se pueden volver a escuchar sin generarlas de nuevo.
Desde el código fuente, cli.py usa el mismo motor sin abrir la ventana. Acepta los acordes, el género, las voces y los mismos interruptores de reglas.
No tiene instalador y guarda todo en su propia carpeta. Funciona desde un pendrive, y para desinstalarlo alcanza con borrar la carpeta.
El motor usa sólo la librería estándar de Python. No necesita music21, numpy ni librerías de audio.
Al abrirse consulta si salió una versión nueva y te avisa antes de entrar. Sin conexión abre igual.
Lo que armes en el experimentador se guarda como .wav afinado y con bucle. Sirve como instrumento en un sampler y como timbre de reproducción del programa.
Logros, libro, sendero, escuelita e historial se guardan en archivos de texto al lado del programa. Para actualizar, se copian a la carpeta nueva.
La primera vez que lo abrís te pregunta el idioma. Después se cambia desde la configuración, sin cerrar el programa.
La primera vez hay un recorrido guiado, y las pantallas de acordes, melodía, tonalidad y reglas tienen su propia guía. Los dos se pueden repetir desde la configuración.
Se activa en la configuración y quita las visitas, las apariciones y el modo historia. Quedan sólo las herramientas de trabajo, y al desactivarlo todo vuelve a su estado anterior.
Aprender
El programa trae un libro de teoría escrito para quien no estudió música. Cubre armonía, conducción de voces, el origen de cada estilo y las cadencias que el programa reconoce, con instrucciones para que aparezcan en tus resultados.
La mayoría de los apartados empiezan cerrados y se escriben cuando hacés algo en el programa. Por ejemplo, la primera vez que un resultado tiene un 6/4 cadencial se abre el apartado que lo explica. Son ochenta apartados y cincuenta y un logros.
Las lecciones de la escuelita citan el apartado que les corresponde, y desde ahí se abre el libro en esa página.
Algo más
No dice qué. Se enciende un botón dorado en la pantalla inicial, y si no lo tocás vuelve a aparecer otro día. Lo que pase después depende de lo que contestes. Hay tres respuestas posibles y cada una lleva a un camino distinto.
Cada camino se recorre usando el programa como siempre, escribiendo acordes, generando progresiones y armonizando melodías. Algunos tramos tocan piezas que el programa ya trae escritas, y cada tramo escribe en el libro un apartado que hasta entonces tenía el título tapado.
El programa no lo anuncia, y esta página no va a contar más.
Por dentro
Descomprimí el .zip donde quieras y abrí
ChordWeaver.exe. No hay instalador, no toca el registro de
Windows y guarda tus datos en su propia carpeta.
.zipec8f07189b68ffbfeca00d24fa025261e13ce0c4739ca03f698c05a95de3dc9aQué cambió en esta versión → Cómo actualizar desde una versión anterior sin perder el progreso →
Para ejecutarlo desde el código fuente:
pip install customtkinter && python app.py