"Quelque chose d'aussi faux n'a jamais semblé aussi juste."
The Kiss of Shame, lancé à l'Audio Engineering Society Convention 2014 à Los Angeles, était un plugin DAW pionnier qui exploitait les principes de conception UX/UI commerciaux pour façonner ses algorithmes d'émulation de bande magnétique et de circuits.
Pour se différencier sur le marché concurrentiel des plugins audio professionnels, The Kiss of Shame a introduit des fonctionnalités révolutionnaires, notamment une interface graphique interactive multi-touch et une simulation de dégradation de bande analogique pour des effets audio distinctifs.
The Kiss of Shame a été le premier (et peut-être le seul) plugin d'émulation de bande/circuit analogique au monde qui modélise de manière réaliste les effets de l'instabilité des particules magnétiques, de la perte de lubrifiant, de la déformation du substrat, de la dérive, du grattage, de l'impression et de l'expansion/contraction de la bobine dans une suite d'outils de traitement d'effets pour la conception sonore et la production musicale.
Ce fut également le premier à tirer parti de l’apprentissage automatique pour tenir compte des vastes non-linéarités inhérentes aux bandes magnétiques et aux circuits analogiques. Enfin et surtout, il s'agit de la seule émulation de bande analogique dotée de bobines entièrement interactives prenant en charge le toucher et pouvant écrire une automatisation de bride à la volée, à la manière d'un véritable magnétophone analogique.
Regardez une courte vidéo de démonstration
The Kiss of Shame n’était pas complètement terminé et n’a jamais vu de sortie. Le code source a été gracieusement offert à la communauté open source par son propriétaire en 2024.
Le but de ce projet open source est :
REMARQUE : Le code source qui a été donné ne contient pas toutes les fonctionnalités de la description. Notamment, il n'existe qu'un seul type de bande et un seul environnement (ouragan Sandy), et la fonction d'impression est manquante. Dans sa forme actuelle, le plug-in ne fonctionne bien qu'à une fréquence d'échantillonnage de 44 100 Hz. Cela dit, c'est toujours un plug-in amusant avec une interface utilisateur sympa, et il y a beaucoup à apprendre du code source !
NOTE:
‼️ Ce travail est actuellement en cours. Il peut y avoir des problèmes avec le plug-in. Utilisez à vos propres risques !‼️
La version Mac du plug-in est signée et notariée.
Si la version AU du plug-in n'est pas visible dans votre DAW, ouvrez Applications/Utilities/Terminal . Tapez ce qui suit et appuyez sur la touche Entrée :
killall -9 AudioComponentRegistrar
Redémarrez ensuite votre DAW. Le plug-in devrait maintenant être visible. Sinon, redémarrez votre ordinateur.
Choisissez entre deux types de bandes distincts :
S-111 – Un format de bobine supérieur populaire des années 50 aux années 70, était la bande de référence préférée de nombreux ingénieurs. The Kiss of Shame présente sa première émulation numérique, apportant ce format légendaire au monde numérique.
A-456 – Ce format classique à haut rendement et à faible bruit est un incontournable de l'enregistrement utilisé dans d'innombrables productions. Bien qu'il existe de nombreuses émulations logicielles, aucune ne la recrée de cette manière. Des tactiques de loisirs numériques uniques ont été utilisées pour capturer son essence.
REMARQUE : Le bouton de sélection du type de bande n'a actuellement aucun effet.
De l'altéré à la météo :
Age – Ce bouton permet à l'utilisateur de définir la durée hypothétique pendant laquelle le type de bande sélectionné a été soumis à « l'environnement » choisi pour manipuler la gravité des effets correspondants.
Environnement – Choisissez entre plusieurs conditions de stockage simulées pour infliger les ramifications sonores de facteurs tels que l'instabilité des particules magnétiques, l'oxydation, la perte de lubrifiant, l'expansion/contraction du pack de bandes, le « syndrome du vinaigre » et bien plus encore sur le matériau source. Les utilisateurs peuvent même choisir un paramètre « Ouragan Sandy » pour accéder au traitement modélisé à partir d'une bande immergée puis récupérée des eaux de crue de la tempête.
REMARQUE : seul l'environnement Hurricane Sandy est implémenté.
Un obstacle réel :
Shame – The Kiss of Shame recrée le spectre complet de ces facteurs comme Drift, Wow, Flutter et Scrape-Flutter que l'utilisateur peut transmettre avec le bouton central. Il peut faire passer votre signal source de légèrement coloré à totalement mutilé.
Print-Through – Également connue sous le nom de « bleed-through », cette émulation capture les fluctuations de vitesse mécaniques présentes dans les enregistrements analogiques. Même s’ils représentaient autrefois des défis pour les ingénieurs, ils sont devenus une marque distinctive des disques classiques.
REMARQUE : La fonction d'impression n'est pas implémentée.
Tendez la main et touchez le ruban :
The Kiss of Shame est le premier plug-in de bande à proposer des bobines animées et interactives qui peuvent être manipulées d'un simple clic ou toucher. Cela permet aux utilisateurs d'accéder à une authentique bride de bande analogique en temps réel, sans avoir besoin de deux magnétophones physiques, et en une fraction du temps. Tous les paramètres, y compris les mouvements des rouleaux, sont entièrement automatisables, et pour optimiser l'espace de l'écran, les rouleaux sont pliables et entièrement personnalisables.
CONSEIL : Pour flanger, faites glisser sur les rouleaux. Pour réduire les rouleaux, double-cliquez n'importe où dans l'interface utilisateur.
Brèves instructions :
Actuellement testé uniquement avec :
Pour configurer les builds CMake, assurez-vous que CMake et Ninja sont installés. Ninja est configuré par défaut pour des temps de compilation rapides, mais si vous ne souhaitez pas l'utiliser, omettez « -G Ninja » dans le script de configuration ci-dessous et spécifiez manuellement le nombre de tâches. Consultez la documentation CMake pour savoir comment procéder
Configurez votre projet (récupère JUCE, configure le projet JUCE) :
cmake -B "build" -G Ninja
Construisez votre projet :
cmake --build "build" --config Release --target all --
Remplacez « --config Release » par « --config Debug » pour les versions de débogage.
Les builds sont automatiquement copiés dans des dossiers sensibles pour votre plate-forme cible (par exemple : C:Program Files (x86)Common Files/VST3/
pour Windows), ce qui facilite l'ouverture de ce plugin dans votre DAW pendant le développement. Les builds seront également situés sous build/TheKissOfShame_artefacts/(Release or Debug)
.
La compilation AAX n'est pas activée mais peut être activée en ajoutant AAX
à la définition FORMATS
sous juce_add_plugin
dans /CMakeLists.txt
. Pour compiler pour AAX, vous devez spécifier l'emplacement du SDK AAX avec juce_set_aax_sdk_path(" ... ")
. Cela n'a pas encore été testé.
J'ai ajouté des commentaires au code pour expliquer ce qu'il fait, mais pour une présentation complète, consultez mon article de blog.
Le code original a été écrit en utilisant JUCE 3.1. Il fallait que l'utilisateur copie un dossier contenant des fichiers image et son dans /Users/Shared/KissOfShame
. Les paramètres n'étaient pas exposés à la DAW et seraient réinitialisés à la réouverture de l'éditeur.
Les modifications suivantes ont été apportées à ce dépôt :
Bugs que j'ai trouvés (ou introduits hehe) :
beginGesture
est appelé deux fois. Ce n’est pas un gros problème mais pas génial non plus.Autres éléments qui peuvent/doivent être améliorés dans le code (bénévoles bienvenus !) :
prepareToPlay()
et reset()
aux classes DSP. La méthode de réinitialisation devrait effacer l’ancien état.audioGraphProcessingBuffer = audioBuffer
, qui peut allouer (au moins la première fois).Envelope
et EnvelopeDips
) pourraient garder une trace du point précédent et suivant, nous n'avons donc pas besoin de parcourir tous les points à chaque pas de temps.audioProcessor.curPositionInfo
utilise une API obsolète.rand()
et srand()
. Remplacez par juce::Random
.Peut être:
targetDepth = depth * depth * 1000.0f
.)Copyright (C) 2014-2015 Eros Marcello
Développeurs originaux :
Eros Marcello — Fondateur, architecte produit en chef
Brian Hansen — Ingénierie DSP / Développement d'algorithmes
Yannick Bonnefoy — Interface graphique
Mises à jour et améliorations par Matthijs Hollemans et contributeurs.
Ce programme est un logiciel libre : vous pouvez le redistribuer et/ou le modifier selon les termes de la licence publique générale GNU telle que publiée par la Free Software Foundation, soit la version 3 de la licence, soit (à votre choix) toute version ultérieure.
Une partie du code de ce référentiel (la classe Granulate
) a été extraite de The Synthesis ToolKit in C++ (STK) de Perry R. Cook et Gary P. Scavone.
JUCE est protégé par copyright © Raw Material Software.
VST® est une marque commerciale de Steinberg Media Technologies GmbH, déposée en Europe et dans d'autres pays.