Bernard Bel (avatar)

Bernard Bel

Ingénieur de recherche CNRS (retraité)

Abonné·e de Mediapart

8 Billets

0 Édition

Billet de blog 28 juin 2022

Bernard Bel (avatar)

Bernard Bel

Ingénieur de recherche CNRS (retraité)

Abonné·e de Mediapart

Le projet « Bol Processor »

En tant qu'outil compositionnel, le Bol Processor a été utilisé avec succès pour modéliser des musiques dans de nombreux styles — musique classique occidentale, musique sérielle, musique contemporaine incluant le minimalisme, et musique classique indienne.

Bernard Bel (avatar)

Bernard Bel

Ingénieur de recherche CNRS (retraité)

Abonné·e de Mediapart

Ce blog est personnel, la rédaction n’est pas à l’origine de ses contenus.

Blog Labyrinthe des sciences et des arts

Illustration 1
© Bernard Bel

Le BOL PROCESSOR est un logiciel initialement programmé par Bernard Bel pour l'aide à la composition et l'improvisation dans les environnements MIDI et Csound. La première version du Bol Processor (BP1) sur un ordinateur Apple IIc, en date de 1981, était un système expert utilisé par Jim Kippen pour la modélisation des pratiques improvisationnelles des interprètes du tabla au nord de l'Inde — voir un article (1992) et l'entretien d'Antoine Bourgeau avec Jim Kippen Au cœur des rythmes indiens.

Le Bol Processor produit de la musique à partir d'un ensemble de règles (une grammaire de « composition ») et/ou des « partitions » qui peuvent être éditées textuellement ou importées d'un score au format MusicXML. Ces ensembles de règles sont semblables à ceux des grammaires formelles (context-free, context-sensitive, etc.) utilisées en informatique pour définir des langages destinés aux machines mais compréhensibles par les humains.

Illustration 2
Production d'une séquence rythmique (qa‘ida) par le Bol Processor BP1 (1984)

En tant qu'outil compositionnel, le Bol Processor (versions BP2 et BP3) a été utilisé avec succès pour modéliser des musiques dans de nombreux styles — musique classique occidentale, musique sérielle, musique contemporaine incluant le minimalisme, et musique classique indienne. Après l'adaptation de son interface à Csound, le BP2 a été le lauréat (ex aequo avec Cecilia) du Concours international de Bourges, en 1997, dans la catégorie des logiciels d'aide à la composition musicale.

Illustration 3
Objets sonores disposés sur les axes de temps symbolique et physique

Les grandes caractéristiques de Bol Processor incluent sa capacité à traiter des structures temporelles très complexes avec un modèle polymétrique à la fois accessible aux compositeurs (humains) et dont le niveau d'abstraction englobe une grande variété de genres musicaux - écouter les exemples ci-dessous !

Le produit final est une structure d'objets temporels redimensionnés et localisés sur le temps physique par un algorithme de time-setting. La mise en temps de la structure revient à résoudre un système de contraintes dépendant (1) des propriétés métriques et topologiques des objets temporels, (2) des contextes dans lesquels ils se trouvent et (3) des paramètres liés à l'exécution elle-même : temps "lisse" ou "strié", tempo, etc. Des objets temporels en entrée peuvent aussi être programmés pour synchroniser les événements ou modifier des paramètres dans les grammaires génératives.

Dans l'implémentation actuelle de Bol Processor, les objets temporels sont instanciés en tant qu'objets sonores : des séquences de messages MIDI ou d'instructions Csound. Ce modèle pourrait facilement être appliqué à d'autres types d'événements, par exemple la programmation, le dimensionnement et le chronométrage précis de clips vidéo, de commandes de robots, etc.

➡ Écouter “Shapes in Rhythm” (voir article) composé par Andréine Bel et interprété par le Bol Processor BP2 sur un synthétiseur Roland D-50 (1994)

(Écouter avec un casque ou une bonne chaîne stéréo)

Dans sa version pour Macintosh, le Bol Processor BP2 est devenu un logiciel shareware développé par Bernard Bel avec l'aide de Srikumar Karaikudi Subramanian. Au printemps 2006, Anthony Kozar a rejoint le projet et créé une version open-source afin d'amener une communauté de développeurs au portage à d'autres plateformes et à l'implémentation de nouvelles techniques de création musicale. Le portage de BP2 vers Mac OS X a été achevé par Anthony en juin 2007.

En 2020, une version multiplateforme (BP3) a été mise en place. La partie opérationnelle du Bol Processor BP3 est une application console fonctionnant sous MacOS, Linux et Windows (avec des processeurs Intel 32 bits et 64 bits). Pour l'instant, elle est exploitée via une interface PHP que nous prévoyons de compiler sous forme d'application autonome.

Le Bol Processor BP3 (version multiplateforme) a initié de nouvelles fonctionnalités rendues possibles par son association étroite avec Csound.

Illustration 4
Mise en coïncidence du 1er Prélude en C majeur de J.S. Bach avec le tempérament Kirnberger III

Des domaines importants de la musicologie appliquée à la musique informatique sont exposés sur le site (qui fonctionne en traduction automatique). Entre autres, le sujet de la microtonalité et son application à l'intonation juste en harmonie occidentale, aux tempéraments dans la musique baroque européenne, ainsi qu'aux musiques hindustani et carnatique en Inde.

Une réalisation récente d'importance capitale est l'import de partitions MusicXML en notation musicale occidentale, ouvrant le chemin à l'utilisation de fragments précomposés dans les grammaires formelles de BP3. Les exemples suivants sont des enregistrements d'œuvres musicales complètes interprétées comme une unique expression polymétrique :

➡ Écouter “Les Ombres Errantes” interprété par le Bol Processor + Csound avec un tempérament“Rameau en sib” (voir image). Source : MusicXML score par Vinckenbosch de MuseScore community

➡ Écouter la 14e rhapsodie hongroise de Listz interprétée par le Bol Processor sur un piano de synthèse physique Pianoteq. Source : MusicXML score par OguzSirin de MuseScore community

➡ Écouter La Campanella, version piano de Liszt interprétée par le Bol Processor sur un piano de synthèse physique Pianoteq. Source : MusicXML score par Heavilon de MuseScore community

➡ Écouter Oscar Peterson's "Watch What Happens" interprété par le Bol Processor sur un piano de synthèse physique Pianoteq. Source : MusicXML score par Jonasgss de MuseScore community

Le site (multilingue en traduction automatique) Bol Processor.org comprend une documentation des algorithmes ainsi que des tutoriels pour une première prise en main et la présentation de concepts qui lui sont associés dans plusieurs cultures musicales. Cette présentation est accessible aux lecteurs qui ne sont pas familiarisés à ces différentes cultures.


Illustration 5
Gamme microtonale construite sur 2 séries de quintes parfaites © Bol Processor

Le Bol Processor est un projet en développement coopératif sur GitHub. Nous conduisons le projet à sa prochaine étape d'évolution. Nous espérons que BP3 deviendra plus modulaire, avec des briques logicielles distinctes pour les grammaires musicales, les expressions polymétriques, et de puissants algorithmes de gestion des objets sonores qui pourront être intégrés à d'autres logiciels open source.

Bernard Bel et Anthony Kozar

Télécharger et essayer le Bol Processor ‘BP3’ avec son interface PHP

Ce blog est personnel, la rédaction n’est pas à l’origine de ses contenus.