Results 1 -
9 of
9
ChucK: a concurrent, on-the-fly audio programming language
- Proc. ICMC
, 2003
"... ChucK is a new audio programming language for real-time synthesis, composition, and performance, which runs on commodity operating systems. ChucK natively supports concurrency, multiple, simultaneous, dynamic control rates, and the ability to add, remove, and modify code, on-the-fly, while the progr ..."
Abstract
-
Cited by 42 (17 self)
- Add to MetaCart
ChucK is a new audio programming language for real-time synthesis, composition, and performance, which runs on commodity operating systems. ChucK natively supports concurrency, multiple, simultaneous, dynamic control rates, and the ability to add, remove, and modify code, on-the-fly, while the program is running, without stopping or restarting. It offers composers and performers a powerful and flexible programming tool for building and experimenting with complex audio synthesis programs, and real-time interactive control. 1. Ideas in ChucK In this paper we present four key ideas that form the foundation of ChucK. The goal is to design a natural audio programming language (1) to concurrently and accurately represent complex audio synthesis, (2) to enable fine-grain, flexible control over time, (3) to provide the capability to operate on multiple, dynamic and simultaneous control rates, and (4) to make possible an on-the-fly style of programming. ChucK runs on commodity operating systems (Linux, Windows, Solaris, MacOS). Four major ideas form the basis of ChucK. • A unifying, massively overloaded operator. • A precise timing model that is capable of true concurrency and arbitrarily fine granularity. The language semantic supports multiple, simultaneous, and dynamic control rates, and naturally amortizes operations over time. • Native language support of arbitrarily many input/output sources, MIDI, network, serial, USB, graphics, and any input/output device you can connect to the computer. • On-the-fly programming enables dynamically modifiable programs for performance and experimentation. We present ChucK with respect to these four major facets. We provide some informal 'rules ' of ChucK, each of which embodies some key aspect of the programming language. In Section 2, we look in detail at the ChucK operator. In Section 3, we present the ChucK timing model, introduce the concept of
The reacTable
- International Computer Music Conference (ICMC2005
, 2005
"... tangibles tagged with fiducials (visual feedback) projector camera video video visual synthesizer reacTIVision waveform data connection info connection manager TUIO audio synthesizer (sound) audio Figure 2. The reacTable * architecture Figure 1. The reacTable* This paper describes the reacTable*, a ..."
Abstract
-
Cited by 18 (6 self)
- Add to MetaCart
tangibles tagged with fiducials (visual feedback) projector camera video video visual synthesizer reacTIVision waveform data connection info connection manager TUIO audio synthesizer (sound) audio Figure 2. The reacTable * architecture Figure 1. The reacTable* This paper describes the reacTable*, a novel multi-user electro-acoustic music instrument with a tabletop tangible user interface, which is being developed at the MTG in Barcelona. We first introduce the reacTable * project and some of the concepts behind its design and we then discuss interaction and performance scenarios. 1.
The Audicle: a Contextsensitive, On-the-fly Audio Programming Environ/mentality
- In Proceedings of the International Computer Music Conference
, 2004
"... Many software environments have been developed for computer music. Programming environments typically provide constructs to implement synthesis or musical algorithms, whereas runtime environments allow performers to exert parametric control over their programs onstage, in real-time. We present a new ..."
Abstract
-
Cited by 10 (6 self)
- Add to MetaCart
Many software environments have been developed for computer music. Programming environments typically provide constructs to implement synthesis or musical algorithms, whereas runtime environments allow performers to exert parametric control over their programs onstage, in real-time. We present a new type of audio programming environment that integrates the programmability of the development environment with elements of the runtime environment. The result, called the Audicle, is a novel integration of a concurrent “smart” editor, compiler, virtual machine, and debugger, all running in the same address space, sharing data, and working together at runtime. We believe this augmentation has the potential to fundamentally enhance the way we write and visualize audio programs both offline and on-the-fly. In this paper, we examine existing programming and runtime environments, present the ideas behind the Audicle, and demonstrate its features and properties. Our model of the Audicle is integrated with the ChucK programming language and inherits many of its fundamental properties, including: decoupling of data-flow and time, concurrency, and modularity for on-the-fly programming. We discuss the main components of the Audicle, and show that it not only provides a useful class of programming tools for real-time composition and performances, but also motivates a new type of on-the-fly programming aesthetic – one of visualizing the audio programming process. 1.
Combining analysis and synthesis in the ChucK programming language
- Proceedings of the International Computer Music Conference
, 2007
"... Figure 0. A ChucK-based programming model for building audio analysis and synthesis programs. In this paper, we present a new programming model for performing audio analysis, spectral processing, and feature extraction in the ChucK programming language. The solution unifies analysis and synthesis in ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
Figure 0. A ChucK-based programming model for building audio analysis and synthesis programs. In this paper, we present a new programming model for performing audio analysis, spectral processing, and feature extraction in the ChucK programming language. The solution unifies analysis and synthesis in the same high-level, strongly-timed, and concurrent environment, extending and fully integrating with the existing language framework. In particular, we introduce the notion of a Unit Analyzer (UAna) and new constructs for dataflow, data types and semantics for operations in analysis domains, and mechanisms for seamlessly combining analysis and synthesis tasks in a precise, sample-synchronous manner. We present the motivation of our system, and describe new language-level syntaxes, semantics, and the underlying implementation. We provide code examples and discuss potential uses and benefits of the system for audio researchers, performers, and teachers. 1.
The Architecture of Auracle: a Real-Time, Distributed,
- Proceedings of the 2004 conference on New interfaces for musical expression
, 2004
"... Auracle is a "group instrument," controlled by the voice, for real-time, interactive, distributed music making over the Internet. It is implemented in the Java programming language using a combination of publicly available libraries (JSyn and TransJam) and custom-built components. This paper desc ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Auracle is a "group instrument," controlled by the voice, for real-time, interactive, distributed music making over the Internet. It is implemented in the Java programming language using a combination of publicly available libraries (JSyn and TransJam) and custom-built components. This paper describes how the various pieces --- the voice analysis, network communication, and sound synthesis --- are individually built and how they are combined to form Auracle.
CoAudicle: A Collaborative Audio Programming Space
- In Proceedings of the International Computer Music Conference
, 2005
"... The Co-Audicle describes the next phase of the Audicle’s development. We extend the Audicle to create a collaborative, multi-user interaction space based around the ChucK language. The Co-Audicle operates either in client/server mode or as part of a peer-to-peer network. We also describe new graphic ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
The Co-Audicle describes the next phase of the Audicle’s development. We extend the Audicle to create a collaborative, multi-user interaction space based around the ChucK language. The Co-Audicle operates either in client/server mode or as part of a peer-to-peer network. We also describe new graphical and GUI-building functionalities. We draw inspiration from both live interaction software, as well as online gaming environments.
miniAudicle and ChucK Shell: New Interfaces for ChucK Development and Performance
"... ChucK, a powerful audio synthesis programming language, currently supporting only a simple command line interface. Accompanying the ongoing development of the ChucK language is the production of two new interfaces for ChucK, the ChucK shell and the miniAudicle. The ChucK shell provides a lightweight ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
ChucK, a powerful audio synthesis programming language, currently supporting only a simple command line interface. Accompanying the ongoing development of the ChucK language is the production of two new interfaces for ChucK, the ChucK shell and the miniAudicle. The ChucK shell provides a lightweight method of access to ChucK in a shell-like console environment. The miniAudicle offers a powerful integrated solution to the ChucK development process and a framework for further enhancements to the ChucK programming environment. The miniAudicle also provides a set of generic user interface elements with which programmers can quickly construct graphical interfaces in ChucK programs. The miniAudicle streamlines and simplifies ChucK development, allowing ChucK programmers to focus on design and artistic issues while also exposing ChucK to computer musicians who are unfamiliar with or averse to the command line. Figure 1. The miniAudicle in action. 1
REAL-TIME INTERACTIVE MUSICAL SYSTEMS: AN OVERVIEW A.N.Robertson
"... We present an overview of developments towards interactive musical systems. A description of an interactive system is given and we consider potential uses for the automation of creative processes within live performance. We then look at the history of research into the problem of automatic accompani ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We present an overview of developments towards interactive musical systems. A description of an interactive system is given and we consider potential uses for the automation of creative processes within live performance. We then look at the history of research into the problem of automatic accompaniment, discuss a variety of current interactive systems and present some ideas for future research.
unknown title
, 2001
"... A collection of synthesis, signal processing, and video objects (with source-code toolkit) for Max/MSP/Nato v. 1.0b3 ..."
Abstract
- Add to MetaCart
A collection of synthesis, signal processing, and video objects (with source-code toolkit) for Max/MSP/Nato v. 1.0b3

