Lecteur de fichiers simple
L'idée de ce projet est de pouvoir déclencher la lecture de fichiers son (wav) avec un MPX8 de chez AKAI (ou tout autre appareil MIDI pouvant envoyer des notes MIDI) vers un Raspberry Pi 3B, pour ensuite les diffuser sur un système son composé d'une radio à transistors… À noter que l'envoie d'un fichier son doit faire s'arrêter la lecture de celui qui est en cours s'il y en a un.
Schéma de principe
Nous aurions donc:
MPX8 → envoie de note MIDI via USB → Raspberry Pi 3B avec PatchboxOS → PureData → Patch
Patch PureData
La patch va être développé sur une autre machine pour la bonne raison que je n'ai pas d'écran HDMI à disposition. Le principe: On utilise des fichiers wav. Les objets suivant sont utilisés : Pour charger les fichiers:
- [loadbang] → permet de recharger les morceau au lancement du patch
- [tabplay~] → lit un tableau donné
- [soundfiler] → transforme un fichier en données via le tableau
- tableau → permet de visualiser un tableau
Pour la partie MIDI:
- [notein] → reçoit les notes MIDI et dispense: Note, Vélocité et Channel dans les outlets
- [sel] → exhausteur de goût, écoute ce qui entre et si une valeur correspond à l'un des arguments, envoie un bang sur le outlet correspondant à la place de l'argument dans la liste. Ex: La note MIDI 40 est reçue, celle-ci est en 1ère position dans la liste d'arguments, un bang sera envoyé sur le outlet 1 en partant de la gauche.
La note MIDI 41 est reçue, celle-ci est en 2ème position dans la liste d'arguments, un bang sera envoyé sur le outlet 2, etc.
- [dac~]→ dirige les flux audios vers la sortie son.
—- Mode d'emploi pour modifier le sampleur: —-
A. Pour ajouter un sample:
- : on place un fichier wav dans le dossier parent du projet PureData.
- : on copie le nom du fichier en entier, le nom ne doit pas comporter d'espace.
- : on créé un tableau auquel on donne le nom du fichier sans l'extension: Ajouter → Tableau.
- : on crée un “message” dans lequel on met: read -resize nomdufichier.wav nomdutableau
- : on place ce message entre le loadbang et l'objet soundfiler, on relie le tout
B. Pour assigner un sample à une note MIDI
- : on crée l'objet tabplay~ avec pour argument le nom du tableau que l'on veut lire.
- : on relie le inlet de l'objet tabplay au outlet correspondant à la note midi de l'objet sel. Attention au décalage visuel entre les nombres affichés et les outlet… Cela permet de déclencher la lecture du fichier.
- : on crée un message “stop”
- : on relie le message stop au inlet du tabplay et aux autres outlet de sel. Cela permet d'arrêter le morceau actuellement en cours de lecture.
- : on relie le outlet de gauche de tabplay aux entrées du dac.