IA: Google Gemini / générer un instrument virtuel en 30secondes.
- 19 réponses
- 9 participants
- 910 vues
- 27 followers
Mini-Maxi
Il y a quelques temps le sujet avait été abordé: peut-on coder un plugin sans rien y connaître grâce à ChatGPT? La réponse était non.
Pourtant, sans parler de plugin, je viens de découvrir que Google Gemini est doué pour coder des instruments virtuels.
Google Gemini est gratuit et s'utilise exactement comme ChatGPT, en mode "Canvas" il permet de coder et créer des pages .html avec des interfaces, des animations et surtout du son.
En mode "Canvas" il suffit de rédiger un prompt du genre:
" Simule une boite à rythme Roland TR-606 sur une page html.
- fais des recherches sur les ressources et les caractéristiques de la TR-606 et conçois une interface qui respecte la machine originale: l'aspect globale, ses réglages avec ses boutons rotatifs
- le son, le groove, l'utilisation doivent se rapprocher d'une TR-606 authentique."
Une trentaine de seconde lui suffit à produire le résultat suivant complètement fonctionnel:

-> Le lien vers la page html pour s'amuser avec la TR-606:
https://gemini.google.com/share/7196020cdf84
Google Gemini sait aussi coder des synthétiseurs: des oscillateurs, des filtres, des enveloppes, des réverbérations... il suffit de lui demander.
Un second exemple:
"Sur une page .html tu dois simuler la chute de gouttes de pluies sur un xylophone.
- Un curseur permet d'ajuster la densité de la pluie
- Un curseur permet d'ajuster le volume du xylophone
- Un curseur permet d'ajuster le volume du bruit de la pluie
- Un curseur permet d'ajuster le niveau de réverbération sur le xylophone"
Le résultat:

Pour s'amuser avec le xylophone: https://gemini.google.com/share/a797b721e096
christian_r
Christian
AcidWidow
korvan
Il n'y aurait pas des problèmes juridiques avec les noms Roland et Drumatix du premier exemple ?
Normalement pas de raison si c’est pour une utilisation personnelle et pas à titre de commercialisation, enfin je pense…
Plaisir d'offrir, joie de recevoir.
Mini-Maxi
Il n'y aurait pas des problèmes juridiques avec les noms Roland et Drumatix du premier exemple ?
Aucune TR-606 n'a été maltraitée pendant le test et je ne commercialise rien du tout. J'ai simulé un appareil existant pour m'éviter de détailler les fonctionnalités.
korvan
Plaisir d'offrir, joie de recevoir.
Mini-Maxi
Gemini est franchement doué, il sait implémenter des basses Moog, des réseaux neuronaux, des phénomènes physiques, "hacker" des flux radios...
Pour ce qui est de la synthèse et des effets il utilise "Web Audio API" qui s'en sort bien pour produire des sons électroniques, par contre je n'ai pas réussi à produire des sons typés "acoustique".
Dans cet exemple j'ai demandé à Gemini de coder un player permettant d'ajouter des effets à un flux radio, j'ai choisi SomaFM dont le flux est justement ouvert. Voici le prompt de départ, le résultat final à nécessité quelques échanges avec Gemini.
"Tu dois te comporter comme un expert en audionumérique et coder une page html qui permet d'ajouter des effets sur un flux radio entrant. La radio est SomaFM.
La page doit comporter des simulations de pédales (chorus, delay, phaser, reverb, filtre HPF (échelle logarithmique de 20Hz à 20Khz), filtre LPF( échelle logarithmique de 20Hz à 20Khz) qu'on peut appliquer à l'audio entrant.
En plus des réglages, chaque pédale possède un bouton de bypass. La page possède aussi un bouton de volume. Au démarrage tout les effets sont "bypassed".
En arrière-fond tu dois utiliser une image de nature trouvée sur le net."

Pour s'amuser avec le SomaFM PedalBoard: https://gemini.google.com/share/d6c33c0ccab8
[ Dernière édition du message le 05/01/2026 à 09:33:51 ]
Mini-Maxi
La réalisation a demandé plusieurs itérations mais en gros le prompt de départ ressemblait à ça:
"Comportes toi comme un expert du traitement audionumérique et de la programmation des pages web pour coder une page html qui simule un synthétiseur nommé « I feel Synth ».
Le tempo est de 120bpm (soit 8Hz par défaut)
Un synthétiseur Moog joue une ligne basse à la croche. (Soit 4Hz) La suite de notes qui est jouée en boucle est A1, A1, E1, G1.
Un effet de delay à la double croche est ajouté à la basse ( Soit 8Hz).
Un Bassdrum de type analogique (TR-909) bat le temps (soit 2Hz)
Grâce à un compresseur side-chain le Bassdrum crée un effet de pompage sur le synthétiseur et son delay, dans un style très « techno ».
La page inclus un potentiomètre de volume général."

Pour s'amuser avec le synthé c'est ici: https://gemini.google.com/share/7b1785604f9c
[ Dernière édition du message le 05/01/2026 à 09:36:44 ]
Mini-Maxi
Contrairement aux autres exemples le code présente ici quelques bugs (on sent les limites de l'abstraction) que je n'ai pas demandé à corrigé, c'est simplement un "proof of concept".
Voici le premier prompt qui est très détaillé, il a fallu quelques itérations:
"Comportes toi comme un expert du traitement audio numérique pour coder une page html qui simule un synthétiseur modulaire nommé « I feel Modular ».
Chaque module audio propose des réglages qu'il faut matérialiser soit sous la forme de boutons « toggles », soit sous la forme de potentiomètres rotatifs. Au dessus de chaque bouton « toggle » et chaque potentiomètre il y a un petit écran de type LCD qui affiche la valeur sélectionnée. On peut modifier les variables soit en agissant directement sur les boutons « toggle » et potentiomètres, soit en cliquant sur les cases LCD.
Les modules sont tous pourvus de connecteurs d'entrées et de sortie qu'on peut relier ensemble par des câbles colorés (avec effet 2D).
Leș modules sont noirs, les sérigraphie blanches, les écrans LCD rouges, les boutons « toggles » et potentiomètres sont noir, gris et rouges. Tu dois soigner la sérigraphie ( police, dessins des boutons et indicateurs) et dessiner un cercle blanc et des divisions blanches autour de chaque potentiomètre.
Voici la liste des modules et leur fonctionnalités, tu dois veiller à ce que toutes les fonctionnalités soient actives.
*** 1x module « Clock » qui fourni un signal d’horloge ***
Un gros bouton toggle « Start/Stop » très visible permet de lancer ou arrêter la clock (start/stop). Le bouton est positionné sur « Start » par défaut.
Un potentiomètre Tempo permet d’ajuster le bpm de l’horloge ( plage de 20 à 220bpm). La valeur par défaut est 120BPM ce qui correspond à une fréquence d’horloge de 8Hz.
Un potentiomètre Swing permet de régler le swing de l’horloge ( plage de 0 à 30%). Cela correspond au retard avec lequel sont émises les pulsations paires de l’horloge. Ce retard équivaut à une valeur comprise entre 0 à 30% de la durée de la période. La valeur par défaut est 0%.
Une led clignote au rythme de la clock quand celle-ci est en marche.
Entrée: none
Sortie: Clock out (logique)
*** 1x modules « Clock Divider » qui est un diviseur d’horloge ****
Un potentiomètre « Clock Division » permet de sélectionner la division d’horloge appliquée à la Clock entrante ( valeurs: « /1 » ou « /2 » ou « /4 » ou « /8 »). Le réglage par défaut est « /4 »
Une led clignote au rythme de la clock divisée sortante.
Entrée: Clock in(logique)
Sortie: Clock div out(logique)
*** 1x module « 4 Step Sequencer » comprenant un diviseur d’horloge + un séquenceur analogique 4 steps****
Un potentiomètre « Clock Division » permet de sélectionner la division d’horloge appliquée à la Clock entrante ( valeurs: « /1 » ou « /2 » ou « /4 » ou « /8 »). La valeur par défaut est « /2 ».
Quatre potentiomètres « Note » permettent de sélectionner les 4 notes jouées en boucle par le séquenceur ( plage de C0 à C4). Les valeurs par défaut sont A2, A2, E2, G2.
Une led clignote au rythme des changement de pas.
Entrée: Clock in (logique)
Sortie: Sequencer out (CV)
*** 3x modules d’oscillateurs: « Oscillator A », « Oscillator B » et « Oscillator C » qui sont tous identiques et génèrent des formes d’ondes***
Un potentiomètre Waveform permet de sélectionner la forme d’onde (Triangle, Sawtooth, Square ou Noise ).
Un potentiomètre Octave permet de sélectionner l’octave ( -2, -1, 0, +1 ou +2 ).
Un potentiomètre Semi permet de sélectionner la transposition par note ( plage de -12 demi-tons à +12 demi-tons ).
Un potentiomètre Fine permet d’ajuster l’accordage fin ( plage de -50 centième de demi-ton à + 50 centième de demi-ton ).
Entrée: Oscillator CV (CV). Pour indiquer la note jouée par l’oscillateur.
Sortie: Oscillator out (audio)
Les réglages par défaut pour chaque oscillateurs sont:
- « Oscillator A » waveform: Triangle, Octave: - 1, transpose: 0st, fine: 0ct
- « Oscillator B » waveform: Sawtooth, Octave: 0, transpose: 0st, fine: 0ct
- « Oscillator C » waveform: Sawtooth, Octave: 0, transpose: 0st, fine: 3ct
*** 2x modules mixer « Mixer 1 » et « Mixer 2 » qui sont identiques et permettent de mélanger 3 sources audio***
Trois potentiomètres « Mix 1 », « MIx 2 » et « Mix 3 » permettent d’ajuster respectivement le volume des 3 sources (plage 0 à 100%). Les valeurs par défaut sont de 75%.
Le module intégre un vumètre qui indique le niveau de sortie du mixer.
Entrée1: « Mix 1 » (audio)
Entrée2: « Mix 2 » (audio)
Entrée3: « Mix 3 » (audio)
Sortie: Mix out (audio)
*** 3x modules « ENV ADSR 1 », « ENV ADSR 2 » et « ENV ADSR 3 » qui sont tous identiques et génèrent des enveloppes ADSR ***
Un potentiomètre Attack permet d’ajuster le temps d’attack (plage de 0 à 1000ms).
Un potentiomètre Decay permet d’ajuster le temps de decay (plage de 0 à 1000ms).
Un potentiomètre Sustain permet d’ajuster le niveau de sutain (plage de 0 à 100%).
Un potentiomètre Release permet d’ajuster le temps de release (plage de 0 à 3000ms).
Une led Trig indique quand l’entrée Env Trig est activée.
Un Vumètre indique le niveau de sortie de l’enveloppe ADSR.
Entrée: Env Trig in(logique)
Sortie: ADSR out (CV)
Les réglages par défaut pour chaque enveloppe sont:
« Env ADSR 1 » Attack: 0ms, Decay: 15ms, Sustain: 20%, Release: 125ms
« Env ADSR 2 » Attack: 0ms, Decay: 15ms, Sustain: 80%, Release: 200ms
« Env ADSR3 » Attack: 250ms, Decay: 0ms, Sustain: 100%, Release: 12ms
*** 1x module « LP Filter » qui est un filtre passe-bas résonant inspiré des filtres Moog à transistor ***
Un gros potentiomètre Cutoff permet d’ajuster la fréquence de coupure du filtre (plage de 20Hz à 20Khz). La valeur par défaut est 80Hz.
Un potentiomètre Résonance permet d’ajuster la résonance (plage de 0 à 100%). La valeur par défaut est 5%.
Un potentiomètre Modulation permet d’ajuster l’amplitude de modulation appliquée à la fréquence de coupure du filtre depuis l’entrée « CutOff Mod » .
Entrée1: Audio in (Audio)
Entrée2: CutOff Mod (CV)
Sortie: Filter out (Audio)
*** 2x modules vca « VCA 1 » et « VCA 2 » qui sont identiques et permettent de contrôler le volume de l’audio entrant ***
Un potentiomètre « Amp » permet d’ajuster l’amplitude de référence du VCA (plage de 0% à 100%).
Un potentiomètre « Modulation » permet d’ajuster l’amplitude de la modulation appliquée au VCA depuis l’entrée VCA control (plage de 0 à 100%).
Un Vumètre indique le niveau VCA.
Entrée1: Audio in (Audio)
Entrée2: VCA Control (CV). Le niveau audio en sortie de VCA dépend du niveau du signal CV reçu ici.
Sortie: VCA out (Audio)
Les réglages par défaut pour les 2 VCA sont:
« VCA 1 » Amp: 100%, Modulation: 100%
« VCA 2 » Amp: 100%, Modulation: 75%
*** 1x module « Delay » analogique ***
Un potentiomètre Delay permet d’ajuster le retard (plage 0ms à 500ms). La valeur par défaut est 125ms.
Un potentiomètre Feedback permet d’ajuster le taux de feedback ( plage de 0 à 100%). La valeur par défaut est 30%.
Un potentiomètre Mix permet d’ajuster l’équilibre entre signal entrant et delay (plage 0 à 100%). La valeur par défaut est 40%.
Entrée: Audio in (Audio)
Sortie: Delay out (Audio)
*** 1x module générateur de Bassdrums « Bd Generator » de type TR-909***
Un potentiomètre Tone permet d’ajuster la tonalité du bass drum (plage de 20Hz à 200Hz). La valeur par défaut est 80Hz.
Un potentiomètre Decay permet d’ajuster le temps de decay du bass drum (plage de 20ms à 1000ms). La valeur par défaut est 500ms
Une led Trig indique quand l’entrée Bd Trig est activée.
Entrée: Bd Trig in (logique)
Sortie: Bd out (Audio)
*** 1x module « Output » qui permet d’envoyer un signal vers la sortie audio. ***
Un gros potentiomètre Volume permet d’ajuster le volume (plage 0 à 100%). La valeur par défaut est 75%.
Ce module comporte un oscilloscope qui affiche en temps réel le signal audio sortant.
Entrée1: Audio in (Audio)
Sortie: none
Un bouton « Reset Patch » en haut de page permet de supprimer les câbles entre les modules.
A l’ouverture le câblage par défaut est celui-ci:
1 -Sortie « Clock out » du module « Clock » vers entrée « Clock in » du module « Clock Divider » .
2 -Sortie « Clock out» du module « Clock » vers entrée « Clock in » du module « 4 Step Sequencer » .
3- Sortie « Sequencer out » du module « 4 Step Sequencer » vers entrée « Oscillator CV» du module « Oscillator A ».
4- Sortie « Sequencer out » du module « 4 Step Sequencer » vers entrée « Oscillator CV» du module « Oscillator B ».
5- Sortie « Sequencer out » du module « 4 Step Sequencer » vers entrée « Oscillator CV» du module « Oscillator C ».
6- Sortie « Oscillator out » du module « Oscillator A » vers entrée « Mix 1 » du module « Mixer 1 ».
7- Sortie « Oscillator out » du module « Oscillator B » vers entrée « Mix 2 » du module « Mixer 1 ».
8- Sortie « Oscillator out » du module « Oscillator C » vers entrée « Mix 3 » du module « Mixer 1 ».
9- Sortie « Mix out » du module « Mixer 1 » vers entrée « Audio in » du module LP Filter ».
10- Sortie « Filter out » du module « LP Filter » vers entrée « Audio in » du module « VCA 1 ».
11- Sortie « VCA out » du module « VCA 1 » vers entrée « Audio in « du module « Delay ».
12- Sortie « Delay out » du module « Delay » vers entrée « Audio in » du module « VCA 2 ».
13- Sortie « VCA out » du module « VCA 2 » vers entrée « Mix 1 » du module « Mixer 2 ».
14- Sortie « Clock out » du module « Clock » vers entrée « Env Trig in » du module « Env ADSR 1 ».
15- Sortie « Clock out » du module « Clock » vers entrée « Env Trig in » du module « Env ADSR 2 ».
16- Sortie « Clock div out » du module « Clock Divider » vers entrée « Env Trig in » du module « Env ADSR 3 ».
17- Sortie « Clock div out » du module « Clock Divider » vers entrée « Bd Trig in » du module « Bd Generator ».
18- Sortie « ADSR out » du module « Env ADSR 1 » vers entrée « CutOff » du module « LP Filter ».
19- Sortie « ADSR out » du module « Env ADSR 2 » vers entrée « VCA Control » du module « VCA 1 ».
20- Sortie « ADSR out » du module « Env ADSR 3 » vers entrée « VCA Control » du module « VCA 2 ».
21- Sortie « Bd out » du module « Bd Generator » vers entrée « Mix 2 » du module « Mixer 2 »
22- Sortie « Mix out » du module « Mixer 2 » vers entrée « Audio in » du module « Output »"

Pour s'amuser avec le modulaire c'est ici: https://gemini.google.com/share/1f7010be3656
[ Dernière édition du message le 05/01/2026 à 21:55:12 ]
powaviolenza
Mini-Maxi
Et le MIDI fut....
Je n'avais pas encore réussi à faire fonctionner le MIDI, c'est désormais chose faite, Gemini peut utiliser "Web MIDI API" en parallèle du "Web Audio API" .
Le truc c'est que la fenêtre "Canvas" est ce qu'on appelle un bac à sable, le code s'y exécute sans pouvoir interagir avec le reste de l'ordinateur, il ne peut pas recevoir le MIDI. Pour des raisons de sécurité Google bloque aussi le MIDI sur les pages web qu'on partage ici.
Pour piloter ces instruments virtuels en MIDI il faut exécuter la page html de façon locale:
- copier le code fourni par Gemini dans un fichier .txt
- changer le .txt en .html
- ouvrir le fichier avec son navigateur (Chrome est conseillé)
Et la magie opère, j'ai un instrument qui réagit à mon clavier maître branché en usb...
Dans le même esprit, un testeur MIDI qui indique tout les signaux entrants:

[ Dernière édition du message le 06/01/2026 à 00:58:48 ]
Sylv1984
Mini-Maxi
Après il ne faut pas être dupe, et je devrai avoir honte, les IA sont une saloperie pour la planète, j'avoue que la fascination prend le pas.
[ Dernière édition du message le 06/01/2026 à 09:07:34 ]
Sylv1984
Merci à toi. Effectivement je trouve peu intéressant de générer des morceaux au mètre, ici j'ai l'impression d'avoir une sorte de Max-MSP sous les doigts. A l'utilisation je remarque être dans un "état d'esprit" plus créatif, comme face à un jeu de Lego.
Après il ne faut pas être dupe, et je devrai avoir honte, les IA sont une saloperie pour la planète, j'avoue que la fascination prend le pas.
Entièrement d'accord sur les effets de l'IA, pas seulement sur la planète. Quand on se rendra compte que les dégâts collatéraux sont bien supérieurs aux bénéfices, il sera sans doute déjà trop tard.
Mini-Maxi
Cet éditeur audio permet de quantifier des boucles rythmiques en y appliquant un pourcentage de swing. Il utilise des algorithmes de time-strech.
On peut y charger ses propres fichiers audio: les boucles rythmiques 4/4 de une ou deux mesures ( moins de 750Ko) sont conseillées.
Les transients sont détectés automatiquement mais peuvent être retouchés manuellement.
Le rythme est quantifié sur la grid, on peut ajuster la valeur de swing, ce qui est franchement cool. Ca fonctionne bien!
Une application qui a nécessité des dizaines d'itérations, il a fallu être très directif sur l'aspect technique.

Pour utiliser l'éditeur c'est ici:
https://gemini.google.com/share/3b0bd85db2c0
[ Dernière édition du message le 06/01/2026 à 15:49:26 ]
Frajean
Mini-Maxi
Ici le but est d'envoyer l'audio de mon Logic Pro vers Chrome où tourne la page créée par Gemini.
Sur Mac on peut utiliser Black Hole qui s'installe très facilement, c'est une application qui permet de router les pistes de Logic vers les entrées de Chrome.
Après ça, tout n'est plus que question de configuration, du DAW et de Chrome. A l'usage Black Hole se comporte comme une carte son (virtuelle), on peut l'ajouter aux périphériques agrégés.
J'ai franchement pas forcé sur le prompt qui m'a pris 1minute. L'oscilloscope demande a être amélioré mais c'est encore une fois un "proof of concept".
Comportes toi comme un expert en audionumérique et code une page html qui simule un oscilloscope 2Ch, il lit l'entrée audio stéréo. Le look est vintage et militaire. L'écran de l'oscilloscope est rond et noir avec des reflets, le cerceau autour de l'écran est gris foncé.
Tu dois placer cette image de texture verte en arrière-fond:
[url]https://www.renderhub.com/cgaxis/green-painted-metal-pbr-texture/green-painted-metal-pbr-texture-02.jpg[/url]
SI l'image ne s'affiche pas, tu dois écrire "erreur"
Utilise des effets de transparences pour simuler des reflets sur la vitre de l'oscilloscope.
Les réglages sont:
- selecteur entrée: Ch 1 ou Ch1 +Ch2
- potentiomètre de réglage des couleurs (pour ajuster) selon ses goûts les couleurs des signaux sur l'oscilloscope., choisis des couleurs pertinentes par défaut.
- sélecteur amplitude: x1, x2, x4, x8
- sélecteurs de temps: 10ms, 50ms, 100ms, 500ms, 1s.

[ Dernière édition du message le 07/01/2026 à 22:17:29 ]
Elemmir
La flemme est l'avenir de l'homme. Pff, jsuis fatigué je ne vais pas plus lo..
darinze
T'es pas obligé d'écouter toutes les conneries de DaRinze . Clip SONIC ON LOVE YOU
Mini-Maxi
https://fr.audiofanzine.com/mao/forums/t.832588,creer-un-plugin-sans-rien-y-connaitre-avec-google-gemini-done,post.12116773.html

- < Liste des sujets
- Charte