1 contribution / 0 nouveau(x)
Portrait de lapiNIC
Hors ligne
Dernière visite: Il y a 1 année 8 mois
A rejoint: 21/10/2012 - 18:24
Contributions: 556
Utiliser votre Kinect pour piloter Renoise [windows]

Ce tuto vous montre comment faire usage d'une série de softs gratis, Midi Yoke, Kinectar, Ethno Tracker, combinés à un package de drivers spécifiques pour le capteur Kinect de Microsoft, qui une fois mis bout à bout, vous permettent de piloter Renoise avec en entrée les mouvements captés par une Ms Kinect.

Pour les newbies, la Kinect, c'est ça :

La Kinect est apparue dans le monde de la X-Box et vous permet initialement de jouer à des jeux plutôt orientés "danse", en reproduisant des motifs en rythme avec ceux des avatars qui dansent à l'écran, et plus vous êtes en phase avec vos avatars, meilleur est votre score (je résume), mine de rien, ce type d'apprentissage est efficace, moi j'ai jamais joué à ça, j'ai un peu passé l'âge de ces conneries, mais ma voisine une petite fille de 7 ans, elle y est à fond. Il n'en reste pas moins que de nombreux geeks et hackeurs se sont emparés de ce périphriques pour le détourner de sa fonction commerciale et ludique initiale et en faire quelque chose de différent, des interfaces par exemple.

 

Donc reprenons.

Le coeur du lien Kinect / Renoise s'appelle Kinectar. Voici une capture d'écran de son module de commande MIDI.

Posted Image  

Suivez pas à pas ces étapes. Elles supposent en premier lieu que vous ayez branché une Kinect sur un de vos ports USB, inutile d'aller plus loin si vous n'êtes pas dotés de ce périphérique. Inutile d'aller plus loins si vous n'êtes pas non plus sous Windows au niveau de votre O.S..

[0]. télécharger Kinectar for Windows ; l'archive contient 2 logiciels, le premier s'appelle Ethno Tracker, qui capture les mouvements du corps et les convertit en données brutes, elles mêmes envoyées en sortie via un protocole appelée OSC (que vous devez connaître car le Manuel de Référence en parle). Le second soft situé dans l'archive, c'est Kinectar, une sorte de convertisseur de signaux de type OSC en signaux MIDI (même si Kinectar est capable d'aller au delà, son interface dispose de fonctionnalité et de capacités de modulations plus avancées).

[1]. déjà désinstallez tous les drivers/périphériques OpenNi, Primesense, installés dans votre gestionnaire de périphérique ; il vous suffit d'aller chercher les installations dans Programmes & Fonctionnalités, et de désinstaller tout ; une fois que c'est fait, votre Gestionnaire de Périphériques ne devrait plus reconnaître les trois éléments composant la kinect. Ensuite, réinstallez tous ces drivers mais en utilisant le package suivant (gratis rassurez-vous) qui est hautement recommandé, ZigJSOpenNI_v1.0.1 installer package

[2]. si vous ne l'avez pas déjà fait, installez MIDI Yoke, un programme gratuit qui émule un périphérique Midi I/O virtuel, une fois que c'est fait, redémarrez votre ordinateur

[3]. fermez votre connextion internet ! (en effet de temps en temps, le protocole OSC essaie d'envoyer des données via un IP déjà utilisé, et on se sait comment, ça produit une sorte de flood, les ralentissements sur la bande passante font que le logiciel se fige pendant deux minutes, puis déstabilisent le driver Primesense qui ralentit ou crashe carrément)

[4]. lancez kinectar - au début, ça ne marchera pas - c'est normal - quelque chose doit nourrir kinectar, lequel attend qu'un autre programme lui envoie via OSC des données à mouliner

[5]. lancez ethno tracker, définissez un écran de travail assez large, 1600x900 par exemple aussi votre led rouge de Ms Kinect devrait-il s'allumer, mettez vous donc en pose "T", vous verrez qu'Ethno Tracker est très rapide pour la détection des mouvements et des poses, ce qui est une bonne chose.

[6]. Ethno tracker enverra en premier ses données à Kinectar via le protocol OSC, en utilisant le port 8001 (En fait, Kinectar autodetecte Ethno tracker) et après quelques mouvements effectués, Kinectar est en phase avec Ethnotracker et ses deux indictauers d'activité d'entrée et de sortie virent au vert.

[7]. vous allez vous demander, "mais comment diable faire que Kinectar se comporte comme un contrôleur MIDI et pilote Renoise ? "crying

[8]. réponse : il vous faut aller dans l'Instrument Editor, sous Kinectar, puis dans la section Control Changes, veillez bien à être en mode A, checkez la case à cocher A sur la gauche, pour activer l'émission des données, sélectionnez "coords(body)" dans la liste déroulante, définissez un axe,(exemple, x), et placez le curseur vertical au milieu d'une marge min/max réaliste par rapport aux mouvements que vous pouvez faire avec votre Kinect. Checkez la case MIDI, selectionnez le canal (1 par exemple) : et définissez dans la liste déroulante le périphérique virtuel : Midi Yoke 1 output device. Notez que si tout est bien paramétré, quand vous bougez vos bras ou votre corps, ça devrait aussi faire bouger le slider dans la section Control Changes, et sachez qu'à ce moment-là, Keynectar est en train d'envoyer des messages Midi en sortie vers un pseudo périphérique MIDI Yoke 1.

[9]. Donc (dernière étape) quand vous lancez Renoise ça va énumérer vos périphériques MIDI au démarrage de Renoise, entre autre, le périphérique MIDI Yoke 1, que vous retrouverez bien au chaud dans le menu Edit, Preferences... Midi ; definissez donc MIDI Yoke 1 comme votre périphérique d'entrée MIDI par défaut dans la boite des préférences de Renoise.

[10]. En haut à droite de l'écran de Renoise, vous avez le bouton MIDI Map, qui vous permet de sélectionner n'importe quel élément de l'interface et de l'assigner à n'importe quel mouvement de contrôleur MIDI, là je vous renvoie au chapitre du manuel de référence pour les bases du MIDI Map sous Renoise.

[11]. Ca marche : je viens de mapper 3 sliders sans efforts. yes

Je me demande enfin s'il serait possible d'écrire une sorte de script LUA, qui pourrait plus directement faire le job, c'est à dire, faire que Renoise utilise directement 'Ethno Tracker, et interpréte directement les messages OSC entrants qui lui sont envoyés, sans plus passer par Kinectar puisque, comme vous le savez, Renoise supporte le protocole OSC. 

Amusez-vous !

 

Édité par: lapiNIC activé 10/01/2013 - 18:57