Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
ateliers:iutaix:accueil [2016/02/08 15:58] resonance [#2 : Plateforme Fablab] |
ateliers:iutaix:accueil [2016/10/23 12:32] (Version actuelle) resonance [État de l'art] |
||
---|---|---|---|
Ligne 10: | Ligne 10: | ||
L' | L' | ||
- | **Pure Data** : Langage de programmation graphique, sorti en 1998, écrit en C, client/ | + | **Pure Data** |
- | + | ||
- | **Pure Data extended** contient Pure Data et y ajoute des bibliothèques dont certaines sont indispensables. C'est celui que l'on utilise. | + | |
- | + | ||
- | **Libpd** est écrit par Peter Brinkmann et permet de réutiliser des composants préexistants (patchs) au sein de n' | + | |
+ | **Pure Data extended** contient Pure Data et y ajoute des bibliothèques (audio, video, image, communications, | ||
{{: | {{: | ||
- | ==== Problématique | + | |
+ | ==== Problèmes | ||
Notre logiciel repose sur Pure Data, et son ergonomie pose problème : | Notre logiciel repose sur Pure Data, et son ergonomie pose problème : | ||
- | * Tcl/Tk est peu performant pour gérer le GUI, avec de fortes latences | + | * Tcl/Tk est peu performant pour gérer le GUI, avec de fortes latences, des bugs et un rendu visuel très pauvre et peu paramétrable. Un gros enjeux de développement pour Pure Data est de séparer le noyau du gestionnaire graphique pour permettre de développer l' |
+ | * La bibliothèque graphique (GEM) qui permet de manipuler des vidéos et des images demande beaucoup d' | ||
* De nombreuses fonctionnalités classiques n'y sont pas : annulations, | * De nombreuses fonctionnalités classiques n'y sont pas : annulations, | ||
- | * Le processus de développement est lent et pénible, des développeurs abandonnent, | + | * Le processus de développement est lent et pénible, des développeurs abandonnent, |
+ | ==== État de l'art ==== | ||
+ | Évidemment Max/MSP, la version payante et propriétaire de Pd, n'a pas tous ces inconvénients. Mais il en a d' | ||
- | ==== Ressources ==== | + | Certains projets tentent d' |
- | Pour aller plus loin : | + | * obsolète : [[http:// |
- | * liste d' | + | * obsolète : DesireData |
- | * discussions | + | * obsolète : ZenGarden |
- | * Tutoriel | + | * [[http:// |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | |||
+ | |||
+ | Quelques ressources pour aller plus loin : | ||
+ | * Liste d' | ||
+ | * Discussions | ||
+ | * Tutoriels | ||
==== Définition des objectifs ==== | ==== Définition des objectifs ==== | ||
- | Libre, Open Source | + | La Malinette doit être un projet libre, multiplateforme |
- | En gras, les priorités " | + | La solution qui semble la plus réaliste est de concentrer |
- | * Liens avec la communautés et les différents projets historiques ou en cours pour que le développement contribue à tous les utilisateurs | + | |
- | * **Installation simplifiée** | + | |
- | * **Une fenêtre** avec des panneaux plutôt que du multi-fenêtre | + | |
- | * **Presets**, | + | |
- | * **Survol** : description des objets | + | |
- | * Gui rapide : séparation du moteur et de l' | + | |
- | * Undos | + | |
- | * Plus d' | + | |
- | * Scroll dans les sous objets | + | |
- | * Fenêtre de preview vidéo gem integré dans le patch | + | |
- | * Lecture vidéo + son | + | |
- | * Piano roll et automation dans le temps sous forme de courbes... | + | |
- | * Zoom | + | |
- | * Agrandir les rectangles entrées/ | + | |
- | * Importer en svg, exporter en pdf, png | + | |
- | * Standalone ? | + | |
- | * Menu avec Icones, intégration facile des images dans les objets (zoom !) | + | |
- | * Connections facile 1 objet à plusieurs etc. | + | |
- | * Enregistrement vidéo, multi écrans | + | |
- | ==== Solutions ==== | + | === Chantier #1 : l' |
- | Voir aussi quelques exemples recensés [[: | + | En priorité, il faut simplifier l' |
- | * Osbolètes : ZenGarden, desiredata, vibrez_pure | + | |
- | * pd2lork | + | |
- | * libpd/ | + | |
- | * Blender [[http:// | + | |
- | * Max msp (Juce Framework) ... | + | |
- | * Qt/ | + | |
- | * Pdenhanced, pof (http:// | + | |
- | * ... | + | |
+ | La nouvelle version " | ||
+ | Pour la Malinette c'est problématique, | ||
+ | |||
+ | Le fichier qui permet de trouver les chemins vers les objets dépend de chaque plateforme, cette [[https:// | ||
+ | |||
+ | Plusieurs options pour améliorer cela : | ||
+ | * le ZIP de la Malinette est créé automatiquement en appuyant sur un bouton d'une page Web. Un programme php devra : télécharger tout ce qu'il faut, ajouter les chemins de recherches des bibliothèques dans un fichier et construire l' | ||
+ | * Quand on télécharge la Malinette, on ne télécharge qu'un petit fichier exécutable (ou un script) qui fera tout ce qu'il faut et installera en plus le programme au bon endroit. | ||
+ | * On peut aussi imaginer une page web qui liste les bibliothèques avec leurs contenu/ | ||
+ | |||
+ | En annexe, s'il y a moyen d' | ||
+ | |||
+ | |||
+ | === Chantier #2 : l' | ||
+ | Le plus réaliste est d' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Objectifs : | ||
+ | * primordial : intégrer ces fenêtres en une seule | ||
+ | * pour le menu, utiliser des éléments graphiques TCL, peut-être plus paramétrables, | ||
+ | * agrandir les rectangles entrées/ | ||
+ | * contrôle plus fins du zoom | ||
+ | * Survol : fait apparaître la description des objets et des entrées/ | ||
+ | |||
+ | |||
+ | Plusieurs options : | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * Solution en TCL classique | ||
+ | * Solution en C/TCLK classique avec | ||
+ | * [[http:// | ||
+ | |||
+ | |||
+ | === Autres chantiers === | ||
+ | * Vidéo : Enregistrement vidéo à améliorer, Lecture vidéo + son, Fenêtre de preview vidéo gem integré dans le patch, multi écrans | ||
+ | * Importer, exporter en svg, pdf, png | ||
+ | * Presets : mémorisation de l' | ||
+ | * Undos : annulation des actions précédentes | ||
+ | * Scroll dans les sous objets et abstractions | ||
+ | * Piano roll et automation dans le temps sous forme de courbes... | ||
+ | * Connections facile entre un objet et plusieurs etc. | ||
+ | * Gui rapide : séparation du moteur et de l' | ||
+ | * Application Standalone | ||
===== #2 : Plateforme Fablab ===== | ===== #2 : Plateforme Fablab ===== |