Apprendre à dessiner avec un piano

Introduction

Je participe depuis son lancement à la formation Learning Creative Learning donnée par le MIT Medialab. Dans le cadre de cette formation il nous a été demandé d’animer un cours, sur le sujet de son choix.

Il se trouve que j’avais participé la semaine précédente à une formation Kawenga intitulée Interactivité Temps Réel / Initiation à Processing (formation animée par Zandrine CHIRI).

J’ai choisi de présenter une application simple de l’interaction temps réel avec Processing, façon « Creative Coding » : dessiner avec un clavier de piano.

Creative Coding et Processing

De façon générale le « Creative Coding » consiste à utiliser la programmation d’un ordinateur dans un but artistique, pour créer des effets visuels ou sonores, des jeux, des installations interactives, …

Il existe plusieurs outils dans ce domaine :

  • par programmation : processing, openFrameworks, PureData
  • outils graphiques : Isadora, Max MSP, Usine, SuperCollider, Scratch

J’ai fait le choix de travailler avec Processing, sur lequel je m’étais personnellement auto-formé depuis quelques temps.

« Processing est un langage de programmation Open Source et un environnement pour les gens qui veulent créer des images, des animations et des interactions. » J’ajouterais aussi « du son ».

Processing tourne sur PC/Mac/Linux, il est gratuit.

Prérequis

Pour cet exercice, côté matériel, nous aurons besoin :

  • d’un clavier MIDI,
  • d’un convertisseur MIDI USB,
  • d’un câble MIDI,
  • d’un ordinateur.

Côté logiciel :

  • du logiciel Processing

Un programme Processing est toujours composé des éléments suivants :

  • import de librairies
  • déclaration de variables globales
  • une fonction setup() : initialiser tout ce qui doit l’être au début du programme
  • une fonction draw() : cette fonction est appelée en permanence par Processing, c’est ici qu’on dessine
  • une ou plusieurs fonctions callbacks de capture d’événements : souris, clavier, appui sur une touche de piano

Dessiner avec un piano

Règles du jeu

On démarre avec une scène blanche.

Lorsqu’une touche de piano est enfoncée :

  • on dessine un signe à un endroit aléatoire de la scène
  • la taille du signe dépend de la pression sur la touche
  • on dessine une ligne entre le signe précédent et le nouveau signe

2 enfants – 2 côtés du piano – 2 côtés de la scène

Pour rendre le jeu un peu plus attrayant pour mes 2 petits j’ajoute la règle suivante :

  • si la touche est frappée côté gauche du piano, le signe est dessiné côté gauche de la scène
  • inversement, si la touche est frappée côté droit du piano, le signe est dessiné côté droit de la scène

Messages MIDI

Tout est expliqué ici : MIDI Messages.

Le clavier MIDI envoie des messages à chaque fois qu’une touche est enfoncée.

Un message MIDI est composé :

  • d’un statut (sur 1 octet)
  • de données additionnelles (sur 2 octets)

Le seul message qui nous intéresse se nomme « Note On » :

  • Statut = 10010000 (canal 0) = 0×90 (héxadécimal)
  • La note et la puissance sont stockées dans les 2 octets de données additionnelles

C’est parti

A partir de là on dispose de toutes les informations utiles pour programmer le jeu.

Le code Processing se trouve ici.

Aller plus loin

Ce petit exemple montre comme il est simple de connecter un instrument et un ordinateur et de les faire interagir.

Voici quelques idées pour aller plus loin :

  • raffiner le dessin (courbes de Béziers, images, couleurs)
  • plus de joueurs
  • capturer d’autres types d’événements (clavier, souris, caméra, son, …)
  • dans l’autre sens : faire jouer le piano en dessinant
  • se connecter à d’autres personnes par internet
  • le faire en live ! (concerts, spectacles)

Je découvre les possibilités d’interactions temps-réel de Processing et suis intéressé par tout retour si vous avez vous-même connecté un instrument de musique, ou autre.

Posted in Non classé | Leave a comment

Alentours Nord de Montpellier – côté jardin

J’ai le plaisir de vous annoncer la publication d’une 8ème balade à vélo aux alentours de Montpellier.

Cette balade (faite hier en plein cagnard) vous fera quitter Montpellier par le nord, en suivant la ligne de tramway T1.

A l’approche de Grabels on quittera la piste cyclable pour s’enfoncer dans la garrigue qui sépare Grabels de Saint-Gély, qu’on rejoindra après une côte assez rude et caillouteuse.

On arrivera rapidement à Saint-Clément où on traversera de beaux quartiers remplis de maisons d’architectes plus luxueuses les unes que les autres.

De là on passera sur la commune de Montferrier, encore de beaux quartiers, d’où on rejoindra Montpellier.

La balade peut être assez fatigante pour cause de montées/descentes parfois un peu raides. Mais l’effort sera payant. Il est impératif d’être équipé d’un VTT, les VTC risquent de ne pas tenir le choc de la traversée entre Grabels et Saint-Gély.

Les détails de cette balade sont ici : Montpellier – Grabels – Saint-Gély – Saint-Clément – Montferrier

Bonne route !

Posted in Non classé | Tagged , | Leave a comment

Se débarrasser des fourmis dans un ordinateur portable

Vous avez des fourmis dans votre ordinateur portable ? Voici une solution simple et qui ne nécessite l’utilisation d’aucun appât.

Suivez ces conseils et les fourmis partiront d’elles-mêmes.

Ce dont vous aurez besoin pour faire partir les fourmis

  1. Vous aurez besoin d’un plateau dans lequel vous pourrez mettre de l’eau
  2. Vous aurez besoin d’un objet plat, lourd et stable que vous pourrez placer dans le plateau rempli d’eau, votre socle. Si vous utilisez un bol, prenez-en un suffisamment lourd pour qu’il ne flotte pas
  3. Vous aurez besoin d’un bâton, d’une cuillère, d’une règle qui ne devra pas glisser
  4. Vous aurez besoin d’un ordinateur portable infesté de fourmis. Cette solution s’applique si vous avez un sérieux souci de fourmis. Si vous n’en avez qu’une ou deux faîtes les simplement disparaître en soufflant ou en les balayant.

Montez votre installation anti-fourmis

  1. Commencez par remplir votre plateau d’eau. Il n’est pas nécessaire de le remplir à ras-bord. Just suffisamment pour couvrir le fond du plateau. Mettez-le quelque part ou vous pourrez le laisser sans risque de le renverser.
  2. Positionnez le socle au milieu du plateau.
  3. Assurez-vous que votre ordinateur portable est éteint et débranché, placez-le soigneusement sur le socle. Vérifiez que rien, en dehors du socle, ne touche l’ordinateur portable.
  4. Placez votre bâton/cuiller de telle façon qu’il touche à la fois l’ordinateur et le bord du plateau. Assurez-vous qu’il ne risque pas de glisser.
  5. Laissez le dispositif en l’état pendant une nuit.

Pourquoi ça marche ?

Pourquoi les fourmis quittent-elles l’ordinateur portable ?

Les fourmis ont un instinct de survie très développé. Soit vos fourmis mangent de la nourriture que vous (où vos chers petits) avez laissé tomber, soit elles se sont définitivement installées. Dans un cas comme dans l’autre elles patrouillent leur nouvel habitat en permanence. Après avoir réalisé que le chemin chimique qui les a menées jusqu’à votre ordinateur n’est plus là, elles chercheront une alternative. La cuiller sera trouvée comme issue et elles suivront ce chemin. Et parce qu’un chemin au-dessus de l’eau n’est pas très sûr, elles ne l’utiliseront pas pour revenir.

L’auteur de cet article a vécu en Inde où son père lui a montré cette technique.

Pour ma part je l’ai testée avec succès. Plus trace de fourmis jusqu’à présent.

J’aime particulièrement l’idée de n’utiliser ni appât, ni produit chimique.

Si vous avez utilisé cette technique, je serais intéressé de vos retours.

L’article original, dont est tiré le dessin explicatif, peut être consulté ici : « Getting rid of laptop ants »

Merci à son auteur de m’avoir autorisé à le traduire et à le publier ici.

Posted in Non classé | Tagged | Leave a comment

Comme un pied – For The Remainder

Près de 6 mois après le dernier post sur ce blog, je reprends la plume pour partager deux coups de coeurs.

Le premier est court-métrage animé réalisé par Omer Ben David, un film de fin d’études à l’académie Bezalel (Jérusalem).

La technique n’a rien de commun avec ce que j’ai pu voir jusqu’à présent. On dirait, comment dire, du dessin crayonné 3D. L’histoire est simple et touchante, la bande son envoutante. Un petit chef d’oeuvre, je n’ai pas peur des mots.

Le second coup de coeur est une saga radiophonique diffusée sur Arte Radio fin 2010 racontant les aventures rocambolesques d’un club de foot de Dakar.

Le premier épisode à écouter ci-dessous.

La suite sur le site d’Arte Radio : Comme Un Pied.

Posted in Non classé | Tagged , | Leave a comment

C’est quoi ce morceau sur FIP ? – script Tasker pour Android

FIP n’annonce pas le morceaux qui sont diffusés, et je trouve ça plutôt bien : moins de blabla, plus de place à la musique.

Pourtant, souvent j’aimerais pouvoir noter la référence d’un morceau, pour des recherches ultérieures.

Il est bien sûr possible :

  • d’aller sur le site web fipradio.com et de consulter le nom du morceau en cours de diffusion mais on n’a pas forcément un accès facile au web
  • de noter la date et l’heure et de retrouver le nom du morceau après coup grâce aux archives mais on n’a pas forcément de quoi noter au moment de l’écoute et le risque d’erreur est important si on n’est pas à l’heure

Ce petit script Tasker pour Android va simplement lire le contenu de la page présentant le morceau en cours de diffusion, en extrait le nom du morceau, de l’artiste, de l’album et les références additionnelles et compose un courriel avec ces informations qui peut être envoyé à n’importe quelle adresse.

Pour ma part j’expédie le tout à mon compte Springpad avec le tag #FIP pour dépouillement ultérieur.

Reste à créer un raccourci sur le bureau Android en lui associant la tâche Tasker ainsi créée.

Le script peut être adapté pour d’autres radios, pourvu qu’elles fournissent une page indiquant le morceau en cours de diffusion.

Voici donc le script :

A1: Get HTTP [ Serveur:Port:sites.radiofrance.fr/chaines/fip/endirect Chemin: Attributs: Délai:11 Type Mime:text/html Fichier de sortie:]
A2: Séparer une variable [ Nom:%HTTPD Séparateur:<SPAN><B> Supprimer la base:Off]
A3: Séparer une variable [ Nom:%HTTPD2 Séparateur:</B> | Supprimer la base:Off]
A4: Séparer une variable [ Nom:%HTTPD22 Séparateur:</SPAN> Supprimer la base:Off]
A5: Séparer une variable [ Nom:%HTTPD222 Séparateur:album : Supprimer la base:Off]
A6: Séparer une variable [ Nom:%HTTPD2222 Séparateur:<br> Supprimer la base:Off]
A7: Séparer une variable [ Nom:%HTTPD22222 Séparateur:</TD> Supprimer la base:Off]
A8: Composer un Email [ Destinataire(s):springit+xxxxxxxxx@springpadit.com Sujet:Fip Direct #Musique #FIP Message:Titre : %HTTPD221
Artiste : %HTTPD21
Album : %HTTPD22221
Reference : %HTTPD222221]

D’autres scripts pour Tasker sur ce blog : ici.

Posted in Non classé | Tagged , | Leave a comment

Consommation batterie Mac OS X 10.7 Lion

Apple Mac OS X LionAprès avoir mis à jour mon MacBook vers Mac OS X 10.7 (Lion), j’ai observé une consommation batterie significativement plus élevée que sous 10.6 (Snow Leopard). Ce problème a été remonté de nombreuses fois dans les forums Apple et autres.

Je vous livre ici une solution qui a marché dans mon cas. Il s’agit de faire un reset du “Power Manager”.

1. Éteindre l’ordinateur

2. Maintenir enfoncées les touches Ctrl+Option+shift

3. Pendant que ces 3 touches sont enfoncées, maintenir enfoncé le bouton Power pendant au moins 10 secondes.

4. Rallumer l’ordinateur

L’opération m’a permis de revenir à une situation “normale”. Le gain dans mon cas est assez relatif car ma batterie a déjà subi un assez grand nombre de cycles mais certaines personnes ont noté un doublement de la durée d’utilisation.

Source : fil de discussion Forum Apple.

D’autres en revanche ont eu moins de chance : d’autres pistes sur les forums Apple.

Posted in Non classé | Tagged | Leave a comment

The Backwater Gospel, The External World

L’animation, ce n’est pas que pour les enfants. C’est le fil conducteur des 2 courts-métrages d’animation que je présente aujourd’hui. Les âmes sensibles (enfants ou non) doivent s’abstenir de visionner ces 2 films.

The Backwater Gospel

The Backwater Gospel est le film de fin d’études de 8 étudiants de l’école danoise “The Animation Workshop”. Il y est question d’une petite communauté isolée dans les années 30 aux Etats-Unis, d’un pasteur déterminé à régenter la vie de ses ouailles, et d’un croque-mort. Comme je l’ai dit plus haut c’est assez/super violent.

The External World

Après le triomphe de “Please Say Something”, lauréat, entre autres, de l’Ours d’Or du meilleur court-métrage à la Berlinale en 2009, David O’Reilly revient avec un nouveau film d’animation qui ne devrait pas connaître un succès moindre.

Dans “The External World” il est question “d’un garçon qui apprend à jouer du piano”. Mais c’est peu dire que l’histoire part dans tous les sens. Comme pour le court précédent plusieurs scènes peuvent (devraient ?) choquer, vous voici prévenus.

Posted in Non classé | Tagged | Leave a comment

Les films nominés pour l’Oscar 2011 du Meilleur Court-Métrage d’Animation

Le 27 février 2011 aura lieu la 83ème cérémonie des Academy Awards dans plus de 50 villes américaines. A cette occasion, l’Oscar du meilleur court-métrage d’animation sera décerné à l’un des films suivants.

“Day & Night” Teddy Newton

Day & Night est une réalisation des studios Pixar. Il était projeté en ouverture de Toy Story 3.

“The Gruffalo” Jakob Schuh and Max Lang

“The Gruffalo” est un conte pour enfants en images de synthèse. L’histoire, tirée d’un livre pour enfants à succès, est celle du périple d’une petite souris. Poétique et amusant. Il a été diffusé sur la BBC à Noël 2009.

Image de prévisualisation YouTube

- extrait Gruffalo (1’2”) -

“Let’s Pollute” Geefwee Boedoe

Un clip militant sur l’étonnante capacité humaine à toujours plus polluer, d’aussi loin qu’on puisse se souvenir.

“The Lost Thing” Shaun Tan and Andrew Ruhemann

Un jeune homme découvre une étrange créature, une “chose perdue”, mi-mécanique mi-animale, et s’attache à lui trouver un point de chute.

“Madagascar, carnet de voyage (Madagascar, a Journey Diary)” Bastien Dubois

Comme son nom l’indique, Madagascar, carnet de voyage est un carnet de voyage à Madagascar. Bastien DUBOIS nous y raconte son périple sur la Grande Île en mélangeant les techniques d’animation. Le résultat : un tourbillon de rythmes, de couleurs, de parfums presque !

Image de prévisualisation YouTube

Conclusion

Conclusion ? Pas évident…

Mon coeur balance entre Madagascar, Carnet de Voyage et Let’s pollute. La 3D me lasse un peu, question d’humeur, en ce moment. Et Day & Night, quoique rigolo, ne me paraît pas avoir les épaules pour un Oscar.

Posted in Non classé | Tagged | Leave a comment

Commander la modification de son fond d’écran par courriel avec Tasker

Uwe EISCHENS - SHADOWS AND A BENCH - www.accessible.de

Un peu sur le même modèle que le script qui permet de modifier périodiquement son fond d’écran en allant chercher une image dans un flux RSS, voici un script qui permet de modifier son fond d’écran en décodant le sujet d’un courriel reçu sous K9Mail.

Pour les gens qui comme moi, sont abonnés à tout un tas de photoblogs, c’est un grand plaisir que de pouvoir simplement commander la modification de son fond d’écran avec une photo dénichée quelque part.

Le courriel doit avoir comme sujet : wallpaper <URL de l’image>.

Le fonctionnement du script est le suivant :

  1. en attente d’un évènement de type “arrivée d’un courriel K9Mail ayant pour sujet wallpaper*” (contexte Tasker),
  2. lorsque l’évènement se produit, décodage du sujet du courriel pour extraire l’URL qui se trouve à droite du mot-clé wallpaper,
  3. chargement de cette image dans le dossier /download
  4. vérifications d’usage (extensions .jpg et .png seules autorisées pour les fonds d’écran android) et application comme fond d’écran.

En langage Tasker, ça donne ça :

A1: Variable Split [ Name:%ESUBJ Splitter:http:// Delete Base:On ]
A2: Variable Set [ Name:%EXT To:None Do Maths:Off Append:Off ]
A3: If If [ %ESUBJ2 ~ *.jpg ]
A4: Variable Set [ Name:%EXT To:.jpg Do Maths:Off Append:Off ]
A5: End If
A6: If If [ %ESUBJ2 ~ *.png ]
A7: Variable Set [ Name:%EXT To:.png Do Maths:Off Append:Off ]
A8: End If
A9: If If [ %EXT !~ None ]
A10: HTTP Get [ Server:Port:%ESUBJ2 Path: Attributes: Timeout:60 Mime Type:image/* Output File:download/wallpaper%EXT ]
A11: Set Wallpaper [ Image:download/wallpaper%EXT ]
A12: End If

Notes :

  1. les URLs tasker n’incluent pas l’habituel http://, qu’on utilise ici, du coup, comme séparateur pour la commande ‘Variable Split’.
  2. regrettablement il n’est pas possible de décoder le corps d’un courriel avec Tasker (voir les dernières propositions en date sur cette question) ce qui oblige à mettre toutes les informations dans le sujet.

Le script peut être adapté pour n’accepter que les courriels en provenance d’adresses courriel spécifiques ou en s’assurant qu’un mot de passe est présent dans l’entête du message, pour éviter les mauvaises blagues.

D’autres scripts pour Tasker sur ce blog : ici.

Posted in Non classé | Tagged , | Leave a comment

Cultivez vos amis sans effort avec Tasker

L’ignorance crasse de vos amis vous exaspère mais vous n’osez pas leur dire ? Ce script Tasker est fait pour vous.  Je rappelle que Tasker est une application Android permettant d’automatiser des tâches sur son téléphone.

Le script que je présente ici a pour but :

  1. de récupérer l’image du jour sur le site http://www.bonjourmadame.fr (en parcourant le flux RSS du site)
  2. de récupérer la citation actuelle sur le site http://www.quotes4all.net (idem)
  3. de packager le tout dans un message qui peut ensuite être envoyé manuellement ou automatiquement par courriel ou SMS

Il est bien sûr possible d’adapter le script en modifiant le site source pour les images ou celui pour le texte d’accompagnement. En fonction de la fréquence à laquelle on utilise le script on pourra également choisir un flux RSS avec une mise à jour plus fréquente sur quotes4all.

Personnellement je n’ai pas réussi à configurer la commande de récupération du texte pour lire correctement un fichier encodé en ISO-8859-1 avec accents. Ceci permettrait par exemple d’aller lire le flux RSS de la rubrique ‘citations’ du site Evene. Je suis preneur de toute suggestion.

Voici le détail de la commande Tasker :

A1: HTTP Get [ Server:Port:feeds2.feedburner.com/BonjourMadame Path: Attributes: Timeout:10 Mime Type:text/html Output File:download/bm.txt ]
A2: Variable Clear [ Name:%HTTPD2 ]
A3: Variable Clear [ Name:%HTTPD21 ]
A4: Variable Split [ Name:%HTTPD Splitter:&lt;img src="http:// Delete Base:On ]
A5: Variable Split [ Name:%HTTPD2 Splitter:"/&gt; Delete Base:On ]
A6: HTTP Get [ Server:Port:%HTTPD21 Path: Attributes: Timeout:10 Mime Type:image/* Output File:download/bm.jpg ]
A7: HTTP Get [ Server:Port:quotes4all.net/rss/540010110/quotes.xml Path: Attributes: Timeout:10 Mime Type:text/xml Output File:download/quotes.xml ]
A8: Variable Split [ Name:%HTTPD Splitter:<description> Delete Base:Off ]
A9: Variable Split [ Name:%HTTPD3 Splitter:</description> Delete Base:On ]
A10: Variable Split [ Name:%HTTPD Splitter:<title> Delete Base:Off ]
A11: Variable Split [ Name:%HTTPD4 Splitter:</title> Delete Base:Off ]
A12: Compose MMS [ Number:06xxxxxxxx Subject:Bonjour Madame Message:%HTTPD31 - %HTTPD41 Attachment:download/bm.jpg ]

D’autres scripts pour Tasker sur ce blog : ici.

Posted in Non classé | Tagged , | 1 Comment