Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/controller-profile.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Fabricant et modèle / Manufacturer and model:

## Profil JSON / JSON profile

Collez ici le JSON copié par Controller Studio. / Paste the JSON copied by Controller Studio here.
Controller Studio préremplit normalement cette zone. Pour un très grand profil, collez ici le JSON placé dans le presse-papiers. / Controller Studio normally pre-fills this section. For a very large profile, paste the JSON placed on the clipboard here.

```json

Expand Down
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Historique des versions

## V.2026 (2026.4) — 2026-08-10

- Ajoute un véritable fabricant de contrôleurs dans la Banque : encodeurs absolus ou relatifs, faders, boutons, ordre physique, banques et pages.
- Ajoute l'apprentissage direct des mouvements et appuis depuis l'entrée MIDI choisie, avec prise en charge CC, Note, NRPN et Pitch Bend.
- Ajoute sur la page Live un accès universel à la configuration et à l'apprentissage MIDI du contrôleur actif ; le setup/groupe reste clairement identifié comme spécifique à l'EC4.
- Affiche le numéro complet de la release dans le bandeau, le titre de fenêtre et la fenêtre À propos, par exemple `V.2026.4`.
- Permet de créer, modifier, dupliquer ou importer un profil sans manipuler de JSON, puis de l'enregistrer localement avec sauvegarde atomique.
- Relie directement le profil créé à l'export LiveProfessor `.ctrl2` et à AutoMap.
- Préremplit la contribution GitHub avec le profil validé complet ; GitHub ne sert plus qu'à identifier l'auteur et confirmer l'envoi, sans jeton stocké dans l'application.
- Restaure dans Réglages la fenêtre de réactivité d'EC4 Bridge : cadence et durée d'Overlay, rafraîchissement Companion/labels, timeout du retour et affichage persistant, pour tous les contrôleurs compatibles.
- Étend la banque intégrée à douze profils avec le Korg nanoKONTROL2 en mode CC et l'Akai LPD8 MK2 Program 1 documenté.
- Agrandit les polices des notices française et anglaise pour une lecture plus confortable.

## V.2026 (2026.3) — 2026-08-10

- Lit directement les vrais noms, unités et types des paramètres exposés par les plug-ins VST3 installés, dans un processus isolé par plug-in.
Expand Down
34 changes: 21 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@
</p>

<p align="center">
<a href="https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.3"><img alt="Version V.2026.3" src="https://img.shields.io/badge/version-V.2026.3-0b9fc6"></a>
<a href="https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4"><img alt="Version V.2026.4" src="https://img.shields.io/badge/version-V.2026.4-0b9fc6"></a>
<img alt="Windows 10 et 11 x64" src="https://img.shields.io/badge/Windows-10%20%7C%2011%20x64-1674d1">
<img alt="Français et anglais" src="https://img.shields.io/badge/interface-FR%20%7C%20EN-445064">
</p>

## Dernière version (accès rapide)

**Version stable : [Controller Studio V.2026.3](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.3)**<br>
**Version stable : [Controller Studio V.2026.4](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4)**<br>
Téléchargement direct :

- [Installer Controller Studio pour Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Setup-v2026.3.exe)
- [Version portable Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor.exe)
- [Notice complète en français (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Notice-FR.pdf)
- [Full English manual (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Manual-EN.pdf)
- [Sommes de contrôle SHA-256](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/SHA256SUMS.txt)
- [Installer Controller Studio pour Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Setup-v2026.4.exe)
- [Version portable Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor.exe)
- [Notice complète en français (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Notice-FR.pdf)
- [Full English manual (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Manual-EN.pdf)
- [Sommes de contrôle SHA-256](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/SHA256SUMS.txt)

[Lire cette présentation en anglais](README_EN.md)

> **Version publique V.2026.3 pour Windows.** Controller Studio travaille sur une copie AutoMap et conserve le projet `.rack2` source intact.
> **Version publique V.2026.4 pour Windows.** Controller Studio travaille sur une copie AutoMap et conserve le projet `.rack2` source intact.

## À quoi sert Controller Studio ?

Expand Down Expand Up @@ -68,10 +68,12 @@ VST est une marque déposée de Steinberg Media Technologies GmbH. Les mentions

## Banque de contrôleurs intégrée

V.2026.3 fournit dix profils déclaratifs prêts à exporter :
V.2026.4 fournit douze profils déclaratifs prêts à exporter et permet d’en fabriquer d’autres directement dans l’application :

- Akai Professional LPD8 MK2 (Program 1 documenté) ;
- Faderfox EC4, PC4, UC4 et PC12 ;
- Behringer X-Touch Compact, X-Touch Mini et X-Touch One ;
- Korg nanoKONTROL2 (mode CC, réglages d’usine des potentiomètres et faders) ;
- Novation Launch Control XL 3 ;
- DJ TechTools MIDI Fighter Twister ;
- contrôleur MIDI générique à 16 commandes.
Expand All @@ -80,15 +82,21 @@ Les modes matériels et les sources constructeur utilisés sont regroupés dans

## Créer et partager un contrôleur

L’éditeur intégré permet de décrire les encodeurs, faders, boutons, canaux MIDI, messages CC/Note et retours disponibles, puis de vérifier le profil avant export.
Cliquez sur **Créer un contrôleur…** pour partir d’un modèle de huit encodeurs, puis ajoutez, supprimez ou réordonnez encodeurs absolus ou relatifs, faders et boutons. Chaque commande accepte CC, Note, NRPN ou Pitch Bend, son canal et son numéro. **Apprendre le mouvement** et **Apprendre l’appui** capturent directement les messages reçus sur l’entrée MIDI choisie. Vous pouvez aussi **Modifier / dupliquer…** un modèle existant ou **Importer un profil…**.

**Enregistrer dans ma banque** valide le profil et le rend disponible hors ligne. **Enregistrer + créer .ctrl2** produit aussitôt le fichier LiveProfessor. Le remplacement d’un profil personnel conserve une sauvegarde de la version précédente. La page Live donne aussi accès à **Configurer / apprentissage MIDI…** pour le contrôleur actif ; le setup/groupe visible avec l’EC4 reste une fonction spécifique à ce matériel.

La fenêtre **Réglages** de la page Live retrouve les paramètres avancés d’EC4 Bridge : cadence de l’Overlay, durée d’affichage, rafraîchissement Companion et des labels, délai de confirmation LiveProfessor et affichage persistant. Ces temporisations sont disponibles pour tous les contrôleurs compatibles ; les outils setup/groupe et SysEx restent affichés uniquement pour l’EC4.

Pour proposer un contrôleur à la bibliothèque commune :

1. créez ou sélectionnez le profil dans **Banque de contrôleurs** ;
2. cliquez sur **Proposer à la bibliothèque…** ;
3. Controller Studio valide et prépare le JSON ;
4. le formulaire GitHub prérempli s’ouvre ;
5. joignez la documentation constructeur ou vos résultats d’essai puis envoyez la proposition.
3. Controller Studio valide le profil et place automatiquement tout son contenu dans le formulaire ;
4. GitHub s’ouvre pour identifier l’auteur et demander la confirmation finale ;
5. ajoutez si possible la documentation constructeur ou vos résultats d’essai puis envoyez la proposition.

Cette dernière confirmation reste volontairement chez GitHub : aucun mot de passe ni jeton d’accès n’est demandé ou conservé par Controller Studio.

La bibliothèque publique fait partie de ce dépôt dans [`library/`](library/). Elle contient uniquement des profils JSON déclaratifs, jamais de code téléchargé et exécuté.

Expand Down
34 changes: 21 additions & 13 deletions README_EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@
</p>

<p align="center">
<a href="https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.3"><img alt="Version V.2026.3" src="https://img.shields.io/badge/version-V.2026.3-0b9fc6"></a>
<a href="https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4"><img alt="Version V.2026.4" src="https://img.shields.io/badge/version-V.2026.4-0b9fc6"></a>
<img alt="Windows 10 and 11 x64" src="https://img.shields.io/badge/Windows-10%20%7C%2011%20x64-1674d1">
<img alt="French and English" src="https://img.shields.io/badge/interface-FR%20%7C%20EN-445064">
</p>

## Latest version (quick access)

**Stable release: [Controller Studio V.2026.3](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.3)**<br>
**Stable release: [Controller Studio V.2026.4](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4)**<br>
Direct downloads:

- [Controller Studio installer for Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Setup-v2026.3.exe)
- [Portable Windows x64 version (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor.exe)
- [Full English manual (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Manual-EN.pdf)
- [Notice complète en français (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/Controller-Studio-for-LiveProfessor-Notice-FR.pdf)
- [SHA-256 checksums](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.3/SHA256SUMS.txt)
- [Controller Studio installer for Windows x64 (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Setup-v2026.4.exe)
- [Portable Windows x64 version (.exe)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor.exe)
- [Full English manual (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Manual-EN.pdf)
- [Notice complète en français (.pdf)](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/Controller-Studio-for-LiveProfessor-Notice-FR.pdf)
- [SHA-256 checksums](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/download/v2026.4/SHA256SUMS.txt)

[Lire cette présentation en français](README.md)

> **Public V.2026.3 Windows release.** Controller Studio always works on a new AutoMap copy and keeps the source `.rack2` project untouched.
> **Public V.2026.4 Windows release.** Controller Studio always works on a new AutoMap copy and keeps the source `.rack2` project untouched.

## What does Controller Studio do?

Expand Down Expand Up @@ -68,10 +68,12 @@ VST is a registered trademark of Steinberg Media Technologies GmbH. Third-party

## Built-in controller bank

V.2026.3 includes ten declarative profiles ready to export:
V.2026.4 includes twelve declarative profiles ready to export and can build more directly in the application:

- Akai Professional LPD8 MK2 (documented Program 1);
- Faderfox EC4, PC4, UC4 and PC12;
- Behringer X-Touch Compact, X-Touch Mini and X-Touch One;
- Korg nanoKONTROL2 (CC mode, factory knob and fader assignments);
- Novation Launch Control XL 3;
- DJ TechTools MIDI Fighter Twister;
- generic 16-control MIDI controller.
Expand All @@ -80,15 +82,21 @@ Hardware modes and manufacturer references are collected in the [controller prof

## Build and share a controller

The built-in editor describes encoders, faders, buttons, MIDI channels, CC/Note messages and available feedback, then validates the profile before export.
Click **Create a controller…** to start with eight encoders, then add, remove, or reorder absolute or relative encoders, faders, and buttons. Every control accepts CC, Note, NRPN, or Pitch Bend, its channel, and its number. **Learn movement** and **Learn push** capture messages directly from the chosen MIDI input. You can also **Edit / duplicate…** an existing model or **Import a profile…**.

**Save to my bank** validates the profile and makes it available offline. **Save + create .ctrl2** immediately produces the LiveProfessor file. Replacing a personal profile keeps a backup of the previous version. The Live page also provides **Configure / MIDI Learn…** for the active controller; the setup/group section shown with the EC4 remains hardware-specific.

The Live page **Settings** window restores EC4 Bridge’s advanced controls: Overlay update rate and duration, Companion and label refresh delays, LiveProfessor feedback timeout, and persistent display. These timings are available to every compatible controller; setup/group and SysEx tools remain EC4-only.

To submit a controller to the shared library:

1. create or select its profile in **Controller bank**;
2. click **Submit to the library…**;
3. Controller Studio validates and prepares the JSON file;
4. a pre-filled GitHub form opens;
5. attach manufacturer documentation or hardware test results and submit.
3. Controller Studio validates the profile and automatically inserts all its content into the form;
4. GitHub opens to identify the author and request final confirmation;
5. add manufacturer documentation or hardware test results when possible, then submit.

That final confirmation deliberately stays with GitHub: Controller Studio never asks for or stores a password or access token.

The public library lives in this repository under [`library/`](library/). It contains declarative JSON profiles only—never downloaded executable code.

Expand Down
2 changes: 2 additions & 0 deletions docs/CONTROLLER_PROFILE_SOURCES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ matérielle complète de Controller Studio.

| Profil | Mode requis | Source officielle |
| --- | --- | --- |
| Akai Professional LPD8 MK2 | Program 1 configuré avec pads Note 36–43 et potentiomètres CC 36–43, canal 1 | [Guide officiel inMusic / Akai pour le Program 1](https://support.inmusicstore.com/en/support/solutions/articles/69000867977-lpd8-mkii-how-to-use-16-pads-and-knobs-in-mpc-beats) |
| Behringer X-Touch Compact | Standard, Layer A, canal MIDI 1 | [Quick Start Guide, MIDI Map Layer A](https://mediadl.musictribe.com/media/PLM/data/docs/P0B3L/QSG_BE_0808-AAE_X-TOUCH%20COMPACT_WW.pdf) |
| Behringer X-Touch Mini | Standard, Preset A, canal MIDI 11 | [Quick Start Guide, MIDI Map Preset A](https://mediadl.musictribe.com/media/PLM/data/docs/P0B3M/QSG_BE_0808-AAF_X-TOUCH-MINI_WW.pdf) |
| Behringer X-Touch One | MIDI mode, canal MIDI 1 dans ce profil | [MIDI Mode Implementation](https://mediadl.musictribe.com/download/software/behringer/X-TOUCH/Document_BE_X-TOUCH-ONE-MIDI-Mode-Implementation.pdf) |
Expand All @@ -14,6 +15,7 @@ matérielle complète de Controller Studio.
| Faderfox UC4 | Factory Setup 1, groupes encodeurs et faders 1 | [UC4 User Manual V02, Factory settings](https://www.faderfox.de/PDF/UC4%20Manual%20V02.pdf) |
| Faderfox PC12 | Factory Setup 1, canal MIDI 1 | [PC12 User Manual V04, Factory settings](https://www.faderfox.de/PDF/PC12%20Manual%20V04.pdf) |
| DJ TechTools MIDI Fighter Twister | Factory Banks 1–4, encodeurs canal 1, push/couleurs canal 2 | [MIDI Fighter Twister User Guide 2026, Appendix 1](https://drive.google.com/file/d/0B-QvIds_FsH3Z0ZLT041VnZfOTA/view?usp=sharing) |
| Korg nanoKONTROL2 | Mode CC, canal global 1, potentiomètres CC 16–23 et faders CC 0–7 | [Téléchargements officiels : Parameter Guide et MIDI Implementation](https://www.korg.com/tmp/support/download/index.php/product/0/159/?country=us&page=product&prodid=159&prodtype=0) |

Le X-Touch Compact disponible physiquement est le premier candidat à passer de
`community` à `verified`. Cette promotion exige la capture des messages réels,
Expand Down
32 changes: 32 additions & 0 deletions library/controllers/akai/lpd8-mk2-program-1-mpc/1.0.0/profile.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"schema_version": 1,
"profile_version": "1.0.0",
"id": "akai.lpd8-mk2.program-1-mpc",
"manufacturer": "Akai Professional",
"model": "LPD8 MK2 — Program 1 (MPC layout)",
"midi_identity": {
"input_name_patterns": ["LPD8 mk2", "LPD8 MK2"],
"output_name_patterns": ["LPD8 mk2", "LPD8 MK2"]
},
"bank_size": 16,
"status": "community",
"capabilities": ["push"],
"controls": [
{"id": "knob_01", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 36}},
{"id": "knob_02", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 37}},
{"id": "knob_03", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 38}},
{"id": "knob_04", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 39}},
{"id": "knob_05", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 40}},
{"id": "knob_06", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 41}},
{"id": "knob_07", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 42}},
{"id": "knob_08", "kind": "absolute_encoder", "input": {"message": "cc", "channel": 1, "number": 43}},
{"id": "pad_01", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 36}},
{"id": "pad_02", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 37}},
{"id": "pad_03", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 38}},
{"id": "pad_04", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 39}},
{"id": "pad_05", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 40}},
{"id": "pad_06", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 41}},
{"id": "pad_07", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 42}},
{"id": "pad_08", "kind": "pad", "input": {"message": "note", "channel": 1, "number": 43}}
]
}
Loading
Loading