chordlab V2.1
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
# _chordlab ORC·v2
|
||||
|
||||
Générateur d'accords et de progressions harmoniques dans le navigateur, inspiré de la logique du **Telepathic Instruments Orchid ORC-1** (implémentation indépendante, étendue). Un seul fichier HTML, zéro dépendance, zéro backend.
|
||||
|
||||
> Construis un accord avec un doigt, façonne son voicing, chaîne une progression, envoie-la en MIDI live vers ton studio dawless ou exporte-la en `.mid` pour ton DAW.
|
||||
|
||||
---
|
||||
|
||||
## Fonctionnalités
|
||||
|
||||
**Construction d'accords**
|
||||
- Clavier une octave pour la fondamentale (souris, tactile ou clavier PC)
|
||||
- 8 types d'accords : Dim · Min · Maj · Aug · Sus2 · Sus4 · 5 (power chord) · m♭6
|
||||
- 12 modificateurs empilables : 6 · m7 · M7 · 9 · ♭9 · ♯9 · 11 · ♯11 · 13 · ♭5 · ♯5 · no3
|
||||
- Nommage automatique (Cm7, Cdim7, Cø7, C7(♭9)…) affiché sur le LCD
|
||||
|
||||
**Voicing**
|
||||
- Knob de voicing rotatif ±8 crans (inversions en cascade, une note à la fois)
|
||||
- Drop voicings : close · drop 2 · drop 3 · drop 2+4 · spread
|
||||
- Accords slash : basse sur la fondamentale, la tierce, la quinte ou la septième
|
||||
- Moteur basse séparé (−1 ou −2 octaves)
|
||||
|
||||
**Tonalité et intelligence harmonique**
|
||||
- Key Mode : accords diatoniques à un doigt dans 8 gammes (majeur, mineur naturel/harmonique, dorien, phrygien, lydien, mixolydien, locrien)
|
||||
- Voice-leading automatique (VL AUTO) et optimisation globale de la progression
|
||||
- Suggestion d'accord suivant par table d'harmonie fonctionnelle
|
||||
- 8 presets de cadences générés dans la tonalité choisie
|
||||
|
||||
**Progression et lecture**
|
||||
- Rack de slots : durée individuelle (1/2/4/8 temps), réordonnancement, audition au clic
|
||||
- Modes de performance : block · strum ↑↓ · harp · arp ↑/↓/↕/random (1/8 à 1/32)
|
||||
- Humanisation vélocité/timing
|
||||
|
||||
**Entrées / sorties**
|
||||
- **Web MIDI out live** : accords et basse sur deux canaux séparés, vers n'importe quelle interface USB-MIDI
|
||||
- **Export `.mid`** : format 1, PPQ 480, tempo inclus, performance rendue en option
|
||||
- **Session `.json`** : sauvegarde/chargement complet (réglages + progression)
|
||||
|
||||
---
|
||||
|
||||
## Démarrage rapide
|
||||
|
||||
1. Ouvrir `index.html` dans **Chrome, Edge ou Firefox** (Safari ne supporte pas Web MIDI).
|
||||
2. Cliquer une note du clavier → l'accord sonne et s'affiche sur le LCD.
|
||||
3. `ADD` (ou barre espace) pour l'empiler dans la progression, `PLAY` pour l'écouter.
|
||||
4. Pour le MIDI live : brancher une interface USB-MIDI, autoriser l'accès MIDI, sélectionner le périphérique dans le panneau **MIDI out**.
|
||||
|
||||
> ⚠️ Web MIDI exige un **contexte sécurisé** : `https://` ou `http://localhost`. Un fichier ouvert en `file://` fonctionne pour l'audio et l'export, mais pas pour la sortie MIDI live selon les navigateurs. D'où l'intérêt de l'héberger (voir tutoriel de déploiement).
|
||||
|
||||
---
|
||||
|
||||
## Canaux MIDI par défaut
|
||||
|
||||
| Rôle | Canal | Machine cible (setup de référence) |
|
||||
|---|---|---|
|
||||
| Accords | 3 | Behringer Pro-800 (nappes) |
|
||||
| Basse | 5 | TD-3 + K-2 en unisson |
|
||||
|
||||
Modifiables dans le panneau **MIDI out (live)**. L'export `.mid` reprend les mêmes canaux.
|
||||
|
||||
---
|
||||
|
||||
## Structure du dépôt
|
||||
|
||||
```
|
||||
chordlab/
|
||||
├── index.html # l'application complète
|
||||
├── README.md
|
||||
└── docs/
|
||||
├── TUTORIEL_UTILISATION.md # guide utilisateur complet
|
||||
└── TUTORIEL_DEPLOIEMENT_COOLIFY.md # mise en ligne + mises à jour
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Compatibilité
|
||||
|
||||
| Navigateur | Audio | MIDI live | Export .mid |
|
||||
|---|---|---|---|
|
||||
| Chrome / Edge | ✅ | ✅ | ✅ |
|
||||
| Firefox | ✅ | ✅ | ✅ |
|
||||
| Safari | ✅ | ❌ (pas de Web MIDI) | ✅ |
|
||||
|
||||
---
|
||||
|
||||
## Notes de conception
|
||||
|
||||
- Le moteur de voicing reproduit le principe du dial de l'Orchid : chaque cran fait une **rotation** de l'accord (la note la plus grave remonte d'une octave, ou l'inverse), sur ±8 crans.
|
||||
- Les combinaisons classiques tombent naturellement : `DIM + 6 = dim7`, `DIM + m7 = ø7` (demi-diminué), `MAJ + m7 + ♯9 = accord Hendrix`.
|
||||
- Empiler `m7 + M7` affiche `WTF?` sur le LCD — clin d'œil assumé à l'Orchid.
|
||||
- Le voice-leading minimise la somme des déplacements de voix entre deux accords en testant les rotations de voicing candidates.
|
||||
- Aucune donnée n'est stockée dans le navigateur : la persistance passe exclusivement par les fichiers `.json` de session.
|
||||
|
||||
## Licence & crédit
|
||||
|
||||
Projet personnel underscorelab / leradiologue. La logique d'accords s'inspire du concept de l'Orchid ORC-1 de Telepathic Instruments, sans réutiliser ni code, ni sons, ni assets de l'instrument original.
|
||||
Reference in New Issue
Block a user