Milkymist - La station de VJ interactive libre2010.rmll.info/IMG/pdf/milkymist_rmll2010.pdf ·...
Transcript of Milkymist - La station de VJ interactive libre2010.rmll.info/IMG/pdf/milkymist_rmll2010.pdf ·...
MilkymistTM
La station de VJ interactive libre
Sebastien Bourdeauducq
lekernel
RMLL – 6 juillet 2010
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 1 / 28
Les origines du projet
J’ai commence le VJing en 2005
Logiciel “sale” et ad hoc pour Linux, inspire par MilkDrop
Rendre les performances plus interactives, orientees vers le direct
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 2 / 28
Pourquoi Milkymist?
Fatiguant de ranger toute l’installation a 5h du matin!Longue duree de demarrageRedemarrage en cas de coupure de courantInterfaces (MIDI, DMX, entree video...)
cout eleveproblemes de cablesproblemes de pilotes au mauvais moment
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 3 / 28
L’embarque: plutot sympa!
Toute l’installation tient dans un petit appareil
Operationnel quelques secondes apres la mise sous tension
Faisable? Oui, mais avec un System-on-Chip (SoC) hautesperformances.
Et essayons de faire du materiel libre.
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 4 / 28
Le SoC
Partie I – Le SoC
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 5 / 28
Le SoC Materiel libre, pour de vrai.
Materiel libre, pour de vrai.
Le logiciel libre est un concept bien connu...
Parmi les hackers et artistes: tendance du “materiel libre”
Projets bien connus avec design de circuit imprime ouvert: Arduino,Beagleboard, ...
Mais toute la “magie” est dans une puce proprietaire!
Pas tres libre...!
You know, it’s true, when something exceeds your ability to understand
how it works, it sort of becomes magical. (Publicite iPad)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 6 / 28
Le SoC Le SoC Milkymist
Laissons la magie aux sorcieres!
Plutot que d’utiliser une puce obscure et proprietaire...
...le projet Milkymist developpe son propre System-on-Chip (SoC)
Liberte (sources GNU GPL v3)Interfaces specifiques integreesHautes performancesTaille reduite
Fonctionne aujourd’hui sur FPGA – silicium reconfigurable
acces facile aux outils permettant de modifier et tester le design
Code portable – peu de code a reecrire pour changer de fabricant deFPGA, voire pour “fondre” une puce
You know, it’s true, when something exceeds your ability to understand
how it works, you sort of become stupid.
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 7 / 28
Le SoC Specificites
Specificites
A la base: ordinateur sur puce.
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 8 / 28
Le SoC Specificites
Fonctionnalites pour VJs
Sortie video (VGA)
Entree video (ITU-R BT.656, i.e. PAL/SECAM/NTSC)
Audio (AC’97)
Ethernet (OpenSoundControl...)
MIDI
DMX512
USB
IR (RC-5)
GPIO
Acceleration graphique
Un sous-ensemble d’OpenGL, suffisant pour notre application.
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 9 / 28
Le logiciel
Partie II – Le logiciel
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 10 / 28
Le logiciel It’s the software, stupid!
It’s the software, stupid!
Peut etre que certains pensent...
“Pff, les VJs ne vont pas programmer des FPGA!”
Le FPGA est transparent (sauf si vous cherchez apres)
si nous “fondons” nos propres puces, il disparaıtra totalement
Seul le logiciel definit ce que l’utilisateur final voit.
S’il est bien fait, il peut cacher n’importe quelle complexite technique.
des gens utilisent Mac OS X sur des ordinateurs plus complexes queMilkymist, et pensent que c’est simple.
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 11 / 28
Le logiciel Flickernoise, l’application VJ de Milkymist
Flickernoise, l’application VJ de Milkymist
Demarrage en quelques secondes
Base sur la bibliotheque GUI Genode FX
Effets visuels inspires par MilkDrop
Licence GNU GPL
OS:RTEMS
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 12 / 28
Le logiciel Comment fonctionne le rendu?
Comment fonctionne le rendu?
Base sur un processus iteratif. En deux mots:
Tracer une onde a partir de la musique
“Tordre” l’image
Recommencer...
Demonstration a la fin de la presentation!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 13 / 28
Le logiciel Comment fonctionne le rendu?
Extras
Bordures
“Motion vectors”
Echo video
En cours de developpement:
Ondes et formes configurables
Images definies par l’utilisateur
Mixage video
...
Demonstration a la fin de la presentation!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 14 / 28
Le logiciel Interaction
Parametres du patch
Parametres pour personnaliser le patch, exemples:
comment l’onde est tracee: nWaveModecouleur de l’onde: wave r, wave g, wave bquantite de zoom: zoomquantite de deplacement: dx, dy...
Demonstration a la fin de la presentation!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 15 / 28
Le logiciel Interaction
Equations par image
Permet de changer les parametres au cours du temps
Exemples:
per frame 1=dx=0.1*bassper frame 2=wave r=0.3 + 0.1*sin(6.28*time)...
Demonstration a la fin de la presentation!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 16 / 28
Le logiciel Interaction
Equations par point de controle (vertex)
Configure la distortion sur chaque point de controle
Exemple: per vertex 1=dy=0.1*sin(40*x)
Demonstration a la fin de la presentation!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 17 / 28
Le produit
Partie III – Le produit
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 18 / 28
Le produit Le produit
Le produit
Nous developpons un produit pour utilisateurs finauxUne station de VJ interactive, pas (uniquement) une carte dedeveloppement FPGA!Avec boıtierFonctionne immediatement
Materiel libre egalement (comme le reste)
Developpe, produit et distribue en collaboration avec Sharism at WorkLtd. (Ben Nanonote)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 19 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 20 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 21 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 22 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 23 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 24 / 28
Le produit Milkymist One
Milkymist One (M1)
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 25 / 28
Communaute
Personnes actives
Takeshi Matsuya (Japon) – portage Linux
Yann Sionneau (France) – portage RTEMS (GSoC 2010)
Wolfgang Spraul (Chine) – fabrication et distribution
Michael Walle (Allemagne) – QEMU, portage RTEMS
Adam Wang (Taiwan) – developpement et production electronique
...et moi meme (France) – gestion du projet, developpementelectronique, SoC et Flickernoise
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 26 / 28
Communaute
Communaute
Envie de developper sur une plate forme vraiment libre?
Assez des processeurs de societes comme ARM qui traitent le libreavec mepris et arrogance?
Nous cherchons des developpeurs logiciel.
Vous n’avez pas besoin d’outils ou de connaissances FPGA.
Taches “classiques”, notamment interface utilisateur.
Meme si le VJ ne vous interesse pas, vous etes encourages a reutiliserle code (FPGA, OS, logiciel, ...).
Peut aider a detecter les bugs, a ameliorer le support OS et toolchain.Exemple: experience CoNNeCT de la NASA (radio logicielle, controleurDRAM de Milkymist).
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 27 / 28
Conclusion
Web: http://www.milkymist.org
code source, documentation (GPLv3)liste e-mail, wiki, blog
Mail: sebastien.bourdeauducq [AT] lekernel DOT net
Aux RMLL: sur le stand Hackable Devices (Bearstech)
Demonstration!
Sebastien Bourdeauducq (lekernel) MilkymistTM RMLL – 6 juillet 2010 28 / 28