NTCCRT : A Concurrent Constraint Framework for Soft Real-Time Music Interaction
Résumé
Writing music interaction systems is not easy because their concurrent processes usually access shared
resources in a non-deterministic order, often leading to unpredictable behavior. Using Pure Data (Pure
Data) and Max/MSP, it is possible to program concurrency; however, it is difficult to synchronize processes
based on multiple criteria. Process calculi such as the Non-deterministic Timed Concurrent Constraint
(ntcc) calculus, overcome that problem by representing, declaratively, the synchronization of multiple
criteria as constraints. In this article, we propose the framework Ntccrt, as a new alternative to manage
concurrency in Pure Data and Max/MSP. Ntccrt is a real-time capable interpreter for ntcc. Using Ntccrt
binary plugins in Pure Data, we executed models for machine improvisation and signal processing. We also
analyzed two case studies: one of a machine improvisation system and one of a signal processing system.
We found out that performance of both case studies is compatible with soft real-time music interaction; it
means, a musician can interact with Ntccrt without noticeable delays during the interaction.