diff --git a/puredata_fr.md b/puredata_fr.md index 7577ba9..e31920c 100644 --- a/puredata_fr.md +++ b/puredata_fr.md @@ -396,6 +396,118 @@ externals** option. \newpage + +## Chapitre 9 : Filtres + +Installer le external qui va bien pour le bob ++ test + ++ lissage fréquences de coupure + + +## Chapitre 10 : Drum machine + +On peut charger et jouer des fichiers sons à l'aide de l'objet **readsf~**. Pour cela il faut déclencher l'envoi d'un **message "open Chemin/Vers/Mon_Fichier.wav"** dans l'objet readsf~. Le chargement du fichier est alors complètement géré par Pure Data. + +Pour fabriquer une boîte à rythme, il faut rajouter à l'objet readsf~ une fonctionnalité de **séquenceur**, qui déclenche des notes au bon moment. Pour fabriquer un séquenceur facilement, on va combiner un métronome **metro** avec un compteur qui boucle - voir l'objet **mod** pour l'opération de modulo - puis un objet **select** qui redirige chaque valeur de décompte. + +Ci-dessous, vous trouverez des patches d'une boîte à rythme très simple, et d'une seconde boîte à rythme configurable. + +![drum machines](./resources/vy4d.jpg) + +### À faire + +* Re-créer ces deux patches, et les essayer + +### Challenge +* Rendre cette boîte à rythme polyphonique ! (Pour jouer plusieurs sons en même temps) + +### Ressources + +* **patches** + * [simple drum machine](./resources/08_gamepad_and_filter.pd) + * [advanced drum machine](./resources/09_advanced_drum_machine.pd) +* **samples** + * [drum samples zip file](./resources/808_drum_kit.zip) + +--- + +\newpage + + +## Chapitre 11 : Sub-patches et Abstractions + +\newpage + + + +## Chapitre 12 : Pure Data Orchestra + +La boîte à rythme de l'exemple précédent peut être utilisée pour créer un patch qui joue à la fois de la musique séquencée (aléatoire), et des boucles des synthés précédents. + +Pour gérer les transitions entre notes, un nouvel objet appelé **vline~** est introduit dans le patch ci-dessous. Il permet d'obtenir des courbes de transition douces pour le volume des notes, ou d'autres paramètres comme les fréquence de coupure des filtres. En synthèse audio, ces courbes de transition sont appelées des **enveloppes**. + +![putting it all together](./resources/8bpn.jpg) + +### À faire + +* Un patch personnalisé ! En vous inspirant des exemples précédents... Et surtout de vos idées + +### Ressources + +* **patches** + * [music by numbers](./resources/10_putting_it_all_together.pd) +* **online information** + * [envelopes](http://write.flossmanuals.net/pure-data/envelope-generator/) + +--- + +\newpage + + +## Chapitre 13 : effets audio avancés - délai + +Parmi les effets audio, les plus basiques (présents dans l'exemple précédent Pure Data Orchestra) sont les filtres. Ils filtrent - c'est-à-dire suppriment - certains fréquences du signal, comme les fréquences hautes, les fréquences basses, les médiums, etc. + +Dans une autre catégorie, beaucoup d'effets sont basés sur le principe des **lignes de délai**. Une ligne de délai peut être vue comme un morceau d'une bande magnétique sur lequel on va aller écrire et lire du son (pour ceux à qui cet exemple parle...). Concrètement, dans l'ordinateur, la ligne de délai est un morceau de mémoire RAM dans lequel on va aller écrire et lire. + +Par rapport aux simples connexions de signaux de données, sur lesquelles le son numérique ne reste que sur une durée infiniment courte, l'intérêt d'une ligne de délai est que le son est encore accessible pendant un certain temps. On peut donc aller écrire (avec **delwrite~**) le son qu'on souhaite, puis lire (avec **delread~**) le son avec un retard que l'on peut choisir. + +![patch delay](./screenshots/11-delai-simple.png) + +### À faire +* Créer un délai simple pour un de vos synthétiseurs + +### Challenge +* Transformer ce délai en un effet "écho". Pour cela, il faut ajouter un *feedback*, c'est-à-dire que la ligne de délai doit additionner à elle-même le signal d'entrée avec délai. On obtient ainsi un "écho" qui dure assez longtemps (plusieurs réflections du son, de plus en plus faibles) +* Rajouter un filtre sur les réflections de l'écho, pour faire un *space echo* + +### Ressources +* [Delay sur wikipedia (avec extraits audio)](https://fr.wikipedia.org/wiki/Delay_(effet)) +* [Patch du délai simple](./resources/11_delay.pd) +* [Patch du délai écho](./resources/11_delay-feedback.pd) + + + +## Chapitre 14 : effets audio avancés - flanger + +Un autre effet est le flanger. Le principe est assez proche du délai : on va ajouter au signal sonore une copie de lui-même, mais avec cette fois un délai très court. L'effet obtenu est assez facilement reconnaissable (essayer le patch ci-dessous). + +![flanger patch](./screenshots/12-flanger.png) + +### À faire +* Re-créer et tester le patch ci-dessus +* Créer un flanger simple pour un de vos synthétiseurs, en utilisant **delread4~** plutôt que delread~. + +### Challenge +* Introduire une légère modulation (variation au cours du temps) sur le délai du flanger + +### Ressources +* [Flanger sur wikipedia (avec extraits audio)](https://fr.wikipedia.org/wiki/Flanger) +* [Patch du flanger](./resources/12_flanger.pd) + + +\newpage + ## Chapter 9: package manager, external libraries While it is very important and satisfying to make your own puredata patches from scratch, there are a lot of extra libraries that can provide you with essential building blocks. @@ -432,116 +544,20 @@ You can download automatonism from the link below. -## Chapitre 10 : Filtres +## Chapitre 16 : OSC et musique contrôlée par la météo -Installer le external qui va bien pour le bob -+ test + -+ lissage fréquences de coupure +L'OSC (*Open Sound Control*) est un protocole fréquemment utilisé pour la communication entre . Les messages OSC peuvent être transmis via des paquets UDP/IP (ou plus rarement TCP/IP) entre des machines connectées sur un même réseau. +On ne va pas trop s'étendre sur ce standard, mais il faut quand même connaître la structure de base des messages. -## Chapitre 11 : Drum machine +Il sont ***************:::: -On peut charger et jouer des fichiers sons à l'aide de l'objet **readsf~**. Pour cela il faut déclencher l'envoi d'un **message "open Chemin/Vers/Mon_Fichier.wav"** dans l'objet readsf~. Le chargement du fichier est alors complètement géré par Pure Data. - -Pour fabriquer une boîte à rythme, il faut rajouter à l'objet readsf~ une fonctionnalité de **séquenceur**, qui déclenche des notes au bon moment. Pour fabriquer un séquenceur facilement, on va combiner un métronome **metro** avec un compteur qui boucle - voir l'objet **mod** pour l'opération de modulo - puis un objet **select** qui redirige chaque valeur de décompte. - -Ci-dessous, vous trouverez des patches d'une boîte à rythme très simple, et d'une seconde boîte à rythme configurable. - -![drum machines](./resources/vy4d.jpg) - -### À faire - -* Re-créer ces deux patches, et les essayer - -### Challenge -* Rendre cette boîte à rythme polyphonique ! (Pour jouer plusieurs sons en même temps) +Attention : lorsque le *receiver* OSC (qui réceptionne les données du RPi serveur) est présent dans un patch, il se connecte automatiquement sur le port pour lequel il est configuré - ici, cela doit être le port 8081. +Or, pour une machine donnée, 1 seul programme peut se mettre en écoute d'un port ; il ne faut donc avoir qu'un seul patch PureData ouvert à la fois pour que la boîte "mrpeach/receiver" fonctionne à coup sûr. ### Ressources +* [OSC et bibliothèque MrPeach](https://fr.flossmanuals.net/puredata/osc/) -* **patches** - * [simple drum machine](./resources/08_gamepad_and_filter.pd) - * [advanced drum machine](./resources/09_advanced_drum_machine.pd) -* **samples** - * [drum samples zip file](./resources/808_drum_kit.zip) - ---- - -\newpage - - -## Chapitre 12 : Sub-patches et Abstractions - -\newpage - - - -## Chapitre 13 : Pure Data Orchestra - -La boîte à rythme de l'exemple précédent peut être utilisée pour créer un patch qui joue à la fois de la musique séquencée (aléatoire), et des boucles des synthés précédents. - -Pour gérer les transitions entre notes, un nouvel objet appelé **vline~** est introduit dans le patch ci-dessous. Il permet d'obtenir des courbes de transition douces pour le volume des notes, ou d'autres paramètres comme les fréquence de coupure des filtres. En synthèse audio, ces courbes de transition sont appelées des **enveloppes**. - -![putting it all together](./resources/8bpn.jpg) - -### À faire - -* Un patch personnalisé ! En vous inspirant des exemples précédents... Et surtout de vos idées - -### Ressources - -* **patches** - * [music by numbers](./resources/10_putting_it_all_together.pd) -* **online information** - * [envelopes](http://write.flossmanuals.net/pure-data/envelope-generator/) - ---- - -\newpage - - -## Chapitre 14 : effets audio avancés - délai - -Parmi les effets audio, les plus basiques (présents dans l'exemple précédent Pure Data Orchestra) sont les filtres. Ils filtrent - c'est-à-dire suppriment - certains fréquences du signal, comme les fréquences hautes, les fréquences basses, les médiums, etc. - -Dans une autre catégorie, beaucoup d'effets sont basés sur le principe des **lignes de délai**. Une ligne de délai peut être vue comme un morceau d'une bande magnétique sur lequel on va aller écrire et lire du son (pour ceux à qui cet exemple parle...). Concrètement, dans l'ordinateur, la ligne de délai est un morceau de mémoire RAM dans lequel on va aller écrire et lire. - -Par rapport aux simples connexions de signaux de données, sur lesquelles le son numérique ne reste que sur une durée infiniment courte, l'intérêt d'une ligne de délai est que le son est encore accessible pendant un certain temps. On peut donc aller écrire (avec **delwrite~**) le son qu'on souhaite, puis lire (avec **delread~**) le son avec un retard que l'on peut choisir. - -![patch delay](./screenshots/11-delai-simple.png) - -### À faire -* Créer un délai simple pour un de vos synthétiseurs - -### Challenge -* Transformer ce délai en un effet "écho". Pour cela, il faut ajouter un *feedback*, c'est-à-dire que la ligne de délai doit additionner à elle-même le signal d'entrée avec délai. On obtient ainsi un "écho" qui dure assez longtemps (plusieurs réflections du son, de plus en plus faibles) -* Rajouter un filtre sur les réflections de l'écho, pour faire un *space echo* - -### Ressources -* [Delay sur wikipedia (avec extraits audio)](https://fr.wikipedia.org/wiki/Delay_(effet)) -* [Patch du délai simple](./resources/11_delay.pd) -* [Patch du délai écho](./resources/11_delay-feedback.pd) - - - -## Chapitre 15 : effets audio avancés - flanger - -Un autre effet est le flanger. Le principe est assez proche du délai : on va ajouter au signal sonore une copie de lui-même, mais avec cette fois un délai très court. L'effet obtenu est assez facilement reconnaissable (essayer le patch ci-dessous). - -![flanger patch](./screenshots/12-flanger.png) - -### À faire -* Re-créer et tester le patch ci-dessus -* Créer un flanger simple pour un de vos synthétiseurs, en utilisant **delread4~** plutôt que delread~. - -### Challenge -* Introduire une légère modulation (variation au cours du temps) sur le délai du flanger - -### Ressources -* [Flanger sur wikipedia (avec extraits audio)](https://fr.wikipedia.org/wiki/Flanger) -* [Patch du flanger](./resources/12_flanger.pd) - - -## Chapitre 16 : Musique contrôlée par la météo - - - \newpage diff --git a/resources/16_exemple-meteo.pd b/resources/16_exemple-meteo.pd new file mode 100644 index 0000000..ab43fa7 --- /dev/null +++ b/resources/16_exemple-meteo.pd @@ -0,0 +1,23 @@ +#N canvas 568 350 659 450 10; +#X obj 406 163 mrpeach/udpreceive 8081; +#X obj 406 186 mrpeach/unpackOSC; +#X obj 131 247 mrpeach/packOSC; +#X msg 140 185 send /get/weather \$1; +#X obj 131 322 mrpeach/udpsend; +#X msg 95 94 send /get/bitcoin; +#X msg 131 117 send /get/cpu; +#X msg 158 301 connect 192.168.0.235 8080; +#X msg 353 370; +#X obj 471 363 print; +#X obj 402 289 mrpeach/routeOSC /weather/coord/lon; +#X msg 140 157 symbol london; +#X connect 0 0 1 0; +#X connect 1 0 10 0; +#X connect 2 0 4 0; +#X connect 3 0 2 0; +#X connect 5 0 2 0; +#X connect 6 0 2 0; +#X connect 7 0 4 0; +#X connect 10 0 8 0; +#X connect 10 0 9 0; +#X connect 11 0 3 0;