technology-enabled improvised dance music performance   technomancy    carpeDM     articles    glossary


carpeDM: music improvisation software

carpeDM is pir8-x's technomancy performance software.

how does it work?

It's like having three synchronized virtual turntables. The performer can choose to play all three turntables simultaneously, or play any combination of the three. ( For instance, the audience hears decks one and three while the technomancer changes the platter on deck two. )

Of course, we're not talking about actual turntables here... we're talking about three full-featured synchronized audio-MIDI sequencers. ( Audio-MIDI sequencers are what your favorite producers use to create your favorite studio tracks. ) So, the technomancer can actually be remixing platter two while the audience hears decks one and three.

All of this runs comfortably on a PII 266 celeron laptop, including real-time performance effects ( i.e. resonant filters on individual parts ), streaming CD quality digital audio tracks, and wavetable synthesis ( i.e. a sampler ). No special external hardware is required; however, MIDI in/out and joystick input ( for real-time control ) are supported.

technical stuff

The application engine is written in C++. It uses Microsoft's DirectX 8 DirectAudio API for MIDI event playback and synchronization, digital audio streaming, DLS L2 wavetable synthesis, controller I/O, and real-time effects.

The performance interface is written in Visual Basic to allow for rapid prototyping. ( CarpeDM is constantly evolving. Every show teaches PIr8_x something new. ) The C++ engine is encapsulated in a .dll which is accessed by the VB shell.

Content ( MIDI sequences, streaming audio, and wavetable synthesis instruments ) is assembled in DirectMusic Producer. DMP is the audio content development environment that Microsoft provides for the DirectX DirectAudio API.