Documentation / SpectralMediator

SpectralMediator — Manuel d'utilisation

Documente la version 1.3.1 Télécharger le PDF Page du produit → English

title: XeniAudio SpectralMediator — Manuel d'utilisation subtitle: Dynamique spectrale anti-masquage — v1.3.1 author: Tony Cuny — XeniAudio date: Mai 2026

Plugin de dynamique spectrale anti-masquage — v1.3.1

SpectralMediator résout le problème le plus courant du mixage : deux pistes qui se disputent la même zone de fréquences. En échangeant, par mémoire partagée, les magnitudes de leurs analyses FFT et les énergies par bande entre deux instances posées sur des canaux différents, chaque instance se creuse dynamiquement de la place là où sa partenaire a du contenu — automatiquement, en temps réel, fréquence par fréquence.

Format Description
VST3 Format universel (Windows, Linux, macOS)
CLAP Format de plugin moderne (Windows, Linux, macOS)

Installation

Configuration requise

Plateforme Minimum
OS Windows 10+ (64 bits), Linux (x86-64-v3), macOS 10.13+ (Intel / Apple Silicon)
STAN Tout hôte VST3 ou CLAP
Processeur x86-64 avec AVX2
Mémoire 2 Go

Windows

  1. Lancez XeniAudio-SpectralMediator-V1.3.1-Installer.exe.
  2. Suivez les étapes. L'installeur place :
    • le VST3 dans C:\Program Files\Common Files\VST3\
    • le CLAP dans C:\Program Files\Common Files\CLAP\SpectralMediator\
  3. Redémarrez votre STAN et relancez l'analyse des plugins.

Linux

tar xzf SpectralMediator-1.3.1-Linux.tar.gz
cd SpectralMediator-1.3.1-Linux
./install.sh

Le VST3 atterrit dans ~/.vst3/, le CLAP dans ~/.clap/. Passez d'autres chemins en arguments positionnels à install.sh.

macOS

  1. Montez SpectralMediator-1.3.1-macOS.dmg.
  2. Double-cliquez sur le .pkg qu'elle contient.
  3. La portée d'installation par défaut est l'utilisateur courant (~/Library/Audio/Plug-Ins/). Cliquez sur PersonnaliserInstaller pour tous les utilisateurs pour une installation à l'échelle du système.
  4. Redémarrez votre STAN et relancez l'analyse des plugins.

Signé et notarisé. Depuis la v1.3.1, l'installeur macOS est signé avec un Apple Developer ID et notarisé par Apple : il s'installe sans avertissement et sans contournement au clic droit. Le certificat est délivré à Tony Cuny — Apple délivre les certificats Developer ID à la personne derrière une activité indépendante, et non au nom commercial ; c'est donc ce nom que macOS affiche plutôt que XeniAudio.

Si macOS proteste malgré tout, c'est presque certainement que le téléchargement est endommagé ou incomplet — retéléchargez plutôt que d'essayer de contourner l'avertissement.


Le concept

Ce que veut dire « anti-masquage »

Quand deux instruments occupent la même zone de fréquences, l'oreille ne peut en distinguer clairement qu'un seul à la fois. Les remèdes classiques sont :

SpectralMediator est l'alternative chirurgicale. Il regarde quelles fréquences se cognent réellement, à cet instant, et ne fait plonger que celles-là, uniquement sur l'instrument masqué, uniquement pendant que le masquant est fort. L'EQ statique et la sidechain deviennent inutiles pour les cas que SpectralMediator prend en charge.

Comment les deux instances se parlent

Insérez une instance sur chaque piste. Les deux SpectralMediator se découvrent via un segment de mémoire partagée (Boost.Interprocess) et s'appairent par le menu REMOTE, en haut de chaque éditeur. Une fois appairées, à chaque saut de FFT :

  1. Chaque instance écrit ses propres magnitudes (1024 bins linéaires) et ses énergies par bande (3 bandes) dans son emplacement de mémoire partagée.
  2. Chaque instance lit les bins de sa partenaire.
  3. Chaque instance compare, bin par bin, son propre niveau à celui de sa partenaire à l'intérieur de chaque bande définie par vous. Là où la partenaire dépasse le seuil de la bande, cette instance atténue ce bin proportionnellement au ratio.

Résultat : quand le kick frappe, la région grave de la piste de basse plonge ; quand le kick se tait, plus aucun ducking. Même logique en sens inverse pour le kick sur la région haute de la basse. Les deux pistes se libèrent mutuellement la place, sans le moindre geste d'EQ.

Ce que ce n'est pas


Prise en main (kick + basse)

  1. Insérez SpectralMediator sur la piste de kick. Renommez l'instance depuis le champ de titre — tapez Kick.
  2. Insérez SpectralMediator sur la piste de basse. Renommez-la Bass.
  3. Sur l'une ou l'autre instance, cliquez sur le menu --- disconnected --- au-dessus de l'analyseur REMOTE et sélectionnez le nom de l'autre instance. Les deux sont désormais appairées (les deux menus affichent le nom de la partenaire ; le petit point SHM en haut à droite passe au vert).
  4. La disposition par défaut à 1 bande (20 Hz → 20 kHz) est trop large. Faites un clic droit dans l'analyseur LOCAL vers 200 Hz pour ajouter une séparation de bande. La bande a maintenant deux moitiés ; refaites un clic droit vers 1 kHz pour ajouter une troisième séparation si vous voulez plus de précision.
  5. Tirez le seuil de chaque bande (la poignée horizontale orange à l'intérieur de la bande) vers -20 dB environ. Tirez le ratio (poignée du bord droit) vers 4:1 environ.
  6. Lancez le morceau. La basse doit maintenant plonger sous le kick partout où celui-ci a du contenu spectral, sans toucher à aucune autre zone de fréquences.

Visite de l'interface

+-------------------------------------------------------------------------+
|  X SM   SpectralMediator #1                  LOCAL          [DEMO] *SHM |  <- en-tête
+-------------------------------------------------------------------------+
|                                                                         |
|  HP                    (spectre FFT local)                           LP |  <- analyseur
|   |                                                                  |  |     LOCAL
|  20Hz                                                              20kHz|
+-------------------------------------------------------------------------+
|  [Kick               (v)]                     REMOTE                    |  <- analyseur
|   |                 (spectre FFT de la partenaire)                   |  |     REMOTE
|  20Hz                                                              20kHz|
+-------------------------------------------------------------------------+
|  LOCAL OUTPUT                                          REMOTE OUTPUT    |  <- réglages
|   (Attack)  (Release)  (Makeup)            (Attack)  (Release)  (Makeup)|
+-------------------------------------------------------------------------+

En-tête

Analyseur LOCAL (bande du haut)

En-tête REMOTE (entre les deux analyseurs)

Analyseur REMOTE (bande du bas)

Les mêmes réglages que l'analyseur LOCAL, mais ils modifient à distance les réglages de votre partenaire (les changements sont écrits dans son emplacement de mémoire partagée). Pratique quand vous voulez régler tout l'appairage sans changer de fenêtre de plugin. Le spectre FFT de la partenaire est affiché en orange.

Réglages de sortie (bandeau du bas)

Deux panneaux en miroir :

Redimensionnement

Tirez la petite poignée du coin en bas à droite pour redimensionner l'éditeur. Le cadre de l'hôte suit en direct (Bitwig, FL Studio, Studio One ; Reaper Linux

La taille est conservée dans le projet : à la réouverture, l'éditeur retrouve la taille où vous l'aviez laissé.


Les paramètres

Disposition des bandes (par côté)

Paramètre Plage Défaut Unité Notes
FreqLow 20 Hz à 2000 Hz 200 Hz Hz Coupure grave / médium
FreqHigh 500 Hz à 20000 Hz 5000 Hz Hz Coupure médium / aigu
HP 20 Hz à 1000 Hz 20 Hz Hz Passe-haut de détection — les bins en dessous passent
LP 1000 Hz à 20000 Hz 20 kHz Hz Passe-bas de détection — les bins au-dessus passent

La disposition des bandes se modifie aussi de façon interactive : clic droit dans l'un ou l'autre analyseur pour ajouter une séparation, glisser les séparations pour déplacer les frontières.

Ducking par bande (3 bandes)

Paramètre Plage Défaut Unité
Threshold -60 dB à 0 dB -20 dB dB
Ratio 1:1 à 20:1 4:1

Quand le niveau de la partenaire à l'intérieur d'une bande dépasse Threshold, cette instance atténue la même bande proportionnellement à Ratio. 1:1 désactive concrètement le ducking pour cette bande.

Enveloppe et sortie (LOCAL + REMOTE, six potentiomètres en tout)

Potentiomètre Plage Défaut Pas Rôle
Attack 0,1 ms à 300 ms 10 ms 0,1 ms Constante de temps quand la réduction monte
Release 5 ms à 2000 ms 100 ms 1 ms Constante de temps quand la réduction relâche
Makeup -12 dB à +24 dB 0 dB 0,1 dB Gain de sortie après le ducking

Glisser : 1 px ≈ 0,9 ms d'Attack. Maintenez Maj pour un glissement environ 3× plus fin (≈ 0,25 ms / px). Les valeurs se calent sur le pas indiqué dans la colonne ci-dessus (Attack : 0,1 ms, Release : 1 ms, Makeup : 0,1 dB) : vous pouvez donc tomber pile sur des valeurs rondes, comme Attack = 10,0.

Les potentiomètres REMOTE écrivent directement dans l'emplacement de la partenaire — son thread audio les reprend et les applique localement. Les potentiomètres de sa propre interface bougent en conséquence.

Le ducking unidirectionnel

Par défaut, une paire d'instances fait un échange : chacune se pousse devant l'autre là où elles se cognent. C'est ce qui distingue SpectralMediator d'une sidechain classique, et la plupart du temps c'est ce qu'on veut.

Parfois, non. Une voix lead, un kick, un riff signature — certaines pistes ne doivent jamais bouger, et tout le reste doit s'organiser autour. L'interrupteur DUCK de l'en-tête en décide, instance par instance :

DUCK sur cette instance Ce qui arrive à cette piste Ce qui arrive à la partenaire
Allumé (défaut) Elle s'efface devant la partenaire Elle s'efface devant cette piste
Éteint Jamais atténuée Elle continue de s'effacer devant elle

Éteindre DUCK ne déconnecte pas la paire, et ce n'est pas la même chose qu'un bypass. Cette instance continue d'analyser et continue d'alimenter sa partenaire — elle cesse simplement de s'appliquer la moindre atténuation. Éteignez-le sur la piste qui doit gagner, et laissez-le allumé partout ailleurs.

Les deux côtés depuis une seule fenêtre. Il y a deux interrupteurs DUCK, un dans l'en-tête LOCAL et un dans l'en-tête REMOTE, exactement comme les interrupteurs BYP et les potentiomètres REMOTE. Laquelle des deux pistes s'efface est une décision qui concerne la paire : vous pouvez donc la prendre depuis l'une ou l'autre instance sans changer de fenêtre — l'interrupteur REMOTE écrit directement dans l'emplacement de votre partenaire, et son interface suit. L'interrupteur REMOTE est grisé tant qu'aucune partenaire n'est sélectionnée.

DUCK éteint n'est pas BYP. Contourner une instance l'empêche aussi d'alimenter sa partenaire : le ducking s'arrête alors dans les deux sens. Si vous voulez qu'une piste garde la priorité pendant que l'autre continue de s'effacer, c'est DUCK qu'il vous faut.

Les deux instances peuvent avoir DUCK éteint en même temps — cela signifie simplement qu'aucune ne s'efface, ce qui revient à ne pas être appairées du tout.


Cas d'usage

Kick + basse

Insérez SM sur le kick, insérez SM sur la basse, appairez.

Quand le kick frappe, seule la bande grave de la basse plonge. Les médiums et aigus de la basse (le corps des cordes, les harmoniques) ne sont pas touchés. Quand le kick s'arrête, la basse revient entière, dans le temps de Release.

Voix + guitare

La voix devant, la guitare rythmique qui masque la zone des formants.

La guitare cède dans la bande des formants dès que la voix est active, tout en gardant son corps et son brillant.

Caisse claire + overheads

Les coups de caisse claire fuient dans les overheads. Avec un EQ statique, il faudrait couper la zone de la caisse claire dans les overheads en permanence. Avec SM, on ne coupe que lorsqu'elle frappe réellement.

L'image de la batterie se resserre de façon audible. Les cymbales restent pleines, parce que leur spectre est au-dessus de la bande.

Deux chœurs sur la même syllabe

Deux empilements de chœurs sur des pistes différentes se disputent la présence. Appairez-les.

Celui des deux empilements qui est le plus fort à un instant donné gagne cette bande ; l'autre cède légèrement. Le mélange paraît collé, sans aucune automation.


Mémoire partagée entre instances

Jusqu'à 16 instances de SpectralMediator peuvent coexister dans le même processus de STAN. Chaque instance possède :

Les données partagées par instance sont :

Champ Utilisé par Notes
FFT 1024 bins thread audio Magnitude linéaire, à chaque saut de FFT
Affichage 256 bins thread interface Spectre en dB lissé, pour l'analyseur
3 énergies de bande les deux RMS par bande
3 réductions de gain les deux dB par bande, ≤ 0
Définition des bandes les deux Fréquences + seuil + ratio + activation
HP / LP les deux Limites globales de détection
Attack / Release / Makeup les deux Réglages de sortie
Latence du plugin les deux En échantillons (pour la compensation)

Les modifications faites d'un côté ou de l'autre d'une paire se propagent dans les deux sens : déplacer une bande dans l'analyseur du bas d'une instance met à jour l'analyseur du haut de l'autre.

Latence

Chaque instance déclare à l'hôte sa propre latence d'analyse FFT (typiquement 1024 échantillons à 44/48 kHz, mise à l'échelle aux fréquences supérieures pour conserver une fenêtre d'analyse d'environ 21 ms). Les STAN modernes la compensent automatiquement.

La latence déclarée par la partenaire est lue dans la mémoire partagée et utilisée à la lecture pour aligner les bins consommés sur ce que la partenaire traitait réellement — le ducking reste donc en place, même quand les deux pistes ont des retards de routage différents dans la STAN.


Mode démo et licence

Sans licence, l'audio est coupé en fondu pendant 5 secondes toutes les 60 secondes, avec des fondus doux de 256 échantillons. Le badge DEMO, en haut à droite, clignote pendant la fenêtre de silence.

Activer

  1. Cliquez sur le badge DEMO pour ouvrir la fenêtre d'activation.
  2. Collez votre clé de licence (Ctrl+V) ou saisissez-la.
  3. Cliquez sur Activate (ou appuyez sur Entrée).

La fenêtre affiche Verifying... pendant que la clé est vérifiée en ligne auprès du serveur de licences Gumroad. En cas de succès, la fenêtre se ferme et le badge DEMO disparaît. En cas d'échec, le message exact du serveur est affiché (clé invalide, remboursée, contestée, etc.) — corrigez et réessayez.

La clé vérifiée est enregistrée dans :

Les chargements suivants valident la clé enregistrée hors ligne (sans réseau) : une fois activé, SpectralMediator fonctionne sans connexion internet.

Clés SpectralMediator et clés McPlugins

SpectralMediator a son propre produit sur Gumroad. Une clé McPlugins ne déverrouille pas SpectralMediator (et réciproquement). Les deux produits utilisent des espaces d'empreintes distincts et rangent leurs fichiers de licence dans des dossiers séparés.


Problèmes connus

Reaper VST3 sous Windows : le redimensionnement en direct ne met pas à jour la fenêtre FX

Quand vous tirez la poignée de redimensionnement en bas à droite de l'éditeur, le contenu du plugin se redimensionne correctement, mais le cadre extérieur de la fenêtre FX de Reaper ne suit pas — ni pendant le glissement, ni au relâchement. Le plugin se retrouve encastré dans un cadre trop petit ou trop grand.

Cause : l'implémentation hôte VST3 de Reaper n'honore pas les rappels plugFrame->resizeView() venant du thread interface du plugin. Tous les autres hôtes testés (Bitwig, FL Studio, Studio One, Live, Cubase sous Windows ; tous les hôtes sous Linux et macOS) respectent correctement cette API.

Contournement : insérez SpectralMediator au format CLAP (Add FX → CLAP → SpectralMediator) plutôt qu'en VST3. Le CLAP fonctionne correctement sous Reaper Windows. Reaper prend en charge le CLAP nativement depuis la v6.71.

Gatekeeper macOS : avertissement « développeur non identifié »

Corrigé en v1.3.1 — l'installeur macOS est désormais signé et notarisé, cet avertissement n'apparaît donc plus. Si vous le voyez encore, c'est que le téléchargement est endommagé ; retéléchargez-le. Voir Installation → macOS.

Notez que l'installeur Windows, lui, n'est pas signé : SmartScreen peut donc encore avertir au premier lancement de ce côté-là.


Dépannage

Deux instances ne se voient pas dans le menu. Elles doivent toutes deux tourner dans le même processus de STAN. Certains hôtes isolent les processus de plugins (bac à sable / un processus par plugin) ; la mémoire partagée ne peut pas franchir une frontière de processus. Désactivez l'isolation des plugins dans les préférences de votre STAN.

L'analyse des plugins se bloque après un plantage de l'hôte. SpectralMediator détecte au démarrage les segments de mémoire partagée périmés et les efface automatiquement dès que toutes les instances enregistrées se sont tues pendant 10 secondes. Si le problème persiste :

Aucun spectre dans le panneau REMOTE. Vérifiez que l'instance partenaire traite bien de l'audio (piste non coupée, non gelée). Le spectre de la partenaire n'est mis à jour que tant que de l'audio la traverse.

La fenêtre d'activation affiche « Server: … » avec une erreur réseau. Votre machine n'arrive pas à joindre l'API de Gumroad. Vérifiez la connectivité et les règles de pare-feu. La vérification de licence est une opération en ligne unique ; une fois la clé enregistrée sur le disque, aucun accès réseau n'est nécessaire.

L'éditeur s'affiche dans le quart inférieur gauche sur un Mac Retina. Vous utilisez une version antérieure à la v1.3.1. Mettez à jour vers la dernière version.


Licence

XeniAudio SpectralMediator est un logiciel sous licence. Voir le fichier license.txt livré avec l'installeur pour les conditions complètes.

Pour toute assistance, rendez-vous sur https://xeni-audio.com ou écrivez à support@xeni-audio.com.

Copyright © 2025–2026 Tony Cuny / XeniAudio. Tous droits réservés.


Un point obscur, ou absent de ce manuel ? Écrivez à support@xeni-audio.com.