Coin web de Frédéric Péters

Un peu de (web)MIDI

20 janvier 2021, 16:29

Petit projet de 2017, passé totalement inaperçu ici, je répare ça tout de suite vu que j’y suis retourné pour quelques ajustements ces derniers jours. L’idée de départ était de permettre de facilement lancer des sons à l’antenne, il n’y avait pas tellement d’outils pratiques pour ça et sans doute j’avais une certaine nostalgie du MIDI et un peu lu sur l’arrivée d’une spec Web MIDI et vite fait j’avais acheté des nouveaux contrôleurs pas chers pour expérimenter.

nanoPAD en haut et nanoKONTROL en bas

De là rapidement navigator.requestMIDIAccess pour obtenir un accès et sans doute une déception à découvrir un peu tard que Firefox ne gérait pas cette spec (et ne la  gère toujours pas aujourd’hui d’ailleurs) mais dans Chromium ça marche nickel, les messages MIDI arrivent et s’inspectent facilement pour aboutir à faire bouger les choses comme je l’entends.

Pour faire start/stop simplement jouer autour de la balise <audio> est suffisant mais c’était aussi l’occasion d’aller sur la spec Web Audio et déborder du cadre initial et ajouter des possibilités de manipulation des sons (pour Alerte Niveau 5). (pas mal via cet article Creating dub delay effects with the Web Audio API) (il y a aussi du code spécifique du projet Overtone, pour contrôler manuellement les LED).

Utilisation live, Alerte Niveau 5, avril 2017

Récemment donc on en a reparlé, trouvé utile d’ajouter quelques bricoles, j’en ai posé une version hébergée (https://rdio.space/nanofun/), il n’y a pas de documentation et pour les fonctionnalités basiques ça marche aussi avec un clavier (azertyui et qsdfghjk, pour émuler les pads).

À toute fin utile les sources sont bien sûr disponibles, https://git.0d.be/?p=nanofun.git