From CSWiki
Revision as of 17:58, 28 March 2008 by Gewang (talk | contribs)

Jump to: navigation, search

Our fancy ISMIR paper outline.

Notes for us

6 page limit.

Title: Support for MIR prototyping and real-time applications in the ChucK programming language

Key points:

  • There is no general purpose language for MIR prototyping that both gives access to analysis building blocks and allows for low-level coding
  • This sort of framework can be really useful for fast prototyping, flexible coding, and education
  • There is furthermore no such framework that does this that combines MIR and performance / synthesis; ChucK does this.
  • We're going to show what is available in the language, and examples of how to work with it to accomplish MIR tasks


(re + ge)


(re, ge)

Background & Motivation

(re, ge)

  • MIR & performance
    • How peformers/composers have used MIR-like algorithms, & what tools they use
    • Why performance should get more attention from MIR!!!
      • What is MIR, really?
      • What good are MIR tools doing for the world?
      • How is an MIR researcher supposed to evaluate and improve his/her work?
  • MIR prototyping
    • Define prototyping for our purposes; why is it important? (+ side benefits)
    • What tools exist
  • ChucK (ge)
    • A short history
    • Examples of how to use the language (esp. UGens & time control)
    • OTF & timeliness make suited for prototyping, but not originally for analysis
  • In summary, our goal was to modify ChucK & build tools in it to foster a tighter connection between MIR and performance, and to provide fast prototyping capabability in a new framework for MIRers

Recent additions to ChucK to allow for prototyping and realtime MIR

Unit analyzers


  • Say what they are, ...
  • Available features!

Learning framework

(re) Reference ICMC paper and make note of cool areas this opens up, but which we don't have time to discuss here (side benefit: make it clear that this isn't a copy of the ICMC paper)

introduce some "working pipelines"

intent: give reader a feel for "if I have an idea and want to code it quickly, how would this work in chucK?" (and why would I not use matlab, m2k, etc.) ge? the working pipeline to my brain is busted

case studies

  • intent: show that chuck indeed works for MIR tasks, that it is indeed a concise and nice syntax, flexible, powerful, etc.
  • case study 1: bergstra artist/genre ID (shows above specifically) (re)
  • case study 2: examples from Stanford class (shows some real uses by performers) (ge)
  • case study 3: AYYYYYYYGY

related work

For each, say what it does, why it is good, but why ours is different

  • CLAM
  • Marsyas
  • Matlab real-time stuff
  • Supercollider & Max/MSP externals

conclusion & map out future work

Discussion /take-home points

  • ChucK has expanded to a new frontier
  • We will be continuing to work on it, driven by our own applications as well as requests from the ChucK user community
  • Future work
    • file I/O is coming soon
    • online repository of templates and examples (like SMELT) that can get people started
    • modeling (HMMs)