⭐ Cet article concerne une fonctionnalité Pro.
Ce tutoriel a pour but de vous aider à comprendre comment utiliser le protocole OSC pour contrôler HeavyM à partir d’un appareil ou une application à distance.
Dans ce guide, nous détaillerons principalement les instructions pour une utilisation avec une application iOS ou Android, grâce à des outils qui permettent une installation simple et rapide. Mais sachez qu'il y a de nombreuses autres connexions possible par OSC : par exemple, le protocole vous permet aussi d'utiliser un logiciel d'automatisation basé sur une timeline comme Vezér, ou le chef d'orchestre Chataigne.
Qu'est-ce que l'OSC?
OSC est l’acronyme pour "Open Sound Control". C’est un protocole qui est utilisé pour la communication entre appareils multimédias, similaire au protocole MIDI, mais qui permet le transfert de plus de données, plus rapidement, et par des réseaux comme le WIFI ou Ethernet. En bref, ce protocole vous permet de contrôler des fonctionnalités de HeavyM à distance, à partir d’un smartphone par exemple. La bonne nouvelle, c’est qu’il n’y a pas besoin de connecter des kilomètres de câbles, vos appareils doivent simplement être sur le même réseau.
Cela ouvre des possibilités infinies d’installations interactives !
Trouver un layout
Puisque vous n'allez pas utiliser HeavyM directement sur votre smartphone, vous devez utiliser une application vous permettant d’agencer des éléments de contrôle afin d’avoir une interface utilisateur fonctionnelle, avec des boutons et des sliders. Beaucoup d’applications vous permettent de construire ces panneaux de contrôle, ou bien proposent des modèles de mise en page (ou "layout") prédéfinis. Voici un exemple dans TouchOSC :
Vous avez donc deux options pour obtenir un layout :
Option 1 : créer un layout entièrement
Nous n’allons pas détailler ici comment créer un layout à partir de rien, mais vous pouvez trouver beaucoup de ressources sur le sujet sur internet. Si vous avez les compétences et êtes courageux, vous pouvez le coder, ou bien vous pouvez utiliser un éditeur WYSIWYG ("ce que tu vois est ce que tu obtiens"), comme TouchOSC ou Lemur Editor. Dans ces cas, les éditeurs sont gratuits à installer sur votre ordinateur, mais votre layout ne fonctionnera qu’avec les applis associées à acheter sur l'app store. (Vous pouvez en général aussi construire le layout directement depuis l'appli mobile.)
Construire un layout nécessite de créer les éléments de l’interface utilisateur, importer le layout dans l'appli si vous l'avez construit sur ordi et leur assigner des commandes HeavyM. Pour savoir comment apprendre comment importer votre layout, veuillez vous référer au manuel de l'application utilisée.
Créer un layout peut être fastidieux, mais vous aurez beaucoup plus de contrôle sur la façon dont chaque élément fonctionne, quelles informations il envoie à HeavyM et quand, etc.
Option 2 : configurer un modèle existant
Certaines applications fournissent des modèles de layout. Cela veut dire que la première étape est déjà finie : les boutons, sliders et autres éléments d’interface sont déjà organisés dans des onglets, mais vous devez encore les configurer. En effet, ces éléments sont « vides », ils n’ont pas d’assignation donc ils ne sont pas encore liés à des fonctionnalités de HeavyM.
Utiliser un layout existant nécessite seulement d'assigner des commandes HeavyM aux éléments du layout.
⚠️ Si vous créez vous-même vos propre modèle et messages, sachez que HeavyM réagit aux arguments "float" entre 0.0 et 1.0 en OSC. Pour des sliders, 0.0 représente la valeur minimum et 1.0 le maximum. Pour des interrupteurs, 0.0 correspond à OFF et 1.0 à ON.
Connecter TouchOSC et HeavyM
Les paragraphes suivants vous donnerons des instructions spécifiques pour vous aider à connecter l'application TouchOSC et HeavyM. (Nous ne sommes pas sponsorisés par cette appli, promis.)
Pour suivre ces instructions, vous devez ouvrir HeavyM, TouchOSC et avoir un layout prêt. Si vous utilisez une autre application, cela pourra sûrement vous aider car vous trouverez de nombreuses similarités. Sinon, veuillez vous référer au manuel de votre application.
Note : vos appareils doivent être connectés au même réseau pour communiquer, mais pas forcément en connexion sans fil : votre smartphone peut utiliser le Wifi alors que votre ordinateur est en Ethernet par exemple.
Dans TouchOSC
Note : ces instructions détaillent la procédure à suivre avec la version iOS de l’appli. L’interface de la version Android est légèrement différente, mais les actions sont similaires, sauf ci cela est spécifié.
- D'abord, ouvrez les réglages de "Connections" en utilisant le bouton avec l'icône de maillon dans la barre d'outils, et allez dans l'onglet "OSC".
- Ici, dans le champ "Host" de la première "Connection", vous devez entrer l'adresse IP de votre ordinateur. Vous pouvez généralement la trouver dans Paramètres ou Préférences Système, dans les propriétés Réseau.
- Dans les champs "Send Port" et "Receive Port" entrez n'importe quels numéros (différents) entre 7 000 et 10 000.
- Gardez cet onglet ouvert, car vous aurez besoin de copier certaines informations, et dirigez-vous vers HeavyM.
Dans HeavyM
- Ouvrez la fenêtre de paramètre des Controls depuis Controls → Controls Settings... ou l'icône et allez dans l'onglet "OSC". Assurez-vous que l'OSC Control est ON grâce au bouton en haut de la fenêtre.
- Ensuite, dans "Incoming port", vous devez entrer le nombre donné dans le champ "Send Port" de TouchOSC. A l'inverse, dans "Outgoing port", entrez le nombre indiqué dans le champ "Receive Port" de TouchOSC.
- Dans "Output IP address", entrez l'adresse IP de votre téléphone ou tablette. Vous la trouverez généralement dans les paramètres Réseau de votre appareil, ou bien certaines applications OSC l'affichent directement pour vous.
Maintenant, retournez à votre layout et suivez la prochaine section de ce guide pour apprendre à lier les éléments du layout aux commandes de HeavyM.
Note : si vous avez des difficultés après avoir suivi ces instructions, vous pouvez consulter la documentation TouchOSC sur leur site (en anglais). Elle est assez approfondie et détaille aussi les procédures avec les appareils iOS, ainsi que d’autres fonctionnalités avancées dans l’application.
Gérer les assignations
Activer l'"OSC Learning"
Une fois que votre connexion est configurée, vous pouvez assigner des boutons, faders, pads ou n'importe quel autre élément de contrôle que votre layout comprend à des commandes de HeavyM. Pour cela, vous devez faire en sorte que les éléments de l'interface du logiciel "apprennent" à quel élément du layout OSC ils doivent réagir.
Pour cela, vous devez activer l'interface d'OSC learning à partir de la fenêtre de Controls ("OSC learning mode" button) ou du menu (Controls → Edit OSC Assignments). Un filtre coloré apparaîtra sur l'interface et mettra en évidence les boutons qui peuvent être assignés.
Ajouter des assignations
Sélectionnez un bouton ou slider en cliquant dessus (il sera alors entouré en jaune) et bougez ou cliquez ensuite simplement sur l'élément de contrôle de votre layout que vous voulez utiliser. Cela associera les deux éléments et vous verrez le lien apparaître dans la liste sur la fenêtre de paramétrage des contrôles.
Une fois que vous avez fini, vous pouvez simplement désactiver le mode de Learning avec le même bouton/menu ou bien avec [Echap].
Note : vous pouvez assigner le même élément de contrôle OSC à plusieurs commandes à la fois. Par exemple, un seul bouton sur votre appareil peut être associé à plusieurs interrupteurs d'effets, ce qui veut dire que quand vous cliquerez dessus, tous ces effets s'activeront en même temps!
⚠️ Si vous créez vous-même vos propre modèle et messages, sachez que HeavyM réagit aux arguments "float" entre 0.0 et 1.0 en OSC. Pour des sliders, 0.0 représente la valeur minimum et 1.0 le maximum. Pour des interrupteurs, 0.0 correspond à OFF et 1.0 à ON.
Editer des assignations
Pour éditer des assignations, réactivez juste le mode de Learning encore une fois. Ensuite, sélectionnez simplement l'élément à modifier et affectez lui une nouvelle commande OSC de la même façon que précédemment.
Supprimer des assignations
Il y a 3 possibilités pour supprimer des assignations:
- Quand le mode de Learning est ON, sélectionnez un élément sur l'interface et cliquez sur [Suppr./Retour]. Cela supprimera l'assignation sélectionnée.
- Faites un clic-droit sur une assignation dans le tableau de la fenêtre Controls et cliquez sur l'option "Delete assignment" ("Supprimer l'assignation"). Cela supprimera l'assignation sélectionnée.
- Utilisez le bouton "Delete all assignments" ("Supprimer toutes les assignations") au-dessus du tableau dans la fenêtre Control. Cela supprimera toutes les assignations OSC du projet.
Sauvegarder les assignations
Les commandes OSC que vous affectez au logiciel sont directement sauvegardées dans votre fichier de projet .hm.
Paramètres d'assignations
Chaque assignation configurée a un lot de paramètres, comme vous pouvez le voir dans la table des assignations de la fenêtre des contrôles.
Pour l'OSC, vous pouvez éditer:
- Le Range ("Intervalle") : ce paramètre apparait sur les champs avec des valeurs numériques ou des sliders par exemple. En indiquant un Min et un Max, vous pouvez outrepasser la plage de variation de l'élément dans l'interface HeavyM. Par exemple, si vous entrez un intervalle de 1 - 15 pour l'épaisseur de l'effet Border, quand vous bougerez le fade qui lui est assigné, les valeurs varieront seulement entre 1 et 15 peut importe jusqu'où vous faites aller votre fader.