diff --git a/README.md b/README.md index 307835f..dfb9fa4 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ + +

Controller Studio for LiveProfessor

@@ -15,6 +17,10 @@ Français et anglais

+

+ English version below ↓ · Standalone English README +

+ ## Dernière version (accès rapide) **Version stable : [Controller Studio V.2026.4](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4)**
@@ -26,8 +32,6 @@ Téléchargement direct : - [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.4 pour Windows.** Controller Studio travaille sur une copie AutoMap et conserve le projet `.rack2` source intact. ## À quoi sert Controller Studio ? @@ -187,3 +191,199 @@ LiveProfessor, Faderfox, Behringer, Novation, DJ TechTools et les autres noms ci **SiLeMI/O**
**By Mamat**
`-------[]--` + +--- + + + +# English version + +

+ Controller Studio for LiveProfessor +

+ +

Controller Studio for LiveProfessor

+ +

+ SiLeMI/O — By Mamat
+ MIDI controllers, Plugin Studio and AutoMap in one Windows application. +

+ +

+ Version V.2026.4 + Windows 10 and 11 x64 + French and English +

+ +## Latest version (quick access) + +**Stable release: [Controller Studio V.2026.4](https://github.com/Mamat79/Controller-Studio-for-LiveProfessor/releases/tag/v2026.4)**
+Direct downloads: + +- [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) + +[Back to the French version ↑](#version-francaise) + +> **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? + +Controller Studio turns a MIDI controller into an organized control surface for LiveProfessor plug-ins. In one application, you can select or build a controller, create its LiveProfessor file, analyze project plug-ins and produce an AutoMap copy ready for testing. + +| Live control | Controller bank | Plugin Studio | AutoMap | +|---|---|---|---| +| Real-time EC4 driver, banks, push, Shift, labels, values and reconnection | Ready-to-export profiles and a controller editor | Real names read from installed plug-ins, batch retrieval, priorities and individual checkboxes | Plug-in and instance selection, UniBank or FullBank, validated `.rack2` copy | + +The interface is available in French and English, minimizes to the notification area and keeps the real-time log in a separate window. + +## Three-step workflow + +1. In **Controller bank**, select your hardware or create its profile, then export the `.ctrl2` file. +2. Add that controller to LiveProfessor and analyze your `.rack2` project with **Plugin Studio**. +3. Click the blue **AutoMap** button, choose the useful plug-ins and parameters, then open the new copy. + +Controller Studio reloads the generated copy before presenting it. Existing manual assignments remain authoritative. + +## AutoMap: the central feature + +AutoMap avoids permanently tying every physical MIDI control to every parameter of every plug-in. Controller Studio separates both sides of the mapping: + +- the **controller profile** describes the hardware's encoders, faders, buttons, banks and MIDI messages once; +- the **plug-in profile** describes its real parameters, order, priority and inclusion choices once; +- **AutoMap combines both** in LiveProfessor Controller Maps for every selected instance. + +As a result, one properly described controller can work with every prepared plug-in, while one plug-in profile can be reused with every controller that provides enough logical controls. Changing controller no longer means manually remapping every plug-in; adding another instance of an already recognized plug-in no longer means repeating its MIDI Learn setup. + +| Need | Direct MIDI Learn in LiveProfessor | Controller Studio + AutoMap | +|---|---|---| +| Initial setup | Learn every physical control, one parameter at a time | Describe or select the controller once, then let AutoMap create the assignments | +| Several plug-ins | Repeat the mapping plug-in by plug-in | Process every plug-in, or only the checked ones, in one operation | +| Several instances of one plug-in | Repeat the work for every instance | Automatically reuse the same parameter order on all selected instances | +| Change MIDI controller | Relearn the new hardware's CC/Note messages for the plug-ins | Select or build its profile and export its `.ctrl2`; the logical AutoMap slots remain reusable | +| Select useful parameters | Manually browse every exposed parameter | Select, exclude, prioritize and name them once in Plugin Studio | +| Banks and parameter-rich plug-ins | Manual organization that often differs between plug-ins | UniBank for a simple layout or FullBank for up to 99 logical controls | +| Labels and feedback | Depend on the mappings built by hand | Short names, values and Companion feedback follow the same order as the controls | +| Project safety | Mapping is performed inside the open project | AutoMap creates and validates a new `.rack2` copy; the source project remains untouched | + +Existing manual mappings are never overwritten: they remain authoritative and AutoMap fills only the available slots. The result is a reusable system that maintains one controller bank and one plug-in bank instead of many **controller × plug-in × instance** mappings. + +## Plugin Studio + +A `.rack2` file stores parameter order and identifiers, but not always their human-readable labels. Plugin Studio retrieves that data directly from installed VST3 plug-ins, each in an isolated process. A result is accepted only when its parameter count exactly matches the LiveProfessor project. + +After project analysis, **Retrieve all real names** processes every plug-in type in one operation, creates or updates local profiles, and automatically backs up previous versions. + +For one plug-in: + +1. open the plug-in profile and click **Automatically retrieve real names**; +2. use **Select all**, **Select none** or the individual checkboxes; +3. adjust the short label, kind, technical role or priority if needed, then save the local profile. + +If an older format or a particular plug-in does not provide a directly compatible inventory, Controller Studio automatically offers LiveProfessor Companion/OSC feedback as a second method. + +The link between each Controller Map slot and the internal parameter identifier is preserved, preventing a correct control from receiving another parameter’s label. + +VST is a registered trademark of Steinberg Media Technologies GmbH. Third-party notices are listed in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md). + +## Built-in controller bank + +V.2026.4 includes 33 declarative profiles ready to export and can build more directly in the application: + +- Akai Professional LPD8 MK2, MIDImix, APC Mini MK2, MPK Mini MK3, MPK Mini IV, and MPK Mini Plus; +- Arturia MiniLab 3, KeyLab Essential MK3, and BeatStep; +- Faderfox EC4, PC4, UC4 and PC12; +- Behringer X-Touch, X-Touch Compact, X-Touch Mini, and X-Touch One; +- Korg nanoKONTROL2 (CC mode, factory knob and fader assignments); +- Novation Launch Control XL MK2/XL 3, Launchkey MK3/MK4, and Launchpad X/Mini MK3; +- PreSonus FaderPort V2, 8, and 16; +- Solid State Logic UF1 and UF8; +- DJ TechTools MIDI Fighter Twister; +- generic 16-control MIDI controller. + +Hardware modes and manufacturer references are collected in the [controller profile documentation](docs/CONTROLLER_PROFILE_SOURCES.md). The bank can be updated from the application and then remains available offline. + +## Build and share a controller + +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 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. + +## Main features + +- create, import, export and validate controller profiles; +- generate LiveProfessor Companion/OSC `.ctrl2` controllers; +- complete EC4 engine inherited from EC4 Bridge; +- remembered controller selection and MIDI/OSC reconnection; +- display labels and values, banks, push and shortcuts; +- read-only plug-in and Controller Map analysis; +- select all plug-ins, one instance or any precise subset; +- per-parameter selection and priority in Plugin Studio; +- UniBank and FullBank AutoMap in a new copy; +- preserve manual mappings and existing learned assignments; +- verified application and controller-library updates; +- FR/EN interface, notification-area mode and separate log window; +- built-in PDF manual and optional PayPal support. + +## Documentation + +- [Full English manual](src/silemio_control_hub/manuals/Controller-Studio-for-LiveProfessor-Manual-EN.pdf) +- [Notice complète en français](src/silemio_control_hub/manuals/Controller-Studio-for-LiveProfessor-Notice-FR.pdf) +- [README en français](README.md) +- [Controller profile sources](docs/CONTROLLER_PROFILE_SOURCES.md) +- [Release history](CHANGELOG.md) + +The manual matching the interface language is also available from **Help > Open PDF manual**. + +## Installation and updates + +The installer places Controller Studio in the user’s Windows profile and creates Desktop and Start menu shortcuts. It can then be removed from Windows Apps. + +**Help > Check for updates** queries the latest Release in this repository, verifies the download and starts the installer. The controller library is updated separately from the **Library** menu. + +## Development and verification + +```powershell +python -m pip install -e . +python -m pytest -q +python -m silemio_control_hub profiles +python -m silemio_control_hub validate-profile "path\profile.json" +python -m silemio_control_hub export-liveprofessor-controller faderfox.ec4 ".\Faderfox-EC4.ctrl2" +python -m silemio_control_hub library-update +``` + +## Support the project + +Controller Studio is independently developed and maintained. Every feature remains available free of charge. + +- [Support SiLeMI/O through PayPal](https://www.paypal.com/paypalme/MamatLeroy) +- the same link and QR code are available from the **Help** menu. + +## Thanks + +Thank you to everyone who tests controllers, documents MIDI layouts and expands the public library. + +LiveProfessor, Faderfox, Behringer, Novation, DJ TechTools and all other cited names remain trademarks of their respective owners. Controller Studio is an independent tool and is not affiliated with those publishers or manufacturers. + +--- + +**SiLeMI/O**
+**By Mamat**
+`-------[]--`