Combining Analysis and Synthesis in the ChucK Programming Language
|Title||Combining Analysis and Synthesis in the ChucK Programming Language|
|Publication Type||Conference Paper|
|Year of Publication||2007|
|Authors||Wang, G., R. Fiebrink, and P. Cook|
|Conference Name||International Computer Music Conference|
|Keywords||analysis, audio, ChucK, synthesis, uana|
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 precisem, 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.