Romain Michon | Stanford University (original) (raw)
Conference Papers by Romain Michon
In this paper, we present the BladeAxe: an iPad-based musical instrument leveraging the concepts ... more In this paper, we present the BladeAxe: an iPad-based musical instrument leveraging the concepts of " augmented mobile device " and " hybrid physical model controller. " By being almost fully standalone, it can be used easily on stage in the frame of a live performance by simply plugging it to a traditional guitar amplifier or to any sound system. Its acoustical plucking system provides the performer with an extended expressive potential compared to a standard controller. After presenting an intermediate version of the BladeAxe, we'll describe our final design. We will also introduce a similar instrument: the PlateAxe.
NUANCE is a new device adding multi-touch force detection to the iPad touch screen. It communicat... more NUANCE is a new device adding multi-touch force detection to the iPad touch screen. It communicates with the iPad using the audio jack input. Force information is sent at an audio rate using analog amplitude modulation (AM). NUANCE provides a high level of sensitivity and responsiveness by only using analog components. It is very cheap to make. NUANCE has been developed in the context of a larger project on augmenting mobile devices towards the creation of a form of hybrid lutherie where instruments are based on physical and virtual elements.
A driver's awareness while on the road is a critical factor in his or her ability to make decisio... more A driver's awareness while on the road is a critical factor in his or her ability to make decisions to avoid hazards, plan routes and maintain safe travel. Situational awareness is gleaned not only from visual observation of the environment , but also the audible cues the environment provides-police sirens, honking cars, and crosswalk beeps, for instance , alert the driver to events around them. In our ongoing project on " investigating the influence of audible cues on driver situational awareness " , we implemented a custom audio engine that synthesizes in real time the soundscape of our driving simulator and renders it in 3D. This paper describes the implementation of this system , evaluates it and suggests future improvements. We believe that it provides a good example of use of a technology developed by the computer music community outside of this field and that it demonstrates the potential of the use of driving simulators as a music performance venue.
This paper presents a hybrid audio programming environment , called FAUCK, which combines the pow... more This paper presents a hybrid audio programming environment , called FAUCK, which combines the powerful, succinct Functional AUdio STream (FAUST) language with the strongly-timed CHUCK audio programming language. FAUCK allows programmers to on-the-fly evaluate FAUST code directly from CHUCK code and control FAUST signal processors using CHUCK's sample-precise timing and concurrency mechanisms. The goal is to create an amal-gam that plays to the strengths of each language, giving rise to new possibilities for rapid prototyping, interaction design and controller mapping, pedagogy, and new ways of working with both FAUST and CHUCK. We present our motivations, approach, implementation, and preliminary evaluation. FAUCK is open-source and freely available.
Nous présentons des implémentations et systèmes de contrôle du synthétiseur CHANT dans le cadre d... more Nous présentons des implémentations et systèmes de contrôle du synthétiseur CHANT dans le cadre de l’environnement
de composition assistée par ordinateur OpenMusic. Deux bibliothèques spécialisées, chant-lib et OMChant, ont été développées et distribuées récemment. Un des objectifs de cet article est de comparer les approches adoptées ou induites par ces deux bibliothèques. Pour cela nous détaillons leurs principes respectifs et analysons leurs particularités en termes d’implémentation et de contrôle.
Le Faust-Synthesis ToolKit est une bibliothèque d’objets écrits dans le langage Faust implémentan... more Le Faust-Synthesis ToolKit est une bibliothèque d’objets écrits dans le langage Faust implémentant un certain nombre de modèles d’instruments de musique basés principalement sur des algorithmes utilisant les techniques de synthèse par guide d’onde et de synthèse modale. La plupart des objets créés sont inspirés de fonctions et de patches issus du Synthesis ToolKit et du programme SynthBuilder.
Une attention particulière a été portée sur la dimension pédagogique des objets créés. Ainsi, le code Faust de chaque modèle a été optimisé afin d’être le plus expressif possible. Chaque algorithme est commenté de manière précise et fait régulièrement référence à des données bibliographiques.
Certains des modèles implémentés ont été modifiés dans le but d’être utilisés avec des données de suivi de geste. Une démonstration de ce type d’utilisation des objets du Faust-Synthesis ToolKit est faite dans le programme PureData.
Enfin, les résultats d’un certain nombre de tests de performances des différents codes C++ générés par Faust sont présentés.
Passive nonlinear filters provide a rich source of evolving spectra for sound synthesis. This pap... more Passive nonlinear filters provide a rich source of evolving spectra for sound synthesis. This paper describes a nonlinear allpass filter of arbitrary order based on the normalized ladder filter. It is expressed in FAUST recursively in only two statements. Toward the synthesis of cymbals and gongs, it was used to make nonlinear waveguide meshes and feedback-delay-network reverberators.
The FAUST Synthesis ToolKit is a set of virtual musical instruments written in the FAUST programm... more The FAUST Synthesis ToolKit is a set of virtual musical instruments written in the FAUST programming language and based on
waveguide algorithms and on modal synthesis. Most of them were inspired by instruments implemented in the Synthesis ToolKit and the program SynthBuilder.
Our attention has partly been focused on the pedagogical aspect of the implemented objects. Indeed, we tried to make the
FAUST code of each object as optimized and as expressive as possible.
Some of the instruments in the FAUST-STK use nonlinear allpass filters to create interesting and new behaviors. Also, a few
of them were modified in order to use gesture data to control the performance. A demonstration of this kind of use is done in the Pure Data program.
Finally, the results of some performances tests of the generated C++ code are presented.
The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platfor... more The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platform and cross-processor programming environment for the Faust language. It allows to use most of Faust features directly in a web browser and it integrates an editable catalog of examples making it a platform to easily share and use Faust objects.
Faust est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de ... more Faust est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de sons en temps réel. Grâce à un système de fichiers d’architectures, un seul et unique programme Faust peut être utilisé pour générer du code pour un ensemble de types d’applications et de plug-ins.
Le compilateur en ligne de Faust ici présenté est une application Web écrite en PHP et en JavaScript offrant un environnement de développement multiplateforme et multiprocesseur pour le langage Faust. Cet outil rend possible l’utilisation de la plupart des fonctionnalités de Faust dans un navigateur Web et intègre un catalogue d’exemples évolutif faisant de lui une plate-forme pour utiliser et échanger facilement tout objet Faust.
Le fonctionnement du compilateur en ligne de Faust est présenté en détail dans cet article. Les possibilités offertes par cet outil sont discutées et une brève ouverture sur les enjeux de l’utilisation des technologies Web pour l’informatique musicale est faite.
The Black Box is a site based installation that allows users to create unique sounds through phys... more The Black Box is a site based installation that allows users to create unique sounds through physical interaction. The installation consists of a geodesic dome, surround sound speakers, and a custom instrument suspended from the apex
of the dome. Audience members entering the space are able to create sound by striking or rubbing the cube, and are
able to control a delay system by moving the cube within the space.
faust2android est un programme qui permet de compiler un code FAUST en une application pour termi... more faust2android est un programme qui permet de compiler un code FAUST en une application pour terminal Android. Les tâches de traitement du signal ainsi que l’accès aux ressources audios se font de manière native en C++ grâce au Native Development Toolkit (NDK) d’Android. L’interface utilisateur et les autres éléments de l’application sont programmés en JAVA.
faust2android fait partie d’un projet plus large qui vise à implémenter un environnement d’utilisation d’objets Faust sous Android : FaustDroid.
Faust2android is a tool that turns a FAUST program into an Android application. Signal processing... more Faust2android is a tool that turns a FAUST program into an Android application. Signal processing tasks as well as accessing
the audio record and playback resources are done natively in
C++ using the Android Native Development Toolkit (NDK). User
interface and other components of the application are programmed in JAVA.
The implementation as well as issues related to real-time signal processing on Android platforms are discussed.
faust2android is part of a larger project whose goal is to build a full Faust environment for Android: FaustDroid.
Mephisto is a small battery powered open source Arduino based device. Up to five sensors can be c... more Mephisto is a small battery powered open source Arduino based device. Up to five sensors can be connected to it using simple 1/8” stereo audio jacks. The output of each sensor is digitized and converted to OSC messages that can be streamed on a WIFI network to control the parameters of any Faust generated app.
The BladeAxe is a guitar-like controller that uses “real world” audio excitations from six piezoe... more The BladeAxe is a guitar-like controller that uses “real world” audio excitations from six piezoelectric films (one per “string”) to drive a physical model of a guitar on a laptop.
The BladeAxe body is made out of laser cut acrylic sheets and can be easily reproduced. As a fully “plug and play” interface, it can be used on any computer to communicate with our open-source virtual-guitar software.
This paper presents the Tibetan Singing Prayer Wheel, a handheld, wireless, sensor-based musical ... more This paper presents the Tibetan Singing Prayer Wheel, a handheld, wireless, sensor-based musical instrument with a human-computer interface that simultaneously processes vocals and synthesizes sound based on the performer’s hand gestures with a one-to-many mapping strategy. A physical model simulates the singing bowl, while a modal reverberator and a delay-and-window effect process the performer’s vocals. This system is designed for an electroacoustic vocalist interested in using a solo instrument to achieve performance goals that would normally require multiple instruments and activities.
This work presents a series of tools to turn Faust code into various elements ranging from fully ... more This work presents a series of tools to turn Faust code into various elements ranging from fully functional applications to multi-platform libraries for real time audio signal processing on iOS and Android. Technical details about their use and function are provided along with audio latency and performance comparisons, and examples of applications.
Thesis by Romain Michon
Modélisation physique d'instruments de musique par guides d'ondes numériques -enjeux, environneme... more Modélisation physique d'instruments de musique par guides d'ondes numériques -enjeux, environnements existants, implémentation, perfectionnements et utilisation Remerciements Tout d'abord, je souhaite remercier Laurent POTTIER qui a dirigé mes travaux tout au long de mon Master II. Au cours des six dernières années, il a su me transmettre sa passion pour l'informatique musicale, je lui dois énormément pour cela. Son dévouement pour son métier et ses étudiants a toujours forcé mon admiration. Enfin, sa disponibilité, sa gentillesse et ses conseils éclairés m'ont permis à moi et à d'autres de travailler dans les meilleures conditions possibles. Je tiens également à remercier tout particulièrement les personnes suivantes : -Yann ORLAREY, pour la confiance qu'il m'a accordé, pour m'avoir introduit dans la communauté Faust et pour l'aide qu'il m'a apporté lors de la mise en place du Faust-STK ; -Julius SMITH, pour m'avoir accueilli au CCRMA de l'université Stanford et pour avoir partagé avec moi ses nombreuses bonnes idées et son expérience de la modélisation physique d'instruments de musique par guides d'ondes ; -Esteban MAESTRE, pour avoir partagé ses travaux avec moi et pour toutes ses suggestions éclairées ; -Junji KURODA, pour son aide en traitement du signal, notamment dans Mat-Lab ; -John CHOWNING, pour m'avoir apporté son appui pour me rendre au CCRMA. Je dois beaucoup à mes parents et mes amis pour leur soutien constant, leurs relectures et pour les nombreux moments de détente qu'ils m'ont offert. Merci tout particulièrement à Clément, Léo, Benni, Rafa, Steffen et Florian. Je souhaite aussi exprimer toute ma gratitude à l'ensemble de l'équipe du département de musicologie de l'université Jean Monnet pour son dynamisme, sa disponibilité, son en-thousiasme et avec qui j'ai beaucoup appris ces six dernières années en échange de très peu. Pour terminer, je souhaite rendre hommage à Max MATHEWS que j'ai eu l'honneur de rencontrer lors de mon séjour à Stanford et qui m'a aidé à mettre en place avec Julius SMITH le filtre passe-tout non-linéaire passif d'ordre arbitraire présenté dans le second chapitre de ce mémoire. De manière plus générale, nous lui devons tous énormément pour ses travaux pionniers dans le domaine de l'informatique musicale.
In this paper, we present the BladeAxe: an iPad-based musical instrument leveraging the concepts ... more In this paper, we present the BladeAxe: an iPad-based musical instrument leveraging the concepts of " augmented mobile device " and " hybrid physical model controller. " By being almost fully standalone, it can be used easily on stage in the frame of a live performance by simply plugging it to a traditional guitar amplifier or to any sound system. Its acoustical plucking system provides the performer with an extended expressive potential compared to a standard controller. After presenting an intermediate version of the BladeAxe, we'll describe our final design. We will also introduce a similar instrument: the PlateAxe.
NUANCE is a new device adding multi-touch force detection to the iPad touch screen. It communicat... more NUANCE is a new device adding multi-touch force detection to the iPad touch screen. It communicates with the iPad using the audio jack input. Force information is sent at an audio rate using analog amplitude modulation (AM). NUANCE provides a high level of sensitivity and responsiveness by only using analog components. It is very cheap to make. NUANCE has been developed in the context of a larger project on augmenting mobile devices towards the creation of a form of hybrid lutherie where instruments are based on physical and virtual elements.
A driver's awareness while on the road is a critical factor in his or her ability to make decisio... more A driver's awareness while on the road is a critical factor in his or her ability to make decisions to avoid hazards, plan routes and maintain safe travel. Situational awareness is gleaned not only from visual observation of the environment , but also the audible cues the environment provides-police sirens, honking cars, and crosswalk beeps, for instance , alert the driver to events around them. In our ongoing project on " investigating the influence of audible cues on driver situational awareness " , we implemented a custom audio engine that synthesizes in real time the soundscape of our driving simulator and renders it in 3D. This paper describes the implementation of this system , evaluates it and suggests future improvements. We believe that it provides a good example of use of a technology developed by the computer music community outside of this field and that it demonstrates the potential of the use of driving simulators as a music performance venue.
This paper presents a hybrid audio programming environment , called FAUCK, which combines the pow... more This paper presents a hybrid audio programming environment , called FAUCK, which combines the powerful, succinct Functional AUdio STream (FAUST) language with the strongly-timed CHUCK audio programming language. FAUCK allows programmers to on-the-fly evaluate FAUST code directly from CHUCK code and control FAUST signal processors using CHUCK's sample-precise timing and concurrency mechanisms. The goal is to create an amal-gam that plays to the strengths of each language, giving rise to new possibilities for rapid prototyping, interaction design and controller mapping, pedagogy, and new ways of working with both FAUST and CHUCK. We present our motivations, approach, implementation, and preliminary evaluation. FAUCK is open-source and freely available.
Nous présentons des implémentations et systèmes de contrôle du synthétiseur CHANT dans le cadre d... more Nous présentons des implémentations et systèmes de contrôle du synthétiseur CHANT dans le cadre de l’environnement
de composition assistée par ordinateur OpenMusic. Deux bibliothèques spécialisées, chant-lib et OMChant, ont été développées et distribuées récemment. Un des objectifs de cet article est de comparer les approches adoptées ou induites par ces deux bibliothèques. Pour cela nous détaillons leurs principes respectifs et analysons leurs particularités en termes d’implémentation et de contrôle.
Le Faust-Synthesis ToolKit est une bibliothèque d’objets écrits dans le langage Faust implémentan... more Le Faust-Synthesis ToolKit est une bibliothèque d’objets écrits dans le langage Faust implémentant un certain nombre de modèles d’instruments de musique basés principalement sur des algorithmes utilisant les techniques de synthèse par guide d’onde et de synthèse modale. La plupart des objets créés sont inspirés de fonctions et de patches issus du Synthesis ToolKit et du programme SynthBuilder.
Une attention particulière a été portée sur la dimension pédagogique des objets créés. Ainsi, le code Faust de chaque modèle a été optimisé afin d’être le plus expressif possible. Chaque algorithme est commenté de manière précise et fait régulièrement référence à des données bibliographiques.
Certains des modèles implémentés ont été modifiés dans le but d’être utilisés avec des données de suivi de geste. Une démonstration de ce type d’utilisation des objets du Faust-Synthesis ToolKit est faite dans le programme PureData.
Enfin, les résultats d’un certain nombre de tests de performances des différents codes C++ générés par Faust sont présentés.
Passive nonlinear filters provide a rich source of evolving spectra for sound synthesis. This pap... more Passive nonlinear filters provide a rich source of evolving spectra for sound synthesis. This paper describes a nonlinear allpass filter of arbitrary order based on the normalized ladder filter. It is expressed in FAUST recursively in only two statements. Toward the synthesis of cymbals and gongs, it was used to make nonlinear waveguide meshes and feedback-delay-network reverberators.
The FAUST Synthesis ToolKit is a set of virtual musical instruments written in the FAUST programm... more The FAUST Synthesis ToolKit is a set of virtual musical instruments written in the FAUST programming language and based on
waveguide algorithms and on modal synthesis. Most of them were inspired by instruments implemented in the Synthesis ToolKit and the program SynthBuilder.
Our attention has partly been focused on the pedagogical aspect of the implemented objects. Indeed, we tried to make the
FAUST code of each object as optimized and as expressive as possible.
Some of the instruments in the FAUST-STK use nonlinear allpass filters to create interesting and new behaviors. Also, a few
of them were modified in order to use gesture data to control the performance. A demonstration of this kind of use is done in the Pure Data program.
Finally, the results of some performances tests of the generated C++ code are presented.
The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platfor... more The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platform and cross-processor programming environment for the Faust language. It allows to use most of Faust features directly in a web browser and it integrates an editable catalog of examples making it a platform to easily share and use Faust objects.
Faust est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de ... more Faust est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de sons en temps réel. Grâce à un système de fichiers d’architectures, un seul et unique programme Faust peut être utilisé pour générer du code pour un ensemble de types d’applications et de plug-ins.
Le compilateur en ligne de Faust ici présenté est une application Web écrite en PHP et en JavaScript offrant un environnement de développement multiplateforme et multiprocesseur pour le langage Faust. Cet outil rend possible l’utilisation de la plupart des fonctionnalités de Faust dans un navigateur Web et intègre un catalogue d’exemples évolutif faisant de lui une plate-forme pour utiliser et échanger facilement tout objet Faust.
Le fonctionnement du compilateur en ligne de Faust est présenté en détail dans cet article. Les possibilités offertes par cet outil sont discutées et une brève ouverture sur les enjeux de l’utilisation des technologies Web pour l’informatique musicale est faite.
The Black Box is a site based installation that allows users to create unique sounds through phys... more The Black Box is a site based installation that allows users to create unique sounds through physical interaction. The installation consists of a geodesic dome, surround sound speakers, and a custom instrument suspended from the apex
of the dome. Audience members entering the space are able to create sound by striking or rubbing the cube, and are
able to control a delay system by moving the cube within the space.
faust2android est un programme qui permet de compiler un code FAUST en une application pour termi... more faust2android est un programme qui permet de compiler un code FAUST en une application pour terminal Android. Les tâches de traitement du signal ainsi que l’accès aux ressources audios se font de manière native en C++ grâce au Native Development Toolkit (NDK) d’Android. L’interface utilisateur et les autres éléments de l’application sont programmés en JAVA.
faust2android fait partie d’un projet plus large qui vise à implémenter un environnement d’utilisation d’objets Faust sous Android : FaustDroid.
Faust2android is a tool that turns a FAUST program into an Android application. Signal processing... more Faust2android is a tool that turns a FAUST program into an Android application. Signal processing tasks as well as accessing
the audio record and playback resources are done natively in
C++ using the Android Native Development Toolkit (NDK). User
interface and other components of the application are programmed in JAVA.
The implementation as well as issues related to real-time signal processing on Android platforms are discussed.
faust2android is part of a larger project whose goal is to build a full Faust environment for Android: FaustDroid.
Mephisto is a small battery powered open source Arduino based device. Up to five sensors can be c... more Mephisto is a small battery powered open source Arduino based device. Up to five sensors can be connected to it using simple 1/8” stereo audio jacks. The output of each sensor is digitized and converted to OSC messages that can be streamed on a WIFI network to control the parameters of any Faust generated app.
The BladeAxe is a guitar-like controller that uses “real world” audio excitations from six piezoe... more The BladeAxe is a guitar-like controller that uses “real world” audio excitations from six piezoelectric films (one per “string”) to drive a physical model of a guitar on a laptop.
The BladeAxe body is made out of laser cut acrylic sheets and can be easily reproduced. As a fully “plug and play” interface, it can be used on any computer to communicate with our open-source virtual-guitar software.
This paper presents the Tibetan Singing Prayer Wheel, a handheld, wireless, sensor-based musical ... more This paper presents the Tibetan Singing Prayer Wheel, a handheld, wireless, sensor-based musical instrument with a human-computer interface that simultaneously processes vocals and synthesizes sound based on the performer’s hand gestures with a one-to-many mapping strategy. A physical model simulates the singing bowl, while a modal reverberator and a delay-and-window effect process the performer’s vocals. This system is designed for an electroacoustic vocalist interested in using a solo instrument to achieve performance goals that would normally require multiple instruments and activities.
This work presents a series of tools to turn Faust code into various elements ranging from fully ... more This work presents a series of tools to turn Faust code into various elements ranging from fully functional applications to multi-platform libraries for real time audio signal processing on iOS and Android. Technical details about their use and function are provided along with audio latency and performance comparisons, and examples of applications.
Modélisation physique d'instruments de musique par guides d'ondes numériques -enjeux, environneme... more Modélisation physique d'instruments de musique par guides d'ondes numériques -enjeux, environnements existants, implémentation, perfectionnements et utilisation Remerciements Tout d'abord, je souhaite remercier Laurent POTTIER qui a dirigé mes travaux tout au long de mon Master II. Au cours des six dernières années, il a su me transmettre sa passion pour l'informatique musicale, je lui dois énormément pour cela. Son dévouement pour son métier et ses étudiants a toujours forcé mon admiration. Enfin, sa disponibilité, sa gentillesse et ses conseils éclairés m'ont permis à moi et à d'autres de travailler dans les meilleures conditions possibles. Je tiens également à remercier tout particulièrement les personnes suivantes : -Yann ORLAREY, pour la confiance qu'il m'a accordé, pour m'avoir introduit dans la communauté Faust et pour l'aide qu'il m'a apporté lors de la mise en place du Faust-STK ; -Julius SMITH, pour m'avoir accueilli au CCRMA de l'université Stanford et pour avoir partagé avec moi ses nombreuses bonnes idées et son expérience de la modélisation physique d'instruments de musique par guides d'ondes ; -Esteban MAESTRE, pour avoir partagé ses travaux avec moi et pour toutes ses suggestions éclairées ; -Junji KURODA, pour son aide en traitement du signal, notamment dans Mat-Lab ; -John CHOWNING, pour m'avoir apporté son appui pour me rendre au CCRMA. Je dois beaucoup à mes parents et mes amis pour leur soutien constant, leurs relectures et pour les nombreux moments de détente qu'ils m'ont offert. Merci tout particulièrement à Clément, Léo, Benni, Rafa, Steffen et Florian. Je souhaite aussi exprimer toute ma gratitude à l'ensemble de l'équipe du département de musicologie de l'université Jean Monnet pour son dynamisme, sa disponibilité, son en-thousiasme et avec qui j'ai beaucoup appris ces six dernières années en échange de très peu. Pour terminer, je souhaite rendre hommage à Max MATHEWS que j'ai eu l'honneur de rencontrer lors de mon séjour à Stanford et qui m'a aidé à mettre en place avec Julius SMITH le filtre passe-tout non-linéaire passif d'ordre arbitraire présenté dans le second chapitre de ce mémoire. De manière plus générale, nous lui devons tous énormément pour ses travaux pionniers dans le domaine de l'informatique musicale.