Il s'agit de la commande abc2midi qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
abc2midi - convertit le fichier abc en fichier(s) MIDI
SYNOPSIS
abc2midi dans le fichier [refnum] [-c] [-v] [-ver] [-t] [-n limite] [-CS] [-quiet] [-silent] [-Q
tempo] [-NFNP] [-NFER] [-NGRA] [-STFW] [-OCC] [-NCOM] [-HARP] [-BF] [-TT] [-o fichier de sortie]
-CSM [nom de fichier]
DESCRIPTION
L'action par défaut est d'écrire un fichier MIDI pour chaque morceau abc
avec le nom de fichier N.mid, où est le filigrane
du fichier abc et N est le numéro de référence de la mélodie. Si le -o
est utilisée, un seul fichier est écrit. C'est l'air
spécifié par le numéro de référence ou, s'il n'y a pas de numéro de référence
est donné, la première mélodie du fichier.
OPTIONS
refnum traiter la mélodie avec le numéro de référence refnum
-c sélectionne la vérification uniquement
-v n sélectionne l'option détaillée où n est le niveau (facultatif)
-ver imprime le numéro de version et quitte
-t sélectionne les noms de fichiers dérivés des titres de chansons
-CS utilisez 2:1 au lieu de 3:1 pour les rythmes cassés
-silencieux Supprime certains avertissements courants.
-silencieux
Supprime les autres messages.
-n X limite la longueur de la racine du nom de fichier à X caractères
-Q tempo
définit le tempo par défaut en noires par minute s'il n'a pas été spécifié dans le
en-tête abc.
-NFNP Ignorez les indications dynamiques !f! !ff! etc.
-NFER Ignorez toutes les indications de fermata (par exemple H ou !fermata!).
-NGRA Ignorez les appoggiatures.
-STFW Placez le texte des paroles dans des pistes MIDI séparées.
-NCOM Supprimez certains commentaires dans le fichier MIDI de sortie.
-OCC Acceptez l'ancienne convention d'accord (par exemple +D2G2+ au lieu de [DG]2).
-BF Mode BarFly : invoque un modèle de contrainte si possible.
-HARPE Les ornements de roulis = les roulis sont générés pour le harpiste (même hauteur)
-TT Modifie l'accord de A = 440 Hz.
-o fichier de sortie
écrire la sortie dans fichier de sortie
-CSM dans le fichier
charger un ensemble de modes de contrainte personnalisés à partir d'un fichier
CARACTERISTIQUES
* Rythmes brisés (>, <), accords, n-uplets, slurring, tie, staccatto notes, repeats, in-
les changements de tempo/durée/signature de temps sont tous pris en charge.
* R:hornpipe ou r:hornpipe est reconnu et la synchronisation des notes est ajustée pour donner un son cassé
rythme (ab est converti en a>b).
* La plupart des erreurs dans l'entrée abc généreront un message d'erreur approprié dans la sortie et
le convertisseur continue.
* Les commentaires et les champs de texte dans la source abc sont convertis en événements de texte dans le MIDI
sortie
* Si des accords de guitare sont présents, ils sont utilisés pour générer un accompagnement dans le MIDI
sortie.
* S'il y a des signes de répétition incompatibles dans l'abc, le programme essaie de les corriger.
Cependant, il ne tentera pas cela si une description de morceau en plusieurs parties a été utilisée ou si
plusieurs voix sont utilisées.
* Les fichiers MIDI de karaoké peuvent être générés en utilisant le champ w: pour inclure les paroles.
* Identifiants vocaux non numériques, par exemple. V : soprano, tel que proposé pour le nouveau standard abc est accepté.
* Les silences invisibles spécifiés par x sont traités de la même manière que les silences normaux (z).
* Les décorations peuvent être indiquées en utilisant soit la notation déconseillée (par exemple !fermata!)
notation standard de la version 2.0 (par exemple +fermata+).
LIMITATIONS
* Aucun champ n'est hérité du dessus du champ X : de la mélodie.
abc SYNTAXE EXTENSIONS
* Il existe quelques extensions à la syntaxe abc du formulaire
%%canal MIDI n
Ceux-ci contrôlent la sélection des canaux et des programmes, la transposition et diverses autres fonctionnalités de
abc2midi.
Chacun d'eux devrait apparaître sur une ligne par lui-même. Tous sont autorisés dans l'abc
corps d'accord. En les utilisant en combinaison avec la notation partielle, on peut, par exemple,
jouer une partie transposée ou dans une tonalité différente.
L'idée derrière cette syntaxe est que d'autres programmes la traiteront comme un commentaire et ignoreront
le
%%canal MIDI n
sélectionne le canal mélodique n (dans la plage 1-16).
%%programme MIDI [c] n
sélectionne le programme n (dans la plage 1-128) sur le canal c. Si c n'est pas donné, le programme est
sélectionné sur le canal de mélodie actuel. La plupart des générateurs de sons modernes suivent le General
Norme MIDI qui définit le type d'instrument pour chaque numéro de programme.
%%MIDI bat abcn
contrôle la façon dont les vélocités des notes sont sélectionnées. La première note d'une mesure a une vélocité a.
D'autres notes "fortes" ont une vélocité b et toutes les autres ont une vélocité c. a, b et c doivent être
dans la plage 0-128. Le paramètre n détermine quelles notes sont "fortes". Si le temps
signature est x/y, alors chaque note reçoit un numéro de position k = 0, 1, 2 .. x-1 dans chaque
bar. Notez que les unités pour n ne sont pas l'unité de longueur de note. Si k est un multiple de n, alors
la note est "forte". Les spécificateurs de volume !ppp! à !fff! sont équivalents à ce qui suit
:
!ppp! = %%battement MIDI 30 20 10 1
!pp! = %%battement MIDI 45 35 20 1
!p! = %%battement MIDI 60 50 35 1
!mp! = %%battement MIDI 75 65 50 1
!mf! = %%battement MIDI 90 80 65 1
!F! = %%battement MIDI 105 95 80 1
!ff! = %%battement MIDI 120 110 95 1
!fff! = %%battement MIDI 127 125 110 1
%% MIDI beatmod n
Incrémente de n (ou décrémente si n est négatif) les vitesses a, b et c décrites
dessus. Les instructions !crescendo(! et !crescendo)! équivalent à insérer un
%%MIDI beatmod 15 où qu'ils se produisent. (Vous pouvez également utiliser !<(! et !<)!.)
De même les instructions !diminuendo(! et !diminuendo)! sont équivalents à %%MIDI
beat mod -15.
%%Deltaloudness MIDI n
où n est un petit nombre positif. Par défaut les instructions crescendo et diminuendo
modifiez les variables de battement a, b et c de 15 unités de vélocité. Cette instruction vous permet de
définissez cette valeur par défaut sur n.
%% MIDI nobeataccents
Pour les instruments tels que l'orgue d'église qui n'ont pas de notes de temps très accentuées, utilisez
cela forcera l'utilisation de la vélocité 'b' (voir %%MIDI beat) pour chaque note indépendamment de
poste dans la barre. Cela permet aux dynamiques (ff, f, etc.) d'être utilisées normalement.
%%accents de rythme MIDI
Revenez à l'accentuation des notes de la manière habituelle. (défaut)
%%chaîne rythmique MIDI
Cela fournit une autre façon de spécifier où tombent les contraintes fortes et faibles
dans un bar. 'f' signifie vitesse a (normalement forte), 'm' signifie vitesse b (moyenne
vitesse) et 'p' signifie vitesse c (vitesse douce). Par exemple, si la signature rythmique est
7/8 avec des accents sur les première, quatrième et sixième notes de la mesure, on pourrait utiliser le
Abonnement
%% MIDI beatstring fppmpmp
%%transposition MIDI n
transpose la sortie du nombre spécifié de demi-tons. n peut être positif ou négatif.
%%MIDI rtransposer n
Transposition relative par le nombre spécifié de demi-tons. c'est-à-dire que %%MIDI transpose un suivi
par %%MIDI rtranspose b entraîne une transposition de a+b. %%MIDI transpose b résultera
dans une transposition de b demi-tons, indépendamment de toute transposition précédente.
%%MIDI cn
spécifie la hauteur MIDI qui correspond à c. La valeur par défaut est 60. Ce nombre doit
normalement être un multiple de 12.
%%MIDI grâce a/b
définit la fraction de la note suivante que les appoggiatures prendront. a doit être compris entre 1 et
b-1. Les appoggiatures peuvent ne pas sembler naturelles dans cette approche, car la longueur de la
les notes de grâce individuelles varient avec la complexité de la grâce et la longueur de la
note suivante. Une approche différente (qui est maintenant la valeur par défaut) suppose que la grâce
les notes ont toujours une durée fixe. Pour utiliser l'autre approche que vous spécifieriez,
%%diviseur de grâce MIDI b
où b spécifie le nombre de parties pour diviser la longueur unitaire spécifiée par le champ L:
commander. Par exemple, si b = 4 et L : = 1/8, alors chaque appoggiature serait 1/(8*4) ou un
32e note. Le temps serait volé à la note à laquelle les appoggiatures sont appliquées. Si
cette note n'est pas assez longue pour gérer la grâce, alors les notes de grâce se verraient attribuer 0
durée.
%%nom d'accord MIDI n1 n2 n3 n4 n5 n6
Définit comment jouer un accord de guitare appelé "nom". n1 vaut généralement 0 et n2, n3 à n6 donnent
les hauteurs des autres notes en demi-tons par rapport à la note fondamentale. Il peut y avoir moins
plus de 6 notes dans l'accord, mais pas plus. Si "nom" est déjà défini, cette commande re-
le définit. Contrairement à la plupart des autres commandes, les définitions de nom d'accord restent en vigueur à partir de l'endroit où
ils sont définis à la fin du fichier abc. Ce qui suit illustre comment m, 7, m7 et
maj7 pourrait être configuré s'ils n'étaient pas déjà définis.
%%nom d'accord MIDI m 0 3 7
%%nom d'accord MIDI 7 0 4 7 10
%%Nom d'accord MIDI m7 0 3 7 10
%% nom d'accord MIDI maj7 0 4 7 11
%%MIDI gcord string
définit comment les accords de guitare sont générés. La chaîne est une séquence composée de z, de c de f
et b pour les silences, les accords, la fondamentale et la fondamentale plus les notes d'accord respectivement.
Ceci spécifie comment chaque mesure doit être jouée. Une longueur facultative est autorisée pour suivre le
les z, les c les f et les b, par exemple czf2zf3. Si l'abc contient des accords de guitare, alors abc2midi
ajoute automatiquement les accords et les fondamentaux après avoir rencontré le premier accord de guitare. Ce
continue à utiliser cet accord jusqu'à ce qu'un nouvel accord soit spécifié dans l'abc. Chaque fois que le champ M: est
rencontré dans l'abc, une chaîne par défaut appropriée est définie :
Pour 2/4 ou 4/4 temps par défaut est équivalent à : %%MIDI gchord fzczfzcz
Pour 3/4 temps par défaut est équivalent à : %%MIDI gchord fzczcz
Pour 6/8 temps par défaut est équivalent à : %%MIDI gchord fzcfzc
Pour 9/8 temps par défaut est équivalent à : %%MIDI gchord fzcfzcfzc
La commande gchord a été étendue pour vous permettre de jouer les notes individuelles comprenant
l'accord de guitare. Cela vous permet de jouer des accords brisés ou des arpèges. Les nouveaux codes
g,h,i,j, G,H,I,J référence les notes individuelles à partir de la note la plus basse de l'accord
(pas nécessairement la racine dans le cas des inversions). Par exemple pour l'accord de do majeur, g
fait référence à C, h fait référence à E et i fait référence à G. Pour une commande gchord telle que,
%%Gchord MIDI ghih
Abc2midi arpègera l'accord de guitare en do majeur au CEGE. Les lettres majuscules G,H,I,
et J se réfèrent aux mêmes notes sauf qu'elles sont transposées d'une octave vers le bas. Remarque pour le
première inversion de l'accord de Do majeur (indiqué par "C/E"), E serait la note la plus basse donc g
ferait référence à la note E.
Comme les autres codes gchord, vous pouvez ajouter un chiffre indiquant la durée de la note. Les
les mêmes règles s'appliquent qu'avant. Vous pouvez utiliser n'importe quelle combinaison des codes gchord,
(fcbghijGHIJz).
%% MIDI chordprog n
Définit l'instrument MIDI pour les accords sur n. Si la commande comprend la chaîne
octave=n où n est un nombre compris entre -2 et 2 inclus, alors cela changera la hauteur de
l'instrument par n octaves. Par exemple %%MIDI chordprog 10 octave=1.)
%%bassprog MIDI n
Définit l'instrument MIDI pour les notes de basse sur n. Si la commande comprend la chaîne
octave=n où n est un nombre compris entre -2 et 2 inclus, alors cela changera la hauteur de
l'instrument par n octaves. Par exemple %%MIDI bassprog 10 octave=-1.)
%%MIDI cordevol n
Règle le volume (vélocité) des notes d'accord à n.
%%Vol de basse MIDI n
Règle le volume (vélocité) des notes de basse à n. Il n'y a pas de mélodie correspondante
car il existe 3 valeurs de vélocité pour la mélodie, définies à l'aide de la commande beat.
%%MIDI gordon
Active les accords de guitare (ils sont activés par défaut au début d'un morceau).
%% MIDI gchordoff
Désactive les accords de guitare.
%%Droneon MIDI
Active un bourdon continu (utilisé dans la musique de cornemuse) composé de deux notes. Par défaut
les notes sont A et A, jouées sur un basson à une vélocité de 80. Ceci peut être configuré
par la commande drone %%MIDI décrite ci-dessous.
%%Drone désactivé MIDI
Désactive le drone continu.
%%drone MIDI n1 n2 n3 n4 n5
Définit les paramètres du drone où n1 est le programme MIDI, n2 et n3 spécifient les hauteurs MIDI
des deux notes de l'accord, et n4 et n5 spécifient les vélocités MIDI des deux notes.
Si vous ne définissez pas ces paramètres, ils sont par défaut 70 45 33 80 80. Une valeur de zéro ou
less indique que le réglage de ce paramètre doit être laissé tel quel.
%%corde de batterie MIDI [programmes de batterie] [vitesses de batterie]
Cela met en place un motif de batterie. La corde détermine quand il y a un battement de tambour et le tambour
les valeurs du programme déterminent le son de chaque frappe de batterie.
par exemple %%Tambour MIDI d2zdd 35 38 38 100 50 50
La chaîne peut contenir « d » pour une frappe de batterie ou « z » pour un silence. Par défaut une voix démarre
sans motif de batterie et « %%MIDI drumon » est nécessaire pour activer la batterie. La batterie
Le motif est répété pendant chaque mesure jusqu'à ce que '%%MIDI drumoff' soit rencontré. Le tambour %%MIDI
La commande peut être utilisée dans un morceau pour changer le motif de batterie. Cette commande place le
la batterie sonne sur le canal 10 et suppose que votre générateur de sons est conforme au General Midi
standard - si ce n'est pas le cas, vous pouvez entendre des tonalités à la place des sons de batterie.
Dans les commandes gchord et drum, la longueur de note standard d'une seule note f,c,z ou d
n'est pas défini par la commande L:. Au lieu de cela, il est ajusté de sorte que la chaîne entière de gchord ou
la corde de batterie s'insère exactement dans une barre. En d'autres termes la durée de chaque note est divisée
par la durée totale de la chaîne. Cela signifie que, par exemple, la corde de batterie "dd" est
équivalent à la corde de batterie "d4d4". Vous ne pouvez actuellement pas spécifier de fractions directement (par ex.
C3/2) comme fait dans le corps de la musique, mais il est toujours possible d'exprimer des complexes
rythmes. Par exemple, pour indiquer un rythme tel que (3ddd d/d/d/d, vous écririez le
string "d4d4d4d3d3d3d3".
%%Batteries MIDI n
La ligne de batterie %%MIDI peut sembler assez monotone si elle est répétée à chaque mesure. À contourner
ce problème, une nouvelle commande MIDI %%MIDI drumbars n où n est un petit nombre se propagera
la corde de batterie sur n mesures consécutives. Par défaut, drumbars est réglé sur 1 maintenant
compatibilité avec les fichiers abc existants. Vous devez veiller à ce que la corde de batterie soit uniformément
divisible entre les barres de drumbar. De plus, la signature rythmique ne doit pas changer entre les mesures
dans une unité de bar à tambour. (Exemple de fichier abc dans doc/CHANGES 24 juin 2008.)
%%MIDI gbarres d'accords n
Cette commande étend la chaîne gchord sur n mesures consécutives, tout comme les barres de batterie (ci-dessus).
(Un exemple se trouve dans doc/CHANGES du 17 mars 2009.)
Avec la version 1.54 du 4 décembre 2004 d'abc2midi, les notes dans les accords (ex. [FAc]) ne sont pas jouées dans
le même instant mais décalé et raccourci de 10 unités de temps MIDI. Ainsi la première note de
l'accord (ex. F) est joué pendant tout le temps indiqué, la deuxième note (ex. A) commence 10
unités MIDI plus tard et est raccourci du même montant et la troisième note commence encore 10
unités MIDI plus tard et est raccourci de 10 autres unités. Cela introduit un "expressivo"
option et évite l'attaque lourde. (Ceci ne s'applique pas aux gchords ou multivoiced
accords.) La quantité de retard et de raccourcissement peut être configurée par la commande MIDI
%%attaque d'accord MIDI n
où n est un petit nombre. Si n est égal à zéro, alors abc2midi devrait se comporter comme précédemment
versions. Le délai n est en unités de temps MIDI où il y a 480 unités dans une noire
battre. Le programme peut ne pas fonctionner correctement si n est trop grand et qu'il y a des accords courts.
%%Attaque aléatoire d'accords MIDI n
Comme ci-dessus sauf que le retard est une variable aléatoire uniformément répartie entre 0 et
n-1.
%%Réglage MIDI x/y
où x et y sont deux nombres. Cette commande contrôle l'articulation des notes et des accords
en plaçant des espaces silencieux entre les notes. La longueur de ces écarts est déterminée par x/y
et la longueur unitaire spécifiée par la commande L:. Ces lacunes sont produites en raccourcissant le
billets du même montant. Si la note est déjà plus courte que l'espace spécifié, le
l'écart est réglé sur la moitié de la longueur de la note. La fraction x/y indique une durée de note en
de la même manière que celle spécifiée dans le fichier abc. La durée réelle est basée sur l'unité
longueur spécifiée par la commande de champ L:. Il est recommandé que x/y soit une fraction proche
à zéro. Le rognage des notes est désactivé à l'intérieur des liaisons comme spécifié par des parenthèses. Vous pouvez tourner
désactiver tous les rognages de notes en réglant x sur 0, par exemple 0/1. Par défaut, le rognage des notes est désactivé
au début d'une mélodie ou d'une commande vocale.
%%MIDI étendre x/y
où x et y sont deux nombres définissant une fraction inférieure à 1. Cette commande contrôle le
l'articulation des notes et des accords en sens inverse. Les notes sont allongées par cette
fraction de sorte qu'ils chevauchent le début de la note suivante.
%% MIDI note de drummap mi-hauteur
Veuillez consulter abcguide.txt.
%%MIDI ptstress nom de fichier
Cette commande charge le fichier filename dans abc2midi qui contient l'accent de Phil Taylor
paramètres et met abc2midi dans le mode où il applique ces paramètres de contrainte à chaque
Remarque. Ce modèle fonctionne en opposition au modèle de battement standard, donc le battement MIDI,
beatstring, les commandes beatmod deviennent inefficaces. Cela signifie également que la dynamique
indications !f! !pp! etc. ne fonctionnent plus.
Il existe deux implémentations différentes du modèle de contrainte. Le modèle 1 modifie la note
l'articulation et prend également le contrôle des paramètres de trim MIDI. Pour revenir au
modèle standard, mettez la commande %%MIDI beataccents. Le modèle 2 modifie à la fois l'apparition et
fin de chaque note permettant à un rythme musical de s'étendre ou de se contracter dans le temps. Cependant, le
la longueur d'une mesure musicale doit être préservée. Notez que si vous utilisez le modèle 2, quel
valeur par défaut actuelle, vous devez inclure -BF comme l'un des paramètres d'exécution d'abc2midi.
Le modèle divise une barre en segments égaux. Pour chaque segment, un Loudness ou une vélocité MIDI
est spécifié et un multiplicateur de durée est spécifié. Si une note tombe dans un
segment, il assume la vitesse de ce segment et sa durée est modifiée en conséquence.
Si la note chevauche plus d'un segment, alors la note suppose la moyenne de ces
valeurs de segment.
Le fichier d'entrée spécifie le nombre de segments et les multiplicateurs d'intensité et de durée
pour chaque segment. Le fichier a le format suivant. La première valeur est le nombre de
segments et chaque ligne spécifie la vitesse et le multiplicateur de durée du
segment. La vélocité est limitée à 127 et la durée est un nombre décimal. La note
durées est modifiée en faisant varier l'écart entre les notes, il n'est donc pas possible d'allonger une
Remarque. Cela préserve le tempo régulier de la musique. Les gammes du programme, la durée de la note
indications en le divisant par la valeur maximale qui est ici de 1.4.
%%modèle de contrainte MIDI n
où n vaut 1 ou 2, sélectionne l'implémentation du modèle de contrainte.
d'autres commandes %%MIDI telles que bendvelocity, bendstring, controlstring ont été
introduits récemment et sont décrits dans le fichier abcguide.txt.
COMPATIBILITÉ avec PROJET STANDARD 2.0
La norme proposée introduit un nouveau champ de droit d'auteur utilisant la syntaxe
%%abc-copyright (c) Copyright John Smith 2003
Abc2midi l'insère désormais dans le fichier MIDI sous la forme d'une balise de copyright métatexte.
Des modifications ont été apportées à la fonction event_specific dans store.c pour traiter le droit d'auteur
informations. Il est également copié dans la piste Karaoké (si elle est créée) sous la forme du champ @T.
Utilisez abc2midi en ligne en utilisant les services onworks.net