Milkytracker

Milkytracker est un tracker de musique sous licence GNU GPL (d'après wikipedia). Il permet de créer des chiptunes aussi appelés musiques 8 bit ou old school qu'il enregistre aux formats .mod ou .xm (le .mod étant plus ancien et ayant beaucoup de restrictions, .xm est celui par défaut), ou exporte en .wav.

Il se veut être un clone de FastTracker II, l'un des trackers les plus utilisés sur MS-Dos.

Il suffit d'installer le paquet milkytracker.

La version 1.02.00 est disponible dans les dépôts depuis la 18.04.

Vous pouvez lancer Milkytracker via un lanceur d'applications (partie Multimédias) ou grâce à la commande :

$ milkytracker
Ceci n'est qu'un tutoriel basique, si vous voulez vraiment vous pencher sur ce logiciel, je vous conseille de regarder la doc officielle, ou pour les anglophones cette série de vidéo en anglais qui explique assez bien son utilisation.
La plupart des nombres de ce programme sont en hexadécimal : c'est un système numérique qui contient non pas 10 chiffres comme on e a l'habitude mais 16 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E et F). Voir ici.

Description de l'interface

Partie supérieure

La partie jaune contient la plupart des paramètres du logiciel et de la session :

  • En haut à gauche : c'est un compteur qui définit les patterns. Il contient aussi l'ordre dans lequel ils doivent être lus. (ordre | pattern)
Un pattern, c'est en gros comme une suite de quelques mesures d'une musique. On en reparle plus tard.
  • Juste à droite du compteur, on trouve les boutons SEQ, CLN, Ins, +, - et Del. Ils permettent de gérer les patterns. En effet, quand un projet est créé, il ne contient qu'un seul pattern.
    • SEQ ajoute un pattern vide sous le pattern actuel dans la liste du compteur
    • CLN clone le pattern actuel et le place sous le pattern actuel dans la liste du compteur
    • Ins ajoute le pattern actuel une deuxième fois dans la liste de lecture sous l'emplacement actuel
    • + et - changent le pattern à jouer pour cet emplacement
Il faut bien faire la différence entre CLN et Ins : Les patterns contiennent notes à jouer. Ils peuvent être répétés dans la liste de lecture. Si on veut, on pourrait même changer leur ordre de lecture : par ex. 15 > 10 > 5.
  • Lenght change le nombre de patterns dans la liste
  • Repeat : Quand le tracker arrive à la fin du dernier pattern de la liste, il reprend au numéro indiqué de la liste (pas au pattern indiqué)
  • Patn indique le numéro du pattern de l'emplacement actuel. Si on le change, la liste se changera aussi.
  • Len (à ne pas confondre avec Lenght à gauche) ajouter ou enlever des lignes une par une à la fin du pattern actuel (chaque pattern peut avoir un nombre de lignes différent). Par défaut, il est à 40 (soit 64 en base 10) ce qui donne 4 mesures de 16 notes chacune. Attention : La note ajoutée/supprimée est toujours la dernière du pattern.
  • Expand et Shrink permettent respectivement de doubler le nombre de notes et de diviser le nombre de notes par deux.
  • Bpm et Spd gèrent la vitesse (Bpm = battements par minute et Spd = vitesse de lecture, par défaut 6)

En dessous :

  • zap : permet de vider au choix le pattern actuel, l'instrument sélectionné ou tout le projet.
  • load : permet d'ouvrir un projet.
  • save : permet d'enregistrer le projet
  • As… : enregistrement sous.
  • Disk Op. : permet d'exporter au choix le projet, le pattern actuel, l'instrument actuel dans différents format.
  • Sam. Edit : permet d'éditer le sample de l'instrument actuel.
  • Ins. Edit : permet d'éditer l'instrument actuel.
  • Play Sng : lire depuis le début du pattern actuel et poursuivre dans l'ordre de la liste du compteur.
  • Pat : Pattern, lire le pattern actuel en boucle.
  • Pos : Position, lire le pattern actuel en boucle depuis la position actuelle.
  • Stop : Arrêter la lecture.
  • Rec : Ecrire des notes sur le pattern.
  • Add et Sub : ajouter ou enlever des voix (colonnes de la partie rouge, voir ci-après).

Je n'ai pas mis ici la ribambelle de paramètres config Adv. Edit About etc. A vous de les découvrir ;).

La partie verte contient la liste des instruments et des samples.

  • L'instrument contient des paramètres généraux comme le panning (gauche/droite) et 'enveloppe sonore par exemple.
  • Chaque instrument a sa liste de sample : lorsqu'on demande à un instrument de jouer une note, il joue en réalité le sample n°1 de sa liste par défaut. Il est très rare d'utiliser plusieurs samples par instrument.
  • Chez les instruments, + et - ajoutent ou enlèvent un instrument. /!\ L'instrument géré est toujours le dernier de la liste.
  • zap : permet de vider la liste (avec confirmation).
  • load : ouvrir un instrument (format .xp)

La partie rouge peut être enlevée mais je trouve qu'elle est très pratique. Chaque rectangle représente la sortie audio d'une voix (pas d'un instrument) passé dans un oscilloscope. Un clic gauche sur un rectangle mute la voix, un clic droit enclenche un enregistrement (?), et un clic gauche+droit met la voix en solo. C'est pratique pour trouver rapidement celle qu'on cherche lors de la lecture grâce à la forme de l'onde : Une note grave aura toujours une onde plus longue qu'une note aiguë.

Si vous ne la voulez pas, enlevez-la avec Ctrl-Z.

Partie Inférieure

  • Tout à gauche, les nombres jaunes et blancs indiquent les numéros de ligne dans le pattern actuel.
  • Chaque colonne représente une voix. Une voix est comme une sortie de son ; elle peut jouer de tous les instruments du projet, mais qu'un seul à la fois. Chaque voix contient des informations. Elles ont l'air indéchiffrables, comme ça, mais croyez moi c'est très simple à comprendre : prenez un ligne et une colonne, par exemple celle avec le curseur bleu. (C-4.D.. …)
    • C-4 est la note à jouer. Je rappelle que dans ce logiciel, il n'y a pas de notes à la française (do-ré-mi). Ici, la note C-4 représente un Do du quatrième octave.
    • .D contient le numéro de l'instrument qui doit jouer cette note. Ici, c'est l'instrument n°D.
    • les deux points suivants, ceux de couleur verte, sont optionnels mais souvent utilisés : il s'agit du volume de la note (0-40 hexadécimal). Ils ne sont pas présents dans le format .mod.
    • les trois derniers points, de couleurs rouge puis jaune, sont des effets. Je ne vais pas tous les présenter ici, voyez la doc officielle. Le premier caractère définit l'effet à utiliser, les deux derniers ajoutent un paramètre.

On verra leur fonctionnement dans la partie utilisation.

Premiers réglages

Tous ces réglages sont dans le menu config.

  • Volet I/O :
    • En haut à gauche, cliquez sur select driver… et choisissez votre interface.
    • En bas à gauche, cliquez sur select… à côté de Resampling et choisissez le choix no interpolation (n°1). Ça améliore grandement la qualité de la musique (les autres simulent d'anciennes machines), mais ça demande plus de ressources pour l'oscilloscope.
    • Si vous utilisez une carte son, je vous conseille d'augmenter la fréquence d'échantillonnage Mixer Resolution.
    • Si vous comptez vraiment utiliser ce logiciel à fond, avec plus que 32 voix, vous pouvez changer la limite pour les formats .xm à droite
  • Volet Layout :
    • Choisissez ou créez une résolution adaptée dans la partie de droite (la résolution de change pas lors de la redimension de la fenêtre)
  • Volet Misc. :
    • à gauche, sous Edit Mode, choisissez Fasttracker II. J'ai l'habitude de travailler avec ces réglages, mais rien ne vous empêche d'utiliser le mode Milkytracker

Appuyez sur OK en bas à gauche et relancez Milkytracker si besoin.

Analyser un projet - Hammock Power

La plupart des projets que je vais utiliser ci-dessous ne m’appartiennent pas. Ils sont disponibles ici (github).

Au lieu de tout de suite commencer à composer, on va d'abord ouvrir un projet pour voir comment il est construit. On va avoir besoin du fichier 1_hammock_power_tutorial.xm. Vous le trouverez sur le github que je vous ai donné plus haut. Il suffit de le télécharger et de l'ouvrir avec Milkytracker grâce au bouton load.

Ce projet est assez simple, pas long et chaque voix a des instruments semblable du début à la fin.

On va d'abord lire le contenu du projet. Pour ça, on peut utiliser soit les 36 boutons en haut à gauche, soit des raccourcis claviers.

  • Entrée : lire depuis le début du pattern actuel
  • Espace : si en cours de lecture, arrêter la lecture

Au bout d'un moment, on se rend compte que ça tourne en boucle. En effet, ce moreau, comme beaucoup de chiptunes, n'a pas de fin. C'est utile pour les jeux vidéos par exemple. Étudions un peut le logiciel pendant la lecture :

  • Partie pattern & oscilloscope
    • On peut voir que la voix n°1 a une longueur d'onde plus longue que les autres sur tout le morceau, c'est donc une voix réservée à la ligne de basse.
    • En regardant les voix 2 et 3 tout en écoutant attentivement, en peut reconnaître la mélodie dans ces deux voix.
    • Essayez de deviner les autres voix.

Réponse

  • Les voix 4 et 5 contiennent les éléments de la batterie, grosse caisse pour la 4 et caisse claire pour la 5. Il est courant de regrouper tous ces instruments en une seule voix, ou de les disperser sur deux comme ici.
  • La voix 6 a quelque chose de particulier, mettez la en solo pour voir. (clic gauche + droit sur son oscilloscope). On peut d’ailleurs voir qu'elle a un même effet du début à la fin : les trois derniers nombres de la voix sur chaque ligne. Cet effet est le n°0, aussi appelé arpège ou arpeggio dans la doc. Pour les connaisseurs en musique, rien à voir avec l'arpège des pianos : ici, le logiciel change de note beaucoup plus vite.

Explications : Aux débuts du chiptune, il n'y avait que trois voix. On utilisait souvent une pour la basse, une pour les rythmes, et une pour la mélodie. Parfois, on assemblait même la basse et les rythmes pour laisser une voix à l'accompagnement. Et des fois, on voulait faire des accords (plusieurs notes à la fois). Problème, si on joue les trois notes d'un accord en même temps, on a plus de place pour les rythmes/basse/accompagnements. Alors ils ont trouvé une solution : si on joue la première note d'un accord pendant une fraction de seconde, qu'ensuite on joue la deuxième puis la troisième et qu'on recommence en boucle, notre oreille entend cet accord. L'arpège chiptune, c'est donc une succession très rapide de notes.

Créer un projet

Vous allez maintenant créer votre propre projet. Pour cela, enregistrez le projet sous un autre nom (par ex. projet_1.xm) et videz la partie notes grâce au bouton zap > song.

Si vous avez bien effectué le zapping, la liste d'instrument n'est pas vide. Faites un simple clic sur un des instruments ayant un nom (par ex. n°08) et appuyer sur la touche A (sans majuscule). Vous avez entendu quelque chose ? C'est bien ! Milkytracker se sert du clavier comme entrée de notes. Chaque touche correspond à une note. Sur un clavier azerty : (touche en haut, note en bas)

.-------.-------.-------.-------.-------.-------.-------.-------.-------.-------.-------.-------.-------.---------------.
¦   ²   ¦   1   ¦   2   ¦   3   ¦   4   ¦   5   ¦   6   ¦   7   ¦   8   ¦   9   ¦   0   ¦   )   ¦   =   ¦     Bkspc     ¦
¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦               ¦
¦       ¦       ¦  C#3  ¦  D#3  ¦       ¦  F#3  ¦  G#3  ¦  A#3  ¦       ¦  C#4  ¦  D#4  ¦       ¦  F#4  ¦               ¦
}-------'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.--'----.----------{
¦    TAB     ¦   A   ¦   Z   ¦   E   ¦   R   ¦   T   ¦   Y   ¦   U   ¦   I   ¦   O   ¦   P   ¦   ^   ¦   $   ¦          ¦
¦            ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦   <---'  ¦
¦            ¦  C-3  ¦  D-3  ¦  E-3  ¦  F-3  ¦  G-3  ¦  A-3  ¦  B-3  ¦  C-4  ¦  D-4  ¦  E-4  ¦  F-4  ¦  G-4  ¦          ¦
}------------'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-.-----'-------'-.        ¦
¦  Caps Lock   ¦   Q   ¦   S   ¦   D   ¦   F   ¦   G   ¦   H   ¦   J   ¦   K   ¦   L   ¦   M   ¦   ù   ¦   *   ¦        ¦
¦              ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦        ¦
¦              ¦       ¦  C#3  ¦  D#3  ¦       ¦  F#3  ¦  G#3  ¦  A#3  ¦       ¦  C#4  ¦  D#4  ¦       ¦  F#4  ¦        ¦
}---------.----'--.----'--.----'--.----'--.----'--.----'--.----'--.----'--.----'--.----'--.----'--.----'-------'--------{
¦   MAJ   ¦   <   ¦   W   ¦   X   ¦   C   ¦   V   ¦   B   ¦   N   ¦   ,   ¦   ;   ¦   :   ¦   !   ¦         MAJ         ¦
¦         ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦       ¦                     ¦
¦         ¦       ¦  C-2  ¦  D-2  ¦  E-2  ¦  F-2  ¦  G-2  ¦  A-2  ¦  B-2  ¦  C-3  ¦  D-3  ¦  E-3  ¦                     ¦
'---------'-------'-------'-------'-------'-------'-------'-------'-------'-------'-------'-------'---------------------'

L'agencement ressemble à un piano, avec les demis-tons au dessus. A noter que le numéro qui suit la note précise son octave. Il est possible de changer d'octave en appuyant sur les touches F1 à F7, l'octave n'7 étant le plus haut possible. Les touches F1 à F7 donnent un octave à la touche A sur le clavier azerty, il est donc possible d'accéder à l'octave 0 en utilisant la ligne en dessous (assez rare).

Ligne rythmique

Commençons par créer une ligne rythmique. On veut une grosse caisse, une caisse claire et une charleston. On sait jouer des notes avec le clavier, mais on ne sait toujours pas comment les écrire sur les patterns. Pour rappel, le curseur est la partie bleue de la barre. On peut se déplacer avec les flèches directionnelles ou cliquer à l'endroit où on veut se rendre. Jouez un peut avec ça puis allez à la première case en haut à gauche.

Pour entrer en mode édition, il faut appuyer sur Espace ou sur le bouton Rec. La barre bordeaux devient alors rouge flashy, et toutes les notes que l'on joue s'impriment sur le pattern. Essayez donc ;).

Maintenant qu'on a mis un bon gros bazar, il va falloir nettoyer tout ça : (en mode édition)

  • Suppr. : supprime la case sous le curseur
  • Backspace ou effacer : supprime la case au dessus du curseur et remonte d'une case tout ce qui se trouve en dessous.

Et notre ligne de rythmes dans tout ça ? On y vient ! Remontez au début du projet et sélectionnez l'instrument "kick" avec la souris. On va utiliser l'octave n°5 (F5). Le but est de mettre un coup au début de chaque mesure. Vous pourriez vous déplacer jusqu'à la prochaine, mais il y a plus simple ! Vous voyez le bouton Add au milieu du menu ? C'est le nombre de cases à sauter après avoir écrit une valeur. Depuis tout à l'heure, vous allez à la ligne en dessous quand vous entrez une valeur. Maintenant si on change la valeur (qui, pour une fois, est en base 10), on saute plus de lignes. Essayez donc en lui mettant 16 : vous arrivez pile à la mesure suivante. Génial, non ? Cette valeur peut être incrémentée avec ² et décrémentée avec Maj-² sur clavier azerty.

Bref, une fois la valeur de Add sur 16, allez au début et appuyez 4 fois sur a. On a maintenant notre grosse caisse. On ajoute la caisse claire ? Prenez l'instrument "snare" (n°4) et allez à la ligne 04 de la même voix. Mettez la valeur Add à 04 et appuyez 3 fois sur a. Eh !? On arrive sur une case déjà marquée. Si on ré-appuie sur a, on va remplacer sa valeur. Là, on n'a pas le choix, il faut descendre avec les flèches. Continuez jusqu'à la fin.

On rajoute un charley ? ;) On refait la manip', instrument hihat, au début, et on se met sur la ligne n°02. On ne change pas Add cette fois. Appuyez sur a mais ne relâchez pas. Enfin, si, mais après :D. Puis supprimez la dernière note, et appuyez sur entrée.

Ça y est, vous avez votre première ligne rythmique !

Ligne de basse

Passons à la ligne de basse. On va faire ici une basse à la "molle". Pour cela, on va créer un sample. Oui oui, votre sample ! Premièrement, sélectionner un instrument sans nom, par ex. le n°07. Ensuite, cliquez sur Smp. Edit dans le menu.

Faites un clic droite sur la partie noire > New…. Ici, on vous demande la longueur de votre sample. Une longueur standard est 64, mais choisissez toujours un nombre binaire rond (64 [base 10] = 1 000 000 [base 2] ; 32 [base 10] = 100 000 [base 2]). 64 suffit largement pour un sample répété.

Refaites un clic droit dans la partie noire > Generator. Ici, vous avez des presets que vous pouvez utiliser n'importe où dans le sample.

  • Noise : c'est littéralement du bruit
  • Sine : une sinusoïde pure (techniquement, c'est impossible de faire une sinusoïde pure dans Milkytracker)
  • Square : onde carrée
  • Triangle : porte très bien son nom 8-)
  • Sawtooth : en dent de scie dans le sens d'un slash /
  • Silent : du silence, volume à 0%

Pour notre basse, on va choisir Triangle [validez]. Si on la laisse comme ça, elle ne sera vraiment pas forte à côté des autres sons.

Ce que je vais faire n'ai pas à faire dans tous les cas : ça déforme le son, et c'est ce que je veut ici.

Appuyez sur le bouton Vol au milieu et entrez 200 dans la case, puis validez. Vous voyez bien qu'ici le triangle n'en est plus un, il est déformé.

Une dernière chose avant de commencer à placer les notes, si vous appuyez sur la touche a, vous n'allez rien entendre, ou très peu. Pourquoi ? C'est simple : dans la configuration actuelle, Milkytracker ne lit notre sample qu'une fois. Vous allez vous dire que ça ne sert à rien, mais c'est utile pour les rythmes et si on ne veut jouer le son qu'une fois. Pour y remédier, il faut cocher Fordward au centre.

On passe aux notes : appuyer sur Exit à droite, et allez en haut de la deuxième colonne / voix. Passez en mode édition et utilisez le 4e octave. La suite de notes est la suivante : (une note toutes les 8 cases)

C-3 C-4 C-3 C-4 F-3 F-4 G-3 G-4

Indice :

N'oubliez pas que c'est la ligne de la touche a qui est au 4e octave, pas celle d'en dessous ;-)

On s'attaque à la ligne de la mélodie / accompagnement ?

Pseudo mélodie

Je vous mets une image car ce serait trop compliqué de vous expliquer autrement. C'est la 3e colonne qu'il faut recopier :

(profitez en pour vérifier que vous n'avez pas fait d'erreur :-P)

Vous remarquerez que j'ai utilisé deux instruments différents ici : le 08 et le 09. La différence n'est pas flagrante entre les deux surtout si vous êtes nouveau au monde du chiptune.

On lance ? Pour lire, c'est entrée. Alors, ça vous plait ? Bon, c'est vraiment le morceau le plus basique qui soit, mais il a le mérite d'exister. Si vous voulez, on peut même le continuer. Par exemple, on pourrait rajouter des aiguës.

Ajout d'accompagnement aiguë

On va créer un second instrument. Vous connaissez la manip ?

  • Sélectionner un instrument vide ou en créer un
  • ouvrir l'éditeur de samples
  • choisir la longueur du sample (On va changer la valeur juste pour cette fois : 32. Le son aiguë rend mieux avec ce réglage)
  • créer un son ; on va utiliser la dent de scie (sawtooth)

Comme le son va être plus fort que le reste, on va réduire le volume. Il vaut mieux gérer les volume de cette façon que de celle montrée plus tôt. Cliquez sur Ins. Edit dans le menu. A droite, vous pouvez voir Volume. Vous pouvez alors ajuster la valeur. J'ai mis 30.

Bien sûr, la valeur est hexadécimale

Tant qu'on est dans l'éditeur d'instruments, voici les options intéressantes :

  • volume : volume, valeur hexadécimale sur 40 (défaut : 40)
  • panning : spatialisation (droite/gauche), valeur hexadécimale sur FF (défaut : 80)
  • F. Tune : ajuster la hauteur du sample en général, valeur décimale de -128 à +127 (défaut : 0)

Place à l'écriture : cette partie est un peu plus technique que les autres puisqu'elle utilise un effet et des automations de volume. Mais recopiez d'abord les notes ;-).

Les flèches dans la colonne volume informent d'un fadeout, c'est à dire que le volume diminue. Pour en mettre une, il faut utiliser la touche d pour diminuer ou u pour aUgmenter au lieu des flèches. De plus, il faut savoir que chaque note réinitialise le volume.

L'effet 3XX utilisé ici s'appelle le "portamento", il adapte la fréquence de la note actuelle à celle suivante. Il est bien mis en valeur dans cet exemple. Les paramètres (ici 04, 02 puis 01) informent de la vitesse à laquelle le programme doit changer la fréquence. Point important : cet effet garde la dernière valeur en mémoire, c'est pourquoi la plupart des lignes avec cet effet sont en 300. Le deuxième effet 4XX, vibrato, change un tout petit peu la vitesse de lecture du sample. Voir la doc officielle

Maintenant, il suffit de reprendre la même base et de copier tout ça sur d'autres patterns.

En peaufinant un minimum, on peut obtenir quelque chose de bien. Par exemple, j'ai continué le projet pendant que vous faisiez l'exercice et voilà ce que ça donne : lien google drive.

Sur ce lien, préférez le fichier .XM aux deux autres : le .mp4 (vidéo) est de mauvaise quelité et le .wav (audio) déforme les sons

Merci pour la lecture ! ^_^

Ecrit par Elio0203

  • milkytracker.txt
  • Dernière modification: Le 11/09/2022, 11:30
  • par moths-art