chuck basics chunity workshop
play

Chuck Basics Chunity - Workshop Vitor Guerra Rolla Postdoctoral - PowerPoint PPT Presentation

Chuck Basics Chunity - Workshop Vitor Guerra Rolla Postdoctoral Fellow vitorgr@impa.br Chuck Intro Ge Wang Designed around time => now Parallel logic Simple-text => easy to read Real-time sound synthesis MIDI


  1. Chuck Basics Chunity - Workshop Vitor Guerra Rolla Postdoctoral Fellow vitorgr@impa.br

  2. Chuck Intro ● Ge Wang ● Designed around time => now ● Parallel logic ● Simple-text => easy to read ● Real-time sound synthesis ● MIDI compatible

  3. Download and Installation chuck.stanford.edu OSX / Windows / Linux MiniAudicle – Text editor – Virtual machine monitor – Console Monitor

  4. Summary Hello World Alarm MIDI keys Panning Arrays Hi-hat

  5. Hello Sine Print to console gain Hello Sine! time SinOsc cycles Digital Audio Converter => dac => some duration to now

  6. Hello Sine Waveforms SinOsc SqrOsc TriOsc SawOsc

  7. Data Types and Variables

  8. Time in Chuck time and dur are native types time: a point in time dur: a length of time Only by manipulating now => advance time

  9. Time in Chuck Special properties of now when read: gives us the current chuck time when modified: moves time along in Chuck Chucking a duration to now advances time while automatically suspending your code and letting sound generate Until you advance time, you are working at a single point in time

  10. Time in Chuck Alarm example

  11. MIDI Introduction Std.mtof() and Std.ftom()

  12. MIDI Introduction

  13. Std Library - Unit Conversion

  14. Math Library – Random Numbers Math.random() int Math.random2(int min, int max) in between int Math.randomf() float in the range [0,1] Math.random2f(float min, float max) in between float Math.srandom(int)

  15. Math Library

  16. Math Library

  17. Audio Panning dac.left & dac.right & dac.chan(int) Pan2 [-1.0, 1.0] Math.sin(float x)

  18. Arrays Block of memory stringed together used to make a “list” or “group” of data.

  19. Array Loop <<< A.cap() >>>; for(0 => int i; i < A.cap(); i++){ ...

  20. ADSR Envelope

  21. hi-hat  noise  ADSR envelope  volume  max  high pass filter  0,002  0,01  0,1  time (seconds)  random();

  22. Thank you

Recommend


More recommend