Este es el comando abc2midi que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
abc2midi - convierte archivos abc en archivos MIDI
SINOPSIS
abc2midi en archivo [Refnum] [-c] [-v] [-ver] [-t] [-n límite] [-CS] [-quiet] [-silent] [-Q
tempo] [-NFNP] [-NFER] [-NGRA] [-STFW] [-OCC] [-NCOM] [-HARP] [-BF] [-TT] [-o archivo de salida]
-CSM [nombre de archivo]
DESCRIPCIÓN
La acción predeterminada es escribir un archivo MIDI para cada melodía abc
con el nombre del archivo N.mid, donde es el tallo del archivo
del archivo abc y N es el número de referencia de la melodía. Si el -o
se utiliza la opción, sólo se escribe un archivo. Esta es la melodía
especificado por el número de referencia o, si no hay número de referencia
se da, la primera melodía en el archivo.
OPCIONES
Refnum procesar la melodía con el número de referencia Refnum
-c selecciona solo comprobación
-v n selecciona la opción detallada donde n es el nivel (opcional)
-ver imprime el número de versión y sale
-t selecciona nombres de archivo derivados de títulos de melodías
-CS use 2: 1 en lugar de 3: 1 para ritmos interrumpidos
-tranquilo Suprime algunas advertencias comunes.
-silencio
Suprime otros mensajes.
-n X limita la longitud de la raíz del nombre del archivo a X caracteres
-Q tempo
establece el tempo predeterminado en negras por minuto si no se especificó en el
encabezado abc.
-NFNP ¡Ignore las indicaciones dinámicas! F! ! ff! etc.
-NFER Ignore las indicaciones de fermata (por ejemplo, H o! Fermata!).
-NGRA Ignore las notas de gracia.
-STFW Coloque el texto de la letra en pistas MIDI independientes.
-NCOM Suprima algunos comentarios en el archivo MIDI de salida.
-OCC Acepte la antigua convención de acordes (por ejemplo, + D2G2 + en lugar de [DG] 2).
-BF Modo BarFly: invoca un modelo de estrés si es posible.
-ARPA Roll ornaments = se generan roll para el arpista (mismo tono)
-TT Cambia la afinación de A = 440 Hz.
-o archivar
escribir salida a archivar
-CSM en archivo
cargar un conjunto de modos de estrés personalizados desde un archivo
CARACTERÍSTICAS
* Ritmos rotos (>, <), acordes, n-tuplas, arrastre, ataduras, notas entrecortadas, repeticiones,
Los cambios de tono de tempo / duración / tipo de compás son todos compatibles.
* R: hornpipe or r: hornpipe se reconoce y los tiempos de las notas se ajustan para dar una
ritmo (ab se convierte en a> b).
* La mayoría de los errores en la entrada abc generarán un mensaje de error adecuado en la salida y
el convertidor sigue funcionando.
* Los comentarios y los campos de texto en la fuente abc se convierten en eventos de texto en el MIDI.
salida
* Si hay acordes de guitarra, se utilizan para generar un acompañamiento en el MIDI.
salida.
* Si hay signos de repetición no coincidentes en el abc, el programa intenta corregirlos.
Sin embargo, no lo intentará si se ha utilizado una descripción de melodía de varias partes o si
se utilizan varias voces.
* Los archivos MIDI de Karaoke se pueden generar usando el campo w: para incluir letras.
* Identificaciones de voz no numéricas, por ejemplo. V: se acepta soprano, según lo propuesto para el nuevo estándar abc.
* Los silencios invisibles especificados por x se tratan de la misma forma que los silencios normales (z).
* Las decoraciones pueden indicarse utilizando la notación obsoleta (por ejemplo,! Fermata!) O la
notación estándar de la versión 2.0 (por ejemplo, + fermata +).
LIMITACIONES
* Ningún campo se hereda por encima del campo X: de la melodía.
abecedario SINTAXIS AMPLIACIONES
* Hay algunas extensiones para la sintaxis abc del formulario.
%% canal MIDI n
Estos controlan la selección de canales y programas, la transposición y varias otras características de
abc2midi.
Cada uno de estos debe aparecer en una línea por sí solo. Todos ellos están permitidos dentro del abc
sintonizar el cuerpo. Al usarlos en combinación con la notación de parte, uno puede, por ejemplo,
jugar una parte transpuesta o en una tonalidad diferente.
La idea detrás de esta sintaxis es que otros programas lo tratarán como un comentario e ignorarán
él.
%% canal MIDI n
selecciona el canal de melodía n (en el rango 1-16).
%% programa MIDI [c] n
selecciona el programa n (en el rango 1-128) en el canal c. Si no se da c, el programa se
seleccionado en el canal de melodía actual. La mayoría de los generadores de tonos modernos siguen el General
Estándar MIDI que define el tipo de instrumento para cada número de programa.
%% MIDI beat abcn
controla la forma en que se seleccionan las velocidades de las notas. La primera nota de un compás tiene una velocidad a.
Otras notas "fuertes" tienen velocidad by todas las demás tienen velocidad c. a, byc deben ser
en el rango 0-128. El parámetro n determina qué notas son "fuertes". Si el tiempo
la firma es x / y, luego a cada nota se le asigna un número de posición k = 0, 1, 2 .. x-1 dentro de cada
bar. Tenga en cuenta que las unidades para n no son la longitud de la nota unitaria. Si k es un múltiplo de n, entonces
la nota es "fuerte". Los especificadores de volumen! Ppp! a! fff! son equivalentes a los siguientes
:
! ppp! = %% tiempo MIDI 30 20 10 1
!¡páginas! = %% MIDI beat 45 35 20 1
!¡pag! = %% tiempo MIDI 60 50 35 1
! mp! = %% tiempo MIDI 75 65 50 1
! mf! = %% tiempo MIDI 90 80 65 1
!¡F! = %% tiempo MIDI 105 95 80 1
! ff! = %% MIDI beat 120 110 95
! fff! = %% tiempo MIDI 127 125
%% MIDI beatmod n
Incrementa en n (o decrementa si n es negativo) las velocidades a, byc descritas
encima. Las instrucciones! Crescendo (! Y! Crescendo)! son equivalentes a insertar un
%% MIDI beatmod 15 dondequiera que ocurran. (Alternativamente, puede usar! <(! Y! <) !.)
Del mismo modo, las instrucciones! Diminuendo (! Y! Diminuendo)! son equivalentes a %% MIDI
beatmod-15.
%% MIDI deltaloudness n
donde n es un pequeño número positivo. Por defecto, las instrucciones de crescendo y diminuendo
modificar las variables de tiempo a, byc en 15 unidades de velocidad. Esta instrucción le permite
establezca este valor predeterminado en n.
%% MIDI nobeatacents
Para instrumentos como el órgano de iglesia que no tienen notas de tiempo muy enfatizadas, utilice
esto forzará el uso de la velocidad 'b' (ver %% MIDI beat) para cada nota independientemente de
posición en la barra. Esto permite utilizar la dinámica (ff, f, etc.) de la forma habitual.
%% acentos de baliza MIDI
Vuelva a enfatizar las notas de la forma habitual. (defecto)
%% cadena de tiempo MIDI
Esto proporciona una forma alternativa de especificar dónde caen las tensiones fuertes y débiles.
dentro de un bar. 'f' significa velocidad a (normalmente fuerte), 'm' significa velocidad b (media
velocidad) y 'p' significa velocidad c (velocidad suave). Por ejemplo, si la marca de tiempo es
7/8 con acentos en la primera, cuarta y sexta notas en el compás, podríamos usar el
siguiendo
%% MIDI beatstring fppmpmp
%% transposición MIDI n
transpone la salida por el número especificado de semitonos. n puede ser positivo o negativo.
%% MIDI rtranspose n
Transposición relativa por el número especificado de semitonos. es decir, %% MIDI transpose a seguido
by %% MIDI rtranspose b da como resultado una transposición de a + b. %% MIDI transpose b resultará
en una transposición de b semitonos, independientemente de cualquier transposición previa.
%% MIDI cn
especifica el tono MIDI que corresponde a c. El valor predeterminado es 60. Este número debe
normalmente será un múltiplo de 12.
%% MIDI gracia a / b
establece la fracción de la siguiente nota que tomarán las notas de gracia. a debe estar entre 1 y
b-1. Es posible que las notas de gracia no suenen naturales en este enfoque, ya que la
Las notas de gracia individuales varían con la complejidad de la gracia y la duración de la
siguiente nota. Un enfoque diferente (que ahora es el predeterminado) asume que la gracia
las notas siempre tienen una duración fija. Para utilizar el otro enfoque, especificaría:
%% divisor de gracia MIDI b
donde b especifica cuántas partes dividir la unidad de longitud especificada por el campo L:
mando. Por ejemplo, si b = 4 y L: = 1/8, entonces cada nota de gracia sería 1 / (8 * 4) o una
32a nota. Se robaría tiempo a la nota a la que se aplican las notas de gracia. Si
esa nota no es lo suficientemente larga para manejar la gracia, entonces las notas de gracia se asignarían 0
duración.
%% nombre de acorde MIDI nombre n1 n2 n3 n4 n5 n6
Define cómo tocar un acorde de guitarra llamado "nombre". n1 suele ser 0 y n2, n3 a n6 dan
los tonos de las otras notas en semitonos en relación con la nota fundamental. Puede haber menos
de 6 notas en el acorde, pero no más. Si "nombre" ya está definido, este comando
lo define. A diferencia de la mayoría de los otros comandos, las definiciones de nombres de acordes permanecen en vigor desde donde
se definen al final del archivo abc. A continuación se ilustra cómo m, 7, m7 y
maj7 podría configurarse si aún no estaban definidos.
%% nombre de acorde MIDI m 0 3 7
%% nombre de acorde MIDI 7 0 4 7 10
%% nombre de acorde MIDI m7 0 3 7 10
%% nombre de acorde MIDI maj7 0 4 7 11
%% cuerda de acorde MIDI
configura cómo se generan los acordes de guitarra. La cadena es una secuencia formada por z, f de c
y b's para silencios, acordes, fundamental y fundamental más notas de acordes, respectivamente.
Esto especifica cómo se tocará cada compás. Se permite una longitud opcional para seguir el
z, c, f y b, por ejemplo, czf2zf3. Si el abc contiene acordes de guitarra, entonces abc2midi
agrega automáticamente acordes y fundamentos después de encontrar el primer acorde de guitarra. Eso
sigue usando ese acorde hasta que se especifica un nuevo acorde en el abc. Siempre que el campo M: sea
encontrado en el abc, se establece una cadena predeterminada apropiada:
Para 2/4 o 4/4 el tiempo predeterminado es equivalente a: %% MIDI gchord fzczfzcz
Para 3/4 de tiempo predeterminado es equivalente a: %% MIDI gchord fzczcz
Para 6/8 de tiempo predeterminado es equivalente a: %% MIDI gchord fzcfzc
Para el tiempo predeterminado de 9/8 es equivalente a: %% MIDI gchord fzcfzcfzc
El comando gchord se ha ampliado para permitirle tocar las notas individuales que comprenden
el acorde de guitarra. Esto le permite tocar arpegios o acordes rotos. Los nuevos códigos
g, h, i, j, G, H, I, J hacen referencia a las notas individuales a partir de la nota más baja del acorde
(no necesariamente la raíz en el caso de inversiones). Por ejemplo, para el acorde de Do mayor, g
se refiere a C, h se refiere a E e i se refiere a G. Para un comando gchord como,
%% MIDI gchord ghih
Abc2midi arpegiará el acorde de guitarra de Do mayor a CEGE. Las letras mayúsculas G, H, I,
y J se refieren a las mismas notas, excepto que se transponen una octava hacia abajo. Nota para el
primera inversión del acorde de C mayor (indicado por "C / E"), E sería la nota más baja, así que g
haría referencia a la nota E.
Al igual que otros códigos de acordes, puede agregar un número que indique la duración de la nota. los
se aplican las mismas reglas que antes. Puede utilizar cualquier combinación de códigos gchord,
(fcbghijGHIJz).
%% MIDI chordprog n
Establece el instrumento MIDI para los acordes en n. Si el comando incluye la cadena
octava = n donde n es un número entre -2 y 2 inclusive, entonces esto cambiará el tono de
el instrumento por n octavas. Por ejemplo, %% MIDI chordprog 10 octave = 1.)
%% MIDI bassprog n
Establece el instrumento MIDI para las notas de bajo en n. Si el comando incluye la cadena
octava = n donde n es un número entre -2 y 2 inclusive, entonces esto cambiará el tono de
el instrumento por n octavas. Por ejemplo, %% MIDI bassprog 10 octava = -1.)
%% MIDI chordvol n
Establece el volumen (velocidad) de las notas del acorde en n.
%% MIDI bassvol n
Establece el volumen (velocidad) de las notas graves en n. No hay melodía correspondiente
comando ya que hay 3 valores de velocidad para la melodía, configúrelos usando el comando de tiempo.
%% MIDI gchordon
Activa los acordes de guitarra (están activados de forma predeterminada al comienzo de una melodía).
%% MIDI gchordoff
Desactiva los acordes de guitarra.
%% dron MIDI
Enciende un zumbido continuo (utilizado en la música de gaita) que consta de dos notas. Por defecto
las notas son A y A ,, tocadas en un fagot a una velocidad de 80. Esto se puede configurar
mediante el comando %% MIDI drone que se describe a continuación.
%% MIDI droneoff
Apaga el dron continuo.
%% Dron MIDI n1 n2 n3 n4 n5
Establece los parámetros del dron donde n1 es el programa MIDI, n2 y n3 especifican los tonos MIDI
de las dos notas en el acorde, y n4 y n5 especifican las velocidades MIDI de las dos notas.
Si no configura estos parámetros, son por defecto 70 45 33 80 80. Un valor de cero o
menos indica que la configuración de este parámetro debe dejarse como está.
%% MIDI drum string [programas de batería] [velocidades de batería]
Esto configura un patrón de batería. La cuerda determina cuando hay un golpe de tambor y el tambor
Los valores del programa determinan cómo suena cada golpe de tambor.
Por ejemplo, %% MIDI drum d2zdd 35 38 38 100 50
La cuerda puede contener 'd' para un golpe de tambor o 'z' para un descanso. Por defecto comienza una voz
sin patrón de percusión y '%% MIDI drumon' es necesario para habilitar la percusión. El tambor
El patrón se repite durante cada compás hasta que se encuentra '%% MIDI drumoff'. El tambor %% MIDI
El comando puede usarse dentro de una melodía para cambiar el patrón de batería. Este comando coloca el
suena la batería en el canal 10 y asume que su generador de tonos cumple con el General Midi
estándar: si no es así, es posible que escuche tonos en lugar de sonidos de batería.
Tanto en los comandos gchord como en los de batería, la duración de nota estándar de una sola nota f, c, zo d
no está configurado por el comando L :. En su lugar, se ajusta para que toda la cuerda gchord o
La cuerda de batería encaja exactamente en un compás. En otras palabras, la duración de cada nota se divide
por la duración total de la cadena. Esto significa que, por ejemplo, la cuerda de batería "dd" es
equivalente a la cuerda de batería "d4d4". Actualmente no puede especificar fracciones directamente (p. Ej.
C3 / 2) como se hace en el cuerpo de la música, pero aún es posible expresar complejos
ritmos. Por ejemplo, para indicar un ritmo como (3ddd d / d / d / d, debe escribir el
string "d4d4d4d3d3d3d3".
%% drumbars MIDI n
La línea de batería %% MIDI puede sonar bastante monótona si se repite en cada compás. Evitar
este problema se propagará un nuevo comando MIDI %% MIDI drumbars n donde n es un número pequeño
la cuerda de la batería durante n compases consecutivos. Por defecto, la batería se establece en 1 manteniendo
compatibilidad con archivos abc existentes. Debe tener cuidado de que la cuerda esté uniformemente
divisible entre las barras drumbar. Además, el tipo de compás no debe cambiar entre compases
en una unidad drumbar. (Ejemplo de archivo abc en doc / CHANGES 24 de junio de 2008).
%% MIDI gchordbars n
Este comando distribuye la cadena gchord en n compases consecutivos, al igual que los drumbars (arriba).
(Una muestra se encuentra en doc / CHANGES 17 de marzo de 2009.)
Con la versión 1.54 del 4 de diciembre de 2004 de abc2midi, las notas de los acordes (por ejemplo, [FAc]) no se reproducen en
el mismo instante pero compensado y acortado por 10 unidades de tiempo MIDI. Así, la primera nota en
el acorde (por ejemplo, F) se toca durante el tiempo completo indicado, la segunda nota (por ejemplo, A) comienza 10
Unidades MIDI más tarde y se acorta en la misma cantidad y la tercera nota comienza otros 10
Unidades MIDI más tarde y se acorta en otras 10 unidades. Esto introduce un "expressivo"
opción y evita el ataque fuerte. (Esto no se aplica a gchords o multivoiced
acordes.) La cantidad de retardo y acortamiento puede configurarse mediante el comando MIDI
%% MIDI chordattack n
donde n es un número pequeño. Si n es cero, entonces abc2midi debería comportarse como antes.
versiones. El retardo n está en unidades de tiempo MIDI donde hay 480 unidades en una negra.
derrotar. Es posible que el programa no se ejecute correctamente si n es demasiado grande y hay acordes cortos.
%% MIDI randomchordattack n
Como arriba, excepto que el retraso es una variable aleatoria distribuida uniformemente entre 0 y
n-1.
%% recorte MIDI x / y
donde xey son dos números. Este comando controla la articulación de notas y acordes.
colocando espacios silenciosos entre las notas. La longitud de estos espacios está determinada por x / y
y la unidad de longitud especificada por el comando L :. Estos huecos se producen acortando la
notas por la misma cantidad. Si la nota ya es más corta que el espacio especificado, entonces el
el espacio se establece en la mitad de la duración de la nota. La fracción x / y indica la duración de una nota en
de la misma manera que se especifica en el archivo abc. La duración real se basa en la unidad
longitud especificada por el comando L: campo. Se recomienda que x / y sea una fracción cercana
a cero. El recorte de notas está inhabilitado dentro de las ligaduras según se especifica entre paréntesis. Usted puede dar vuelta
Desactive todos los recortes de notas configurando x en 0, por ejemplo, 0/1. De forma predeterminada, el recorte de notas está desactivado
al comienzo de una melodía o comando de voz.
%% MIDI expandir x / y
donde xey son dos números que definen una fracción menor que 1. Este comando controla la
articulación de notas y acordes al revés. Las notas se alargan por este
fracción para que se superpongan al comienzo de la siguiente nota.
%% MIDI drummap note midipitch
Consulte abcguide.txt.
%% MIDI ptstress nombre de archivo
Este comando carga el nombre del archivo en abc2midi que contiene la tensión de Phil Taylor
parámetros y pone abc2midi en el modo en el que aplica estos parámetros de estrés en cada
Nota. Este modelo se opone al modelo de ritmo estándar, por lo que el ritmo MIDI,
beatstring, los comandos beatmod se vuelven ineficaces. Esto también significa que la dinámica
indicaciones! f! !¡páginas! etc. ya no funcionan.
Hay dos implementaciones diferentes del modelo de estrés. El modelo 1 modifica la nota
articulación y también toma el control de los parámetros de ajuste MIDI. Para volver a la
modelo estándar, ponga el comando %% MIDI beataccents. El modelo 2 modifica tanto el inicio como
final de cada nota permitiendo que un ritmo musical se expanda o contraiga en el tiempo. sin embargo, el
debe conservarse la longitud de un compás musical. Tenga en cuenta que si utiliza el modelo 2,
valor predeterminado actual, debe incluir -BF como uno de los parámetros de tiempo de ejecución de abc2midi.
El modelo divide una barra en segmentos iguales. Para cada segmento, una sonoridad o velocidad MIDI
se especifica y se especifica un multiplicador de duración. Si una nota cae en un
segmento, asume la velocidad de ese segmento y su duración se modifica en consecuencia.
Si la nota se superpone a más de un segmento, entonces la nota asume el promedio de esos
valores de segmento.
El archivo de entrada especifica el número de segmentos y los multiplicadores de sonoridad y duración.
para cada segmento. El archivo tiene el siguiente formato. El primer valor es el número de
segmentos y cada línea especifica el multiplicador de velocidad y duración del
segmento. La velocidad está limitada a 127 y la duración es un número decimal. La nota
Las duraciones se modifican variando el espacio entre notas, por lo que no es posible extender un
Nota. Esto preserva el tempo regular de la música. El programa escala, la duración de la nota
indicaciones dividiéndolo por el valor máximo que aquí es 1.4.
%% modelo de estrés MIDI n
donde n es 1 o 2, selecciona la implementación del modelo de estrés.
otros comandos %% MIDI como bendvelocity, bendstring, controlstring han sido
introducidos recientemente y se describen en el archivo abcguide.txt.
COMPATIBILIDAD HE TRABAJADO PROYECTO STANDARD 2.0
El estándar propuesto introduce un nuevo campo de derechos de autor utilizando la sintaxis
%% abc-copyright (c) Copyright John Smith 2003
Abc2midi ahora inserta esto en el archivo MIDI en forma de etiqueta de copyright de metatexto.
Se realizaron cambios en la función event_specific en store.c para procesar los derechos de autor
información. También se copia en la pista de Karaoke (si está creada) como campo @T.
Use abc2midi en línea usando los servicios de onworks.net