Pure Data & GEM
Pure Data est un environnement de programmation graphique qui permet de créer des applications multimédias en connectant des blocs de construction visuels appelés objets. Ces objets peuvent être utilisés pour manipuler des signaux audio, vidéo, et de données en temps réel.
Fonctionnalités
- Audio Temps Réel : Pure Data permet le traitement audio en temps réel avec une faible latence, adapté aux performances live.
- Synthèse Sonore : Création de synthétiseurs personnalisés, effets audio, processeurs de signal.
- Contrôle MIDI : traitement des données MIDI pour interagir avec des instruments électroniques et des contrôleurs MIDI.
- Traitement Vidéo : avec GEM et d'autres extensions, manipulation de vidéos et création d'installations visuelles.
- Interaction et Interfaces : intégration de capteurs, interfaces physiques, et réseaux pour des installations interactives visuelles et sonores
GEM
Voir GEM
Concepts de Base
1. Patches :
- Dans Pure Data, vous créez des patches, qui sont des fichiers visuels représentant votre programme.
- Un patch est constitué d'une collection d'objets connectés par des câbles pour former un réseau de traitement de données.
2. Objets :
- Chaque élément de traitement dans Pure Data est un objet. Il existe différents types d'objets pour des tâches variées, comme le traitement audio, la gestion des messages MIDI, la manipulation de données, etc.
- Vous pouvez créer un objet en tapant son nom dans un patch. Par exemple, `[osc~]` pour un oscillateur.
3. Messages :
- Les objets échangent des messages pour communiquer. Ces messages peuvent contenir des données numériques, des chaînes de caractères, ou des commandes.
- Les messages sont souvent déclenchés par des événements interactifs comme des clics ou des entrées utilisateur.
4. Signal Audio :
- Les signaux audio sont représentés par des câbles tilde (`~`), qui indiquent le flux de traitement audio en temps réel.
- Par exemple, `[osc~ 440]` génère un signal audio sinusoïdal à 440 Hz.
5. Graphisme / vidéo:
- Pure Data prend en charge le rendu graphique grâce à l'extension GEM (Graphics Environment for Multimedia), permettant la création d'animations et d'installations visuelles interactives.
6. Bibliothèques complémentaires et extensions
- Les fonctions de Pure Data peuvent être étendues de différentes manières, des patches réalisant certaines fonctions (abstractions), de nouveaux objets (externals) ou des bibliothèques de fonctions (libraries). Ces extensions peuvent être installées grâce à Deken accessible depuis le menu aide / installer des objets complémentaires
Variantes
- PD Vanilla : version de base, qui peut s'accompagner de bibliothèques d'objets additionnelles (type GEM) ou d'abstractions (assemblages d'objets pure data pour réaliser une fonction particulière) comme rjlib
- PD-Extended : Une version enrichie avec de nombreuses bibliothèques supplémentaires, mais cette version n'est plus mise à jour.
- Purr Data (Pd-L2Ork) : Une version moderne avec une interface graphique améliorée
- Plug data qui permet de compiler des patchs pure data pour en faire des plugins pour logiciels de musique
- libpd : intégration dans différents langages de prog , entre autre pour android et iOS
- webpd (pour réaliser des instruments dans le navigateur)
- mobmuplat (réaliser simplement des apps pour android et iOS)
Extensions
- automatonism : synthétiseur modulaire réalisé en pure data
- rjlib : une collection d'abstractions très pratiques pour le son
Liens
- pure data «vanilla» https://puredata.info/
- pd-extended https://puredata.info/
- purr data https://agraef.github.io/purr-data/
- plugdata https://plugdata.org/
- libpd : https://github.com/libpd/libpd
- webpd : https://github.com/sebpiq/WebPd
- mobmuplat : https://danieliglesia.com/mobmuplat/
- automatonism : https://www.automatonism.com/
- rjlib : https://github.com/rjdj/rjlib
Documentation
Documentation intégrée dans chaque objet : clic droit / aide, ou dans le menu aide : navigateur d'aide, liste des objets, etc.
Le navigateur d'aide affiche aussi les fichiers d'aide associés aux abstractions installées par deken, manuellement ou par apt (sur linux)
Apprendre pure data
Livres
“Flossmanual pure data” par collectif “Designing Sound” par Andy Farnell - Un livre sur le design sonore avec Pure Data. “Multimedia programming with pure data”
Liens
- composition générative : https://github.com/emoc/pure-data_tactique
- interaction avec arduino et processing : https://github.com/emoc/arduino_interaction